Pose

class sonic.Pose
Constructor Summary
Pose(arg1, arg2)

obj = pose(arg1, arg2) Constructs a Pose object. A pose contains both an Attitude and a Points3 The pose from A to B is such that: x_B = T * x_A = [pose.att.dcm, pose.t] * x_A

Inputs:
  • arg1 If only one argument

    • T (4x4 double): A matrix containing the DCM and

    translation such that x_B.p3 = T * x_A.p3

    If two arguments
    • att (1x1 sonic.Attitude): the attitude of the pose

  • arg2 (sonic.Points3): the translation of the point in B

Outputs:
  • obj (sonic.Pose): Pose object.

Last revised: 10/31/24 Last author: Sebastien Henry

Property Summary
T

transformation matrix

att
t
Method Summary
comp(obj2)

[rot_obj] = transform(obj, to_transform)

Transforms a point such that x_B = P * x_A = [pose.att.dcm, pose.t] * x_A

Inputs:
  • to_transform (1x1 sonic.Points3): Object to transform. Can have more than n=1.

Outputs:
  • transformed_obj (1x1 sonic.Points3 or sonic.PointsS2):

    Rotated object. Return type will match the input type.

Last revised: 10/31/24 Last author: Sebastien Henry

inv()

Inverse a pose

Outputs:
  • newPose (1x1 sonic.Pose): Inversed Pose

Last revised: 10/31/24 Last author: Sebastien Henry

mtimes(to_mult)

Pre-multiply the pose to an object result depends on the type of to_mult

Inputs:
  • to_mult: a SONIC object, either
    • (1x1 sonic.Points3): In this case

    the output the pose matrix times the points p3. - (1x1 sonic.Pose): In this case, the output is the compose of the poses.

Outputs:
  • multiplied (1x1 sonic.Points3 or sonic.Pose): object

pre-multiplied by the pose.

Last revised: 1/07/24 Last author: Sebastien Henry

transform(to_transform)

Transforms a point such that x_B = T * x_A = [pose.att.dcm, pose.t] * x_A

Inputs:
  • to_transform (1x1 sonic.Points3): Object to transform. Can have more than n=1.

Outputs:
  • transformed_obj (1x1 sonic.Points3 or sonic.PointsS2): Rotated object. Return type will match the input type.

Last revised: 10/31/24 Last author: Sebastien Henry