Vector3D
Canonical path: NemAll_Python_Geometry.Vector3D
Representation class for 3D Vector.
CrossProduct
CrossProduct(vec: Vector3D)
Cross(vector) product operator.
Formula: Va = Va x Vb Va is this Vector
Parameters:
-
vec
(Vector3D
) –Vector(Vb).
DotProduct
DotProduct(vec: Vector3D) -> float
Dot(sxcalar) product.
Formula: S = Va . Vb = Va1 * Va2 + Vb1 * Vb2 Va is this Vector
Parameters:
-
vec
(Vector3D
) –Vector(Vb).
Returns:
-
float
–double.
GetCoords
GetCoords() -> tuple[float, float, float]
Get copy of X,Y,Z coordinates
Returns:
-
tuple[float, float, float]
–tuple(X coordinate of vector, Y coordinate of vector, Z coordinate of vector)
GetLength
Get vector length.
Formula: Result(double) = ||Va|| Va is this vector
Returns:
-
float
–double.
GetLengthSquare
Get vector length without square-root in calculation.
Returns:
-
float
–double.
IsZero
Check the coords [0.0, 0.0, 0.0]
If the coords are zero, the return value is true. If the coords aren't zero, the return value is false.
Returns:
-
bool
–Is zero? true/false
Normal
Does the same as Cross(vector) product but does not change the operands.
Formula: Vc = Va x Vb Va is this Vector
Parameters:
-
vec
(Vector3D
) –Vector(Vb).
Normalize
overloaded
Normalize() -> eGeometryErrorCode
Normalize vector.
Formula: Vn(a1/||Va||, a2/||Va||) Va is this vector This method is checked and throwing a geometry exception when vector is zero.
Returns:
-
eGeometryErrorCode
–Geometry error code
Normalize(length: float) -> eGeometryErrorCode
Normalize vector to new length.
Formula: Vn(a1 * length / ||Va||, a2 * length / ||Va||) Va is this vector This method is checked and throwing a geometry exception when vector is zero.
Parameters:
-
length
(float
) –new length of vector.
Returns:
-
eGeometryErrorCode
–Geometry error code
Project
Reverse
Reverse() -> Vector3D
Compute reversed vector
Method calculate vector with reversed orientation.
Returns:
-
Vector3D
–Reversed vector
Set
overloaded
Set(vec: Vector3D)
Initialize from x,y,z coordinates.
Parameters:
-
x
(float
) –coordinate.
-
y
(float
) –coordinate.
-
z
(float
) –coordinate.
Values
Get copy of X,Y,Z coordinates as python list
Returns:
-
list[float]
–X coordinate of vector.,
-
list[float]
–Y coordinate of vector.,
-
list[float]
–Z coordinate of vector.
__add__
__eq__
__eq__(vec: Vector3D) -> bool
Comparison of vectors without tolerance.
Be careful, this method work without tolerance!
Parameters:
-
vec
(Vector3D
) –Compared vector.
Returns:
-
bool
–True when points are equal, otherwise false.
__iadd__
__idiv__
__idiv__(divider: float) -> Vector3D
Multiply the vector by a factor (scalar multiplication)
Parameters:
-
divider
(float
) –scaling divider
Returns:
-
Vector3D
–New vector
__imul__
overloaded
__imul__(factor: float) -> Vector3D
Multiply the vector by a factor (scalar multiplication)
Parameters:
-
factor
(float
) –Scale factor
Returns:
-
Vector3D
–New vector
__init__
overloaded
Initialize
__init__(vec: Vector2D)
Copy constructor.
Copy only X_COORD and Y_COORD from vector, Z_COORD is set to zero.
Parameters:
-
vec
(Vector2D
) –2D vector which will be copied to the 3D vector.
__init__(vec: Vector3D)
Constructor.
Initialize vector from single coordinates.
Parameters:
-
x
(float
) –X coordinate of vector.
-
y
(float
) –Y coordinate of vector.
-
z
(float
) –Z coordinate of vector.
__init__(endPoint: Point3D)
Create a vector from a 3D point
Parameters:
-
endPoint
(Point3D
) –End point of the vector (startpoint is 0./0./0.)
__isub__
__mul__
overloaded
__mul__(factor: float) -> Vector3D
Multiply the vector by a factor (scalar multiplication)
Parameters:
-
factor
(float
) –Scale factor
Returns:
-
Vector3D
–New vector
__ne__
__ne__(vec: Vector3D) -> bool
Comparison of vectors without tolerance.
Be careful, this method work without tolerance!
Parameters:
-
vec
(Vector3D
) –Compared vector.
Returns:
-
bool
–True when points are not equal, otherwise false.