Cinder  0.9.1
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
cinder::geom::BSpline Class Reference

#include <GeomIo.h>

Inherits cinder::geom::Source.

Public Member Functions

template<int D, typename T >
 BSpline (const ci::BSpline< D, T > &spline, int subdivisions)
 
size_t getNumVertices () const override
 
size_t getNumIndices () const override
 
Primitive getPrimitive () const override
 
uint8_t getAttribDims (Attrib attr) const override
 
AttribSet getAvailableAttribs () const override
 
void loadInto (Target *target, const AttribSet &requestedAttribs) const override
 
BSplineclone () const override
 
template<int D, typename T >
 BSpline (int numControlPoints, const typename BSpline< D, T >::VecT *controlPoints, int degree, bool loop, const float *knots)
 

Protected Member Functions

template<typename T >
void init (const ci::BSpline< 2, T > &spline, int subdivisions)
 
template<typename T >
void init (const ci::BSpline< 3, T > &spline, int subdivisions)
 
template<typename T >
void init (const ci::BSpline< 4, T > &spline, int subdivisions)
 
void copyIndicesNonIndexed (uint16_t *dest) const
 
void copyIndicesNonIndexed (uint32_t *dest) const
 
template<typename T >
void forceCopyIndicesTrianglesImpl (T *dest) const
 

Protected Attributes

int mPositionDims
 
size_t mNumVertices
 
std::vector< float > mPositions
 
std::vector< vec3 > mNormals
 

Detailed Description

Converts a BSpline into a LINE_STRIP.

Constructor & Destructor Documentation

template<int D, typename T >
cinder::geom::BSpline::BSpline ( const ci::BSpline< D, T > &  spline,
int  subdivisions 
)
template<int D, typename T >
cinder::geom::BSpline::BSpline ( int  numControlPoints,
const typename BSpline< D, T >::VecT *  controlPoints,
int  degree,
bool  loop,
const float *  knots 
)

Member Function Documentation

size_t cinder::geom::BSpline::getNumVertices ( ) const
overridevirtual

Implements cinder::geom::Source.

size_t cinder::geom::BSpline::getNumIndices ( ) const
overridevirtual

Implements cinder::geom::Source.

Primitive cinder::geom::BSpline::getPrimitive ( ) const
overridevirtual

Implements cinder::geom::Source.

uint8_t cinder::geom::BSpline::getAttribDims ( Attrib  attr) const
overridevirtual

Implements cinder::geom::Source.

AttribSet cinder::geom::BSpline::getAvailableAttribs ( ) const
overridevirtual

Implements cinder::geom::Source.

void cinder::geom::BSpline::loadInto ( Target target,
const AttribSet requestedAttribs 
) const
overridevirtual

Implements cinder::geom::Source.

BSpline* cinder::geom::BSpline::clone ( ) const
overridevirtual

Implements cinder::geom::Source.

template<typename T >
void cinder::geom::BSpline::init ( const ci::BSpline< 2, T > &  spline,
int  subdivisions 
)
protected
template<typename T >
void cinder::geom::BSpline::init ( const ci::BSpline< 3, T > &  spline,
int  subdivisions 
)
protected
template<typename T >
void cinder::geom::BSpline::init ( const ci::BSpline< 4, T > &  spline,
int  subdivisions 
)
protected
void cinder::geom::Source::copyIndicesNonIndexed ( uint16_t *  dest) const
protectedinherited

Builds a sequential list of vertices to simulate an indexed geometry when Source is non-indexed. Assumes dest contains storage for getNumVertices() entries.

void cinder::geom::Source::copyIndicesNonIndexed ( uint32_t *  dest) const
protectedinherited

Builds a sequential list of vertices to simulate an indexed geometry when Source is non-indexed. Assumes dest contains storage for getNumVertices() entries.

template<typename T >
void cinder::geom::Source::forceCopyIndicesTrianglesImpl ( T *  dest) const
protectedinherited

Member Data Documentation

int cinder::geom::BSpline::mPositionDims
protected
size_t cinder::geom::BSpline::mNumVertices
protected
std::vector<float> cinder::geom::BSpline::mPositions
protected
std::vector<vec3> cinder::geom::BSpline::mNormals
protected

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