#include <hpp/constraints/convex-shape.hh>
◆ ConvexShape() [1/4]
Represent a convex shape.
- Parameters
-
pts | a sequence of points lying in a plane. The convex shape is obtained by connecting consecutive points (in a circular way) |
- Note
- There is no convexity check yet. The order is important: The normal is parallel to (pts[1] - pts[0]).cross (pts[2] - pts[1]) The normal to the segment in the plane are directed outward. (pts[i+1] - pts[i]).cross (normalToConvexShape)
◆ ConvexShape() [2/4]
hpp::constraints::ConvexShape::ConvexShape |
( |
const fcl::TriangleP & |
t, |
|
|
const JointPtr_t & |
joint = JointPtr_t() |
|
) |
| |
|
inline |
◆ ConvexShape() [3/4]
This constructor is required for compatibility with deprecated Triangle constructor.
◆ ConvexShape() [4/4]
hpp::constraints::ConvexShape::ConvexShape |
( |
const ConvexShape & |
t | ) |
|
|
inline |
◆ alignedPositionInJoint()
const Transform3f& hpp::constraints::ConvexShape::alignedPositionInJoint |
( |
| ) |
const |
|
inline |
◆ center()
const vector3_t& hpp::constraints::ConvexShape::center |
( |
| ) |
const |
|
inline |
Return the center in world frame.
◆ computeAlignedPosition()
void hpp::constraints::ConvexShape::computeAlignedPosition |
( |
vector3_t |
yaxis | ) |
const |
|
inline |
◆ distance()
Return the shortest distance from a point to the shape A negative value means the point is inside the shape.
- Parameters
-
A | a point already in the plane containing the convex shape, and expressed in the global frame. |
References Eigen::assert(), and Eigen::d.
◆ intersection()
◆ intersectionLocal()
◆ isInside() [1/2]
bool hpp::constraints::ConvexShape::isInside |
( |
const vector3_t & |
A, |
|
|
const vector3_t & |
u |
|
) |
| const |
|
inline |
Check whether the intersection of the line defined by A and u onto the plane containing the triangle is inside the triangle.
References Eigen::assert().
◆ isInside() [2/2]
bool hpp::constraints::ConvexShape::isInside |
( |
const vector3_t & |
Ap | ) |
const |
|
inline |
◆ isInsideLocal()
bool hpp::constraints::ConvexShape::isInsideLocal |
( |
const vector3_t & |
Ap | ) |
const |
|
inline |
As isInside but consider A as expressed in joint frame.
References Eigen::assert().
◆ normal()
const vector3_t& hpp::constraints::ConvexShape::normal |
( |
| ) |
const |
|
inline |
◆ planeXaxis()
const vector3_t& hpp::constraints::ConvexShape::planeXaxis |
( |
| ) |
const |
|
inline |
Return the X axis of the plane in the joint frame.
References Eigen::assert().
◆ planeYaxis()
const vector3_t& hpp::constraints::ConvexShape::planeYaxis |
( |
| ) |
const |
|
inline |
Return the Y axis of the plane in the joint frame The Y axis is aligned with \( Pts_[1] - Pts_[0] \).
References Eigen::assert().
◆ positionInJoint()
const Transform3f& hpp::constraints::ConvexShape::positionInJoint |
( |
| ) |
const |
|
inline |
Transform of the shape in the joint frame.
◆ reverse()
void hpp::constraints::ConvexShape::reverse |
( |
| ) |
|
|
inline |
◆ updateToCurrentTransform()
void hpp::constraints::ConvexShape::updateToCurrentTransform |
( |
| ) |
const |
|
inline |
◆ C_
the center in the joint frame. It is constant.
◆ joint_
◆ Ls_
vector_t hpp::constraints::ConvexShape::Ls_ |
◆ MinJoint_
◆ N_
the normal to the shape in the joint frame. It is constant.
◆ Ns_
std::vector<vector3_t> hpp::constraints::ConvexShape::Ns_ |
Ns_ and Us_ are unit vector, in the plane containing the shape, expressed in the joint frame.
Ns_[i] is normal to edge i, pointing inside. Ns_[i] is a vector director of edge i.
◆ Pts_
std::vector<vector3_t> hpp::constraints::ConvexShape::Pts_ |
The points in the joint frame. It is constant.
◆ shapeDimension_
size_t hpp::constraints::ConvexShape::shapeDimension_ |
◆ Us_
std::vector<vector3_t> hpp::constraints::ConvexShape::Us_ |