/////////////////////////////////////////////////////////////////////////////// // Copyright (C) 2002-2025, Open Design Alliance (the "Alliance"). // All rights reserved. // // This software and its documentation and related materials are owned by // the Alliance. The software may only be incorporated into application // programs owned by members of the Alliance, subject to a signed // Membership Agreement and Supplemental Software License Agreement with the // Alliance. The structure and organization of this software are the valuable // trade secrets of the Alliance and its suppliers. The software is also // protected by copyright law and international treaty provisions. Application // programs incorporating this software must include the following statement // with their copyright notices: // // This application incorporates Open Design Alliance software pursuant to a license // agreement with Open Design Alliance. // Open Design Alliance Copyright (C) 2002-2025 by Open Design Alliance. // All rights reserved. // // By use of this software, its documentation or related materials, you // acknowledge and accept the above terms. /////////////////////////////////////////////////////////////////////////////// #include "DgTerrainProperties.h" #include "DgTerrain.h" //------------------------------------------------------------------------------------------------------- // OdDgTerrainOptions //------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------- // Property: Type //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getType(); return eOk; } //------------------------------------------------------------------------------------------------------- // Property: LevelEntryId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLevelEntryIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLevelEntryId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLevelEntryIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setLevelEntryId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: ColorIndex //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsColorIndexProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorIndex(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsColorIndexProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setColorIndex(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: LineStyleEntryId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLineStyleEntryIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLineStyleEntryId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLineStyleEntryIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setLineStyleEntryId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: LineWeight //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLineWeightProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLineWeight(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLineWeightProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setLineWeight(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Transparency //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTransparencyProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTransparency(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTransparencyProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; const double* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setTransparency(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: OnFlag //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getOnFlag(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsPtr pObj = OdDgTerrainOptions::cast(pO); if (pObj.isNull()) return eNotApplicable; const bool* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setOnFlag(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // OdDgTerrainOptionsTriangles //------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------- // Property: MaterialId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTrianglesMaterialIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsTrianglesPtr pObj = OdDgTerrainOptionsTriangles::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getMaterialId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTrianglesMaterialIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsTrianglesPtr pObj = OdDgTerrainOptionsTriangles::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt64* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setMaterialId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: DisplayStyleEntryId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTrianglesDisplayStyleEntryIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsTrianglesPtr pObj = OdDgTerrainOptionsTriangles::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDisplayStyleEntryId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTrianglesDisplayStyleEntryIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsTrianglesPtr pObj = OdDgTerrainOptionsTriangles::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDisplayStyleEntryId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // OdDgTerrainOptionsTriangleVertices //------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------- // Property: DisplayTextFlag //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesDisplayTextFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDisplayTextFlag(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesDisplayTextFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const bool* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDisplayTextFlag(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CellScale //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesCellScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCellScale(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesCellScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdGeScale3d* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCellScale(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: PointDisplayType //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesPointDisplayTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getPointDisplayType(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesPointDisplayTypeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdDgTerrainOptions::OdDgTerrainPointDisplayType* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setPointDisplayType(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CharSymbol //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesCharSymbolProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = (OdUInt16)(pObj->getCharSymbol()); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesCharSymbolProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt16* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCharSymbol(OdChar(*pValue)); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: TextStyleEntryId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesTextStyleEntryIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTextStyleEntryId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesTextStyleEntryIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setTextStyleEntryId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CellName //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesCellNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCellName(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesCellNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCellName(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Prefix //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesPrefixProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getPrefix(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesPrefixProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setPrefix(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Suffix //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesSuffixProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSuffix(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsTriangleVerticesSuffixProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsTriangleVerticesPtr pObj = OdDgTerrainOptionsTriangleVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setSuffix(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // OdDgTerrainOptionsLowPoints //------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------- // Property: DisplayTextFlag //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsDisplayTextFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDisplayTextFlag(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsDisplayTextFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const bool* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDisplayTextFlag(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CellScale //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsCellScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCellScale(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsCellScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdGeScale3d* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCellScale(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: PointDisplayType //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsPointDisplayTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getPointDisplayType(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsPointDisplayTypeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdDgTerrainOptions::OdDgTerrainPointDisplayType* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setPointDisplayType(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CharSymbol //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsCharSymbolProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = (OdUInt16)(pObj->getCharSymbol()); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsCharSymbolProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt16* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCharSymbol(OdChar(*pValue)); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: TextStyleEntryId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsTextStyleEntryIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTextStyleEntryId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsTextStyleEntryIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setTextStyleEntryId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CellName //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsCellNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCellName(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsCellNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCellName(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Prefix //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsPrefixProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getPrefix(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsPrefixProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setPrefix(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Suffix //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsSuffixProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSuffix(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsSuffixProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setSuffix(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: MinValue //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsMinValueProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getMinValue(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsLowPointsMinValueProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsLowPointsPtr pObj = OdDgTerrainOptionsLowPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const double* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setMinValue(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // OdDgTerrainOptionsHighPoints //------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------- // Property: DisplayTextFlag //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsDisplayTextFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDisplayTextFlag(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsDisplayTextFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const bool* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDisplayTextFlag(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CellScale //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsCellScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCellScale(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsCellScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdGeScale3d* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCellScale(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: PointDisplayType //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsPointDisplayTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getPointDisplayType(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsPointDisplayTypeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdDgTerrainOptions::OdDgTerrainPointDisplayType* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setPointDisplayType(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CharSymbol //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsCharSymbolProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = (OdUInt16)(pObj->getCharSymbol()); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsCharSymbolProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt16* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCharSymbol(OdChar(*pValue)); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: TextStyleEntryId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsTextStyleEntryIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTextStyleEntryId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsTextStyleEntryIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setTextStyleEntryId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CellName //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsCellNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCellName(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsCellNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCellName(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Prefix //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsPrefixProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getPrefix(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsPrefixProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setPrefix(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Suffix //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsSuffixProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSuffix(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsHighPointsSuffixProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsHighPointsPtr pObj = OdDgTerrainOptionsHighPoints::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setSuffix(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // OdDgTerrainOptionsFlowArrows //------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------- // Property: CellScale //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsFlowArrowsCellScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsFlowArrowsPtr pObj = OdDgTerrainOptionsFlowArrows::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCellScale(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsFlowArrowsCellScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsFlowArrowsPtr pObj = OdDgTerrainOptionsFlowArrows::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdGeScale3d* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCellScale(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: PointDisplayType //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsFlowArrowsPointDisplayTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsFlowArrowsPtr pObj = OdDgTerrainOptionsFlowArrows::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getPointDisplayType(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsFlowArrowsPointDisplayTypeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsFlowArrowsPtr pObj = OdDgTerrainOptionsFlowArrows::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdDgTerrainOptions::OdDgTerrainPointDisplayType* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setPointDisplayType(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CharSymbol //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsFlowArrowsCharSymbolProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsFlowArrowsPtr pObj = OdDgTerrainOptionsFlowArrows::cast(pO); if (pObj.isNull()) return eNotApplicable; value = (OdUInt16)(pObj->getCharSymbol()); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsFlowArrowsCharSymbolProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsFlowArrowsPtr pObj = OdDgTerrainOptionsFlowArrows::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt16* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCharSymbol(OdChar(*pValue)); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CellName //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsFlowArrowsCellNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsFlowArrowsPtr pObj = OdDgTerrainOptionsFlowArrows::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCellName(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsFlowArrowsCellNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsFlowArrowsPtr pObj = OdDgTerrainOptionsFlowArrows::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCellName(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // OdDgTerrainOptionsMinorContour //------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------- // Property: Interval //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourIntervalProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getInterval(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourIntervalProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const double* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setInterval(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: SmoothingType //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourSmoothingTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSmoothingType(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourSmoothingTypeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdDgTerrainOptions::OdDgTerrainContourSmoothingType* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setSmoothingType(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: SmoothingFactor //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourSmoothingFactorProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSmoothingFactor(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourSmoothingFactorProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setSmoothingFactor(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: DisplayTextFlag //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourDisplayTextFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDisplayTextFlag(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourDisplayTextFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const bool* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDisplayTextFlag(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: TextInterval //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourTextIntervalProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTextInterval(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourTextIntervalProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const double* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setTextInterval(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: UORPerWorkingUnitsScale //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourUORPerWorkingUnitsScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getUORPerWorkingUnitsScale(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourUORPerWorkingUnitsScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const double* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setUORPerWorkingUnitsScale(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: TextStyleEntryId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourTextStyleEntryIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTextStyleEntryId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourTextStyleEntryIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setTextStyleEntryId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: IgnoreMaxSlopesFlag //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourIgnoreMaxSlopesFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIgnoreMaxSlopesFlag(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourIgnoreMaxSlopesFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const bool* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setIgnoreMaxSlopesFlag(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: MaxSlopeValue //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourMaxSlopeValueProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getMaxSlopeValue(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourMaxSlopeValueProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const double* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setMaxSlopeValue(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: ContourLabelPrecision //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourContourLabelPrecisionProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getContourLabelPrecision(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourContourLabelPrecisionProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setContourLabelPrecision(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: DepressionColorIndex //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourDepressionColorIndexProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDepressionColorIndex(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourDepressionColorIndexProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDepressionColorIndex(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: DepressionLineStyleEntryId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourDepressionLineStyleEntryIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDepressionLineStyleEntryId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourDepressionLineStyleEntryIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDepressionLineStyleEntryId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: DepressionLineWeight //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourDepressionLineWeightProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDepressionLineWeight(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMinorContourDepressionLineWeightProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMinorContourPtr pObj = OdDgTerrainOptionsMinorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDepressionLineWeight(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // OdDgTerrainOptionsMajorContour //------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------- // Property: Interval //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourIntervalProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getInterval(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourIntervalProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const double* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setInterval(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: SmoothingType //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourSmoothingTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSmoothingType(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourSmoothingTypeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdDgTerrainOptions::OdDgTerrainContourSmoothingType* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setSmoothingType(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: SmoothingFactor //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourSmoothingFactorProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSmoothingFactor(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourSmoothingFactorProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setSmoothingFactor(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: DisplayTextFlag //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourDisplayTextFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDisplayTextFlag(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourDisplayTextFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const bool* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDisplayTextFlag(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: TextInterval //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourTextIntervalProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTextInterval(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourTextIntervalProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const double* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setTextInterval(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: UORPerWorkingUnitsScale //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourUORPerWorkingUnitsScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getUORPerWorkingUnitsScale(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourUORPerWorkingUnitsScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const double* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setUORPerWorkingUnitsScale(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: TextStyleEntryId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourTextStyleEntryIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTextStyleEntryId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourTextStyleEntryIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setTextStyleEntryId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: IgnoreMaxSlopesFlag //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourIgnoreMaxSlopesFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIgnoreMaxSlopesFlag(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourIgnoreMaxSlopesFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const bool* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setIgnoreMaxSlopesFlag(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: MaxSlopeValue //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourMaxSlopeValueProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getMaxSlopeValue(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourMaxSlopeValueProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const double* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setMaxSlopeValue(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: ContourLabelPrecision //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourContourLabelPrecisionProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getContourLabelPrecision(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourContourLabelPrecisionProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setContourLabelPrecision(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: DepressionColorIndex //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourDepressionColorIndexProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDepressionColorIndex(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourDepressionColorIndexProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDepressionColorIndex(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: DepressionLineStyleEntryId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourDepressionLineStyleEntryIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDepressionLineStyleEntryId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourDepressionLineStyleEntryIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDepressionLineStyleEntryId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: DepressionLineWeight //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourDepressionLineWeightProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDepressionLineWeight(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsMajorContourDepressionLineWeightProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsMajorContourPtr pObj = OdDgTerrainOptionsMajorContour::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDepressionLineWeight(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // OdDgTerrainOptionsSourceVertices //------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------- // Property: DisplayTextFlag //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesDisplayTextFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDisplayTextFlag(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesDisplayTextFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const bool* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setDisplayTextFlag(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CellScale //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesCellScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCellScale(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesCellScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdGeScale3d* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCellScale(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: PointDisplayType //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesPointDisplayTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getPointDisplayType(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesPointDisplayTypeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdDgTerrainOptions::OdDgTerrainPointDisplayType* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setPointDisplayType(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CharSymbol //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesCharSymbolProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = (OdUInt16)(pObj->getCharSymbol()); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesCharSymbolProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt16* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCharSymbol(OdChar(*pValue)); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: TextStyleEntryId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesTextStyleEntryIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTextStyleEntryId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesTextStyleEntryIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdUInt32* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setTextStyleEntryId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: CellName //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesCellNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCellName(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesCellNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setCellName(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Prefix //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesPrefixProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getPrefix(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesPrefixProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setPrefix(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Suffix //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesSuffixProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSuffix(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsSourceVerticesSuffixProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainOptionsSourceVerticesPtr pObj = OdDgTerrainOptionsSourceVertices::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setSuffix(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // OdDgTerrain //------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------- // Property: Options //------------------------------------------------------------------------------------------------------- ODDG_DEFINE_RX_VALUE_ARRAY_ITERATOR(OdRxObjectPtr); OdRxValueIteratorPtr OdDgTerrainOptionsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgTerrainPtr pObj = OdDgTerrain::cast(pO); if (!pObj.isNull()) { OdArray arrValues; for (OdUInt32 i = 1; i < 15; i++) { OdRxObjectPtr pOpt = pObj->getOptions((OdDgTerrainOptions::OdDgTerrainOptionsType)(i)); if( !pOpt.isNull() ) arrValues.push_back(pOpt); } ((OdRxOdRxObjectPtrValueIterator *)res.get())->init(arrValues, 0); } return res; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgTerrainPtr pObj = OdDgTerrain::cast(pO); if (pObj.isNull()) return eNotApplicable; count = 15; return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgTerrainPtr pObj = OdDgTerrain::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 1 || index >= 15 ) return eInvalidIndex; OdRxObjectPtr pProp = pObj->getOptions((OdDgTerrainOptions::OdDgTerrainOptionsType)(index)); if (!pProp.isNull()) { value = pProp; return eOk; } return eNullPtr; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgTerrainPtr pObj = OdDgTerrain::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdRxObjectPtr* pValue = rxvalue_cast(&value); if (pValue) { pObj->setOption(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgTerrainPtr pObj = OdDgTerrain::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdRxObjectPtr* pValue = rxvalue_cast(&value); if (pValue) { pObj->setOption(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainOptionsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgTerrainPtr pObj = OdDgTerrain::cast(pO); if (pObj.isNull()) return eNotApplicable; return eNotImplemented; } //------------------------------------------------------------------------------------------------------- // Property: TerrainControlElementId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainTerrainControlElementIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainPtr pObj = OdDgTerrain::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTerrainControlElementId(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainTerrainControlElementIdProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainPtr pObj = OdDgTerrain::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdDgElementId* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setTerrainControlElementId(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Transformation //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainTransformationProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainPtr pObj = OdDgTerrain::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTransformation(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainTransformationProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainPtr pObj = OdDgTerrain::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdGeMatrix3d* pValue = rxvalue_cast(&value); if( pValue ) { pObj->setTransformation(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // OdDgTerrainControlElement //------------------------------------------------------------------------------------------------------- //------------------------------------------------------------------------------------------------------- // Property: Name //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getName(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdString* pValue = rxvalue_cast(&value); if (pValue) { pObj->setName(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Transformation //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTransformationProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTransformation(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTransformationProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdGeMatrix3d* pValue = rxvalue_cast(&value); if (pValue) { pObj->setTransformation(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: Boundary //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementBoundaryProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBoundary(); return eOk; } //------------------------------------------------------------------------------------------------------- // Property: TerrainElementId //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTerrainElementIdProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTerrainElementId(); return eOk; } //------------------------------------------------------------------------------------------------------- // Property: TerrainVertices //------------------------------------------------------------------------------------------------------- ODDG_DEFINE_RX_VALUE_TYPEARRAY_ITERATOR(OdGePoint3d); OdRxValueIteratorPtr OdDgTerrainControlElementTerrainVerticesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (!pObj.isNull()) { OdGePoint3dArray arrValues = pObj->getTerrainVertices(); ((OdRxOdGePoint3dArrayValueIterator *)res.get())->init(arrValues, 0); } return res; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTerrainVerticesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getTerrainVertices().size(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTerrainVerticesProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getTerrainVertices().size()) return eInvalidIndex; value = pObj->getTerrainVertices()[index]; return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTerrainVerticesProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getTerrainVertices().size()) return eInvalidIndex; const OdGePoint3d* pValue = rxvalue_cast(&value); if (pValue) { OdGePoint3dArray arrValues = pObj->getTerrainVertices(); arrValues[index] = *pValue; pObj->setTerrainVertices(arrValues); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTerrainVerticesProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getTerrainVertices().size()) return eInvalidIndex; const OdGePoint3d* pValue = rxvalue_cast(&value); if (pValue) { OdGePoint3dArray arrValues = pObj->getTerrainVertices(); arrValues.insert(arrValues.begin() + index, *pValue); pObj->setTerrainVertices(arrValues); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTerrainVerticesProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getTerrainVertices().size()) return eInvalidIndex; OdGePoint3dArray arrValues = pObj->getTerrainVertices(); arrValues.removeAt(index); pObj->setTerrainVertices(arrValues); return eOk; } //------------------------------------------------------------------------------------------------------- // Property: TerrainNormals //------------------------------------------------------------------------------------------------------- ODDG_DEFINE_RX_VALUE_TYPEARRAY_ITERATOR(OdGeVector3d); OdRxValueIteratorPtr OdDgTerrainControlElementTerrainNormalsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (!pObj.isNull()) { OdGeVector3dArray arrValues; pObj->getTerrainNormals(arrValues); ((OdRxOdGeVector3dArrayValueIterator *)res.get())->init(arrValues, 0); } return res; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTerrainNormalsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGeVector3dArray arrValues; pObj->getTerrainNormals(arrValues); count = arrValues.size(); return eOk; } //------------------------------------------------------------------------------------------------------- // Property: TerrainHighPoints //------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgTerrainControlElementTerrainHighPointsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (!pObj.isNull()) { OdGePoint3dArray arrValues; arrValues = pObj->getTerrainHighPoints(); ((OdRxOdGePoint3dArrayValueIterator *)res.get())->init(arrValues, 0); } return res; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTerrainHighPointsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint3dArray arrValues; arrValues = pObj->getTerrainHighPoints(); count = arrValues.size(); return eOk; } //------------------------------------------------------------------------------------------------------- // Property: FeatureSourceVertices //------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgTerrainControlElementFeatureSourceVerticesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (!pObj.isNull()) { OdGePoint3dArray arrValues; arrValues = pObj->getFeatureSourceVertices(); ((OdRxOdGePoint3dArrayValueIterator *)res.get())->init(arrValues, 0); } return res; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementFeatureSourceVerticesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint3dArray arrValues; arrValues = pObj->getFeatureSourceVertices(); count = arrValues.size(); return eOk; } //------------------------------------------------------------------------------------------------------- // Property: Features //------------------------------------------------------------------------------------------------------- ODDG_DEFINE_RX_VALUE_ARRAY_ITERATOR(OdDgTerrainFeature); OdRxValueIteratorPtr OdDgTerrainControlElementFeaturesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (!pObj.isNull()) { OdArray arrValues; for (OdUInt32 i = 0; i < pObj->getFeatureCount(); i++) arrValues.push_back(pObj->getFeature(i)); ((OdRxOdDgTerrainFeatureValueIterator *)res.get())->init(arrValues, 0); } return res; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementFeaturesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getFeatureCount(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementFeaturesProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getFeatureCount()) return eInvalidIndex; value = pObj->getFeature(index); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementFeaturesProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getFeatureCount()) return eInvalidIndex; const OdDgTerrainFeature* pValue = rxvalue_cast(&value); if (pValue) { pObj->setFeature(index, *pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementFeaturesProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdDgTerrainFeature* pValue = rxvalue_cast(&value); if (pValue) { pObj->addFeature(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementFeaturesProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getFeatureCount()) return eInvalidIndex; pObj->deleteFeature(index); return eOk; } //------------------------------------------------------------------------------------------------------- // Property: Triangles //------------------------------------------------------------------------------------------------------- ODDG_DEFINE_RX_VALUE_ARRAY_ITERATOR(OdDgTerrainTriangle); OdRxValueIteratorPtr OdDgTerrainControlElementTrianglesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (!pObj.isNull()) { OdArray arrValues; for (OdUInt32 i = 0; i < pObj->getTriangleCount(); i++) arrValues.push_back(pObj->getTriangle(i)); ((OdRxOdDgTerrainTriangleValueIterator*)res.get())->init(arrValues, 0); } return res; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTrianglesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getTriangleCount(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTrianglesProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getTriangleCount()) return eInvalidIndex; value = pObj->getTriangle(index); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTrianglesProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getTriangleCount()) return eInvalidIndex; const OdDgTerrainTriangle* pValue = rxvalue_cast(&value); if (pValue) { pObj->setTriangle(index, *pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTrianglesProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getTriangleCount()) return eInvalidIndex; const OdDgTerrainTriangle* pValue = rxvalue_cast(&value); if (pValue) { pObj->addTriangle(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementTrianglesProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getTriangleCount()) return eInvalidIndex; pObj->deleteTriangle(index); return eOk; } //------------------------------------------------------------------------------------------------------- // Property: EdgeMethod //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementEdgeMethodProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getEdgeMethod(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementEdgeMethodProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdDgTerrainControlElement::OdDgTerrainEdgeMethod* pValue = rxvalue_cast(&value); if (pValue) { pObj->setEdgeMethod(*pValue); return eOk; } return eNotThatKindOfClass; } //------------------------------------------------------------------------------------------------------- // Property: MaxTriangleLength //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementMaxTriangleLengthProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getMaxTriangleLength(); return eOk; } //------------------------------------------------------------------------------------------------------- OdResult OdDgTerrainControlElementMaxTriangleLengthProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTerrainControlElementPtr pObj = OdDgTerrainControlElement::cast(pO); if (pObj.isNull()) return eNotApplicable; const double* pValue = rxvalue_cast(&value); if (pValue) { pObj->setMaxTriangleLength(*pValue); return eOk; } return eNotThatKindOfClass; } //-----------------------------------------------------------------------------------------------------------------------