The "multi-shape" shape configuration. More...
#include <playrho/d2/MultiShapeConf.hpp>
Public Member Functions | |
MultiShapeConf & | AddConvexHull (const VertexSet &pointSet, NonNegative< Length > vertexRadius=GetDefaultVertexRadius()) |
MultiShapeConf & | Rotate (const UnitVec &value) |
Rotates all the vertices by the given amount. | |
MultiShapeConf & | Scale (const Vec2 &value) |
Scales all the vertices by the given amount. | |
MultiShapeConf & | Translate (const Length2 &value) |
Translates all the vertices by the given amount. | |
Public Member Functions inherited from playrho::d2::ShapeBuilder< MultiShapeConf > | |
constexpr MultiShapeConf & | UseDensity (NonNegative< AreaDensity > value) noexcept |
Uses the given density. | |
constexpr MultiShapeConf & | UseFilter (Filter value) noexcept |
Uses the given filter. | |
constexpr MultiShapeConf & | UseFriction (NonNegative< Real > value) noexcept |
Uses the given friction. | |
constexpr MultiShapeConf & | UseIsSensor (bool value) noexcept |
Uses the given is-sensor value. | |
constexpr MultiShapeConf & | UseRestitution (Finite< Real > value) noexcept |
Uses the given restitution. | |
Static Public Member Functions | |
static MultiShapeConf | GetDefaultConf () noexcept |
Gets the default configuration for a MultiShapeConf . | |
static constexpr NonNegative< Length > | GetDefaultVertexRadius () noexcept |
Gets the default vertex radius for the MultiShapeConf . More... | |
Public Attributes | |
std::vector< ConvexHull > | children |
Children. | |
Public Attributes inherited from playrho::d2::BaseShapeConf | |
NonNegative< AreaDensity > | density = DefaultDensity |
Area density of the associated shape. More... | |
Filter | filter = DefaultFilter |
Filtering data for contacts. | |
NonNegative< Real > | friction = DefaultFriction |
Friction coefficient. More... | |
bool | isSensor = DefaultIsSensor |
A sensor shape collects contact information but never generates a collision response. | |
Finite< Real > | restitution = DefaultRestitution |
Restitution (elasticity) of the associated shape. More... | |
Static Public Attributes | |
static constexpr auto | DefaultVertexRadius = NonNegative<Length>{DefaultLinearSlop * 2} |
Default vertex radius. | |
Static Public Attributes inherited from playrho::d2::BaseShapeConf | |
static constexpr auto | DefaultDensity = NonNegative<AreaDensity>{0_kgpm2} |
Default density value. | |
static constexpr auto | DefaultFilter = Filter{} |
Default filter value. | |
static constexpr auto | DefaultFriction = NonNegative<Real>{Real{2} / Real{10}} |
Default friction value. | |
static constexpr auto | DefaultIsSensor = false |
Default is-sensor value. | |
static const auto | DefaultRestitution = Finite<Real>{} |
Default restitution value. | |
Additional Inherited Members | |
Related Functions inherited from playrho::d2::BaseShapeConf | |
constexpr NonNegative< AreaDensity > | GetDensity (const BaseShapeConf &arg) noexcept |
Gets the density of the given shape configuration. | |
constexpr Filter | GetFilter (const BaseShapeConf &arg) noexcept |
Gets the filter of the given shape configuration. | |
constexpr NonNegativeFF< Real > | GetFriction (const BaseShapeConf &arg) noexcept |
Gets the friction of the given shape. | |
constexpr Finite< Real > | GetRestitution (const BaseShapeConf &arg) noexcept |
Gets the restitution of the given shape. | |
constexpr bool | IsSensor (const BaseShapeConf &arg) noexcept |
Gets the is-sensor state of the given shape configuration. | |
void | SetDensity (BaseShapeConf &arg, NonNegative< AreaDensity > value) |
Sets the density of the given shape configuration. | |
void | SetFilter (BaseShapeConf &arg, Filter value) |
Sets the filter of the given shape configuration. | |
void | SetFriction (BaseShapeConf &arg, NonNegative< Real > value) |
Sets the friction of the given shape. | |
void | SetRestitution (BaseShapeConf &arg, Real value) noexcept |
Sets the restitution of the given shape. | |
void | SetSensor (BaseShapeConf &arg, bool value) |
Sets the is-sensor state of the given shape configuration. | |
The "multi-shape" shape configuration.
Composes zero or more convex shapes into what can be a concave shape.
MultiShapeConf & playrho::d2::MultiShapeConf::AddConvexHull | ( | const VertexSet & | pointSet, |
NonNegative< Length > | vertexRadius = GetDefaultVertexRadius() |
||
) |
Creates a convex hull from the given set of local points. The size of the set must be in the range [1, MaxShapeVertices
].
|
inlinestaticconstexprnoexcept |
Gets the default vertex radius for the MultiShapeConf
.
DefaultVertexRadius
directly. DefaultVertexRadius
.