AvogadroLibs 1.97.0
|
The AmbientOcclusionSphereGeometry class contains one or more spheres. More...
#include <ambientocclusionspheregeometry.h>
Public Member Functions | |
AmbientOcclusionSphereGeometry (const AmbientOcclusionSphereGeometry &other) | |
AmbientOcclusionSphereGeometry & | operator= (AmbientOcclusionSphereGeometry) |
void | accept (Visitor &) override |
void | update () |
Update the VBOs, IBOs etc ready for rendering. | |
void | render (const Camera &camera) override |
Render the sphere geometry. More... | |
std::multimap< float, Identifier > | hits (const Vector3f &rayOrigin, const Vector3f &rayEnd, const Vector3f &rayDirection) const override |
void | addSphere (const Vector3f &position, const Vector3ub &color, float radius, size_t index=MaxIndex) |
Core::Array< SphereColor > & | spheres () |
const Core::Array< SphereColor > & | spheres () const |
void | clear () override |
size_t | size () const |
![]() | |
Drawable (const Drawable &other) | |
Drawable & | operator= (Drawable) |
virtual void | accept (Visitor &) |
const GeometryNode * | parent () const |
Get a pointer to the drawable object's parent. More... | |
GeometryNode * | parent () |
void | setVisible (bool visibility) |
Set the visibility of the drawable object. More... | |
bool | isVisible () const |
Get the current visibility of the drawable. More... | |
virtual void | render (const Camera &camera) |
Render the contents of the drawable. More... | |
Identifier & | identifier () |
const Identifier & | identifier () const |
virtual std::multimap< float, Identifier > | hits (const Vector3f &rayOrigin, const Vector3f &rayEnd, const Vector3f &rayDirection) const |
virtual Core::Array< Identifier > | areaHits (const Frustrum &f) const |
virtual void | clear () |
void | setRenderPass (RenderPass pass) |
RenderPass | renderPass () const |
Additional Inherited Members | |
![]() | |
void | setParent (GeometryNode *parent) |
Set the parent node for the node. More... | |
![]() | |
GeometryNode * | m_parent |
bool | m_visible |
RenderPass | m_renderPass |
Identifier | m_identifier |
<avogadro/rendering/ambientocclusionspheregeometry.h>
This Drawable is capable of storing the geometry for one or more spheres. A sphere is defined by a center point, a radius and a color. If the spheres are not a densely packed one-to-one mapping with the objects indices they can also optionally use an identifier that will point to some numeric ID for the purposes of picking.
Unlike the SphereGeometry class, this class also supports ambient occlusion.
|
overridevirtual |
Accept a visit from our friendly visitor.
Reimplemented from Drawable.
|
overridevirtual |
camera | The current camera to be used for rendering. |
Reimplemented from Drawable.
|
overridevirtual |
Return the primitives that are hit by the ray.
rayOrigin | Origin of the ray. |
rayEnd | End point of the ray. |
rayDirection | Normalized direction of the ray. |
Reimplemented from Drawable.
void addSphere | ( | const Vector3f & | position, |
const Vector3ub & | color, | ||
float | radius, | ||
size_t | index = MaxIndex |
||
) |
Add a sphere to the geometry object.
Core::Array< SphereColor > & spheres | ( | ) |
Get a reference to the spheres.
|
overridevirtual |
Clear the contents of the node.
Reimplemented from Drawable.
size_t size | ( | ) | const |
Get the number of spheres in the node object.