Containers
Double3
A 64-bit-per-axis position.
generated from the sources
Struct in namespace
Nebula · Packages/com.1by3.nebula/Runtime/Containers/ContainerPlacement.cs[Serializable]
public struct Double3 : IEquatable<Double3>A 64-bit-per-axis position. Container placements that are absolute (a root container 10,000 km out) are kept in this form end to end and narrowed to float only after the process's origin has been taken off, which is what makes a far placement exact (docs/container-tree.md D5).
Constructors
Double3
public Double3(double x, double y, double z);Fields
X, Y, Z
public double X, Y, Z;Zero
public static readonly Double3 Zero = new Double3(0, 0, 0);Methods
From
public static Double3 From(Vector3 v);Widen a float vector.
implicit operator Double3
public static implicit operator Double3(Vector3 v);Widening is exact, so a float vector converts implicitly (a ScopePart written with a Vector3 centre keeps compiling).
ToVector3
public Vector3 ToVector3();Narrow to a float vector. Take any origin off first.
operator +
public static Double3 operator +(Double3 a, Double3 b);
public static Double3 operator +(Double3 a, Vector3 b);operator -
public static Double3 operator -(Double3 a, Double3 b);
public static Double3 operator -(Double3 a, Vector3 b);Equals
public bool Equals(Double3 other);
public override bool Equals(object obj);GetHashCode
public override int GetHashCode();operator ==
public static bool operator ==(Double3 a, Double3 b);operator !=
public static bool operator !=(Double3 a, Double3 b);ToString
public override string ToString();