HyperspaceExplorer 0.7.1
Public Member Functions
Extrude< D, Dmin, Dmax > Class Template Reference

A class template to execute extrusion actions on an object. More...

#include <Extrude.h>

List of all members.

Public Member Functions

 Extrude ()
 Create an Extrude object from a point.
 Extrude (const VertexData< D > &v)
 Create an Extrude object from an already existing object.

Detailed Description

template<unsigned D, unsigned Dmin, unsigned Dmax>
class Extrude< D, Dmin, Dmax >

A class template to execute extrusion actions on an object.

The vertex array of the object is extrudeded into a set of consecutive dimensions.

As I find the concept hard to explain in words, let me give a few examples to illustrate the idea:

A line in four-space. A point is extruded along dimension 0 (x ).

A point is extruded into two dimensions, giving a square.

The square is extruded into the third dimension to a cube.

  Taper<4, 1, 1> triangle(line);
  Extrude<4, 2, 2> prism;

A line is tapered into a triangle, and then extruded to become a prism.

 Extrude<4, 0, 3> tesseract; 

Extruding a point i four dimensions gives a hypercube or tesseract.

Template Parameters:
DDimension of the vector space we're working in
DminFirst of the set of dimensions being tapered into
DmaxLast of the set of dimensions being tapered into
Author:
Helge Preuss <lene.preuss@gmail.com>

Constructor & Destructor Documentation

template<unsigned D, unsigned Dmin, unsigned Dmax>
Extrude< D, Dmin, Dmax >::Extrude ( ) [inline]

Create an Extrude object from a point.

Todo:
Guard against bad template parameters:

- Dmin >= Dmax

  • Dmin or Dmax >= D
  • Dmin or Dmax >= vertex_data::_dimension
  • vertex_data::_dimension == 0
template<unsigned D, unsigned Dmin, unsigned Dmax>
Extrude< D, Dmin, Dmax >::Extrude ( const VertexData< D > &  v) [inline]

Create an Extrude object from an already existing object.

Todo:
Guard against bad template parameters:

- Dmin >= Dmax

  • Dmin or Dmax >= D
  • Dmin or Dmax >= vertex_data::_dimension
  • vertex_data::_dimension == 0

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends

Generated on Mon Apr 9 2012 20:25:17 for HyperspaceExplorer 0.7.1 by doxygen 1.7.4  -  Hosted bySourceForge.net Logo