/////////////////////////////////////////////////////////////////////////////// // 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 "DgCellHeaderProperties.h" #include "DgBRepEntityPE.h" //----------------------------------------------------------------------------------------------------------------------- // class: OdDgCellHeader2d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: Name //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdDgGraphicsElementPtr getFirstCellHeaderItem(OdDgElementIteratorPtr& pIter) { OdDgGraphicsElementPtr pRet; if (pIter.isNull()) return pRet; for (; !pIter->done(); pIter->step()) { OdDgElementPtr pItem = pIter->item().openObject(OdDg::kForRead); if (!pItem.isNull() && pItem->isKindOf(OdDgGraphicsElement::desc())) { pRet = pItem; break; } } return pRet; } //----------------------------------------------------------------------------------------------------------------------- // property: Color //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dColorProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdDgElementIteratorPtr pIter = pObj->createIterator(); OdDgGraphicsElementPtr pFirstItem; if (pIter.isNull()) pFirstItem = pObj; else pFirstItem = getFirstCellHeaderItem(pIter); if (pFirstItem.isNull()) return eNotApplicable; OdCmEntityColor cmColor; OdUInt32 uIndex = pFirstItem->getColorIndex(); if (uIndex == OdDg::kColorByLevel) cmColor.setColorMethod(OdCmEntityColor::kByLayer); else if (uIndex == OdDg::kColorByCell) cmColor.setColorMethod(OdCmEntityColor::kByBlock); else if (uIndex < 256) { cmColor.setColorMethod(OdCmEntityColor::kByDgnIndex); cmColor.setColorIndex((OdInt16)uIndex); } else { ODCOLORREF rgbColor = pObj->getColor(); cmColor.setColorMethod(OdCmEntityColor::kByColor); cmColor.setRed(ODGETRED(rgbColor)); cmColor.setGreen(ODGETGREEN(rgbColor)); cmColor.setBlue(ODGETBLUE(rgbColor)); } value = cmColor; return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dColorProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdCmEntityColor* pColor = rxvalue_cast(&value); switch (pColor->colorMethod()) { case OdCmEntityColor::kByLayer: pObj->setColorIndex(OdDg::kColorByLevel, true); break; case OdCmEntityColor::kByBlock: pObj->setColorIndex(OdDg::kColorByCell, true); break; case OdCmEntityColor::kByACI: pObj->setColorIndex(pColor->colorIndex(), true); break; //??? case OdCmEntityColor::kByDgnIndex: pObj->setColorIndex(pColor->colorIndex(), true); break; case OdCmEntityColor::kByPen: pObj->setColorIndex(pColor->colorIndex(), true); break; //??? case OdCmEntityColor::kByColor: { ODCOLORREF curColor = ODRGB(pColor->red(), pColor->green(), pColor->blue()); pObj->setColor(curColor, true); } } return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Level //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dLevelProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdDgElementIteratorPtr pIter = pObj->createIterator(); OdDgGraphicsElementPtr pFirstItem; if (pIter.isNull()) pFirstItem = pObj; else pFirstItem = getFirstCellHeaderItem(pIter); if (pFirstItem.isNull()) return eNotApplicable; value = pFirstItem->getLevelId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dLevelProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLevelId(*rxvalue_cast(&value), true); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LineStyle //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dLineStyleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdDgElementIteratorPtr pIter = pObj->createIterator(); OdDgGraphicsElementPtr pFirstItem; if (pIter.isNull()) pFirstItem = pObj; else pFirstItem = getFirstCellHeaderItem(pIter); if (pFirstItem.isNull()) return eNotApplicable; value = pFirstItem->getLineStyleId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dLineStyleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLineStyleId(*rxvalue_cast(&value), true); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LineWeight //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dLineWeightProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdDgElementIteratorPtr pIter = pObj->createIterator(); OdDgGraphicsElementPtr pFirstItem; if (pIter.isNull()) pFirstItem = pObj; else pFirstItem = getFirstCellHeaderItem(pIter); if (pFirstItem.isNull()) return eNotApplicable; value = (OdDb::LineWeight)(pFirstItem->getLineWeight()); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dLineWeightProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLineWeight((OdUInt32)(*rxvalue_cast(&value)), true); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Origin //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dOriginProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getOrigin(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dOriginProperty::subChildren(OdArray& children) const { // as far as I understand, subproperties are generated if value type has children and OdRxTypePromotionAttribute // if that is true, generic version of this code may be moved to OdRxProperty::subChildren or even straight to children() children.append(OdRxSubProperty::createObject(L"X", OdRxValueType::Desc::value(), this)); children.append(OdRxSubProperty::createObject(L"Y", OdRxValueType::Desc::value(), this)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dOriginProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setOrigin(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Transformation //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dTransformationProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTransformation(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dTransformationProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setTransformation(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Elements //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgCellHeader2dElementsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (!pObj.isNull()) { if (!pObj->isKindOf(OdDgDetailingSymbolCellHeader2d::desc())) { res = OdRxObjectImpl::createObject(); ((OdDgElementIdValueIterator*)res.get())->m_pIter = pObj->createIterator(); ((OdDgElementIdValueIterator*)res.get())->m_bAllowNull = false; } } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dElementsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdRxValueIteratorPtr res; const OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; int N = 0; if (!pObj->isKindOf(OdDgDetailingSymbolCellHeader2d::desc())) { for (OdDgElementIteratorPtr it = pObj->createIterator(); !it->done(); it->step()) ++N; } count = N; return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: GroupedHole //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader2dGroupedHoleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader2dPtr pObj = OdDgCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->isPolygonWithHoles(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgCellHeader3d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: Name //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Color //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dColorProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdDgElementIteratorPtr pIter = pObj->createIterator(); OdDgGraphicsElementPtr pFirstItem; if (pIter.isNull()) pFirstItem = pObj; else pFirstItem = getFirstCellHeaderItem(pIter); if (pFirstItem.isNull()) return eNotApplicable; OdCmEntityColor cmColor; OdUInt32 uIndex = pFirstItem->getColorIndex(); if (uIndex == OdDg::kColorByLevel) cmColor.setColorMethod(OdCmEntityColor::kByLayer); else if (uIndex == OdDg::kColorByCell) cmColor.setColorMethod(OdCmEntityColor::kByBlock); else if (uIndex < 256) { cmColor.setColorMethod(OdCmEntityColor::kByDgnIndex); cmColor.setColorIndex((OdInt16)uIndex); } else { ODCOLORREF rgbColor = pObj->getColor(); cmColor.setColorMethod(OdCmEntityColor::kByColor); cmColor.setRed(ODGETRED(rgbColor)); cmColor.setGreen(ODGETGREEN(rgbColor)); cmColor.setBlue(ODGETBLUE(rgbColor)); } value = cmColor; return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dColorProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; const OdCmEntityColor* pColor = rxvalue_cast(&value); switch (pColor->colorMethod()) { case OdCmEntityColor::kByLayer: pObj->setColorIndex(OdDg::kColorByLevel, true); break; case OdCmEntityColor::kByBlock: pObj->setColorIndex(OdDg::kColorByCell, true); break; case OdCmEntityColor::kByACI: pObj->setColorIndex(pColor->colorIndex(), true); break; //??? case OdCmEntityColor::kByDgnIndex: pObj->setColorIndex(pColor->colorIndex(), true); break; case OdCmEntityColor::kByPen: pObj->setColorIndex(pColor->colorIndex(), true); break; //??? case OdCmEntityColor::kByColor: { ODCOLORREF curColor = ODRGB(pColor->red(), pColor->green(), pColor->blue()); pObj->setColor(curColor, true); } } return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Level //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dLevelProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdDgElementIteratorPtr pIter = pObj->createIterator(); OdDgGraphicsElementPtr pFirstItem; if (pIter.isNull()) pFirstItem = pObj; else pFirstItem = getFirstCellHeaderItem(pIter); if (pFirstItem.isNull()) return eNotApplicable; value = pFirstItem->getLevelId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dLevelProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLevelId(*rxvalue_cast(&value), true); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LineStyle //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dLineStyleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdDgElementIteratorPtr pIter = pObj->createIterator(); OdDgGraphicsElementPtr pFirstItem; if (pIter.isNull()) pFirstItem = pObj; else pFirstItem = getFirstCellHeaderItem(pIter); if (pFirstItem.isNull()) return eNotApplicable; value = pFirstItem->getLineStyleId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dLineStyleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLineStyleId(*rxvalue_cast(&value), true); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LineWeight //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dLineWeightProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdDgElementIteratorPtr pIter = pObj->createIterator(); OdDgGraphicsElementPtr pFirstItem; if (pIter.isNull()) pFirstItem = pObj; else pFirstItem = getFirstCellHeaderItem(pIter); if (pFirstItem.isNull()) return eNotApplicable; value = (OdDb::LineWeight)(pFirstItem->getLineWeight()); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dLineWeightProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLineWeight((OdUInt32)(*rxvalue_cast(&value)), true); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Origin //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dOriginProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getOrigin(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dOriginProperty::subChildren(OdArray& children) const { // as far as I understand, subproperties are generated if value type has children and OdRxTypePromotionAttribute // if that is true, generic version of this code may be moved to OdRxProperty::subChildren or even straight to children() children.append(OdRxSubProperty::createObject(L"X", OdRxValueType::Desc::value(), this)); children.append(OdRxSubProperty::createObject(L"Y", OdRxValueType::Desc::value(), this)); children.append(OdRxSubProperty::createObject(L"Z", OdRxValueType::Desc::value(), this)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dOriginProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setOrigin(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Transformation //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dTransformationProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTransformation(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dTransformationProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGeMatrix3d matTransform = *rxvalue_cast(&value); pObj->setTransformation(matTransform); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Elements //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgCellHeader3dElementsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (!pObj.isNull()) { if (!pObj->isKindOf(OdDgDetailingSymbolCellHeader3d::desc()) && (OdDgBRepEntityPEPtr(pObj)->type(pObj) == OdDgBRepEntityPE::eNotBRepEntity) ) { res = OdRxObjectImpl::createObject(); ((OdDgElementIdValueIterator*)res.get())->m_pIter = pObj->createIterator(); ((OdDgElementIdValueIterator*)res.get())->m_bAllowNull = false; } } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dElementsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdRxValueIteratorPtr res; const OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; int N = 0; if (!pObj->isKindOf(OdDgDetailingSymbolCellHeader3d::desc()) && (OdDgBRepEntityPEPtr(pObj)->type(pObj) == OdDgBRepEntityPE::eNotBRepEntity) ) { for (OdDgElementIteratorPtr it = pObj->createIterator(); !it->done(); it->step()) ++N; } count = N; return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: GroupedHole //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgCellHeader3dGroupedHoleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgCellHeader3dPtr pObj = OdDgCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->isPolygonWithHoles(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgAnnotationCellHeader2d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: UseAnnotationScaleFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAnnotationCellHeader2dUseAnnotationScaleFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAnnotationCellHeader2dPtr pObj = OdDgAnnotationCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getUseAnnotationScaleFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAnnotationCellHeader2dUseAnnotationScaleFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAnnotationCellHeader2dPtr pObj = OdDgAnnotationCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setUseAnnotationScaleFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAnnotationCellHeader2dAnnotationScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAnnotationCellHeader2dPtr pObj = OdDgAnnotationCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAnnotationCellHeader2dAnnotationScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAnnotationCellHeader2dPtr pObj = OdDgAnnotationCellHeader2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScale(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgAnnotationCellHeader3d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: UseAnnotationScaleFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAnnotationCellHeader3dUseAnnotationScaleFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAnnotationCellHeader3dPtr pObj = OdDgAnnotationCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getUseAnnotationScaleFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAnnotationCellHeader3dUseAnnotationScaleFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAnnotationCellHeader3dPtr pObj = OdDgAnnotationCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setUseAnnotationScaleFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAnnotationCellHeader3dAnnotationScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAnnotationCellHeader3dPtr pObj = OdDgAnnotationCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAnnotationCellHeader3dAnnotationScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAnnotationCellHeader3dPtr pObj = OdDgAnnotationCellHeader3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScale(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgAssocRegion2d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: RegionType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dRegionTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getRegionType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dRegionTypeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setRegionType(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: FillModeInteriorShapes //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dFillModeInteriorShapesProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getFillModeInteriorShapes(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dFillModeInteriorShapesProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setFillModeInteriorShapes(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LocateInteriorTextsFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dLocateInteriorTextsFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLocateInteriorTextsFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dLocateInteriorTextsFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLocateInteriorTextsFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: FillModeMaxGap //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dFillModeMaxGapProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getFillModeMaxGap(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dFillModeMaxGapProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setFillModeMaxGap(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: TextMargins //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dTextMarginsProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTextMargins(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dTextMarginsProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setTextMargins(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SeedPoints //----------------------------------------------------------------------------------------------------------------------- ODDG_DEFINE_RX_VALUE_ARRAY_ITERATOR(OdGePoint2d); OdRxValueIteratorPtr OdDgAssocRegion2dSeedPointsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (!pObj.isNull()) { OdArray arrSeedPoints; OdGePoint2dArray arrObj = pObj->getSeedPoints(); for (OdUInt32 i = 0; i < arrObj.size(); i++) arrSeedPoints.push_back(arrObj.at(i)); ((OdRxOdGePoint2dValueIterator*)res.get())->init(arrSeedPoints, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dSeedPointsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint2dArray arrObj = pObj->getSeedPoints(); count = arrObj.size(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dSeedPointsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint2dArray arrObj = pObj->getSeedPoints(); value = arrObj.at(index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dSeedPointsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint2dArray arrObj = pObj->getSeedPoints(); if (index < 0 || index >= (int)arrObj.size()) return eInvalidIndex; arrObj.setAt(index, *rxvalue_cast(&value)); pObj->setSeedPoints(arrObj); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dSeedPointsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint2dArray arrObj = pObj->getSeedPoints(); arrObj.insertAt(index, *rxvalue_cast(&value)); pObj->setSeedPoints(arrObj); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dSeedPointsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint2dArray arrObj = pObj->getSeedPoints(); if (index < 0 || index >= (int)arrObj.size()) return eInvalidIndex; arrObj.removeAt(index); pObj->setSeedPoints(arrObj); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: DependedElements //----------------------------------------------------------------------------------------------------------------------- ODDG_DEFINE_RX_VALUE_ARRAY_ITERATOR(OdDgElementId); OdRxValueIteratorPtr OdDgAssocRegion2dDependedElementsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (!pObj.isNull()) { OdArray arrDependedElements; OdDgElementIdArray arrObj = pObj->getDependedElements(); for (OdUInt32 i = 0; i < arrObj.size(); i++) arrDependedElements.push_back(arrObj.at(i)); ((OdRxOdDgElementIdValueIterator*)res.get())->init(arrDependedElements, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion2dDependedElementsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgAssocRegion2dPtr pObj = OdDgAssocRegion2d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdDgElementIdArray arrObj = pObj->getDependedElements(); count = arrObj.size(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgAssocRegion3d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: RegionType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dRegionTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getRegionType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dRegionTypeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setRegionType(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: FillModeInteriorShapes //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dFillModeInteriorShapesProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getFillModeInteriorShapes(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dFillModeInteriorShapesProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setFillModeInteriorShapes(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LocateInteriorTextsFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dLocateInteriorTextsFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLocateInteriorTextsFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dLocateInteriorTextsFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLocateInteriorTextsFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: FillModeMaxGap //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dFillModeMaxGapProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getFillModeMaxGap(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dFillModeMaxGapProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setFillModeMaxGap(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: TextMargins //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dTextMarginsProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTextMargins(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dTextMarginsProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setTextMargins(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SeedPoints //----------------------------------------------------------------------------------------------------------------------- ODDG_DEFINE_RX_VALUE_ARRAY_ITERATOR(OdGePoint3d); OdRxValueIteratorPtr OdDgAssocRegion3dSeedPointsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (!pObj.isNull()) { OdArray arrSeedPoints; OdGePoint3dArray arrObj = pObj->getSeedPoints(); for (OdUInt32 i = 0; i < arrObj.size(); i++) arrSeedPoints.push_back(arrObj.at(i)); ((OdRxOdGePoint3dValueIterator*)res.get())->init(arrSeedPoints, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dSeedPointsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint3dArray arrObj = pObj->getSeedPoints(); count = arrObj.size(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dSeedPointsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint3dArray arrObj = pObj->getSeedPoints(); OdGePoint3d point; if (index >= 0 && index < (int)arrObj.size()) point = arrObj.getAt(index); value = point; return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dSeedPointsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint3dArray arrObj = pObj->getSeedPoints(); if (index < 0 || index >= (int)arrObj.size()) return eInvalidIndex; arrObj.setAt(index, *rxvalue_cast(&value)); pObj->setSeedPoints(arrObj); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dSeedPointsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint3dArray arrObj = pObj->getSeedPoints(); arrObj.insertAt(index, *rxvalue_cast(&value)); pObj->setSeedPoints(arrObj); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dSeedPointsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdGePoint3dArray arrObj = pObj->getSeedPoints(); if (index < 0 || index >= (int)arrObj.size()) return eInvalidIndex; arrObj.removeAt(index); pObj->setSeedPoints(arrObj); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: DependedElements //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgAssocRegion3dDependedElementsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (!pObj.isNull()) { OdArray arrDependedElements; OdDgElementIdArray arrObj = pObj->getDependedElements(); for (OdUInt32 i = 0; i < arrObj.size(); i++) arrDependedElements.push_back(arrObj.at(i)); ((OdRxOdDgElementIdValueIterator*)res.get())->init(arrDependedElements, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgAssocRegion3dDependedElementsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgAssocRegion3dPtr pObj = OdDgAssocRegion3d::cast(pO); if (pObj.isNull()) return eNotApplicable; OdDgElementIdArray arrObj = pObj->getDependedElements(); count = arrObj.size(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgArrowMarker2d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: SymbolType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dSymbolTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSymbolType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScaleFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dAnnotationScaleFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScaleFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dAnnotationScaleFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScaleFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dAnnotationScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dAnnotationScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScale(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ReferenceText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dReferenceTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getReferenceText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SheetText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dSheetTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSheetText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: BubbleSize //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dBubbleSizeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBubbleSize(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dBubbleSizeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBubbleSize(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: FlipArrowFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dFlipArrowFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getFlipArrowFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dFlipArrowFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setFlipArrowFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LinkNodes //----------------------------------------------------------------------------------------------------------------------- ODDG_DEFINE_RX_VALUE_ARRAY_ITERATOR(OdRxObjectPtr); OdRxValueIteratorPtr OdDgArrowMarker2dLinkNodesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (!pObj.isNull()) { OdArray arrLinkNodes; for (OdUInt32 i = 0; i < pObj->getLinkNodeCount(); i++) { OdDgLinkNodePtr linkNode = pObj->getLinkNode(i); arrLinkNodes.push_back(linkNode); } ((OdRxOdRxObjectPtrValueIterator*)res.get())->init(arrLinkNodes, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dLinkNodesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLinkNodeCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LeaderPoints //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgArrowMarker2dLeaderPointsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (!pObj.isNull()) { OdArray arrLeaderPoints; for (OdUInt32 i = 0; i < pObj->getLeaderPointsCount(); i++) { OdGePoint2d leaderPoint = pObj->getLeaderPoint(i); arrLeaderPoints.push_back(leaderPoint); } ((OdRxOdGePoint2dValueIterator*)res.get())->init(arrLeaderPoints, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dLeaderPointsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLeaderPointsCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dLeaderPointsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLeaderPoint((OdUInt32)index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dLeaderPointsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getLeaderPointsCount()) return eInvalidIndex; pObj->setLeaderPoint((OdUInt32)index, *rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dLeaderPointsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->addLeaderPoint(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker2dLeaderPointsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgArrowMarker2dPtr pObj = OdDgArrowMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getLeaderPointsCount()) return eInvalidIndex; pObj->deleteLeaderPoint((OdUInt32)index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgArrowMarker3d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: SymbolType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dSymbolTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSymbolType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScaleFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dAnnotationScaleFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScaleFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dAnnotationScaleFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScaleFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dAnnotationScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dAnnotationScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScale(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ReferenceText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dReferenceTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getReferenceText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SheetText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dSheetTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSheetText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: BubbleSize //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dBubbleSizeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBubbleSize(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dBubbleSizeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBubbleSize(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: FlipArrowFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dFlipArrowFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getFlipArrowFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dFlipArrowFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setFlipArrowFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LinkNodes //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgArrowMarker3dLinkNodesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (!pObj.isNull()) { OdArray arrLinkNodes; for (OdUInt32 i = 0; i < pObj->getLinkNodeCount(); i++) { OdDgLinkNodePtr linkNode = pObj->getLinkNode(i); arrLinkNodes.push_back(linkNode); } ((OdRxOdRxObjectPtrValueIterator*)res.get())->init(arrLinkNodes, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dLinkNodesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLinkNodeCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LeaderPoints //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgArrowMarker3dLeaderPointsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (!pObj.isNull()) { OdArray arrLeaderPoints; for (OdUInt32 i = 0; i < pObj->getLeaderPointsCount(); i++) { OdGePoint3d leaderPoint = pObj->getLeaderPoint(i); arrLeaderPoints.push_back(leaderPoint); } ((OdRxOdGePoint3dValueIterator*)res.get())->init(arrLeaderPoints, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dLeaderPointsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLeaderPointsCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dLeaderPointsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLeaderPoint((OdUInt32)index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dLeaderPointsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getLeaderPointsCount()) return eInvalidIndex; pObj->setLeaderPoint((OdUInt32)index, *rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dLeaderPointsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->addLeaderPoint(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgArrowMarker3dLeaderPointsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgArrowMarker3dPtr pObj = OdDgArrowMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getLeaderPointsCount()) return eInvalidIndex; pObj->deleteLeaderPoint((OdUInt32)index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgDetailMarker2d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: SymbolType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dSymbolTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSymbolType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScaleFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dAnnotationScaleFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScaleFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dAnnotationScaleFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScaleFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dAnnotationScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dAnnotationScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScale(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ReferenceText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dReferenceTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getReferenceText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SheetText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dSheetTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSheetText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: BubbleSize //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dBubbleSizeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBubbleSize(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dBubbleSizeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBubbleSize(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: DetailAreaRadius //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dDetailAreaRadiusProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDetailAreaRadius(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dDetailAreaRadiusProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setDetailAreaRadius(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: BubblePoint //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dBubblePointProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBubblePoint(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dBubblePointProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBubblePoint(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LinkNodes //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgDetailMarker2dLinkNodesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (!pObj.isNull()) { OdArray arrLinkNodes; for (OdUInt32 i = 0; i < pObj->getLinkNodeCount(); i++) { OdDgLinkNodePtr linkNode = pObj->getLinkNode(i); arrLinkNodes.push_back(linkNode); } ((OdRxOdRxObjectPtrValueIterator*)res.get())->init(arrLinkNodes, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dLinkNodesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLinkNodeCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LeaderPoints //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgDetailMarker2dLeaderPointsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (!pObj.isNull()) { OdArray arrLeaderPoints; for (OdUInt32 i = 0; i < pObj->getLeaderPointsCount(); i++) { OdGePoint2d leaderPoint = pObj->getLeaderPoint(i); arrLeaderPoints.push_back(leaderPoint); } ((OdRxOdGePoint2dValueIterator*)res.get())->init(arrLeaderPoints, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dLeaderPointsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLeaderPointsCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dLeaderPointsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLeaderPoint((OdUInt32)index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dLeaderPointsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getLeaderPointsCount()) return eInvalidIndex; pObj->setLeaderPoint((OdUInt32)index, *rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dLeaderPointsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->addLeaderPoint(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker2dLeaderPointsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgDetailMarker2dPtr pObj = OdDgDetailMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getLeaderPointsCount()) return eInvalidIndex; pObj->deleteLeaderPoint((OdUInt32)index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgDetailMarker3d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: SymbolType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dSymbolTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSymbolType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScaleFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dAnnotationScaleFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScaleFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dAnnotationScaleFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScaleFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dAnnotationScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dAnnotationScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScale(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ReferenceText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dReferenceTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getReferenceText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SheetText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dSheetTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSheetText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: BubbleSize //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dBubbleSizeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBubbleSize(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dBubbleSizeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBubbleSize(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: DetailAreaRadius //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dDetailAreaRadiusProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDetailAreaRadius(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dDetailAreaRadiusProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setDetailAreaRadius(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: BubblePoint //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dBubblePointProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBubblePoint(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dBubblePointProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBubblePoint(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LinkNodes //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgDetailMarker3dLinkNodesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (!pObj.isNull()) { OdArray arrLinkNodes; for (OdUInt32 i = 0; i < pObj->getLinkNodeCount(); i++) { OdDgLinkNodePtr linkNode = pObj->getLinkNode(i); arrLinkNodes.push_back(linkNode); } ((OdRxOdRxObjectPtrValueIterator*)res.get())->init(arrLinkNodes, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dLinkNodesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLinkNodeCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LeaderPoints //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgDetailMarker3dLeaderPointsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (!pObj.isNull()) { OdArray arrLeaderPoints; for (OdUInt32 i = 0; i < pObj->getLeaderPointsCount(); i++) { OdGePoint3d leaderPoint = pObj->getLeaderPoint(i); arrLeaderPoints.push_back(leaderPoint); } ((OdRxOdGePoint3dValueIterator*)res.get())->init(arrLeaderPoints, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dLeaderPointsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLeaderPointsCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dLeaderPointsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLeaderPoint((OdUInt32)index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dLeaderPointsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getLeaderPointsCount()) return eInvalidIndex; pObj->setLeaderPoint((OdUInt32)index, *rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dLeaderPointsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->addLeaderPoint(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgDetailMarker3dLeaderPointsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgDetailMarker3dPtr pObj = OdDgDetailMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getLeaderPointsCount()) return eInvalidIndex; pObj->deleteLeaderPoint((OdUInt32)index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgSectionMarker2d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: SymbolType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dSymbolTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSymbolType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScaleFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dAnnotationScaleFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScaleFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dAnnotationScaleFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScaleFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dAnnotationScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dAnnotationScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScale(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: TitleText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dTitleTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTitleText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SubTitleText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dSubTitleTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSubTitleText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ReferenceText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dReferenceTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getReferenceText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SheetText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dSheetTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSheetText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: BubbleSize //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dBubbleSizeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBubbleSize(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dBubbleSizeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBubbleSize(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LinkNodes //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgSectionMarker2dLinkNodesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (!pObj.isNull()) { OdArray arrLinkNodes; for (OdUInt32 i = 0; i < pObj->getLinkNodeCount(); i++) { OdDgLinkNodePtr linkNode = pObj->getLinkNode(i); arrLinkNodes.push_back(linkNode); } ((OdRxOdRxObjectPtrValueIterator*)res.get())->init(arrLinkNodes, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker2dLinkNodesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgSectionMarker2dPtr pObj = OdDgSectionMarker2d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLinkNodeCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgSectionMarker3d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: SymbolType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dSymbolTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSymbolType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScaleFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dAnnotationScaleFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScaleFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dAnnotationScaleFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScaleFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dAnnotationScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dAnnotationScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScale(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: TitleText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dTitleTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTitleText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SubTitleText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dSubTitleTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSubTitleText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ReferenceText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dReferenceTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getReferenceText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SheetText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dSheetTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSheetText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: BubbleSize //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dBubbleSizeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBubbleSize(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dBubbleSizeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBubbleSize(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LinkNodes //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgSectionMarker3dLinkNodesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (!pObj.isNull()) { OdArray arrLinkNodes; for (OdUInt32 i = 0; i < pObj->getLinkNodeCount(); i++) { OdDgLinkNodePtr linkNode = pObj->getLinkNode(i); arrLinkNodes.push_back(linkNode); } ((OdRxOdRxObjectPtrValueIterator*)res.get())->init(arrLinkNodes, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgSectionMarker3dLinkNodesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgSectionMarker3dPtr pObj = OdDgSectionMarker3d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLinkNodeCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgTitleText2d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: SymbolType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText2dSymbolTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTitleText2dPtr pObj = OdDgTitleText2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSymbolType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScaleFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText2dAnnotationScaleFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTitleText2dPtr pObj = OdDgTitleText2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScaleFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText2dAnnotationScaleFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTitleText2dPtr pObj = OdDgTitleText2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScaleFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText2dAnnotationScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTitleText2dPtr pObj = OdDgTitleText2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText2dAnnotationScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTitleText2dPtr pObj = OdDgTitleText2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScale(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: TitleText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText2dTitleTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTitleText2dPtr pObj = OdDgTitleText2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTitleText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SubTitleText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText2dSubTitleTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTitleText2dPtr pObj = OdDgTitleText2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSubTitleText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LinkNodes //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgTitleText2dLinkNodesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgTitleText2dPtr pObj = OdDgTitleText2d::cast(pO); if (!pObj.isNull()) { OdArray arrLinkNodes; for (OdUInt32 i = 0; i < pObj->getLinkNodeCount(); i++) { OdDgLinkNodePtr linkNode = pObj->getLinkNode(i); arrLinkNodes.push_back(linkNode); } ((OdRxOdRxObjectPtrValueIterator*)res.get())->init(arrLinkNodes, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText2dLinkNodesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgTitleText2dPtr pObj = OdDgTitleText2d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLinkNodeCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgTitleText3d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: SymbolType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText3dSymbolTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTitleText3dPtr pObj = OdDgTitleText3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSymbolType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScaleFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText3dAnnotationScaleFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTitleText3dPtr pObj = OdDgTitleText3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScaleFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText3dAnnotationScaleFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTitleText3dPtr pObj = OdDgTitleText3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScaleFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AnnotationScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText3dAnnotationScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTitleText3dPtr pObj = OdDgTitleText3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAnnotationScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText3dAnnotationScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgTitleText3dPtr pObj = OdDgTitleText3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAnnotationScale(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: TitleText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText3dTitleTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTitleText3dPtr pObj = OdDgTitleText3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTitleText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SubTitleText //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText3dSubTitleTextProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgTitleText3dPtr pObj = OdDgTitleText3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSubTitleText(OdDg::kForWrite)->elementId(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LinkNodes //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgTitleText3dLinkNodesProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgTitleText3dPtr pObj = OdDgTitleText3d::cast(pO); if (!pObj.isNull()) { OdArray arrLinkNodes; for (OdUInt32 i = 0; i < pObj->getLinkNodeCount(); i++) { OdDgLinkNodePtr linkNode = pObj->getLinkNode(i); arrLinkNodes.push_back(linkNode); } ((OdRxOdRxObjectPtrValueIterator*)res.get())->init(arrLinkNodes, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgTitleText3dLinkNodesProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgTitleText3dPtr pObj = OdDgTitleText3d::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getLinkNodeCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgOle2Frame2d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: OleType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dOleTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getOleType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dOleTypeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setOleType(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: DrawAspect //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dDrawAspectProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDrawAspect(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dDrawAspectProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setDrawAspect(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ViewRotationMode //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dViewRotationModeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getViewRotationMode(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dViewRotationModeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setViewRotationMode(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ObjectSizeX //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dObjectSizeXProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getObjectSizeX(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dObjectSizeXProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setObjectSizeX(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ObjectSizeY //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dObjectSizeYProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getObjectSizeY(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dObjectSizeYProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setObjectSizeY(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AspectRatioFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dAspectRatioFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAspectRatioFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dAspectRatioFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAspectRatioFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: TransparentBackgroundFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dTransparentBackgroundFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTransparentBackgroundFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dTransparentBackgroundFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setTransparentBackgroundFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: CanBeLinkedAndEmbeddedFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dCanBeLinkedAndEmbeddedFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCanBeLinkedAndEmbeddedFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dCanBeLinkedAndEmbeddedFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setCanBeLinkedAndEmbeddedFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: CanBePictureFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dCanBePictureFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCanBePictureFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dCanBePictureFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setCanBePictureFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Position //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dPositionProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getPosition(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dPositionProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setPosition(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: XScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dXScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getXScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dXScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setScale(*rxvalue_cast(&value), pObj->getYScale()); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: YScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dYScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getYScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dYScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setScale(pObj->getXScale(), *rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: RotationAngle //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dRotationAngleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getRotationAngle(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame2dRotationAngleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame2dPtr pObj = OdDgOle2Frame2d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setRotationAngle(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgOle2Frame3d //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: OleType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dOleTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getOleType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dOleTypeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setOleType(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: DrawAspect //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dDrawAspectProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDrawAspect(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dDrawAspectProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setDrawAspect(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ViewRotationMode //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dViewRotationModeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getViewRotationMode(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dViewRotationModeProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setViewRotationMode(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ObjectSizeX //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dObjectSizeXProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getObjectSizeX(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dObjectSizeXProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setObjectSizeX(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ObjectSizeY //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dObjectSizeYProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getObjectSizeY(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dObjectSizeYProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setObjectSizeY(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AspectRatioFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dAspectRatioFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAspectRatioFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dAspectRatioFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAspectRatioFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: TransparentBackgroundFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dTransparentBackgroundFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getTransparentBackgroundFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dTransparentBackgroundFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setTransparentBackgroundFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: CanBeLinkedAndEmbeddedFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dCanBeLinkedAndEmbeddedFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCanBeLinkedAndEmbeddedFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dCanBeLinkedAndEmbeddedFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setCanBeLinkedAndEmbeddedFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: CanBePictureFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dCanBePictureFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getCanBePictureFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dCanBePictureFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setCanBePictureFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Position //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dPositionProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getPosition(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dPositionProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setPosition(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: XScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dXScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getXScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dXScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setScale(*rxvalue_cast(&value), pObj->getYScale()); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: YScale //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dYScaleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getYScale(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dYScaleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setScale(pObj->getXScale(), *rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Rotation //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dRotationProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getRotation(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgOle2Frame3dRotationProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgOle2Frame3dPtr pObj = OdDgOle2Frame3d::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setRotation(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgLightArea //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: DrawableType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaDrawableTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->drawableType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaLightTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLightType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Name //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightName //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaLightNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLightName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaLightNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLightName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: OnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Intensity //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaIntensityProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIntensity(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaIntensityProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIntensity(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Brightness //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaBrightnessProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBrightness(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaBrightnessProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBrightness(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ShadowOnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaShadowOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getShadowOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaShadowOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setShadowOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ShadowResolution //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaShadowResolutionProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getShadowResolution(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaShadowResolutionProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setShadowResolution(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightColor //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaLightColorProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; OdCmEntityColor color = OdCmEntityColor(); color.setColorMethod(OdCmEntityColor::kByColor); color.setRed((OdUInt8)(pObj->getColorRed() * 255)); color.setGreen((OdUInt8)(pObj->getColorGreen() * 255)); color.setBlue((OdUInt8)(pObj->getColorBlue() * 255)); value = color; return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaLightColorProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; OdCmEntityColor color = *rxvalue_cast(&value); const ODCOLORREF* pPalette = OdDgColorTable::currentPalette(pObj->database()); OdInt16 colorIndex = color.colorIndex(); double cRed = ODGETRED(pPalette[colorIndex]) / 255.; double cGreen = ODGETGREEN(pPalette[colorIndex]) / 255.; double cBlue = ODGETBLUE(pPalette[colorIndex]) / 255.; pObj->setColorRed(cRed); pObj->setColorGreen(cGreen); pObj->setColorBlue(cBlue); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorRed //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaColorRedProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorRed(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaColorRedProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorRed(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorGreen //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaColorGreenProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorGreen(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaColorGreenProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorGreen(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorBlue //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaColorBlueProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorBlue(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaColorBlueProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorBlue(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AttenuateOnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaAttenuateOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAttenuateOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaAttenuateOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAttenuateOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AttenuationDistance //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaAttenuationDistanceProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAttenuationDistance(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaAttenuationDistanceProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAttenuationDistance(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: IESDataOnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaIESDataOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIESDataOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaIESDataOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIESDataOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: IESRotation //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaIESRotationProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIESRotation(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaIESRotationProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIESRotation(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: IESFilename //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaIESFilenameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIESFilename(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaIESFilenameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIESFilename(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SampleCount //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaSampleCountProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSampleCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaSampleCountProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setSampleCount(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ExtendedParams //----------------------------------------------------------------------------------------------------------------------- ODDG_DEFINE_RX_VALUE_ARRAY_ITERATOR(OdDgLightParam); OdRxValueIteratorPtr OdDgLightAreaExtendedParamsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (!pObj.isNull()) { OdArray arrExtendedParams; for (OdUInt32 i = 0; i < pObj->getExtendedParamCount(); i++) arrExtendedParams.push_back(pObj->getExtendedParam(i)); ((OdRxOdDgLightParamValueIterator*)res.get())->init(arrExtendedParams, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaExtendedParamsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getExtendedParamCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaExtendedParamsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getExtendedParam(index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaExtendedParamsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getExtendedParamCount()) return eInvalidIndex; pObj->setExtendedParam(index, *rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaExtendedParamsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->addExtendedParam(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightAreaExtendedParamsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgLightAreaPtr pObj = OdDgLightArea::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getExtendedParamCount()) return eInvalidIndex; pObj->deleteExtendedParam(index); return eOk; } OdResult OdDgLightAreaExtendedParamsProperty::subChildren(OdArray& children) const { children.append(OdRxSubPropertyOfIndexedProperty::createObject(L"ParamName", OdRxValueType::Desc::value(), this)); children.append(OdRxSubPropertyOfIndexedProperty::createObject(L"ParamValue", OdRxValueType::Desc::value(), this)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgLightDistant //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: DrawableType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantDrawableTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->drawableType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantLightTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLightType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Name //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightName //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantLightNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLightName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantLightNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLightName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: OnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: SunLightFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantSunLightFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getSunLightFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantSunLightFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setSunLightFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Intensity //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantIntensityProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIntensity(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantIntensityProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIntensity(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Brightness //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantBrightnessProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBrightness(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantBrightnessProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBrightness(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ShadowOnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantShadowOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getShadowOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantShadowOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setShadowOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ShadowResolution //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantShadowResolutionProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getShadowResolution(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantShadowResolutionProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setShadowResolution(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightColor //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantLightColorProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; OdCmEntityColor color = OdCmEntityColor(); color.setColorMethod(OdCmEntityColor::kByColor); color.setRed((OdUInt8)(pObj->getColorRed() * 255)); color.setGreen((OdUInt8)(pObj->getColorGreen() * 255)); color.setBlue((OdUInt8)(pObj->getColorBlue() * 255)); value = color; return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantLightColorProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; OdCmEntityColor color = *rxvalue_cast(&value); const ODCOLORREF* pPalette = OdDgColorTable::currentPalette(pObj->database()); OdInt16 colorIndex = color.colorIndex(); double cRed = ODGETRED(pPalette[colorIndex]) / 255.; double cGreen = ODGETGREEN(pPalette[colorIndex]) / 255.; double cBlue = ODGETBLUE(pPalette[colorIndex]) / 255.; pObj->setColorRed(cRed); pObj->setColorGreen(cGreen); pObj->setColorBlue(cBlue); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorRed //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantColorRedProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorRed(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantColorRedProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorRed(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorGreen //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantColorGreenProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorGreen(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantColorGreenProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorGreen(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorBlue //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantColorBlueProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorBlue(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantColorBlueProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorBlue(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ExtendedParams //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgLightDistantExtendedParamsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (!pObj.isNull()) { OdArray arrExtendedParams; for (OdUInt32 i = 0; i < pObj->getExtendedParamCount(); i++) arrExtendedParams.push_back(pObj->getExtendedParam(i)); ((OdRxOdDgLightParamValueIterator*)res.get())->init(arrExtendedParams, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantExtendedParamsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getExtendedParamCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantExtendedParamsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getExtendedParam(index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantExtendedParamsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getExtendedParamCount()) return eInvalidIndex; pObj->setExtendedParam(index, *rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantExtendedParamsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->addExtendedParam(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightDistantExtendedParamsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgLightDistantPtr pObj = OdDgLightDistant::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getExtendedParamCount()) return eInvalidIndex; pObj->deleteExtendedParam(index); return eOk; } OdResult OdDgLightDistantExtendedParamsProperty::subChildren(OdArray& children) const { children.append(OdRxSubPropertyOfIndexedProperty::createObject(L"ParamName", OdRxValueType::Desc::value(), this)); children.append(OdRxSubPropertyOfIndexedProperty::createObject(L"ParamValue", OdRxValueType::Desc::value(), this)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgLightOpenSky //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: DrawableType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyDrawableTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->drawableType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyLightTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLightType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Name //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightName //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyLightNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLightName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyLightNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLightName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: OnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: MinSamples //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyMinSamplesProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getMinSamples(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyMinSamplesProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setMinSamples(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: MaxSamples //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyMaxSamplesProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getMaxSamples(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyMaxSamplesProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setMaxSamples(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ExtendedParams //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgLightOpenSkyExtendedParamsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (!pObj.isNull()) { OdArray arrExtendedParams; for (OdUInt32 i = 0; i < pObj->getExtendedParamCount(); i++) arrExtendedParams.push_back(pObj->getExtendedParam(i)); ((OdRxOdDgLightParamValueIterator*)res.get())->init(arrExtendedParams, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyExtendedParamsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getExtendedParamCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyExtendedParamsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getExtendedParam(index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyExtendedParamsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getExtendedParamCount()) return eInvalidIndex; pObj->setExtendedParam(index, *rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyExtendedParamsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->addExtendedParam(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightOpenSkyExtendedParamsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgLightOpenSkyPtr pObj = OdDgLightOpenSky::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getExtendedParamCount()) return eInvalidIndex; pObj->deleteExtendedParam(index); return eOk; } OdResult OdDgLightOpenSkyExtendedParamsProperty::subChildren(OdArray& children) const { children.append(OdRxSubPropertyOfIndexedProperty::createObject(L"ParamName", OdRxValueType::Desc::value(), this)); children.append(OdRxSubPropertyOfIndexedProperty::createObject(L"ParamValue", OdRxValueType::Desc::value(), this)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgLightPoint //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: DrawableType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointDrawableTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->drawableType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointLightTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLightType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Name //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightName //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointLightNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLightName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointLightNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLightName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: OnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Intensity //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointIntensityProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIntensity(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointIntensityProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIntensity(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Brightness //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointBrightnessProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBrightness(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointBrightnessProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBrightness(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ShadowOnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointShadowOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getShadowOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointShadowOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setShadowOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ShadowResolution //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointShadowResolutionProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getShadowResolution(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointShadowResolutionProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setShadowResolution(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightColor //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointLightColorProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; OdCmEntityColor color = OdCmEntityColor(); color.setColorMethod(OdCmEntityColor::kByColor); color.setRed((OdUInt8)(pObj->getColorRed() * 255)); color.setGreen((OdUInt8)(pObj->getColorGreen() * 255)); color.setBlue((OdUInt8)(pObj->getColorBlue() * 255)); value = color; return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointLightColorProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; OdCmEntityColor color = *rxvalue_cast(&value); const ODCOLORREF* pPalette = OdDgColorTable::currentPalette(pObj->database()); OdInt16 colorIndex = color.colorIndex(); double cRed = ODGETRED(pPalette[colorIndex]) / 255.; double cGreen = ODGETGREEN(pPalette[colorIndex]) / 255.; double cBlue = ODGETBLUE(pPalette[colorIndex]) / 255.; pObj->setColorRed(cRed); pObj->setColorGreen(cGreen); pObj->setColorBlue(cBlue); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorRed //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointColorRedProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorRed(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointColorRedProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorRed(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorGreen //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointColorGreenProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorGreen(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointColorGreenProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorGreen(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorBlue //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointColorBlueProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorBlue(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointColorBlueProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorBlue(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AttenuateOnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointAttenuateOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAttenuateOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointAttenuateOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAttenuateOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AttenuationDistance //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointAttenuationDistanceProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAttenuationDistance(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointAttenuationDistanceProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAttenuationDistance(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: IESDataOnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointIESDataOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIESDataOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointIESDataOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIESDataOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: IESRotation //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointIESRotationProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIESRotation(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointIESRotationProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIESRotation(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: IESFilename //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointIESFilenameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIESFilename(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointIESFilenameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIESFilename(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ExtendedParams //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgLightPointExtendedParamsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (!pObj.isNull()) { OdArray arrExtendedParams; for (OdUInt32 i = 0; i < pObj->getExtendedParamCount(); i++) arrExtendedParams.push_back(pObj->getExtendedParam(i)); ((OdRxOdDgLightParamValueIterator*)res.get())->init(arrExtendedParams, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointExtendedParamsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getExtendedParamCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointExtendedParamsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getExtendedParam(index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointExtendedParamsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getExtendedParamCount()) return eInvalidIndex; pObj->setExtendedParam(index, *rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointExtendedParamsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->addExtendedParam(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightPointExtendedParamsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgLightPointPtr pObj = OdDgLightPoint::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getExtendedParamCount()) return eInvalidIndex; pObj->deleteExtendedParam(index); return eOk; } OdResult OdDgLightPointExtendedParamsProperty::subChildren(OdArray& children) const { children.append(OdRxSubPropertyOfIndexedProperty::createObject(L"ParamName", OdRxValueType::Desc::value(), this)); children.append(OdRxSubPropertyOfIndexedProperty::createObject(L"ParamValue", OdRxValueType::Desc::value(), this)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // class: OdDgLightSpot //----------------------------------------------------------------------------------------------------------------------- //----------------------------------------------------------------------------------------------------------------------- // property: DrawableType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotDrawableTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->drawableType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightType //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotLightTypeProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLightType(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Name //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightName //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotLightNameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getLightName(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotLightNameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setLightName(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: OnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Intensity //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotIntensityProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIntensity(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotIntensityProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIntensity(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: Brightness //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotBrightnessProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getBrightness(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotBrightnessProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setBrightness(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ShadowOnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotShadowOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getShadowOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotShadowOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setShadowOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ShadowResolution //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotShadowResolutionProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getShadowResolution(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotShadowResolutionProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setShadowResolution(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: LightColor //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotLightColorProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; OdCmEntityColor color = OdCmEntityColor(); color.setColorMethod(OdCmEntityColor::kByColor); color.setRed((OdUInt8)(pObj->getColorRed() * 255)); color.setGreen((OdUInt8)(pObj->getColorGreen() * 255)); color.setBlue((OdUInt8)(pObj->getColorBlue() * 255)); value = color; return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotLightColorProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; OdCmEntityColor color = *rxvalue_cast(&value); const ODCOLORREF* pPalette = OdDgColorTable::currentPalette(pObj->database()); OdInt16 colorIndex = color.colorIndex(); double cRed = ODGETRED(pPalette[colorIndex]) / 255.; double cGreen = ODGETGREEN(pPalette[colorIndex]) / 255.; double cBlue = ODGETBLUE(pPalette[colorIndex]) / 255.; pObj->setColorRed(cRed); pObj->setColorGreen(cGreen); pObj->setColorBlue(cBlue); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorRed //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotColorRedProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorRed(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotColorRedProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorRed(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorGreen //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotColorGreenProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorGreen(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotColorGreenProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorGreen(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ColorBlue //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotColorBlueProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getColorBlue(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotColorBlueProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setColorBlue(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AttenuateOnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotAttenuateOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAttenuateOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotAttenuateOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAttenuateOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: AttenuationDistance //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotAttenuationDistanceProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getAttenuationDistance(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotAttenuationDistanceProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setAttenuationDistance(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: IESDataOnFlag //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotIESDataOnFlagProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIESDataOnFlag(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotIESDataOnFlagProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIESDataOnFlag(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: IESRotation //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotIESRotationProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIESRotation(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotIESRotationProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIESRotation(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: IESFilename //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotIESFilenameProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getIESFilename(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotIESFilenameProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setIESFilename(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ExtendedParams //----------------------------------------------------------------------------------------------------------------------- OdRxValueIteratorPtr OdDgLightSpotExtendedParamsProperty::subNewValueIterator(const OdRxObject* pO) const { OdRxValueIteratorPtr res; res = OdRxObjectImpl::createObject(); OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (!pObj.isNull()) { OdArray arrExtendedParams; for (OdUInt32 i = 0; i < pObj->getExtendedParamCount(); i++) arrExtendedParams.push_back(pObj->getExtendedParam(i)); ((OdRxOdDgLightParamValueIterator*)res.get())->init(arrExtendedParams, 0); } return res; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotExtendedParamsProperty::subTryGetCount(const OdRxObject* pO, int& count) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; count = pObj->getExtendedParamCount(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotExtendedParamsProperty::subGetValue(const OdRxObject* pO, int index, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getExtendedParam(index); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotExtendedParamsProperty::subSetValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getExtendedParamCount()) return eInvalidIndex; pObj->setExtendedParam(index, *rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotExtendedParamsProperty::subInsertValue(OdRxObject* pO, int index, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->addExtendedParam(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotExtendedParamsProperty::subRemoveValue(OdRxObject* pO, int index) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; if (index < 0 || index >= (int)pObj->getExtendedParamCount()) return eInvalidIndex; pObj->deleteExtendedParam(index); return eOk; } OdResult OdDgLightSpotExtendedParamsProperty::subChildren(OdArray& children) const { children.append(OdRxSubPropertyOfIndexedProperty::createObject(L"ParamName", OdRxValueType::Desc::value(), this)); children.append(OdRxSubPropertyOfIndexedProperty::createObject(L"ParamValue", OdRxValueType::Desc::value(), this)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: ConeAngle //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotConeAngleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getConeAngle(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotConeAngleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setConeAngle(*rxvalue_cast(&value)); return eOk; } //----------------------------------------------------------------------------------------------------------------------- // property: DeltaAngle //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotDeltaAngleProperty::subGetValue(const OdRxObject* pO, OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; value = pObj->getDeltaAngle(); return eOk; } //----------------------------------------------------------------------------------------------------------------------- OdResult OdDgLightSpotDeltaAngleProperty::subSetValue(OdRxObject* pO, const OdRxValue& value) const { OdDgLightSpotPtr pObj = OdDgLightSpot::cast(pO); if (pObj.isNull()) return eNotApplicable; pObj->setDeltaAngle(*rxvalue_cast(&value)); return eOk; } //-----------------------------------------------------------------------------------------------------------------------