Assignments
Assignments
Ray::DynamicAffineShape Class Reference

#include <shapeList.h>

Inheritance diagram for Ray::DynamicAffineShape:
Ray::AffineShape Ray::Shape

Public Member Functions

 DynamicAffineShape (void)
 
std::string name (void) const
 
void init (const class LocalSceneData &data)
 
Util::Matrix4D getMatrix (void) const
 
Util::Matrix4D getInverseMatrix (void) const
 
Util::Matrix3D getNormalMatrix (void) const
 
- Public Member Functions inherited from Ray::AffineShape
 AffineShape (void)
 
void initOpenGL (void)
 
void updateBoundingBox (void)
 
bool processFirstIntersection (const Util::Ray3D &ray, const Util::BoundingBox1D &range, const RayIntersectionFilter &rFilter, const RayIntersectionKernel &rKernel, ShapeProcessingInfo spInfo, unsigned int tIdx) const
 
int processAllIntersections (const Util::Ray3D &ray, const Util::BoundingBox1D &range, const RayIntersectionFilter &rFilter, const RayIntersectionKernel &rKernel, ShapeProcessingInfo spInfo, unsigned int tIdx) const
 
void processOverlapping (const Filter &filter, const Kernel &kernel, ShapeProcessingInfo tInfo) const
 
virtual bool isInside (Util::Point3D p) const
 
virtual void drawOpenGL (GLSLProgram *glslProgram) const
 
- Public Member Functions inherited from Ray::Shape
virtual ~Shape (void)
 
ShapeBoundingBox boundingBox (void) const
 
virtual void addTrianglesOpenGL (std::vector< class TriangleIndex > &triangles)
 
size_t primitiveNum (void) const
 

Static Public Member Functions

static std::string Directive (void)
 
- Static Public Member Functions inherited from Ray::Shape
static void WriteInset (std::ostream &stream)
 

Private Member Functions

void _write (std::ostream &stream) const
 
void _read (std::istream &stream)
 

Private Attributes

std::string _paramName
 
const Util::Matrix4D_matrix
 

Additional Inherited Members

- Public Types inherited from Ray::Shape
typedef std::function< ShapeProcessingInfo::ProcessingType(const ShapeProcessingInfo &, const Shape &) > Filter
 
typedef std::function< void(const ShapeProcessingInfo &, const Shape &) > Kernel
 
typedef std::function< bool(double) > RayIntersectionFilter
 
typedef std::function< void(const ShapeProcessingInfo &, const class RayShapeIntersectionInfo &) > RayIntersectionKernel
 
- Static Public Attributes inherited from Ray::Shape
static unsigned int OpenGLTessellationComplexity
 
static unsigned int WriteInsetSize = 0
 
- Protected Attributes inherited from Ray::AffineShape
Shape_shape
 
- Protected Attributes inherited from Ray::Shape
ShapeBoundingBox _bBox
 
size_t _primitiveNum
 

Detailed Description

This class derived from AffineShape represents a shape in the scene graph whose transformation matrix is prameterized.

Constructor & Destructor Documentation

◆ DynamicAffineShape()

DynamicAffineShape::DynamicAffineShape ( void  )

The default constructor

Member Function Documentation

◆ _read()

void DynamicAffineShape::_read ( std::istream &  stream)
privatevirtual

This method reads the Shape from the stream (excluding the starting directive)

Implements Ray::Shape.

◆ _write()

void DynamicAffineShape::_write ( std::ostream &  stream) const
privatevirtual

This method writes the Shape into the stream (including the starting directive)

Implements Ray::Shape.

◆ Directive()

static std::string Ray::DynamicAffineShape::Directive ( void  )
inlinestatic

This static method returns the directive describing the shape.

◆ getInverseMatrix()

Matrix4D DynamicAffineShape::getInverseMatrix ( void  ) const
virtual

This method returns the inverse of the transformation associated with the list.

Implements Ray::AffineShape.

◆ getMatrix()

Matrix4D DynamicAffineShape::getMatrix ( void  ) const
virtual

This method returns the transformation associated with the list.

Implements Ray::AffineShape.

◆ getNormalMatrix()

Matrix3D DynamicAffineShape::getNormalMatrix ( void  ) const
virtual

This method returns the transformation that acts on the surface normals.

Implements Ray::AffineShape.

◆ init()

void DynamicAffineShape::init ( const class LocalSceneData data)
virtual

This method should be called (once) immediately after setting up the scene graph

Implements Ray::Shape.

◆ name()

std::string Ray::DynamicAffineShape::name ( void  ) const
inlinevirtual

This method returns the name of the shape

Implements Ray::Shape.

Member Data Documentation

◆ _matrix

const Util::Matrix4D* Ray::DynamicAffineShape::_matrix
private

A pointer to the matrix storing the current transformation

◆ _paramName

std::string Ray::DynamicAffineShape::_paramName
private

The name of the parameter associated with the dynamic transformation


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