![]() |
0.1.33
|
Axis rotation structure for specifying shoot orientation in PlantArchitecture. More...
Axis rotation structure for specifying shoot orientation in PlantArchitecture.
Represents rotation using pitch, yaw, and roll angles in radians, exactly as the native helios::AxisRotation does: the values are passed through unchanged and the plant-architecture library itself builds rotations such as 0.05 * pi and 2 * pi. Use math.radians() to convert from degrees. Used to define the orientation of shoots, stems, and branches during plant construction.
Definition at line 567 of file DataTypes.py.
Inheritance diagram for pyhelios.wrappers.DataTypes.AxisRotation:
Collaboration diagram for pyhelios.wrappers.DataTypes.AxisRotation:Public Member Functions | |
| str | __repr__ (self) |
| str | __str__ (self) |
| __new__ (cls, pitch=None, yaw=None, roll=None) | |
| Create AxisRotation instance. | |
| __init__ (self, float pitch=0, float yaw=0, float roll=0) | |
| Initialize AxisRotation fields with validation. | |
| from_list (self, List[float] input_list) | |
| Initialize from list [pitch, yaw, roll]. | |
| List[float] | to_list (self) |
| Convert to list [pitch, yaw, roll]. | |
Public Attributes | |
| pitch = float(pitch) | |
| yaw = float(yaw) | |
| roll = float(roll) | |
Static Protected Member Functions | |
| bool | _is_finite_numeric (value) |
| Check if value is a finite number (not NaN or inf). | |
Static Protected Attributes | |
| list | _fields_ |
| pyhelios.wrappers.DataTypes.AxisRotation.__init__ | ( | self, | |
| float | pitch = 0, | ||
| float | yaw = 0, | ||
| float | roll = 0 ) |
Initialize AxisRotation fields with validation.
Do not call super().__init__() for Windows compatibility.
| pitch | Pitch angle in radians (rotation about transverse axis) |
| yaw | Yaw angle in radians (rotation about vertical axis) |
| roll | Roll angle in radians (rotation about longitudinal axis) |
| ValueError | If any angle value is not finite |
Definition at line 602 of file DataTypes.py.
| pyhelios.wrappers.DataTypes.AxisRotation.__new__ | ( | cls, | |
| pitch = None, | |||
| yaw = None, | |||
| roll = None ) |
Create AxisRotation instance.
Only pass cls to parent new to prevent TypeError on Windows.
Definition at line 587 of file DataTypes.py.
| str pyhelios.wrappers.DataTypes.AxisRotation.__repr__ | ( | self | ) |
Definition at line 577 of file DataTypes.py.
| str pyhelios.wrappers.DataTypes.AxisRotation.__str__ | ( | self | ) |
Definition at line 580 of file DataTypes.py.
|
staticprotected |
Check if value is a finite number (not NaN or inf).
Definition at line 634 of file DataTypes.py.
| pyhelios.wrappers.DataTypes.AxisRotation.from_list | ( | self, | |
| List[float] | input_list ) |
Initialize from list [pitch, yaw, roll].
Definition at line 619 of file DataTypes.py.
| List[float] pyhelios.wrappers.DataTypes.AxisRotation.to_list | ( | self | ) |
Convert to list [pitch, yaw, roll].
Definition at line 627 of file DataTypes.py.
|
staticprotected |
Definition at line 571 of file DataTypes.py.
| pyhelios.wrappers.DataTypes.AxisRotation.pitch = float(pitch) |
Definition at line 614 of file DataTypes.py.
| pyhelios.wrappers.DataTypes.AxisRotation.roll = float(roll) |
Definition at line 616 of file DataTypes.py.
| pyhelios.wrappers.DataTypes.AxisRotation.yaw = float(yaw) |
Definition at line 615 of file DataTypes.py.