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

Subclass that implements a SphereProxy. More...

#include <RenderProxy.h>

+ Inheritance diagram for agxRender::SphereProxy:

Public Member Functions

 SphereProxy ()
 
 SphereProxy (float radius)
 
const agxCollide::Sphere * getCastShape () const
 
float getRadius () const
 
void set (float radius)
 
- 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 ~SphereProxy ()=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_radius
 
- 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 SphereProxy.

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

Constructor & Destructor Documentation

◆ SphereProxy() [1/2]

agxRender::SphereProxy::SphereProxy ( )

◆ SphereProxy() [2/2]

agxRender::SphereProxy::SphereProxy ( float  radius)

◆ ~SphereProxy()

virtual agxRender::SphereProxy::~SphereProxy ( )
protectedvirtualdefault

Reimplemented in agxOSG::SphereProxy.

Member Function Documentation

◆ getCastShape()

const agxCollide::Sphere * agxRender::SphereProxy::getCastShape ( ) const
Returns
the shape pointer cast to a Sphere

◆ getRadius()

float agxRender::SphereProxy::getRadius ( ) const

◆ set()

void agxRender::SphereProxy::set ( float  radius)

◆ synchronizeParameters()

void agxRender::SphereProxy::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_radius

float agxRender::SphereProxy::m_radius
protected

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


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