gtsam 4.1.1 gtsam
gtsam::OrientedPlane3 Class Reference

## Detailed Description

Represents an infinite plane in 3D, which is composed of a planar normal and its perpendicular distance to the origin.

Currently it provides a transform of the plane, and a norm 1 differencing of two planes. Refer to Trevor12iros for more math details.

## Public Member Functions

OrientedPlane3 transform (const Pose3 &xr, OptionalJacobian< 3, 3 > Hp=boost::none, OptionalJacobian< 3, 6 > Hr=boost::none) const
Transforms a plane to the specified pose. More...

Vector3 errorVector (const OrientedPlane3 &other, OptionalJacobian< 3, 3 > H1=boost::none, OptionalJacobian< 3, 3 > H2=boost::none) const
Computes the error between the two planes, with derivatives. More...

size_t dim () const
Dimensionality of tangent space = 3 DOF.

OrientedPlane3 retract (const Vector3 &v, OptionalJacobian< 3, 3 > H=boost::none) const
The retract function.

Vector3 localCoordinates (const OrientedPlane3 &s) const
The local coordinates function.

Vector4 planeCoefficients () const
Returns the plane coefficients.

Unit3 normal () const
Return the normal.

double distance () const
Return the perpendicular distance to the origin.

Constructors
OrientedPlane3 ()
Default constructor.

OrientedPlane3 (const Unit3 &n, double d)
Construct from a Unit3 and a distance.

OrientedPlane3 (const Vector4 &vec)
Construct from a vector of plane coefficients.

OrientedPlane3 (double a, double b, double c, double d)
Construct from four numbers of plane coeffcients (a, b, c, d)

Testable
void print (const std::string &s=std::string()) const
The print function.

bool equals (const OrientedPlane3 &s, double tol=1e-9) const
The equals function with tolerance.

## Static Public Member Functions

static size_t Dim ()
Dimensionality of tangent space = 3 DOF.

## Public Types

enum  { dimension = 3 }

## ◆ errorVector()

 Vector3 gtsam::OrientedPlane3::errorVector ( const OrientedPlane3 & other, OptionalJacobian< 3, 3 > H1 = boost::none, OptionalJacobian< 3, 3 > H2 = boost::none ) const

Computes the error between the two planes, with derivatives.

This uses Unit3::errorVector, as opposed to the other .error() in this class, which uses Unit3::localCoordinates. This one has correct derivatives. NOTE(hayk): The derivatives are zero when normals are exactly orthogonal.

Parameters
 other the other plane

## ◆ transform()

 OrientedPlane3 gtsam::OrientedPlane3::transform ( const Pose3 & xr, OptionalJacobian< 3, 3 > Hp = boost::none, OptionalJacobian< 3, 6 > Hr = boost::none ) const

Transforms a plane to the specified pose.

Parameters
 xr a transformation in current coordiante Hp optional Jacobian wrpt the destination plane Hr optional jacobian wrpt the pose transformation
Returns
the transformed plane

The documentation for this class was generated from the following files:
• /Users/dellaert/git/github/gtsam/geometry/OrientedPlane3.h
• /Users/dellaert/git/github/gtsam/geometry/OrientedPlane3.cpp