LLProfile Class Reference

#include <llvolume.h>

List of all members.

Public Member Functions

 LLProfile ()
 ~LLProfile ()
S32 getTotal () const
S32 getTotalOut () const
BOOL isFlat (S32 face) const
BOOL isOpen () const
void setDirty ()
BOOL generate (const LLProfileParams &params, BOOL path_open, F32 detail=1.0f, S32 split=0, BOOL is_sculpted=FALSE)
BOOL isConcave () const

Public Attributes

std::vector< LLVector3mProfile
std::vector< LLVector2mNormals
std::vector< FacemFaces
std::vector< LLVector3mEdgeNormals
std::vector< LLVector3mEdgeCenters
F32 mMaxX
F32 mMinX

Protected Member Functions

void genNormals (const LLProfileParams &params)
void genNGon (const LLProfileParams &params, S32 sides, F32 offset=0.0f, F32 bevel=0.0f, F32 ang_scale=1.f, S32 split=0)
FaceaddHole (const LLProfileParams &params, BOOL flat, F32 sides, F32 offset, F32 box_hollow, F32 ang_scale, S32 split=0)
FaceaddCap (S16 faceID)
FaceaddFace (S32 index, S32 count, F32 scaleU, S16 faceID, BOOL flat)

Protected Attributes

BOOL mOpen
BOOL mConcave
BOOL mDirty
S32 mTotalOut
S32 mTotal

Friends

std::ostream & operator<< (std::ostream &s, const LLProfile &profile)

Classes

struct  Face


Detailed Description

Definition at line 644 of file llvolume.h.


Constructor & Destructor Documentation

LLProfile::LLProfile (  )  [inline]

Definition at line 647 of file llvolume.h.

LLProfile::~LLProfile (  ) 

Definition at line 1627 of file llvolume.cpp.


Member Function Documentation

S32 LLProfile::getTotal (  )  const [inline]

S32 LLProfile::getTotalOut (  )  const [inline]

Definition at line 659 of file llvolume.h.

Referenced by LLVolume::getNumTriangleIndices(), and LLVolume::getTriangleIndices().

Here is the caller graph for this function:

BOOL LLProfile::isFlat ( S32  face  )  const [inline]

Definition at line 660 of file llvolume.h.

References mCount.

BOOL LLProfile::isOpen (  )  const [inline]

void LLProfile::setDirty (  )  [inline]

Definition at line 662 of file llvolume.h.

References TRUE.

BOOL LLProfile::generate ( const LLProfileParams params,
BOOL  path_open,
F32  detail = 1.0f,
S32  split = 0,
BOOL  is_sculpted = FALSE 
)

BOOL LLProfile::isConcave (  )  const [inline]

Definition at line 664 of file llvolume.h.

Referenced by genNormals().

Here is the caller graph for this function:

void LLProfile::genNormals ( const LLProfileParams params  )  [protected]

void LLProfile::genNGon ( const LLProfileParams params,
S32  sides,
F32  offset = 0.0f,
F32  bevel = 0.0f,
F32  ang_scale = 1.f,
S32  split = 0 
) [protected]

Definition at line 190 of file llvolume.cpp.

References F_PI, FALSE, LLProfileParams::getBegin(), LLProfileParams::getEnd(), LLProfileParams::getHollow(), i, lerp(), llround(), mConcave, mMaxX, mMinX, mOpen, mProfile, mTotal, LLMemType::MTYPE_VOLUME, LLVector3::mV, p, S32, LLVector3::setVec(), TRUE, and VX.

Referenced by addHole(), and generate().

Here is the call graph for this function:

Here is the caller graph for this function:

LLProfile::Face * LLProfile::addHole ( const LLProfileParams params,
BOOL  flat,
F32  sides,
F32  offset,
F32  box_hollow,
F32  ang_scale,
S32  split = 0 
) [protected]

Definition at line 437 of file llvolume.cpp.

References addFace(), genNGon(), i, j, LL_FACE_INNER_SIDE, llfloor(), mFaces, mProfile, mTotal, mTotalOut, and S32.

Referenced by generate().

Here is the call graph for this function:

Here is the caller graph for this function:

LLProfile::Face * LLProfile::addCap ( S16  faceID  )  [protected]

Definition at line 157 of file llvolume.cpp.

References LLProfile::Face::mCap, LLProfile::Face::mCount, LLProfile::Face::mFaceID, mFaces, LLProfile::Face::mIndex, LLProfile::Face::mScaleU, mTotal, LLMemType::MTYPE_VOLUME, TRUE, and vector_append().

Referenced by generate().

Here is the call graph for this function:

Here is the caller graph for this function:

LLProfile::Face * LLProfile::addFace ( S32  index,
S32  count,
F32  scaleU,
S16  faceID,
BOOL  flat 
) [protected]

Definition at line 171 of file llvolume.cpp.

References FALSE, LLProfile::Face::mCap, LLProfile::Face::mCount, LLProfile::Face::mFaceID, mFaces, LLProfile::Face::mFlat, LLProfile::Face::mIndex, LLProfile::Face::mScaleU, LLMemType::MTYPE_VOLUME, and vector_append().

Referenced by addHole(), and generate().

Here is the call graph for this function:

Here is the caller graph for this function:


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  s,
const LLProfile profile 
) [friend]

Definition at line 4143 of file llvolume.cpp.


Member Data Documentation

Definition at line 677 of file llvolume.h.

Referenced by genNormals().

std::vector<Face> LLProfile::mFaces

Definition at line 679 of file llvolume.h.

Referenced by genNormals().

Definition at line 680 of file llvolume.h.

Referenced by genNormals().

Definition at line 681 of file llvolume.h.

Referenced by genNGon().

Definition at line 682 of file llvolume.h.

Referenced by genNGon().

BOOL LLProfile::mOpen [protected]

Definition at line 695 of file llvolume.h.

Referenced by generate(), genNGon(), and operator<<().

Definition at line 696 of file llvolume.h.

Referenced by genNGon().

BOOL LLProfile::mDirty [protected]

Definition at line 697 of file llvolume.h.

Referenced by generate(), and operator<<().

Definition at line 699 of file llvolume.h.

Referenced by addHole(), generate(), genNormals(), and operator<<().

S32 LLProfile::mTotal [protected]

Definition at line 700 of file llvolume.h.

Referenced by addCap(), addHole(), generate(), genNGon(), genNormals(), and operator<<().


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

Generated on Fri May 16 09:00:51 2008 for SecondLife by  doxygen 1.5.5