Loading...
Searching...
No Matches
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.
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.
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 (OptionalJacobian< 2, 3 > H=boost::none) const
| Return the normal.
double | distance (OptionalJacobian< 1, 3 > H=boost::none) 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 }

## Member Function Documentation

## 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:

- /build/gtsam-gchP9J/gtsam-4.2.2+dfsg/gtsam/geometry/OrientedPlane3.h
- /build/gtsam-gchP9J/gtsam-4.2.2+dfsg/gtsam/geometry/OrientedPlane3.cpp