[mxcad_3d API documentation](../README. md)/Mx3dGeVec
Class: Mx3dGeVec
A class that represents a three-dimensional vector. Used for 3D geometric operations.
Hierarchy
↳
Mx3dGeVec
Table of contents
Constructors
Methods
- Add
- Added
- Angle
- AngleWithRef
- Cross
- CrossCross
- CrossCrossed
- CrossMagnitude
- CrossSquareMagnitude
- Crossed
- Divide
- Divided
- Dot
- DotCross
- IsEqual
- IsNormal
- IsOpposite
- IsParallel
- Magnitude
- MirrorByAxis
- MirrorByCSYSR
- MirrorByVec
- MirroredByAxis
- MirroredByCSYSR
- MirroredByVec
- Multiplied
- Multiply
- Normalize
- Normalized
- Reverse
- Reversed
- Rotate
- Rotated
- Scale
- Scaled
- SetLinearForm
- SetX
- SetXYZ
- SetY
- SetZ
- SquareMagnitude
- Subtract
- Subtracted
- Transform
- Transformed
- X
- Y
- Z
Constructors
constructor
• new Mx3dGeVec()
Construct a new Mx3dGeVec instance. It can be without parameters, or with three numerical parameters, or with two points.
Overrides
Mx3dGeObject.constructor
• new Mx3dGeVec(x
, y
, z
)
Parameters
Name | Type |
---|---|
x | number |
y | number |
z | number |
Overrides
Mx3dGeObject.constructor
• new Mx3dGeVec(thePoint1
, thePoint2
)
Parameters
Name | Type |
---|---|
thePoint1 | Mx3dGePoint |
thePoint2 | Mx3dGePoint |
Overrides
Mx3dGeObject.constructor
Methods
Add
▸ Add(other
): void
Add the current vector to another vector.
Parameters
Name | Type | Description |
---|---|---|
Other | [Mx3dGeVec] (Mx3dGeVec. md) | Another vector |
Returns
void
Added
▸ Added(other
): Mx3dGeVec
Return the result of adding the current vector to another vector.
Parameters
Name | Type | Description |
---|---|---|
Other | [Mx3dGeVec] (Mx3dGeVec. md) | Another vector |
Returns
The vector after addition.
Angle
▸ Angle(other
): number
Calculate the angle between two vectors.
Parameters
Name | Type | Description |
---|---|---|
Other | [Mx3dGeVec] (Mx3dGeVec. md) | Another vector |
Returns
number
Angle value.
AngleWithRef
▸ AngleWithRef(other
, ref
): number
Calculate the angle between two vectors with a reference vector.
Parameters
Name | Type | Description |
---|---|---|
Other | [Mx3dGeVec] (Mx3dGeVec. md) | Another vector |
Ref | [Mx3dGeVec] (Mx3dGeVec. md) | Reference vector |
Returns
number
Angle values with reference vectors.
Cross
▸ Cross(right
): void
Calculate the cross product of two vectors.
Parameters
Name | Type | Description |
---|---|---|
right | [Mx3dGeVec ] (Mx3dGeVec. md) | Another vector |
Returns
void
CrossCross
▸ CrossCross(v1
, v2
): void
Calculate the cross product of three vectors.
Parameters
Name | Type | Description |
---|---|---|
V1 | [Mx3dGeVec] (Mx3dGeVec. md) | Vector 1 |
V2 | [Mx3dGeVec] (Mx3dGeVec. md) | Vector 2 |
Returns
void
CrossCrossed
▸ CrossCrossed(v1
, v2
): Mx3dGeVec
Return the cross product of three vectors.
Parameters
Name | Type | Description |
---|---|---|
V1 | [Mx3dGeVec] (Mx3dGeVec. md) | Vector 1 |
V2 | [Mx3dGeVec] (Mx3dGeVec. md) | Vector 2 |
Returns
The vector after cross product.
CrossMagnitude
▸ CrossMagnitude(right
): number
Calculate the modulus of the cross product of two vectors.
Parameters
Name | Type | Description |
---|---|---|
right | [Mx3dGeVec ] (Mx3dGeVec. md) | Another vector |
Returns
number
The module of cross product.
CrossSquareMagnitude
▸ CrossSquareMagnitude(right
): number
Calculate the square of the cross product modulus of two vectors.
Parameters
Name | Type | Description |
---|---|---|
right | [Mx3dGeVec ] (Mx3dGeVec. md) | Another vector |
Returns
number
The square of the cross product modulus.
Crossed
▸ Crossed(right
): Mx3dGeVec
Return the cross product of two vectors.
Parameters
Name | Type | Description |
---|---|---|
right | [Mx3dGeVec ] (Mx3dGeVec. md) | Another vector |
Returns
The vector after cross product.
Divide
▸ Divide(scalar
): void
Divide the current vector by a scalar.
Parameters
Name | Type | Description |
---|---|---|
Scalar | Number | Scalar value |
Returns
void
Divided
▸ Divided(scalar
): Mx3dGeVec
Returns the result of dividing the current vector by a scalar.
Parameters
Name | Type | Description |
---|---|---|
Scalar | Number | Scalar value |
Returns
The vector divided by the scalar.
Dot
▸ Dot(other
): number
Calculate the dot product of two vectors.
Parameters
Name | Type | Description |
---|---|---|
Other | [Mx3dGeVec] (Mx3dGeVec. md) | Another vector |
Returns
number
Dot product value.
DotCross
▸ DotCross(v1
, v2
): number
Calculate the dot cross product of three vectors.
Parameters
Name | Type | Description |
---|---|---|
V1 | [Mx3dGeVec] (Mx3dGeVec. md) | Vector 1 |
V2 | [Mx3dGeVec] (Mx3dGeVec. md) | Vector 2 |
Returns
number
Point cross product value.
IsEqual
▸ IsEqual(other
, linearTolerance
, angularTolerance
): boolean
Determine whether two vectors are equal.
Parameters
Name | Type | Description |
---|---|---|
Other | [Mx3dGeVec] (Mx3dGeVec. md) | Another vector |
Linear Tolerance | Number | Linear Tolerance |
Angular Tolerance | Number | Angular Tolerance |
Returns
boolean
Is it equal.
IsNormal
▸ IsNormal(other
, angularTolerance
): boolean
Determine whether two vectors are normal vectors to each other.
Parameters
Name | Type | Description |
---|---|---|
Other | [Mx3dGeVec] (Mx3dGeVec. md) | Another vector |
Angular Tolerance | Number | Angular Tolerance |
Returns
boolean
Are they normal vectors to each other.
IsOpposite
▸ IsOpposite(other
, angularTolerance
): boolean
Determine whether two vectors are opposite to each other.
Parameters
Name | Type | Description |
---|---|---|
Other | [Mx3dGeVec] (Mx3dGeVec. md) | Another vector |
Angular Tolerance | Number | Angular Tolerance |
Returns
boolean
Are they mutually opposite.
IsParallel
▸ IsParallel(other
, angularTolerance
): boolean
Determine whether two vectors are parallel.
Parameters
Name | Type | Description |
---|---|---|
Other | [Mx3dGeVec] (Mx3dGeVec. md) | Another vector |
Angular Tolerance | Number | Angular Tolerance |
Returns
boolean
Is it parallel.
Magnitude
▸ Magnitude(): number
Obtain the modulus of the vector.
Returns
number
The modulus of a vector.
MirrorByAxis
▸ MirrorByAxis(axis
): void
Mirror the current vector based on an axis.
Parameters
Name | Type | Description |
---|---|---|
Axis | [Mx3dGeAxis] (Mx3dGeAxis. md) | Mirror axis |
Returns
void
MirrorByCSYSR
▸ MirrorByCSYSR(csysr
): void
Mirror the current vector based on a coordinate system.
Parameters
Name | Type | Description |
---|---|---|
Csysr | [Mx3dGeCSYSR] (Mx3dGeCSYSR. md) | Coordinate system |
Returns
void
MirrorByVec
▸ MirrorByVec(vec
): void
Mirror the current vector based on a vector.
Parameters
Name | Type | Description |
---|---|---|
Vec | [Mx3dGeVec] (Mx3dGeVec. md) | Mirror vector |
Returns
void
MirroredByAxis
▸ MirroredByAxis(axis
): Mx3dGeVec
Return the vector mirrored based on an axis.
Parameters
Name | Type | Description |
---|---|---|
Axis | [Mx3dGeAxis] (Mx3dGeAxis. md) | Mirror axis |
Returns
The vector after mirroring.
MirroredByCSYSR
▸ MirroredByCSYSR(csysr
): Mx3dGeVec
Return the vector mirrored based on a coordinate system.
Parameters
Name | Type | Description |
---|---|---|
Csysr | [Mx3dGeCSYSR] (Mx3dGeCSYSR. md) | Coordinate system |
Returns
The vector after mirroring.
MirroredByVec
▸ MirroredByVec(vec
): Mx3dGeVec
Return the vector mirrored based on a vector.
Parameters
Name | Type | Description |
---|---|---|
Vec | [Mx3dGeVec] (Mx3dGeVec. md) | Mirror vector |
Returns
The vector after mirroring.
Multiplied
▸ Multiplied(scalar
): Mx3dGeVec
Returns the result of multiplying the current vector by a scalar.
Parameters
Name | Type | Description |
---|---|---|
Scalar | Number | Scalar value |
Returns
The vector multiplied by a scalar.
Multiply
▸ Multiply(scalar
): void
Multiply the current vector by a scalar.
Parameters
Name | Type | Description |
---|---|---|
Scalar | Number | Scalar value |
Returns
void
Normalize
▸ Normalize(): void
Normalize the current vector.
Returns
void
Normalized
▸ Normalized(): Mx3dGeVec
Return the normalized vector.
Returns
Normalized vector.
Reverse
▸ Reverse(): void
Reverse the direction of the current vector.
Returns
void
Reversed
▸ Reversed(): Mx3dGeVec
Return the reversed vector.
Returns
The reversed vector.
Rotate
▸ Rotate(axis
, ang
): void
Rotate the current vector.
Parameters
Name | Type | Description |
---|---|---|
Axis | [Mx3dGeAxis] (Mx3dGeAxis. md) | Rotation axis |
'ang' | 'number' | Rotation angle |
Returns
void
Rotated
▸ Rotated(axis
, ang
): Mx3dGeVec
Return the rotated vector.
Parameters
Name | Type | Description |
---|---|---|
Axis | [Mx3dGeAxis] (Mx3dGeAxis. md) | Rotation axis |
'ang' | 'number' | Rotation angle |
Returns
The rotated vector.
Scale
▸ Scale(s
): void
Scale the current vector.
Parameters
Name | Type | Description |
---|---|---|
S | number | scaling factor |
Returns
void
Scaled
▸ Scaled(s
): Mx3dGeVec
Return the scaled vector.
Parameters
Name | Type | Description |
---|---|---|
S | number | scaling factor |
Returns
The scaled vector.
SetLinearForm
▸ SetLinearForm(v1
, v2
): void
Set the current vector as a linear combination.
Parameters
Name | Type | Description |
---|---|---|
V1 | [Mx3dGeVec] (Mx3dGeVec. md) | Vector 1 |
V2 | [Mx3dGeVec] (Mx3dGeVec. md) | Vector 2 |
Returns
void
▸ SetLinearForm(a1
, v1
, v2
): void
Parameters
Name | Type |
---|---|
a1 | number |
v1 | Mx3dGeVec |
v2 | Mx3dGeVec |
Returns
void
▸ SetLinearForm(a1
, v1
, a2
, v2
): void
Parameters
Name | Type |
---|---|
a1 | number |
v1 | Mx3dGeVec |
a2 | number |
v2 | Mx3dGeVec |
Returns
void
▸ SetLinearForm(a1
, v1
, a2
, v2
, v3
): void
Parameters
Name | Type |
---|---|
a1 | number |
v1 | Mx3dGeVec |
a2 | number |
v2 | Mx3dGeVec |
v3 | Mx3dGeVec |
Returns
void
▸ SetLinearForm(a1
, v1
, a2
, v2
, a3
, v3
): void
Parameters
Name | Type |
---|---|
a1 | number |
v1 | Mx3dGeVec |
a2 | number |
v2 | Mx3dGeVec |
a3 | number |
v3 | Mx3dGeVec |
Returns
void
▸ SetLinearForm(a1
, v1
, a2
, v2
, a3
, v3
, v4
): void
Parameters
Name | Type |
---|---|
a1 | number |
v1 | Mx3dGeVec |
a2 | number |
v2 | Mx3dGeVec |
a3 | number |
v3 | Mx3dGeVec |
v4 | Mx3dGeVec |
Returns
void
SetX
▸ SetX(x
): void
Set the x-component of the vector.
Parameters
Name | Type | Description |
---|---|---|
X | number | New x component |
Returns
void
SetXYZ
▸ SetXYZ(x
, y
, z
): void
Set the x of the vector, Y and z components.
Parameters
Name | Type | Description |
---|---|---|
X | number | New x component |
Y | number | New y component |
Z | number | New z component |
Returns
void
SetY
▸ SetY(y
): void
Set the y-component of the vector.
Parameters
Name | Type | Description |
---|---|---|
Y | number | New y component |
Returns
void
SetZ
▸ SetZ(z
): void
Set the z-component of the vector.
Parameters
Name | Type | Description |
---|---|---|
Z | number | New z component |
Returns
void
SquareMagnitude
▸ SquareMagnitude(): number
Obtain the square of the vector modulus.
Returns
number
The square of the vector modulus.
Subtract
▸ Subtract(right
): void
Subtract another vector from the current vector.
Parameters
Name | Type | Description |
---|---|---|
right | [Mx3dGeVec ] (Mx3dGeVec. md) | Another vector |
Returns
void
Subtracted
▸ Subtracted(right
): Mx3dGeVec
Return the result of subtracting another vector from the current vector.
Parameters
Name | Type | Description |
---|---|---|
right | [Mx3dGeVec ] (Mx3dGeVec. md) | Another vector |
Returns
Subtracted vector.
Transform
▸ Transform(t
): void
Transform the current vector based on the coordinate system.
Parameters
Name | Type |
---|---|
t | Mx3dGeTrsf |
Returns
void
Transformed
▸ Transformed(t
): Mx3dGeVec
Return the vector transformed according to the coordinate system.
Parameters
Name | Type |
---|---|
t | Mx3dGeTrsf |
Returns
The transformed vector.
X
▸ X(): number
Obtain the x-component of the vector.
Returns
number
X component.
Y
▸ Y(): number
Obtain the y-component of the vector.
Returns
number
Y component.
Z
▸ Z(): number
Obtain the z-component of the vector.
Returns
number
Z component.