#include <llvolume.h>
Public Member Functions | |
LLVolumeParams () | |
LLVolumeParams (LLProfileParams &profile, LLPathParams &path, LLUUID sculpt_id=LLUUID::null, U8 sculpt_type=LL_SCULPT_TYPE_NONE) | |
bool | operator== (const LLVolumeParams ¶ms) const |
bool | operator!= (const LLVolumeParams ¶ms) const |
bool | operator< (const LLVolumeParams ¶ms) const |
void | copyParams (const LLVolumeParams ¶ms) |
const LLProfileParams & | getProfileParams () const |
LLProfileParams & | getProfileParams () |
const LLPathParams & | getPathParams () const |
LLPathParams & | getPathParams () |
BOOL | importFile (LLFILE *fp) |
BOOL | exportFile (LLFILE *fp) const |
BOOL | importLegacyStream (std::istream &input_stream) |
BOOL | exportLegacyStream (std::ostream &output_stream) const |
LLSD | asLLSD () const |
operator LLSD () const | |
bool | fromLLSD (LLSD &sd) |
bool | setType (U8 profile, U8 path) |
bool | setBeginAndEndS (const F32 begin, const F32 end) |
bool | setBeginAndEndT (const F32 begin, const F32 end) |
bool | setHollow (const F32 hollow) |
bool | setRatio (const F32 x) |
bool | setShear (const F32 x) |
bool | setRatio (const F32 x, const F32 y) |
bool | setShear (const F32 x, const F32 y) |
bool | setTwistBegin (const F32 twist_begin) |
bool | setTwistEnd (const F32 twist_end) |
bool | setTwist (const F32 twist) |
bool | setTaper (const F32 x, const F32 y) |
bool | setTaperX (const F32 v) |
bool | setTaperY (const F32 v) |
bool | setRevolutions (const F32 revolutions) |
bool | setRadiusOffset (const F32 radius_offset) |
bool | setSkew (const F32 skew) |
bool | setSculptID (const LLUUID sculpt_id, U8 sculpt_type) |
const F32 & | getBeginS () const |
const F32 & | getBeginT () const |
const F32 & | getEndS () const |
const F32 & | getEndT () const |
const F32 & | getHollow () const |
const F32 & | getTwist () const |
const F32 & | getRatio () const |
const F32 & | getRatioX () const |
const F32 & | getRatioY () const |
const F32 & | getShearX () const |
const F32 & | getShearY () const |
const F32 & | getTwistBegin () const |
const F32 & | getRadiusOffset () const |
const F32 & | getTaper () const |
const F32 & | getTaperX () const |
const F32 & | getTaperY () const |
const F32 & | getRevolutions () const |
const F32 & | getSkew () const |
const LLUUID & | getSculptID () const |
const U8 & | getSculptType () const |
BOOL | isConvex () const |
void | reduceS (F32 begin, F32 end) |
void | reduceT (F32 begin, F32 end) |
void | setCube () |
Static Public Member Functions | |
static bool | validate (U8 prof_curve, F32 prof_begin, F32 prof_end, F32 hollow, U8 path_curve, F32 path_begin, F32 path_end, F32 scx, F32 scy, F32 shx, F32 shy, F32 twistend, F32 twistbegin, F32 radiusoffset, F32 tx, F32 ty, F32 revolutions, F32 skew) |
Protected Attributes | |
LLProfileParams | mProfileParams |
LLPathParams | mPathParams |
LLUUID | mSculptID |
U8 | mSculptType |
Friends | |
std::ostream & | operator<< (std::ostream &s, const LLVolumeParams &volume_params) |
Classes | |
struct | compare |
Definition at line 524 of file llvolume.h.
LLVolumeParams::LLVolumeParams | ( | ) | [inline] |
Definition at line 527 of file llvolume.h.
LLVolumeParams::LLVolumeParams | ( | LLProfileParams & | profile, | |
LLPathParams & | path, | |||
LLUUID | sculpt_id = LLUUID::null , |
|||
U8 | sculpt_type = LL_SCULPT_TYPE_NONE | |||
) | [inline] |
Definition at line 531 of file llvolume.h.
bool LLVolumeParams::operator== | ( | const LLVolumeParams & | params | ) | const |
Definition at line 2120 of file llvolume.cpp.
References getPathParams(), getProfileParams(), mSculptID, and mSculptType.
bool LLVolumeParams::operator!= | ( | const LLVolumeParams & | params | ) | const |
Definition at line 2128 of file llvolume.cpp.
References getPathParams(), getProfileParams(), mSculptID, and mSculptType.
bool LLVolumeParams::operator< | ( | const LLVolumeParams & | params | ) | const |
Definition at line 2136 of file llvolume.cpp.
References getPathParams(), getProfileParams(), mSculptID, and mSculptType.
void LLVolumeParams::copyParams | ( | const LLVolumeParams & | params | ) |
Definition at line 2159 of file llvolume.cpp.
References LLPathParams::copyParams(), LLProfileParams::copyParams(), getSculptID(), getSculptType(), mPathParams, mProfileParams, mSculptID, mSculptType, and LLMemType::MTYPE_VOLUME.
const LLProfileParams& LLVolumeParams::getProfileParams | ( | ) | const [inline] |
Definition at line 544 of file llvolume.h.
Referenced by LLVolumeMessage::constrainVolumeParams(), LLVolumeFace::createCap(), LLVolume::createVolumeFaces(), LLVolumeXml::exportVolumeParams(), LLVolume::generate(), LLVolume::generateFaceMask(), LLVolume::getNumTriangleIndices(), LLPanelObject::getState(), LLVolume::getTriangleIndices(), LLVOVolume::isFlexible(), operator!=(), operator<(), operator==(), LLVolumeMessage::packVolumeParams(), LLVolume::sculpt(), LLVOVolume::setIsFlexible(), and LLVolumeMessage::unpackVolumeParams().
LLProfileParams& LLVolumeParams::getProfileParams | ( | ) | [inline] |
Definition at line 545 of file llvolume.h.
const LLPathParams& LLVolumeParams::getPathParams | ( | ) | const [inline] |
Definition at line 546 of file llvolume.h.
Referenced by LLVOVolume::canBeFlexible(), LLVolumeMessage::constrainVolumeParams(), LLVolumeFace::createCap(), LLVolumeXml::exportVolumeParams(), LLVolume::generate(), LLPanelObject::getState(), LLVOVolume::isFlexible(), LLVolume::LLVolume(), operator!=(), operator<(), operator==(), LLVolumeMessage::packVolumeParams(), LLVolume::sculpt(), LLVolumeImplFlexible::setAttributesOfAllSections(), LLVOVolume::setVolume(), and LLVolumeMessage::unpackVolumeParams().
LLPathParams& LLVolumeParams::getPathParams | ( | ) | [inline] |
Definition at line 547 of file llvolume.h.
Definition at line 3780 of file llvolume.cpp.
References BUFSIZE, LLPathParams::importFile(), LLProfileParams::importFile(), llendl, llwarns, mPathParams, mProfileParams, LLMemType::MTYPE_VOLUME, NULL, S32, and TRUE.
Definition at line 3825 of file llvolume.cpp.
References LLProfileParams::exportFile(), LLPathParams::exportFile(), mPathParams, mProfileParams, and TRUE.
BOOL LLVolumeParams::importLegacyStream | ( | std::istream & | input_stream | ) |
Definition at line 3836 of file llvolume.cpp.
References BUFSIZE, LLPathParams::importLegacyStream(), LLProfileParams::importLegacyStream(), llendl, llwarns, mPathParams, mProfileParams, LLMemType::MTYPE_VOLUME, S32, and TRUE.
BOOL LLVolumeParams::exportLegacyStream | ( | std::ostream & | output_stream | ) | const |
Definition at line 3877 of file llvolume.cpp.
References LLProfileParams::exportLegacyStream(), LLPathParams::exportLegacyStream(), mPathParams, mProfileParams, LLMemType::MTYPE_VOLUME, and TRUE.
LLSD LLVolumeParams::asLLSD | ( | ) | const |
Definition at line 3889 of file llvolume.cpp.
References mPathParams, mProfileParams, and tut::sd().
LLVolumeParams::operator LLSD | ( | ) | const [inline] |
Definition at line 556 of file llvolume.h.
References LLPathParams::asLLSD().
bool LLVolumeParams::fromLLSD | ( | LLSD & | sd | ) |
Definition at line 3897 of file llvolume.cpp.
References LLProfileParams::fromLLSD(), LLPathParams::fromLLSD(), mPathParams, and mProfileParams.
Definition at line 2432 of file llvolume.cpp.
References LL_PCODE_HOLE_MASK, LL_PCODE_HOLE_MAX, LL_PCODE_PATH_LINE, LL_PCODE_PATH_MAX, LL_PCODE_PATH_MIN, LL_PCODE_PROFILE_MASK, LL_PCODE_PROFILE_MAX, LL_PCODE_PROFILE_SQUARE, llendl, llwarns, mPathParams, mProfileParams, LLPathParams::setCurveType(), and LLProfileParams::setCurveType().
Referenced by LLToolPlacer::addObject(), LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), LLVOVolume::isFlexible(), LLImagePreviewSculpted::LLImagePreviewSculpted(), LLVOTextBubble::LLVOTextBubble(), LLVOVolume::setIsFlexible(), and validate().
Definition at line 2195 of file llvolume.cpp.
References limit_range(), MIN_CUT_DELTA, mProfileParams, LLProfileParams::setBegin(), and LLProfileParams::setEnd().
Referenced by LLToolPlacer::addObject(), LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), LLVOTextBubble::LLVOTextBubble(), and validate().
Definition at line 2216 of file llvolume.cpp.
References limit_range(), MIN_CUT_DELTA, mPathParams, LLPathParams::setBegin(), and LLPathParams::setEnd().
Referenced by LLToolPlacer::addObject(), LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), LLVOTextBubble::LLVOTextBubble(), and validate().
bool LLVolumeParams::setHollow | ( | const F32 | hollow | ) |
Definition at line 2236 of file llvolume.cpp.
References LLProfileParams::getCurveType(), HOLLOW_MAX, HOLLOW_MAX_SQUARE, HOLLOW_MIN, limit_range(), LL_PCODE_HOLE_MASK, LL_PCODE_HOLE_SQUARE, LL_PCODE_PROFILE_CIRCLE, LL_PCODE_PROFILE_CIRCLE_HALF, LL_PCODE_PROFILE_EQUALTRI, LL_PCODE_PROFILE_MASK, mProfileParams, and LLProfileParams::setHollow().
Referenced by LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), and validate().
bool LLVolumeParams::setRatio | ( | const F32 | x | ) | [inline] |
Definition at line 570 of file llvolume.h.
Referenced by LLToolPlacer::addObject(), LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), LLVOTextBubble::LLVOTextBubble(), and validate().
bool LLVolumeParams::setShear | ( | const F32 | x | ) | [inline] |
Definition at line 571 of file llvolume.h.
References LLPathParams::setShear().
Referenced by LLToolPlacer::addObject(), LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), LLVOTextBubble::LLVOTextBubble(), and validate().
Definition at line 2279 of file llvolume.cpp.
References LLProfileParams::getCurveType(), LLPathParams::getCurveType(), HOLE_X_MAX, HOLE_X_MIN, HOLE_Y_MAX, HOLE_Y_MIN, limit_range(), LL_PCODE_PATH_CIRCLE, LL_PCODE_PROFILE_CIRCLE_HALF, LL_PCODE_PROFILE_MASK, mPathParams, mProfileParams, RATIO_MAX, RATIO_MIN, and LLPathParams::setScale().
Definition at line 2308 of file llvolume.cpp.
References limit_range(), mPathParams, LLPathParams::setShear(), SHEAR_MAX, and SHEAR_MIN.
bool LLVolumeParams::setTwistBegin | ( | const F32 | twist_begin | ) |
Definition at line 2263 of file llvolume.cpp.
References limit_range(), mPathParams, LLPathParams::setTwistBegin(), TWIST_MAX, and TWIST_MIN.
Referenced by LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), and validate().
bool LLVolumeParams::setTwistEnd | ( | const F32 | twist_end | ) |
Definition at line 2271 of file llvolume.cpp.
References limit_range(), mPathParams, LLPathParams::setTwistEnd(), TWIST_MAX, and TWIST_MIN.
Referenced by LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), and validate().
bool LLVolumeParams::setTwist | ( | const F32 | twist | ) | [inline] |
Definition at line 577 of file llvolume.h.
References LLPathParams::setTwistEnd().
Referenced by LLPanelObject::getVolumeParams().
Definition at line 578 of file llvolume.h.
References LLPathParams::setTaperX(), and LLPathParams::setTaperY().
Referenced by LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), and validate().
bool LLVolumeParams::setTaperX | ( | const F32 | v | ) |
Definition at line 2318 of file llvolume.cpp.
References limit_range(), mPathParams, LLPathParams::setTaperX(), TAPER_MAX, and TAPER_MIN.
bool LLVolumeParams::setTaperY | ( | const F32 | v | ) |
Definition at line 2326 of file llvolume.cpp.
References limit_range(), mPathParams, LLPathParams::setTaperY(), TAPER_MAX, and TAPER_MIN.
bool LLVolumeParams::setRevolutions | ( | const F32 | revolutions | ) |
Definition at line 2334 of file llvolume.cpp.
References limit_range(), mPathParams, REV_MAX, REV_MIN, and LLPathParams::setRevolutions().
Referenced by LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), and validate().
bool LLVolumeParams::setRadiusOffset | ( | const F32 | radius_offset | ) |
Definition at line 2342 of file llvolume.cpp.
References approx_zero(), LLProfileParams::getCurveType(), LLPathParams::getCurveType(), getRatioY(), getTaperY(), LL_PCODE_PATH_CIRCLE, LL_PCODE_PROFILE_CIRCLE_HALF, LL_PCODE_PROFILE_MASK, mPathParams, mProfileParams, and LLPathParams::setRadiusOffset().
Referenced by LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), and validate().
bool LLVolumeParams::setSkew | ( | const F32 | skew | ) |
Definition at line 2391 of file llvolume.cpp.
References approx_zero(), getRatioX(), getRevolutions(), llclamp(), mPathParams, LLPathParams::setSkew(), SKEW_MAX, and SKEW_MIN.
Referenced by LLVolumeMessage::constrainVolumeParams(), LLPanelObject::getVolumeParams(), and validate().
Definition at line 2425 of file llvolume.cpp.
References mSculptID, and mSculptType.
Referenced by LLPanelObject::getVolumeParams(), LLImagePreviewSculpted::LLImagePreviewSculpted(), LLPanelObject::onCommitParametric(), and LLVOVolume::processUpdateMessage().
bool LLVolumeParams::validate | ( | U8 | prof_curve, | |
F32 | prof_begin, | |||
F32 | prof_end, | |||
F32 | hollow, | |||
U8 | path_curve, | |||
F32 | path_begin, | |||
F32 | path_end, | |||
F32 | scx, | |||
F32 | scy, | |||
F32 | shx, | |||
F32 | shy, | |||
F32 | twistend, | |||
F32 | twistbegin, | |||
F32 | radiusoffset, | |||
F32 | tx, | |||
F32 | ty, | |||
F32 | revolutions, | |||
F32 | skew | |||
) | [static] |
Definition at line 2473 of file llvolume.cpp.
References setBeginAndEndS(), setBeginAndEndT(), setHollow(), setRadiusOffset(), setRatio(), setRevolutions(), setShear(), setSkew(), setTaper(), setTwistBegin(), setTwistEnd(), and setType().
const F32& LLVolumeParams::getBeginS | ( | ) | const [inline] |
Definition at line 592 of file llvolume.h.
Referenced by LLPanelObject::getState().
const F32& LLVolumeParams::getBeginT | ( | ) | const [inline] |
Definition at line 593 of file llvolume.h.
Referenced by LLPanelObject::getState().
const F32& LLVolumeParams::getEndS | ( | ) | const [inline] |
Definition at line 594 of file llvolume.h.
Referenced by LLPanelObject::getState().
const F32& LLVolumeParams::getEndT | ( | ) | const [inline] |
Definition at line 595 of file llvolume.h.
Referenced by LLPanelObject::getState().
const F32& LLVolumeParams::getHollow | ( | ) | const [inline] |
Definition at line 597 of file llvolume.h.
Referenced by LLPanelObject::getState().
const F32& LLVolumeParams::getTwist | ( | ) | const [inline] |
Definition at line 598 of file llvolume.h.
Referenced by LLPanelObject::getState().
const F32& LLVolumeParams::getRatio | ( | ) | const [inline] |
Definition at line 599 of file llvolume.h.
const F32& LLVolumeParams::getRatioX | ( | ) | const [inline] |
Definition at line 600 of file llvolume.h.
Referenced by LLPanelObject::getState(), and setSkew().
const F32& LLVolumeParams::getRatioY | ( | ) | const [inline] |
Definition at line 601 of file llvolume.h.
Referenced by LLPanelObject::getState(), and setRadiusOffset().
const F32& LLVolumeParams::getShearX | ( | ) | const [inline] |
Definition at line 602 of file llvolume.h.
Referenced by LLPanelObject::getState().
const F32& LLVolumeParams::getShearY | ( | ) | const [inline] |
Definition at line 603 of file llvolume.h.
Referenced by LLPanelObject::getState().
const F32& LLVolumeParams::getTwistBegin | ( | ) | const [inline] |
Definition at line 605 of file llvolume.h.
Referenced by LLPanelObject::getState().
const F32& LLVolumeParams::getRadiusOffset | ( | ) | const [inline] |
Definition at line 606 of file llvolume.h.
Referenced by LLPanelObject::getState().
const F32& LLVolumeParams::getTaper | ( | ) | const [inline] |
Definition at line 607 of file llvolume.h.
const F32& LLVolumeParams::getTaperX | ( | ) | const [inline] |
Definition at line 608 of file llvolume.h.
Referenced by LLPanelObject::getState().
const F32& LLVolumeParams::getTaperY | ( | ) | const [inline] |
Definition at line 609 of file llvolume.h.
Referenced by LLPanelObject::getState(), and setRadiusOffset().
const F32& LLVolumeParams::getRevolutions | ( | ) | const [inline] |
Definition at line 610 of file llvolume.h.
Referenced by LLPanelObject::getState(), and setSkew().
const F32& LLVolumeParams::getSkew | ( | ) | const [inline] |
Definition at line 611 of file llvolume.h.
Referenced by LLPanelObject::getState().
const LLUUID& LLVolumeParams::getSculptID | ( | ) | const [inline] |
Definition at line 612 of file llvolume.h.
Referenced by copyParams(), LLVolume::LLVolume(), and LLVOVolume::setVolume().
const U8& LLVolumeParams::getSculptType | ( | ) | const [inline] |
Definition at line 613 of file llvolume.h.
Referenced by copyParams(), LLVolumeFace::createSide(), and LLVolume::sculpt().
BOOL LLVolumeParams::isConvex | ( | ) | const |
Definition at line 3941 of file llvolume.cpp.
References FALSE, LLProfileParams::getBegin(), LLPathParams::getBegin(), LLProfileParams::getCurveType(), LLPathParams::getCurveType(), LLProfileParams::getEnd(), LLPathParams::getEnd(), LLProfileParams::getHollow(), LLPathParams::getTwist(), LLPathParams::getTwistBegin(), LL_PCODE_HOLE_MASK, LL_PCODE_HOLE_SAME, LL_PCODE_PATH_LINE, LL_PCODE_PROFILE_CIRCLE_HALF, LL_PCODE_PROFILE_MASK, MIN_CONCAVE_PATH_WEDGE, MIN_CONCAVE_PROFILE_WEDGE, mPathParams, mProfileParams, and TRUE.
Referenced by LLVolume::isConvex().
Definition at line 3904 of file llvolume.cpp.
References LLProfileParams::getBegin(), LLProfileParams::getEnd(), llclampf(), mProfileParams, LLProfileParams::setBegin(), and LLProfileParams::setEnd().
Definition at line 3920 of file llvolume.cpp.
References LLPathParams::getBegin(), LLPathParams::getEnd(), llclampf(), mPathParams, LLPathParams::setBegin(), and LLPathParams::setEnd().
void LLVolumeParams::setCube | ( | ) |
Definition at line 4010 of file llvolume.cpp.
References LL_PCODE_PATH_LINE, LL_PCODE_PROFILE_SQUARE, mPathParams, mProfileParams, LLPathParams::setBegin(), LLProfileParams::setBegin(), LLPathParams::setCurveType(), LLProfileParams::setCurveType(), LLPathParams::setEnd(), LLProfileParams::setEnd(), LLProfileParams::setHollow(), LLPathParams::setRadiusOffset(), LLPathParams::setRevolutions(), LLPathParams::setScale(), LLPathParams::setShear(), LLPathParams::setSkew(), LLPathParams::setTaper(), LLPathParams::setTwistBegin(), and LLPathParams::setTwistEnd().
std::ostream& operator<< | ( | std::ostream & | s, | |
const LLVolumeParams & | volume_params | |||
) | [friend] |
Definition at line 4134 of file llvolume.cpp.
LLProfileParams LLVolumeParams::mProfileParams [protected] |
Definition at line 637 of file llvolume.h.
Referenced by asLLSD(), copyParams(), exportFile(), exportLegacyStream(), fromLLSD(), importFile(), importLegacyStream(), isConvex(), operator<<(), reduceS(), setBeginAndEndS(), setCube(), setHollow(), setRadiusOffset(), setRatio(), and setType().
LLPathParams LLVolumeParams::mPathParams [protected] |
Definition at line 638 of file llvolume.h.
Referenced by asLLSD(), copyParams(), exportFile(), exportLegacyStream(), fromLLSD(), importFile(), importLegacyStream(), isConvex(), operator<<(), reduceT(), setBeginAndEndT(), setCube(), setRadiusOffset(), setRatio(), setRevolutions(), setShear(), setSkew(), setTaperX(), setTaperY(), setTwistBegin(), setTwistEnd(), and setType().
LLUUID LLVolumeParams::mSculptID [protected] |
Definition at line 639 of file llvolume.h.
Referenced by copyParams(), operator!=(), operator<(), operator==(), and setSculptID().
U8 LLVolumeParams::mSculptType [protected] |
Definition at line 640 of file llvolume.h.
Referenced by copyParams(), operator!=(), operator<(), operator==(), and setSculptID().