AGX Dynamics 2.42.3.0
Loading...
Searching...
No Matches
agxRender::HollowConeProxy Class Reference

Subclass that implements a HollowConeProxy. More...

#include <RenderProxy.h>

+ Inheritance diagram for agxRender::HollowConeProxy:

Public Member Functions

 HollowConeProxy ()
 
 HollowConeProxy (const agx::Vec3 &begin, const agx::Vec3 &end, float topRadius, float bottomRadius, float thickness)
 
 HollowConeProxy (float topRadius, float bottomRadius, float height, float thickness)
 
float getBottomRadius () const
 
const agxCollide::HollowCone * getCastShape () const
 
float getHeight () const
 
float getThickness () const
 
float getTopRadius () const
 
void set (const agx::Vec3 &top, const agx::Vec3 &bottom, float topRadius, float bottomRadius, float thickness)
 
void set (float topRadius, float bottomRadius, float height, float thickness)
 
- Public Member Functions inherited from agxRender::RenderProxy
 RenderProxy (agxCollide::Shape *shape=nullptr)
 Constructor.
 
void callOnChange (EventType type)
 Explicitly fires event of type.
 
bool compare () const
 Compare the modified count with its associated shape.
 
virtual float getAlpha () const
 
virtual agx::Vec3 getColor () const
 
bool getEnable () const
 
const agxCollide::Geometry * getGeometry () const
 
agx::UInt32 getModifiedCount () const
 This value tells us that if the proxy is synchronized with the associated shape.
 
RenderMode getRenderMode () const
 
const agxCollide::Shape * getShape () const
 
const agx::AffineMatrix4x4 & getTransform () const
 
bool isEnabled () const
 
virtual void reset ()
 Will reset color, alpha and enabled state back to default state (as when initially created).
 
virtual void setAlpha (float alpha)
 Set the alpha value of this proxy.
 
virtual void setColor (const agx::Vec3 &color)
 Set the color of this proxy.
 
void setEnable (bool flag)
 Toggle this proxy for rendering on/off.
 
void setRenderMode (RenderMode mode)
 Set the render mode for this Proxy.
 
void setShape (agxCollide::Shape *shape, const agxCollide::Geometry *geometry)
 Set the shape for this proxy.
 
virtual void setTransform (const agx::AffineMatrix4x4 &transform)
 Set the transform of this RenderProxy, if overridden, set the m_transform and call onUpdate(TRANSFORM)
 
virtual bool updateShape ()
 Called when a Shape has been changed (for example radius on a sphere is changed).
 
- Public Member Functions inherited from agx::Referenced
 Referenced ()
 Default constructor.
 
 Referenced (const Referenced &)
 
template<typename T >
T * as ()
 Subclass casting.
 
template<typename T >
const T * as () const
 
template<typename T >
T * asSafe ()
 Safe subclass casting, return nullptr if template type does not match.
 
template<typename T >
const T * asSafe () const
 
int getReferenceCount () const
 
template<typename T >
bool is () const
 Subclass test.
 
Referenced & operator= (const Referenced &)
 Assignment operator. Will increment the number of references to the referenced object.
 
void reference (void *ptr=nullptr) const
 Explicitly increment the reference count by one, indicating that this object has another pointer which is referencing it.
 
void unreference (void *ptr=nullptr) const
 Decrement the reference count by one, indicating that a pointer to this object is referencing it.
 
void unreference_nodelete () const
 Decrement the reference count by one, indicating that a pointer to this object is referencing it.
 

Protected Member Functions

virtual ~HollowConeProxy ()=default
 
void synchronizeParameters ()
 This method should be implemented so that it extracts size parameters from an associated shape and store it in the Proxy parameters (radius/length etc).
 
- Protected Member Functions inherited from agxRender::RenderProxy
virtual ~RenderProxy ()
 Destructor.
 
virtual void onChange (EventType)
 Pure virtual method that should response on the different events.
 
void setBeginToEndTransform (const agx::Vec3 &begin, const agx::Vec3 &end, float &retHeight, bool signalShapeChanged, bool offsetHalfHeight=true)
 Calculates and sets the transform given begin and end points.
 
void setModifiedCount (agx::UInt32 c)
 
virtual void synchronizeParameters ()
 This method should be implemented so that it extracts size parameters from an associated shape and store it in the Proxy parameters (radius/length etc).
 
- Protected Member Functions inherited from agx::Referenced
virtual ~Referenced ()
 Destructor.
 
void allocateObserverVector () const
 
void deleteUsingDeleteHandler () const
 

Protected Attributes

float m_bottomRadius
 
float m_height
 
float m_thickness
 
float m_topRadius
 
- Protected Attributes inherited from agxRender::RenderProxy
agx::observer_ptr< agxCollide::Shape > m_shape
 
agx::AffineMatrix4x4 m_transform
 
- Protected Attributes inherited from agx::Referenced
Mutex m_mutex
 
ObserverContainer m_observers
 
AtomicValue m_refCount
 

Additional Inherited Members

- Public Types inherited from agxRender::RenderProxy
enum  EventType {
  ENABLE , TRANSFORM , ALPHA , COLOR ,
  SHAPE , REMOVE , RENDERMODE
}
 Enum for specifying a type of event which might change a RenderProxy. More...
 
enum  RenderMode { NOT_SET = 0x0 , SOLID = 0x1 , WIREFRAME = 0x2 }
 
- Static Public Member Functions inherited from agxRender::RenderProxy
static agx::Bool shouldRender (const agx::RigidBody *rb)
 
- Static Public Member Functions inherited from agx::Referenced
template<typename T >
static bool ValidateCast (const Referenced *object)
 
- Static Protected Member Functions inherited from agx::Referenced
static DeleteHandler * getDeleteHandler ()
 
static void setDeleteHandler (DeleteHandler *handler)
 Internal: Set a DeleteHandler to which deletion of all referenced counted objects will be delegated to.
 

Detailed Description

Subclass that implements a HollowConeProxy.

Definition at line 454 of file agxRender/RenderProxy.h.

Constructor & Destructor Documentation

◆ HollowConeProxy() [1/3]

agxRender::HollowConeProxy::HollowConeProxy ( )

◆ HollowConeProxy() [2/3]

agxRender::HollowConeProxy::HollowConeProxy ( float  topRadius,
float  bottomRadius,
float  height,
float  thickness 
)

◆ HollowConeProxy() [3/3]

agxRender::HollowConeProxy::HollowConeProxy ( const agx::Vec3 &  begin,
const agx::Vec3 &  end,
float  topRadius,
float  bottomRadius,
float  thickness 
)

◆ ~HollowConeProxy()

virtual agxRender::HollowConeProxy::~HollowConeProxy ( )
protectedvirtualdefault

Reimplemented in agxOSG::HollowConeProxy.

Member Function Documentation

◆ getBottomRadius()

float agxRender::HollowConeProxy::getBottomRadius ( ) const
Returns
bottom radius for this proxy

◆ getCastShape()

const agxCollide::HollowCone * agxRender::HollowConeProxy::getCastShape ( ) const
Returns
the shape pointer cast to a Cylinder

◆ getHeight()

float agxRender::HollowConeProxy::getHeight ( ) const
Returns
height of this proxy

◆ getThickness()

float agxRender::HollowConeProxy::getThickness ( ) const
Returns
thicknes for this proxy

◆ getTopRadius()

float agxRender::HollowConeProxy::getTopRadius ( ) const
Returns
top radius of this proxy

◆ set() [1/2]

void agxRender::HollowConeProxy::set ( const agx::Vec3 &  top,
const agx::Vec3 &  bottom,
float  topRadius,
float  bottomRadius,
float  thickness 
)

◆ set() [2/2]

void agxRender::HollowConeProxy::set ( float  topRadius,
float  bottomRadius,
float  height,
float  thickness 
)

◆ synchronizeParameters()

void agxRender::HollowConeProxy::synchronizeParameters ( )
protectedvirtual

This method should be implemented so that it extracts size parameters from an associated shape and store it in the Proxy parameters (radius/length etc).

Reimplemented from agxRender::RenderProxy.

Member Data Documentation

◆ m_bottomRadius

float agxRender::HollowConeProxy::m_bottomRadius
protected

Definition at line 504 of file agxRender/RenderProxy.h.

◆ m_height

float agxRender::HollowConeProxy::m_height
protected

Definition at line 505 of file agxRender/RenderProxy.h.

◆ m_thickness

float agxRender::HollowConeProxy::m_thickness
protected

Definition at line 506 of file agxRender/RenderProxy.h.

◆ m_topRadius

float agxRender::HollowConeProxy::m_topRadius
protected

Definition at line 503 of file agxRender/RenderProxy.h.


The documentation for this class was generated from the following file: