Assignments Assignments

Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
Ray::StaticAffineShape Class Reference

`#include <shapeList.h>`

Inheritance diagram for Ray::StaticAffineShape:

## Public Member Functions
| StaticAffineShape (void)
void | set (Util::Matrix4D m)
std::string | name (void) const
void | init (const class LocalSceneData &data)
void | initOpenGL (void)
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 | 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
Util::Matrix4D | _localTransform
Util::Matrix4D | _inverseTransform
Util::Matrix3D | _normalTransform

## 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< bool(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 constant.

## Constructor & Destructor Documentation

## ◆ StaticAffineShape()

StaticAffineShape::StaticAffineShape | ( | void |  | ) |

The default constructor

## Member Function Documentation

## ◆ _read()

void StaticAffineShape::_read | ( | std::istream & | stream | ) |
| private virtual

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

Implements Ray::Shape.

## ◆ _write()

void StaticAffineShape::_write | ( | std::ostream & | stream | ) | const
| private virtual

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

Implements Ray::Shape.

## ◆ Directive()

static std::string Ray::StaticAffineShape::Directive | ( | void |  | ) |
| inline static

This static method returns the directive describing the shape.

## ◆ getInverseMatrix()

Matrix4D StaticAffineShape::getInverseMatrix | ( | void |  | ) | const
| virtual

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

Implements Ray::AffineShape.

## ◆ getMatrix()

Matrix4D StaticAffineShape::getMatrix | ( | void |  | ) | const
| virtual

This method returns the transformation associated with the list.

Implements Ray::AffineShape.

## ◆ getNormalMatrix()

Matrix3D StaticAffineShape::getNormalMatrix | ( | void |  | ) | const
| virtual

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

Implements Ray::AffineShape.

## ◆ init()

void StaticAffineShape::init | ( | const class LocalSceneData & | data | ) |
| virtual

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

Implements Ray::Shape.

## ◆ initOpenGL()

void StaticAffineShape::initOpenGL | ( | void |  | ) |
| virtual

This method should be called (once) after an OpenGL context has been created

Reimplemented from Ray::AffineShape.

## ◆ name()

std::string Ray::StaticAffineShape::name | ( | void |  | ) | const
| inline virtual

This method returns the name of the shape

Implements Ray::Shape.

## ◆ set()

void StaticAffineShape::set | ( | Util::Matrix4D | m | ) |

This method initializes the transform with the prescribed matrix.

## Member Data Documentation

## ◆ _inverseTransform

Util::Matrix4D Ray::StaticAffineShape::_inverseTransform
| private

The inverse of the static transformation associated to the shape

## ◆ _localTransform

Util::Matrix4D Ray::StaticAffineShape::_localTransform
| private

The static transformation associated to the shape

## ◆ _normalTransform

Util::Matrix3D Ray::StaticAffineShape::_normalTransform
| private

The static normal transformation associated to the shape

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

- Assignments/Ray/shapeList.h
- Assignments/Ray/shapeList.cpp
- Assignments/Ray/shapeList.todo.cpp