SystemEX  Lacking
Additional generic collection types missing in .net
SystemEx.Numeric.Vec3d Struct Reference
Inheritance diagram for SystemEx.Numeric.Vec3d:
Collaboration diagram for SystemEx.Numeric.Vec3d:

Public Member Functions

 Vec3d ()
 Initializes a zero vector (0,0).
 Vec3d (double _x, double _y, double _z)
 Initializes a vector with explicit X and Y values.
 Vec3d (double _f)
 Initializes both components with the same value.
 Vec3d (Vec3d vec)
 Copy constructor.
 Vec3d (double[] lpvec)
 Initializes the vector from a double array.
double Get (int index)
 Gets a component by index (0 = X, 1 = Y).
override int GetHashCode ()
 Computes a hash code for this vector.
int CompareTo (object? obj)
 Compares this vector to another object.
CompareResult CompareTo (Vec3d a)
 Compares two vectors lexicographically.
bool Equals (Vec3d other)
 Determines whether this instance is equal to another Half16 value, using the same semantics as the operator ==(Vec3d,Vec3d).
override bool Equals (object? obj)
 Determines whether this instance is equal to another object.
int IComparable< Vec3d >. CompareTo (Vec3d other)
FixedVector< byte > ToBytes ()
 Converts the vector into a deterministic byte sequence.
Public Member Functions inherited from SystemEx.IComparableEx< T >
CompareResult CompareTo (T a)
 Compares this instance with the specified value and returns a CompareResult describing the relationship between them.

Static Public Member Functions

static double Lenght (Vec3d v)
 Computes the squared length of the vector.
static double LenghtSqrt (Vec3d v)
 Computes the Euclidean length of the vector.
static double Dot (Vec3d v1, Vec3d v2)
 Computes the dot product of two vectors.
static double Angle (Vec3d v1, Vec3d v2)
 Computes the angle between two vectors.
static Vec3d InterpolateCoords (Vec3d v1, Vec3d v2, double p)
 Linearly interpolates between two vectors.
static Vec3d InterpolateNormal (Vec3d v1, Vec3d v2, double p)
 Interpolates and normalizes the result.
static bool NearEqual (Vec3d v1, Vec3d v2, double epsilon)
 Checks whether two vectors are approximately equal.
static Vec3d Normalize (Vec3d v, bool ex=false)
 Normalizes the vector.
static Vec3d operator+ (Vec3d a, Vec3d b)
 Adds two vectors component‑wise.
static Vec3d operator- (Vec3d a, Vec3d b)
 Subtracts two vectors component‑wise.
static Vec3d operator/ (Vec3d a, Vec3d b)
 Divides two vectors component‑wise.
static Vec3d operator* (Vec3d a, Vec3d b)
 Multiplies two vectors component‑wise.
static Vec3d operator+ (Vec3d a, double b)
 Adds a scalar to both components of the vector.
static Vec3d operator- (Vec3d a, double b)
 Subtracts a scalar from both components of the vector.
static Vec3d operator/ (Vec3d a, double b)
 Divides both components of the vector by a scalar.
static Vec3d operator* (Vec3d a, double b)
static Vec3d operator- (double a, Vec3d b)
 Subtracts each component of the vector from a scalar.
static Vec3d operator/ (double a, Vec3d b)
static Vec3d operator* (double a, Vec3d b)
 Multiplies a scalar with each component of the vector.
static Vec3d operator+ (double a, Vec3d b)
 Adds a scalar to each component of the vector.
static bool operator== (Vec3d a, Vec3d b)
 Determines whether two vectors are equal component‑wise.
static bool operator!= (Vec3d a, Vec3d b)
 Determines whether two vectors differ in any component.
static bool operator<= (Vec3d a, Vec3d b)
 Determines whether all components of a are less than or equal to those of b .
static bool operator>= (Vec3d a, Vec3d b)
 Determines whether all components of a are greater than or equal to those of b .
static bool operator< (Vec3d a, Vec3d b)
 Determines whether all components of a are strictly less than those of b .
static bool operator> (Vec3d a, Vec3d b)
 Determines whether all components of a are strictly greater than those of b .
static bool operator== (double a, Vec3d b)
 Determines whether a scalar equals both components of the vector.
static bool operator!= (double a, Vec3d b)
 Determines whether a scalar differs from any component of the vector.
static bool operator<= (double a, Vec3d b)
 Determines whether a scalar is less than or equal to both vector components.
static bool operator>= (double a, Vec3d b)
 Determines whether a scalar is greater than or equal to both vector components.
static bool operator< (double a, Vec3d b)
 Determines whether a scalar is strictly less than both vector components.
static bool operator> (double a, Vec3d b)
 Determines whether a scalar is strictly greater than both vector components.
static bool operator== (Vec3d a, double b)
 Determines whether both vector components equal the scalar.
static bool operator!= (Vec3d a, double b)
 Determines whether any vector component differs from the scalar.
static bool operator<= (Vec3d a, double b)
 Determines whether both vector components are less than or equal to the scalar.
static bool operator>= (Vec3d a, double b)
 Determines whether both vector components are greater than or equal to the scalar.
static bool operator< (Vec3d a, double b)
 Determines whether both vector components are strictly less than the scalar.
static bool operator> (Vec3d a, double b)
 Determines whether both vector components are strictly greater than the scalar.

Static Public Attributes

static readonly Vec3d Zero = new Vec3d(0,0,0)
 Represents Vector(0,0,0).
static readonly Vec3d One = new Vec3d(1f, 1f, 1f)
 Represents Vector(1,1,1).
static readonly Vec3d NegativeOne = new Vec3d(-1f, -1f, -1f)
 Represents Vector(-1,-1,-1).
static readonly Vec3d Min = new Vec3d(double.MinValue, double.MinValue, double.MinValue)
 Represents Vector(MIN,MIN,MIN).
static readonly Vec3d Max = new Vec3d(double.MaxValue, double.MaxValue, double.MaxValue)
 Represents Vector(MAX,MAX,MAX).

Properties

int Count [get]
 Gets the number of components in this vector (always 3).
double X [get, set]
 Gets or sets the X component.
double Y [get, set]
 Gets or sets the Y component.
double Z [get, set]
 Gets or sets the Z component.

Constructor & Destructor Documentation

◆ Vec3d() [1/5]

SystemEx.Numeric.Vec3d.Vec3d ( )

Initializes a zero vector (0,0).

94 {
95 m_x = m_y = m_z = 0.0f;
96 }
Here is the caller graph for this function:

◆ Vec3d() [2/5]

SystemEx.Numeric.Vec3d.Vec3d ( double _x,
double _y,
double _z )

Initializes a vector with explicit X and Y values.

101 {
102 m_x = _x;
103 m_y = _y;
104 m_z = _z;
105 }

◆ Vec3d() [3/5]

SystemEx.Numeric.Vec3d.Vec3d ( double _f)

Initializes both components with the same value.

111 {
112 m_x = _f;
113 m_y = _f;
114 m_z = _f;
115 }

◆ Vec3d() [4/5]

SystemEx.Numeric.Vec3d.Vec3d ( Vec3d vec)

Copy constructor.

120 {
121 m_x = vec.m_x;
122 m_y = vec.m_y;
123 m_z = vec.m_z;
124 }
Here is the call graph for this function:

◆ Vec3d() [5/5]

SystemEx.Numeric.Vec3d.Vec3d ( double[] lpvec)

Initializes the vector from a double array.

129 {
130 m_x = lpvec[0];
131 m_y = lpvec[1];
132 m_z = lpvec[2];
133 }

Member Function Documentation

◆ Angle()

double SystemEx.Numeric.Vec3d.Angle ( Vec3d v1,
Vec3d v2 )
static

Computes the angle between two vectors.

169 {
170 return System.Math.Acos(v1.m_x * v2.m_x + v1.m_y * v2.m_y + v1.m_z * v2.m_z) /
171 System.Math.Sqrt((v1.m_x * v1.m_x + v1.m_y * v1.m_y + v1.m_z * v1.m_z) *
172 (v2.m_x * v2.m_x + v2.m_y * v2.m_y + v2.m_z * v2.m_z));
173 }
@ System
forward indexing
Definition FlexSpan.cs:32
Here is the call graph for this function:

◆ CompareTo() [1/3]

int SystemEx.Numeric.Vec3d.CompareTo ( object? obj)

Compares this vector to another object.

228 {
229 if ( (obj is Vec3d) ) {
230 return (int)CompareTo((Vec3d)(obj));
231 }
232 throw new ArgumentException("Object is not a Vec3d object");
233 }
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CompareTo() [2/3]

CompareResult SystemEx.Numeric.Vec3d.CompareTo ( Vec3d a)

Compares two vectors lexicographically.

237 {
238 CompareResult _ret = CompareResult.Equal;
239
240 if ( this < a ) _ret = CompareResult.AIsSmallerB;
241 else if ( this > a ) _ret = CompareResult.AIsLargerB;
242
243
244 return _ret;
245 }
CompareResult
Specifies the result of a comparison between two values.
Definition Algorithm.cs:26
Here is the call graph for this function:

◆ CompareTo() [3/3]

int IComparable< Vec3d >. SystemEx.Numeric.Vec3d.CompareTo ( Vec3d other)
276 {
277 return (int)CompareTo(other);
278 }

◆ Dot()

double SystemEx.Numeric.Vec3d.Dot ( Vec3d v1,
Vec3d v2 )
static

Computes the dot product of two vectors.

162 {
163 return (v1.m_x * v2.m_x + v1.m_y * v2.m_y + v1.m_z * v2.m_z);
164 }
Here is the call graph for this function:

◆ Equals() [1/2]

override bool SystemEx.Numeric.Vec3d.Equals ( object? obj)

Determines whether this instance is equal to another object.

The object is considered equal if it is a Vec3d and compares equal using Equals(Vec3d).

Parameters
objThe object to compare with.
Returns
true if obj is a Vec3d and equal to this instance; otherwise false.
271 {
272 if ( obj == null ) return false;
273 return (obj is Vec3d) && Equals((Vec3d)obj);
274 }
Here is the call graph for this function:

◆ Equals() [2/2]

bool SystemEx.Numeric.Vec3d.Equals ( Vec3d other)

Determines whether this instance is equal to another Half16 value, using the same semantics as the operator ==(Vec3d,Vec3d).

Parameters
otherThe value to compare with.
Returns
true if the values are equal; otherwise false.
256 {
257 return this.X == other.X && this.Y == other.Y && this.Z == other.Z;
258 }
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Get()

double SystemEx.Numeric.Vec3d.Get ( int index)

Gets a component by index (0 = X, 1 = Y).

138 {
139 return index switch
140 {
141 0 => m_x,
142 1 => m_y,
143 2 => m_z,
144 _ => throw new ArgumentOutOfRangeException(nameof(index))
145 };
146 }
Here is the caller graph for this function:

◆ GetHashCode()

override int SystemEx.Numeric.Vec3d.GetHashCode ( )

Computes a hash code for this vector.

The primary hash is generated using HashFactory and the HashAlgorithmAttribute applied to this struct.
If hashing fails (rare), a fallback XOR‑based hash is used.

218 {
219 var x = HashFactory.Hash32(this, 674545);
220 if ( x.Value != 0 ) return (int)x.Value;
221
222 return m_x.GetHashCode() ^ m_y.GetHashCode() ^ m_z.GetHashCode();
223
224 }

◆ InterpolateCoords()

Vec3d SystemEx.Numeric.Vec3d.InterpolateCoords ( Vec3d v1,
Vec3d v2,
double p )
static

Linearly interpolates between two vectors.

178 {
179 return v1 + p * (v2 - v1);
180 }
Here is the call graph for this function:

◆ InterpolateNormal()

Vec3d SystemEx.Numeric.Vec3d.InterpolateNormal ( Vec3d v1,
Vec3d v2,
double p )
static

Interpolates and normalizes the result.

185 {
186 return Normalize(v1 + p * (v2 - v1));
187 }
Here is the call graph for this function:

◆ Lenght()

double SystemEx.Numeric.Vec3d.Lenght ( Vec3d v)
static

Computes the squared length of the vector.

152=> (v.m_x * v.m_x + v.m_y * v.m_y + v.m_z * v.m_z);
Here is the call graph for this function:
Here is the caller graph for this function:

◆ LenghtSqrt()

double SystemEx.Numeric.Vec3d.LenghtSqrt ( Vec3d v)
static

Computes the Euclidean length of the vector.

157=> System.Math.Sqrt(Lenght(v));
Here is the call graph for this function:
Here is the caller graph for this function:

◆ NearEqual()

bool SystemEx.Numeric.Vec3d.NearEqual ( Vec3d v1,
Vec3d v2,
double epsilon )
static

Checks whether two vectors are approximately equal.

192 {
193 return (System.Math.Abs(v1.m_x - v2.m_x) <= epsilon) &&
194 (System.Math.Abs(v1.m_y - v2.m_y) <= epsilon) &&
195 (System.Math.Abs(v1.m_z - v2.m_z) <= epsilon);
196 }
Here is the call graph for this function:

◆ Normalize()

Vec3d SystemEx.Numeric.Vec3d.Normalize ( Vec3d v,
bool ex = false )
static

Normalizes the vector.

201 {
202 var f = v / LenghtSqrt(v);
203 return ex ? (f + 0.0001f) : f;
204 }
Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator!=() [1/3]

bool SystemEx.Numeric.Vec3d.operator!= ( double a,
Vec3d b )
static

Determines whether a scalar differs from any component of the vector.

415 {
416 return a != b.m_x && a != b.m_y && a != b.m_z;
417 }
Here is the call graph for this function:

◆ operator!=() [2/3]

bool SystemEx.Numeric.Vec3d.operator!= ( Vec3d a,
double b )
static

Determines whether any vector component differs from the scalar.

457 {
458 return a.m_x != b && a.m_y != b && a.m_z != b;
459 }
Here is the call graph for this function:

◆ operator!=() [3/3]

bool SystemEx.Numeric.Vec3d.operator!= ( Vec3d a,
Vec3d b )
static

Determines whether two vectors differ in any component.

377 {
378 return a.m_x != b.m_x && a.m_y != b.m_y && a.m_z != b.m_z;
379 }
Here is the call graph for this function:

◆ operator*() [1/3]

Vec3d SystemEx.Numeric.Vec3d.operator* ( double a,
Vec3d b )
static

Multiplies a scalar with each component of the vector.

359 {
360 return new Vec3d(a * b.m_x, a * b.m_y, a * b.m_z);
361 }
Here is the call graph for this function:

◆ operator*() [2/3]

Vec3d SystemEx.Numeric.Vec3d.operator* ( Vec3d a,
double b )
static

Multiplies both components of the vector by a scalar.

341 {
342 return new Vec3d(a.m_x * b, a.m_y * b, a.m_z * b);
343 }
Here is the call graph for this function:

◆ operator*() [3/3]

Vec3d SystemEx.Numeric.Vec3d.operator* ( Vec3d a,
Vec3d b )
static

Multiplies two vectors component‑wise.

317 {
318 return new Vec3d(a.m_x * b.m_x, a.m_y * b.m_y, a.m_z * b.m_z);
319 }
Here is the call graph for this function:

◆ operator+() [1/3]

Vec3d SystemEx.Numeric.Vec3d.operator+ ( double a,
Vec3d b )
static

Adds a scalar to each component of the vector.

365 {
366 return new Vec3d(a + b.m_x, a + b.m_y, a + b.m_z);
367 }
Here is the call graph for this function:

◆ operator+() [2/3]

Vec3d SystemEx.Numeric.Vec3d.operator+ ( Vec3d a,
double b )
static

Adds a scalar to both components of the vector.

323 {
324 return new Vec3d(a.m_x + b, a.m_y + b, a.m_z + b);
325 }
Here is the call graph for this function:

◆ operator+() [3/3]

Vec3d SystemEx.Numeric.Vec3d.operator+ ( Vec3d a,
Vec3d b )
static

Adds two vectors component‑wise.

299 {
300 return new Vec3d(a.m_x + b.m_x, a.m_y + b.m_y, a.m_z + b.m_z);
301 }
Here is the call graph for this function:

◆ operator-() [1/3]

Vec3d SystemEx.Numeric.Vec3d.operator- ( double a,
Vec3d b )
static

Subtracts each component of the vector from a scalar.

347 {
348 return new Vec3d(a - b.m_x, a - b.m_y, a - b.m_z);
349 }
Here is the call graph for this function:

◆ operator-() [2/3]

Vec3d SystemEx.Numeric.Vec3d.operator- ( Vec3d a,
double b )
static

Subtracts a scalar from both components of the vector.

329 {
330 return new Vec3d(a.m_x - b, a.m_y - b, a.m_z - b);
331 }
Here is the call graph for this function:

◆ operator-() [3/3]

Vec3d SystemEx.Numeric.Vec3d.operator- ( Vec3d a,
Vec3d b )
static

Subtracts two vectors component‑wise.

305 {
306 return new Vec3d(a.m_x - b.m_x, a.m_y - b.m_y, a.m_z - b.m_z);
307 }
Here is the call graph for this function:

◆ operator/() [1/3]

Vec3d SystemEx.Numeric.Vec3d.operator/ ( double a,
Vec3d b )
static

Divides a scalar by each component of the vector.

353 {
354 return new Vec3d(a / b.m_x, a / b.m_y, a / b.m_z);
355 }
Here is the call graph for this function:

◆ operator/() [2/3]

Vec3d SystemEx.Numeric.Vec3d.operator/ ( Vec3d a,
double b )
static

Divides both components of the vector by a scalar.

335 {
336 return new Vec3d(a.m_x / b, a.m_y / b, a.m_z / b);
337 }
Here is the call graph for this function:

◆ operator/() [3/3]

Vec3d SystemEx.Numeric.Vec3d.operator/ ( Vec3d a,
Vec3d b )
static

Divides two vectors component‑wise.

311 {
312 return new Vec3d(a.m_x / b.m_x, a.m_y / b.m_y, a.m_z / b.m_z);
313 }
Here is the call graph for this function:

◆ operator<() [1/3]

bool SystemEx.Numeric.Vec3d.operator< ( double a,
Vec3d b )
static

Determines whether a scalar is strictly less than both vector components.

436 {
437 return a < b.m_x && a < b.m_y && a < b.m_z;
438 }
Here is the call graph for this function:

◆ operator<() [2/3]

bool SystemEx.Numeric.Vec3d.operator< ( Vec3d a,
double b )
static

Determines whether both vector components are strictly less than the scalar.

478 {
479 return a.m_x < b && a.m_y < b && a.m_z < b;
480 }
Here is the call graph for this function:

◆ operator<() [3/3]

bool SystemEx.Numeric.Vec3d.operator< ( Vec3d a,
Vec3d b )
static

Determines whether all components of a are strictly less than those of b .

395 {
396 return a.m_x < b.m_x && a.m_y < b.m_y && a.m_z < b.m_z;
397 }
Here is the call graph for this function:

◆ operator<=() [1/3]

bool SystemEx.Numeric.Vec3d.operator<= ( double a,
Vec3d b )
static

Determines whether a scalar is less than or equal to both vector components.

422 {
423 return a <= b.m_x && a <= b.m_y && a <= b.m_z;
424 }
Here is the call graph for this function:

◆ operator<=() [2/3]

bool SystemEx.Numeric.Vec3d.operator<= ( Vec3d a,
double b )
static

Determines whether both vector components are less than or equal to the scalar.

464 {
465 return a.m_x <= b && a.m_y <= b && a.m_z <= b;
466 }
Here is the call graph for this function:

◆ operator<=() [3/3]

bool SystemEx.Numeric.Vec3d.operator<= ( Vec3d a,
Vec3d b )
static

Determines whether all components of a are less than or equal to those of b .

383 {
384 return a.m_x <= b.m_x && a.m_y <= b.m_y && a.m_z <= b.m_z;
385 }
Here is the call graph for this function:

◆ operator==() [1/3]

bool SystemEx.Numeric.Vec3d.operator== ( double a,
Vec3d b )
static

Determines whether a scalar equals both components of the vector.

408 {
409 return a == b.m_x && a == b.m_y && a == b.m_z;
410 }
Here is the call graph for this function:

◆ operator==() [2/3]

bool SystemEx.Numeric.Vec3d.operator== ( Vec3d a,
double b )
static

Determines whether both vector components equal the scalar.

450 {
451 return a.m_x == b && a.m_y == b && a.m_z == b;
452 }
Here is the call graph for this function:

◆ operator==() [3/3]

bool SystemEx.Numeric.Vec3d.operator== ( Vec3d a,
Vec3d b )
static

Determines whether two vectors are equal component‑wise.

371 {
372 return a.m_x == b.m_x && a.m_y == b.m_y && a.m_z == b.m_z;
373 }
Here is the call graph for this function:

◆ operator>() [1/3]

bool SystemEx.Numeric.Vec3d.operator> ( double a,
Vec3d b )
static

Determines whether a scalar is strictly greater than both vector components.

443 {
444 return a > b.m_x && a > b.m_y && a > b.m_z;
445 }
Here is the call graph for this function:

◆ operator>() [2/3]

bool SystemEx.Numeric.Vec3d.operator> ( Vec3d a,
double b )
static

Determines whether both vector components are strictly greater than the scalar.

485 {
486 return a.m_x > b && a.m_y > b && a.m_z > b;
487 }
Here is the call graph for this function:

◆ operator>() [3/3]

bool SystemEx.Numeric.Vec3d.operator> ( Vec3d a,
Vec3d b )
static

Determines whether all components of a are strictly greater than those of b .

401 {
402 return a.m_x > b.m_x && a.m_y > b.m_y && a.m_z > b.m_z;
403 }
Here is the call graph for this function:

◆ operator>=() [1/3]

bool SystemEx.Numeric.Vec3d.operator>= ( double a,
Vec3d b )
static

Determines whether a scalar is greater than or equal to both vector components.

429 {
430 return a >= b.m_x && a >= b.m_y && a >= b.m_z;
431 }
Here is the call graph for this function:

◆ operator>=() [2/3]

bool SystemEx.Numeric.Vec3d.operator>= ( Vec3d a,
double b )
static

Determines whether both vector components are greater than or equal to the scalar.

471 {
472 return a.m_x >= b && a.m_y >= b && a.m_z >= b;
473 }
Here is the call graph for this function:

◆ operator>=() [3/3]

bool SystemEx.Numeric.Vec3d.operator>= ( Vec3d a,
Vec3d b )
static

Determines whether all components of a are greater than or equal to those of b .

389 {
390 return a.m_x >= b.m_x && a.m_y >= b.m_y && a.m_z >= b.m_z;
391 }
Here is the call graph for this function:

◆ ToBytes()

FixedVector< byte > SystemEx.Numeric.Vec3d.ToBytes ( )

Converts the vector into a deterministic byte sequence.

This method is used by HashFactory to compute attribute‑driven hashes. The byte layout is stable and platform‑safe, ensuring consistent hashing across devices and backends.

Implements SystemEx.Hash.IHashable< T >.

288 {
289 Cache m = new Cache(sizeof(double) * Count);
290
291 for ( byte i = 0 ; i < Count ; i++ )
292 m.WriteRange((ulong)(sizeof(double) * i), Get(i).ToBytes());
293
294 return m.ToArrayEx();
295 }
FixedVector< byte > ToArrayEx()
Returns a copy of the internal buffer, as Array<T>.
Definition Cache.cs:656
virtual ulong WriteRange(ulong position, byte[] data)
Writes a byte range into the cache starting at the specified position.
Definition Cache.cs:231
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ Max

readonly Vec3d SystemEx.Numeric.Vec3d.Max = new Vec3d(double.MaxValue, double.MaxValue, double.MaxValue)
static

Represents Vector(MAX,MAX,MAX).

◆ Min

readonly Vec3d SystemEx.Numeric.Vec3d.Min = new Vec3d(double.MinValue, double.MinValue, double.MinValue)
static

Represents Vector(MIN,MIN,MIN).

◆ NegativeOne

readonly Vec3d SystemEx.Numeric.Vec3d.NegativeOne = new Vec3d(-1f, -1f, -1f)
static

Represents Vector(-1,-1,-1).

◆ One

readonly Vec3d SystemEx.Numeric.Vec3d.One = new Vec3d(1f, 1f, 1f)
static

Represents Vector(1,1,1).

◆ Zero

readonly Vec3d SystemEx.Numeric.Vec3d.Zero = new Vec3d(0,0,0)
static

Represents Vector(0,0,0).

Property Documentation

◆ Count

int SystemEx.Numeric.Vec3d.Count
get

Gets the number of components in this vector (always 3).

◆ X

double SystemEx.Numeric.Vec3d.X
getset

Gets or sets the X component.

80{ get => m_x; set => m_x = value; }

◆ Y

double SystemEx.Numeric.Vec3d.Y
getset

Gets or sets the Y component.

85{ get => m_y; set => m_y = value; }

◆ Z

double SystemEx.Numeric.Vec3d.Z
getset

Gets or sets the Z component.

89{ get => m_z; set => m_z = value; }

The documentation for this struct was generated from the following file:
  • Vec3d.cs