Vec3DArray#
- class Vec3DArray(points: List[ndarray])[source]#
Class to define an array of np.ndarray objects
- Raises:
TypeError – if layer_z value is not provided for 2D design
ValueError – if dimensionality of coordinate > 3
- Returns:
Array of np.ndarray objects
- Return type:
Attributes
- points: List[ndarray]#
- path_vecs: List[ndarray]#
Methods
- append(vecs: List[ndarray])[source]#
Append vector to the array
- Parameters:
vecs (List[np.ndarray]) – list of vectors to append
- get_angle_between(i: int, j: int, ret_path_angle: bool = True) float [source]#
Return acute angle between two vectors depending on “ret_path_angle”
- Parameters:
i (int) – i^th index from path_vecs or points list
j (int) – j^th index from path_vecs or points list
ret_path_angle (bool, optional) – Return angl between path_vecs if True and between points if False. Defaults to True.
- Returns:
angle between the corresponding vectors
- Return type:
float
- static make_vec3DArray(points: List[List[int | float]], layer_z: float | None = None)[source]#
Create a Vec3DArray object from list of points
- Parameters:
points (List[List[Union[int, float]]]) – list of points
layer_z (float, optional) – z-coordinate of layer in case of 2D design. Defaults to None.
- Raises:
TypeError – if layer_z value is not provided for 2D design
ValueError – if dimensionality of coordinate > 3
- Returns:
return a Vec3DArray object
- Return type: