Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

ImplicitShape Class Reference

Implicit surface shape. More...

#include <ImplicitShape.h>

Inherits Shape.

Inherited by Box, Cone, CSG, Cylinder, Disk, Plane, PolyBezier, PolyLine, Sphere, Torus, and Transformation.

Inheritance diagram for ImplicitShape:

Inheritance graph
[legend]
Collaboration diagram for ImplicitShape:

Collaboration graph
[legend]
List of all members.

Public Types

typedef vector< ImplicitShape * > ImplicitArray

Public Methods

 ImplicitShape ()
virtual ~ImplicitShape ()
virtual real distance (const Vertex3 &v)
Vertex3 normal (const Vertex3 &v)
real intersect (const Ray &ray, real t=step, real T=infinity)
void parseSymbol (Token &t, ObjectFile &file)
 Reads a single parameter sections inside the body of the object description. More...

void writeParams (ostream &stream)
 Writes all parameter sections inside the body of the object description. More...


Static Public Attributes

const real epsilon = 1.0e-8

Protected Methods

void createSymbols ()
 Creates all parameter symbols that are used within the body of the object description.


Protected Attributes

AABoundingBoxbound

Detailed Description

Implicit surface shape.


Member Function Documentation

void ImplicitShape::parseSymbol Token   t,
ObjectFile   file
[virtual]
 

Reads a single parameter sections inside the body of the object description.

Each object has a set of parameter names associated with it, called symbols. Symbols are declared inside the createSymbols method. The method parseSymbol expects the Token t to be such a symbol and reads the corresponding parameters. Unknown symbols are passed to its super class.

Parameters:
t  Token that is the current parameter symbol.
file  ObjectFile from which to read.
Precondition:
The file is opened for reading and is positioned just after the parameter name.
Postcondition:
The parameter section is read including the terminating semicolon (';').

Reimplemented from Shape.

Reimplemented in Box.

void ImplicitShape::writeParams ostream &    stream [virtual]
 

Writes all parameter sections inside the body of the object description.

This method writes all object parameters to ostream. Inhereting classes will always call super::writeParams().

Parameters:
stream  ostream to which to write.
Precondition:
stream is opened for writing.
Postcondition:
All object parameters are written.

Reimplemented from Shape.

Reimplemented in Box.


The documentation for this class was generated from the following files:
This documentation was generated using doxygen. If you have any comments or additions please mail me.