0.1.39
Loading...
Searching...
No Matches
pyhelios.wrappers.DataTypes.AxisRotation Class Reference

Axis rotation structure for specifying shoot orientation in PlantArchitecture. More...

Detailed Description

Axis rotation structure for specifying shoot orientation in PlantArchitecture.

Represents rotation using pitch, yaw, and roll angles in radians. Use math.radians() to convert from degrees. Used to define the orientation of shoots, stems, and branches during plant construction.

Definition at line 565 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_
 

Constructor & Destructor Documentation

◆ __init__()

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.

Parameters
pitchPitch angle in radians (rotation about transverse axis)
yawYaw angle in radians (rotation about vertical axis)
rollRoll angle in radians (rotation about longitudinal axis)
Exceptions
ValueErrorIf any angle value is not finite

Definition at line 600 of file DataTypes.py.

Member Function Documentation

◆ __new__()

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 585 of file DataTypes.py.

◆ __repr__()

str pyhelios.wrappers.DataTypes.AxisRotation.__repr__ ( self)

Definition at line 575 of file DataTypes.py.

◆ __str__()

str pyhelios.wrappers.DataTypes.AxisRotation.__str__ ( self)

Definition at line 578 of file DataTypes.py.

◆ _is_finite_numeric()

bool pyhelios.wrappers.DataTypes.AxisRotation._is_finite_numeric ( value)
staticprotected

Check if value is a finite number (not NaN or inf).

Definition at line 632 of file DataTypes.py.

◆ from_list()

pyhelios.wrappers.DataTypes.AxisRotation.from_list ( self,
List[float] input_list )

Initialize from list [pitch, yaw, roll].

Definition at line 617 of file DataTypes.py.

◆ to_list()

List[float] pyhelios.wrappers.DataTypes.AxisRotation.to_list ( self)

Convert to list [pitch, yaw, roll].

Definition at line 625 of file DataTypes.py.

Member Data Documentation

◆ _fields_

list pyhelios.wrappers.DataTypes.AxisRotation._fields_
staticprotected

Definition at line 569 of file DataTypes.py.

◆ pitch

pyhelios.wrappers.DataTypes.AxisRotation.pitch = float(pitch)

Definition at line 612 of file DataTypes.py.

◆ roll

pyhelios.wrappers.DataTypes.AxisRotation.roll = float(roll)

Definition at line 614 of file DataTypes.py.

◆ yaw

pyhelios.wrappers.DataTypes.AxisRotation.yaw = float(yaw)

Definition at line 613 of file DataTypes.py.


The documentation for this class was generated from the following file: