Template Class Convex
Defined in File convex.h
Inheritance Relationships
Base Type
public coal::ConvexBase
(Class ConvexBase)
Derived Type
public boost::serialization::internal::ConvexAccessor< PolygonT >
(Template Struct ConvexAccessor)
Class Documentation
-
template<typename PolygonT>
class Convex : public coal::ConvexBase Convex polytope.
- Template Parameters:
PolygonT – the polygon class. It must have method
size()
andoperator[](int i)
Subclassed by boost::serialization::internal::ConvexAccessor< PolygonT >
Public Functions
-
inline Convex()
Construct an uninitialized convex object.
Constructing a convex, providing normal and offset of each polytype surface, and the points and shape topology information.
Note
num_polygons_ is not the allocated size of polygons_.
- Parameters:
ownStorage – whether this class owns the pointers of points and polygons. If owned, they are deleted upon destruction.
points_ – list of 3D points
num_points_ – number of 3D points
polygons_ – An array of PolygonT object. PolygonT should contains a list of vertices for each polygon, in counter clockwise order.
num_polygons_ – the number of polygons.
-
~Convex()
-
virtual CoalScalar computeVolume() const
compute the volume
Set the current Convex from a list of points and polygons.
Note
num_polygons is not the allocated size of polygons.
- Parameters:
ownStorage – whether this class owns the pointers of points and polygons. If owned, they are deleted upon destruction.
points – list of 3D points
num_points – number of 3D points
polygons – An array of PolygonT object. PolygonT should contains a list of vertices for each polygon, in counter clockwise order.
num_polygons – the number of polygons.
Public Members
-
std::shared_ptr<std::vector<PolygonT>> polygons
An array of PolygonT object. PolygonT should contains a list of vertices for each polygon, in counter clockwise order.
-
unsigned int num_polygons
Protected Functions
-
void fillNeighbors()