Internal shape concept interface. More...
#include <playrho/d2/detail/ShapeConcept.hpp>
Public Member Functions | |
virtual std::unique_ptr< ShapeConcept > | Clone_ () const =0 |
Clones this concept and returns a pointer to a mutable copy. More... | |
virtual DistanceProxy | GetChild_ (ChildCounter index) const =0 |
Gets the "child" specified by the given index. | |
virtual ChildCounter | GetChildCount_ () const noexcept=0 |
Gets the "child" count. | |
virtual const void * | GetData_ () const noexcept=0 |
Gets the data for the underlying configuration. | |
virtual NonNegative< AreaDensity > | GetDensity_ () const noexcept=0 |
Gets the density. | |
virtual Filter | GetFilter_ () const noexcept=0 |
Gets the filter. More... | |
virtual NonNegativeFF< Real > | GetFriction_ () const noexcept=0 |
Gets the friction. | |
virtual MassData | GetMassData_ () const =0 |
Gets the mass data. | |
virtual Real | GetRestitution_ () const noexcept=0 |
Gets the restitution. | |
virtual TypeID | GetType_ () const noexcept=0 |
Gets the use type information. More... | |
virtual NonNegative< Length > | GetVertexRadius_ (ChildCounter idx) const =0 |
Gets the vertex radius. More... | |
virtual bool | IsEqual_ (const ShapeConcept &other) const noexcept=0 |
Equality checking function. | |
virtual bool | IsSensor_ () const noexcept=0 |
Gets whether or not this shape is a sensor. More... | |
virtual void | Rotate_ (const UnitVec &value)=0 |
Rotates all of the shape's vertices by the given amount. | |
virtual void | Scale_ (const Vec2 &value)=0 |
Scales all of the shape's vertices by the given amount. | |
virtual void | SetDensity_ (NonNegative< AreaDensity >) noexcept=0 |
Sets the density. | |
virtual void | SetFilter_ (Filter value)=0 |
Sets the filter. More... | |
virtual void | SetFriction_ (NonNegative< Real > value)=0 |
Sets the friction. | |
virtual void | SetRestitution_ (Real value)=0 |
Sets the restitution. | |
virtual void | SetSensor_ (bool value)=0 |
Sets whether or not this shape is a sensor. More... | |
virtual void | SetVertexRadius_ (ChildCounter idx, NonNegative< Length > value)=0 |
Sets the vertex radius. More... | |
virtual void | Translate_ (const Length2 &value)=0 |
Translates all of the shape's vertices by the given amount. | |
Internal shape concept interface.
Provides an internal pure virtual interface for runtime value polymorphism.
|
pure virtual |
Clones this concept and returns a pointer to a mutable copy.
std::bad_alloc
or any exception that's thrown by the constructor for the model's underlying data type. std::bad_alloc | if there's a failure allocating storage. |
Implemented in playrho::d2::detail::ShapeModel< T >.
|
pure virtualnoexcept |
|
pure virtualnoexcept |
Gets the use type information.
Implemented in playrho::d2::detail::ShapeModel< T >.
|
pure virtual |
Gets the vertex radius.
idx | Child index to get vertex radius for. |
Implemented in playrho::d2::detail::ShapeModel< T >.
|
pure virtualnoexcept |
Gets whether or not this shape is a sensor.
Implemented in playrho::d2::detail::ShapeModel< T >.
|
pure virtual |
|
pure virtual |
Sets whether or not this shape is a sensor.
Implemented in playrho::d2::detail::ShapeModel< T >.
|
pure virtual |
Sets the vertex radius.
idx | Child index to set vertex radius for. |
value | Value to set the vertex radius to. |
Implemented in playrho::d2::detail::ShapeModel< T >.