52 lines
1.0 KiB
C#
52 lines
1.0 KiB
C#
namespace RobotNet10.Shared.Geometry;
|
|
|
|
/// <summary>
|
|
/// Quaternion message (geometry_msgs/Quaternion)
|
|
/// Represents a rotation in free space in quaternion form
|
|
/// </summary>
|
|
public struct Quaternion
|
|
{
|
|
/// <summary>
|
|
/// X component
|
|
/// </summary>
|
|
public double X { get; set; }
|
|
|
|
/// <summary>
|
|
/// Y component
|
|
/// </summary>
|
|
public double Y { get; set; }
|
|
|
|
/// <summary>
|
|
/// Z component
|
|
/// </summary>
|
|
public double Z { get; set; }
|
|
|
|
/// <summary>
|
|
/// W component (scalar part)
|
|
/// </summary>
|
|
public double W { get; set; }
|
|
|
|
/// <summary>
|
|
/// Default constructor
|
|
/// </summary>
|
|
public Quaternion()
|
|
{
|
|
X = 0.0;
|
|
Y = 0.0;
|
|
Z = 0.0;
|
|
W = 1.0; // Identity quaternion
|
|
}
|
|
|
|
/// <summary>
|
|
/// Constructor with parameters
|
|
/// </summary>
|
|
public Quaternion(double x, double y, double z, double w)
|
|
{
|
|
X = x;
|
|
Y = y;
|
|
Z = z;
|
|
W = w;
|
|
}
|
|
}
|
|
|