ExtrudeSpline /

#includecinder/GeomIo.h

Public Member Functions

  • ExtrudeSpline (const Shape2d &shape, const ci::BSpline< 3, float > &spline, int splineSubdivisions=10, float approximationScale=1.0f)
  • size_t
    getNumVertices () const override
  • size_t
    getNumIndices () const override
  • getPrimitive () const override
  • uint8_t
    getAttribDims (Attrib attr) const override
  • getAvailableAttribs () const override
  • void
    loadInto (Target *target, const AttribSet &requestedAttribs) const override
  • clone () const override

Protected Member Functions

  • void
    updatePathSubdivision ()
  • void
    calculate (std::vector< vec3 > *positions, std::vector< vec3 > *normals, std::vector< vec3 > *texCoords, std::vector< uint32_t > *indices) const
  • void
    forceCopyIndicesTrianglesImpl (T *dest) const

Protected Attributes

  • std::vector< Path2d >
    mPaths
  • std::vector< mat4 >
    mSplineFrames
  • std::vector< float >
    mSplineTimes
  • float
    mApproximationScale
  • float
    mSplineLength
  • bool
    mFrontCap
  • bool
    mBackCap
  • int
    mSubdivisions
  • std::shared_ptr< TriMesh >
    mCap
  • mCapBounds
  • std::function< float(float)>
    mThicknessFn
  • std::vector< std::vector< vec2 > >
    mPathSubdivisionPositions
  • std::vector< std::vector< vec2 > >
    mPathSubdivisionTangents
  • std::vector< float >
    mPathSubdivisionLengths