2025.6.1
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
/***********************************************************************************************************************
|
||||
*
|
||||
* Copyright (c) 2010 - 2022 by Tech Soft 3D, Inc.
|
||||
* Copyright (c) 2010 - 2025 by Tech Soft 3D, Inc.
|
||||
* The information contained herein is confidential and proprietary to Tech Soft 3D, Inc., and considered a trade secret
|
||||
* as defined under civil and criminal statutes. Tech Soft 3D shall pursue its civil and criminal remedies in the event
|
||||
* of unauthorized use or misappropriation of its trade secrets. Use of this information by anyone other than authorized
|
||||
@@ -14,15 +14,16 @@
|
||||
#include "PRC2XML.h"
|
||||
|
||||
//######################################################################################################################
|
||||
static int stTraverseAnnotationSet(const A3DMkpAnnotationSet* pAnnot, _TiXmlElement* setting)
|
||||
static A3DStatus stTraverseAnnotationSet(const A3DMkpAnnotationSet* pAnnot, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMkpAnnotationSetData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMkpAnnotationSetData, sData);
|
||||
|
||||
_TiXmlElement* annotset = new _TiXmlElement("A3DMkpAnnotationSetData");
|
||||
setAttributePRC2XMLID(pAnnot, annotset);
|
||||
traverseSource(pAnnot, annotset);
|
||||
|
||||
A3DInt32 iRet = A3DMkpAnnotationSetGet(pAnnot, &sData);
|
||||
A3DStatus iRet = A3DMkpAnnotationSetGet(pAnnot, &sData);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
for(A3DUns32 ui = 0; ui < sData.m_uiAnnotationsSize; ++ui)
|
||||
@@ -32,14 +33,14 @@ static int stTraverseAnnotationSet(const A3DMkpAnnotationSet* pAnnot, _TiXmlElem
|
||||
}
|
||||
else
|
||||
{
|
||||
annotset->SetAttribute("error", iRet);
|
||||
annotset->SetAttribute("error", A3DMiscGetErrorMsg(iRet));
|
||||
}
|
||||
setting->LinkEndChild(annotset);
|
||||
return iRet;
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
static int stTraverseAnnotationReference(const A3DMkpAnnotationReference* pAnnot, _TiXmlElement* setting)
|
||||
static A3DStatus stTraverseAnnotationReference(const A3DMkpAnnotationReference* pAnnot, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMkpAnnotationReferenceData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMkpAnnotationReferenceData, sData);
|
||||
@@ -47,7 +48,7 @@ static int stTraverseAnnotationReference(const A3DMkpAnnotationReference* pAnnot
|
||||
_TiXmlElement* ref = new _TiXmlElement("A3DMkpAnnotationReferenceData");
|
||||
traverseSource(pAnnot, ref);
|
||||
|
||||
A3DInt32 iRet = A3DMkpAnnotationReferenceGet(pAnnot, &sData);
|
||||
A3DStatus iRet = A3DMkpAnnotationReferenceGet(pAnnot, &sData);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
for(A3DUns32 ui = 0; ui < sData.m_uiLinkedItemsSize; ++ui)
|
||||
@@ -57,22 +58,23 @@ static int stTraverseAnnotationReference(const A3DMkpAnnotationReference* pAnnot
|
||||
}
|
||||
else
|
||||
{
|
||||
ref->SetAttribute("error", iRet);
|
||||
ref->SetAttribute("error", A3DMiscGetErrorMsg(iRet));
|
||||
}
|
||||
setting->LinkEndChild(ref);
|
||||
return iRet;
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
static int stTraverseAnnotationItem(const A3DMkpAnnotationItem* pAnnot, _TiXmlElement* setting)
|
||||
static A3DStatus stTraverseAnnotationItem(const A3DMkpAnnotationItem* pAnnot, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMkpAnnotationItemData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMkpAnnotationItemData, sData);
|
||||
|
||||
_TiXmlElement* annotitem = new _TiXmlElement("A3DMkpAnnotationItemData");
|
||||
setAttributePRC2XMLID(pAnnot, annotitem);
|
||||
traverseSource(pAnnot, annotitem);
|
||||
|
||||
A3DInt32 iRet = A3DMkpAnnotationItemGet(pAnnot, &sData);
|
||||
A3DStatus iRet = A3DMkpAnnotationItemGet(pAnnot, &sData);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
traverseMarkup(sData.m_pMarkup, annotitem);
|
||||
@@ -80,17 +82,17 @@ static int stTraverseAnnotationItem(const A3DMkpAnnotationItem* pAnnot, _TiXmlEl
|
||||
}
|
||||
else
|
||||
{
|
||||
annotitem->SetAttribute("error", iRet);
|
||||
annotitem->SetAttribute("error", A3DMiscGetErrorMsg(iRet));
|
||||
}
|
||||
setting->LinkEndChild(annotitem);
|
||||
return iRet;
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseAnnotation(const A3DMkpAnnotationEntity* pAnnot, _TiXmlElement* setting)
|
||||
A3DStatus traverseAnnotation(const A3DMkpAnnotationEntity* pAnnot, _TiXmlElement* setting)
|
||||
{
|
||||
A3DEEntityType eType;
|
||||
A3DInt32 iRet = A3DEntityGetType(pAnnot, &eType);
|
||||
A3DStatus iRet = A3DEntityGetType(pAnnot, &eType);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
switch(eType)
|
||||
@@ -109,12 +111,12 @@ int traverseAnnotation(const A3DMkpAnnotationEntity* pAnnot, _TiXmlElement* sett
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseAmbientLight(const A3DGraphAmbientLight *pLight, _TiXmlElement* setting)
|
||||
A3DStatus traverseAmbientLight(const A3DGraphAmbientLight *pLight, _TiXmlElement* setting)
|
||||
{
|
||||
if (!pLight)
|
||||
{
|
||||
setting->SetAttribute("Light", "Bad cast");
|
||||
return -1;
|
||||
return A3D_ERROR;
|
||||
}
|
||||
_TiXmlElement* light = new _TiXmlElement("A3DGraphAmbientLightData");
|
||||
A3DStatus iRet;
|
||||
@@ -130,19 +132,19 @@ int traverseAmbientLight(const A3DGraphAmbientLight *pLight, _TiXmlElement* sett
|
||||
}
|
||||
else
|
||||
{
|
||||
light->SetAttribute("Error", iRet);
|
||||
light->SetAttribute("error", A3DMiscGetErrorMsg(iRet));
|
||||
}
|
||||
setting->LinkEndChild(light);
|
||||
return 0;
|
||||
return A3D_SUCCESS;
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traversePointLight(const A3DGraphPointLight* pLight, _TiXmlElement* setting)
|
||||
A3DStatus traversePointLight(const A3DGraphPointLight* pLight, _TiXmlElement* setting)
|
||||
{
|
||||
if (!pLight)
|
||||
{
|
||||
setting->SetAttribute("Light", "Bad cast");
|
||||
return -1;
|
||||
return A3D_ERROR;
|
||||
}
|
||||
|
||||
_TiXmlElement* light = new _TiXmlElement("A3DGraphPointLightData");
|
||||
@@ -162,19 +164,19 @@ int traversePointLight(const A3DGraphPointLight* pLight, _TiXmlElement* setting)
|
||||
}
|
||||
else
|
||||
{
|
||||
light->SetAttribute("Error", iRet);
|
||||
light->SetAttribute("error", A3DMiscGetErrorMsg(iRet));
|
||||
}
|
||||
setting->LinkEndChild(light);
|
||||
return 0;
|
||||
return A3D_SUCCESS;
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseSpotLight(const A3DGraphSpotLight* pLight, _TiXmlElement* setting)
|
||||
A3DStatus traverseSpotLight(const A3DGraphSpotLight* pLight, _TiXmlElement* setting)
|
||||
{
|
||||
if (!pLight)
|
||||
{
|
||||
setting->SetAttribute("Light", "Bad cast");
|
||||
return -1;
|
||||
return A3D_ERROR;
|
||||
}
|
||||
|
||||
_TiXmlElement* light = new _TiXmlElement("A3DGraphSpotLightData");
|
||||
@@ -197,19 +199,19 @@ int traverseSpotLight(const A3DGraphSpotLight* pLight, _TiXmlElement* setting)
|
||||
}
|
||||
else
|
||||
{
|
||||
light->SetAttribute("Error", iRet);
|
||||
light->SetAttribute("error", A3DMiscGetErrorMsg(iRet));
|
||||
}
|
||||
setting->LinkEndChild(light);
|
||||
return 0;
|
||||
return A3D_SUCCESS;
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseDirectionalLight(const A3DGraphDirectionalLight* pLight, _TiXmlElement* setting)
|
||||
A3DStatus traverseDirectionalLight(const A3DGraphDirectionalLight* pLight, _TiXmlElement* setting)
|
||||
{
|
||||
if (!pLight)
|
||||
{
|
||||
setting->SetAttribute("Light", "Bad cast");
|
||||
return -1;
|
||||
return A3D_ERROR;
|
||||
}
|
||||
|
||||
_TiXmlElement* light = new _TiXmlElement("A3DGraphDirectionalLightData");
|
||||
@@ -227,20 +229,20 @@ int traverseDirectionalLight(const A3DGraphDirectionalLight* pLight, _TiXmlEleme
|
||||
}
|
||||
else
|
||||
{
|
||||
light->SetAttribute("Error", iRet);
|
||||
light->SetAttribute("error", A3DMiscGetErrorMsg(iRet));
|
||||
}
|
||||
setting->LinkEndChild(light);
|
||||
return 0;
|
||||
return A3D_SUCCESS;
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseLight(const A3DGraphLight* pLight, _TiXmlElement* setting)
|
||||
A3DStatus traverseLight(const A3DGraphLight* pLight, _TiXmlElement* setting)
|
||||
{
|
||||
|
||||
if (!pLight)
|
||||
{
|
||||
setting->SetAttribute("Light", "empty");
|
||||
return -1;
|
||||
return A3D_ERROR;
|
||||
}
|
||||
|
||||
A3DEEntityType eType = kA3DTypeUnknown;
|
||||
@@ -263,11 +265,11 @@ int traverseLight(const A3DGraphLight* pLight, _TiXmlElement* setting)
|
||||
setting->SetAttribute("Light", "Unknown Type");
|
||||
break;
|
||||
}
|
||||
return 0;
|
||||
return A3D_SUCCESS;
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseCamera(const A3DGraphCamera* pCamera, _TiXmlElement* setting)
|
||||
A3DStatus traverseCamera(const A3DGraphCamera* pCamera, _TiXmlElement* setting)
|
||||
{
|
||||
_TiXmlElement* camera = new _TiXmlElement("A3DGraphCameraData");
|
||||
if (pCamera)
|
||||
@@ -292,7 +294,7 @@ int traverseCamera(const A3DGraphCamera* pCamera, _TiXmlElement* setting)
|
||||
}
|
||||
else
|
||||
{
|
||||
camera->SetAttribute("Error", iRet);
|
||||
camera->SetAttribute("error", A3DMiscGetErrorMsg(iRet));
|
||||
}
|
||||
A3DGraphCameraGet(NULL, &oData);
|
||||
}
|
||||
@@ -301,9 +303,9 @@ int traverseCamera(const A3DGraphCamera* pCamera, _TiXmlElement* setting)
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseGraphScene(const A3DGraphSceneDisplayParametersData& sData, _TiXmlElement* setting)
|
||||
A3DStatus traverseGraphScene(const A3DGraphSceneDisplayParametersData& sData, _TiXmlElement* setting)
|
||||
{
|
||||
A3DInt32 iRet = A3D_SUCCESS;
|
||||
A3DStatus iRet = A3D_SUCCESS;
|
||||
_TiXmlElement* graphscene = new _TiXmlElement("A3DGraphSceneDisplayParametersData");
|
||||
graphscene->SetAttribute("NumberOfPlanes", sData.m_uiPlaneSize);
|
||||
|
||||
@@ -337,11 +339,11 @@ int traverseGraphScene(const A3DGraphSceneDisplayParametersData& sData, _TiXmlEl
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseGraphScene(const A3DGraphSceneDisplayParameters * pGraphSceneParam, _TiXmlElement* setting)
|
||||
A3DStatus traverseGraphScene(const A3DGraphSceneDisplayParameters * pGraphSceneParam, _TiXmlElement* setting)
|
||||
{
|
||||
A3DGraphSceneDisplayParametersData sData;
|
||||
A3D_INITIALIZE_DATA(A3DGraphSceneDisplayParametersData, sData);
|
||||
A3DInt32 iRet = A3DGraphSceneDisplayParametersGet(pGraphSceneParam, &sData);
|
||||
A3DStatus iRet = A3DGraphSceneDisplayParametersGet(pGraphSceneParam, &sData);
|
||||
|
||||
traverseGraphScene(sData, setting);
|
||||
|
||||
@@ -350,9 +352,9 @@ int traverseGraphScene(const A3DGraphSceneDisplayParameters * pGraphSceneParam,
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseDisplayFilter(A3DAsmFilter* pFilter, _TiXmlElement* setting)
|
||||
A3DStatus traverseDisplayFilter(A3DAsmFilter* pFilter, _TiXmlElement* setting)
|
||||
{
|
||||
A3DInt32 iRet = A3D_SUCCESS;
|
||||
A3DStatus iRet = A3D_SUCCESS;
|
||||
_TiXmlElement* filter = new _TiXmlElement("A3DAsmFilterData");
|
||||
|
||||
traverseSource(pFilter, filter);
|
||||
@@ -360,7 +362,7 @@ int traverseDisplayFilter(A3DAsmFilter* pFilter, _TiXmlElement* setting)
|
||||
if (!pFilter)
|
||||
{
|
||||
filter->SetAttribute("Filter", "empty");
|
||||
return -1;
|
||||
return A3D_ERROR;
|
||||
}
|
||||
|
||||
A3DAsmFilterData oData;
|
||||
@@ -426,28 +428,29 @@ int traverseDisplayFilter(A3DAsmFilter* pFilter, _TiXmlElement* setting)
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseDisplayFilters(A3DUns32 uiSize,A3DAsmFilter** ppFilters , _TiXmlElement* setting)
|
||||
A3DStatus traverseDisplayFilters(A3DUns32 uiSize,A3DAsmFilter** ppFilters , _TiXmlElement* setting)
|
||||
{
|
||||
for (A3DUns32 uk = 0; uk < uiSize; ++uk)
|
||||
traverseDisplayFilter(ppFilters[uk], setting);
|
||||
return 0;
|
||||
return A3D_SUCCESS;
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseView(const A3DMkpView* pView, _TiXmlElement* setting)
|
||||
A3DStatus traverseView(const A3DMkpView* pView, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMkpViewData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMkpViewData, sData);
|
||||
|
||||
_TiXmlElement* view = new _TiXmlElement("A3DMkpViewData");
|
||||
setAttributePRC2XMLID(pView, view);
|
||||
traverseSource(pView, view);
|
||||
|
||||
A3DInt32 iRet = A3DMkpViewGet(pView, &sData);
|
||||
A3DStatus iRet = A3DMkpViewGet(pView, &sData);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
view->SetAttribute("m_bIsAnnotationView", sData.m_bIsAnnotationView);
|
||||
view->SetAttribute("m_bIsDefaultView", sData.m_bIsDefaultView);
|
||||
traverseVoids("m_ppAnnotations", sData.m_uiAnnotationsSize, (const A3DVoid**)sData.m_ppAnnotations, view);
|
||||
traversePRC2XMLIDs("m_ppAnnotations", sData.m_uiAnnotationsSize, (const A3DVoid**)sData.m_ppAnnotations, view);
|
||||
traverseSrfPlane(sData.m_pPlane, view);
|
||||
traverseGraphScene(sData.m_pSceneDisplayParameters, view);
|
||||
|
||||
@@ -580,15 +583,16 @@ static void stTraverseMarkupTypeAndSubType(const A3DEMarkupType& eType, const A3
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMarkup(const A3DMkpMarkup* pMarkup, _TiXmlElement* setting)
|
||||
A3DStatus traverseMarkup(const A3DMkpMarkup* pMarkup, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMkpMarkupData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMkpMarkupData, sData);
|
||||
|
||||
_TiXmlElement* markup = new _TiXmlElement("A3DMkpMarkupData");
|
||||
setAttributePRC2XMLID(pMarkup, markup);
|
||||
traverseSource(pMarkup, markup);
|
||||
|
||||
A3DInt32 iRet = A3DMkpMarkupGet(pMarkup, &sData);
|
||||
A3DStatus iRet = A3DMkpMarkupGet(pMarkup, &sData);
|
||||
A3DRootBaseData sBaseData;
|
||||
A3D_INITIALIZE_DATA(A3DRootBaseData, sBaseData);
|
||||
iRet = A3DRootBaseGet(pMarkup, &sBaseData);
|
||||
@@ -646,7 +650,7 @@ int traverseMarkup(const A3DMkpMarkup* pMarkup, _TiXmlElement* setting)
|
||||
A3DMkpMarkupGet(NULL, &sData);
|
||||
}
|
||||
else
|
||||
markup->SetAttribute("error", iRet);
|
||||
markup->SetAttribute("error", A3DMiscGetErrorMsg(iRet));
|
||||
|
||||
setting->LinkEndChild(markup);
|
||||
|
||||
@@ -715,14 +719,14 @@ void setLeaderSymbolType(_TiXmlElement* setting, const char* name, const A3DMDLe
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int stTraverseLeaderSymbol(const A3DMDLeaderSymbol* pSymbol, _TiXmlElement* setting)
|
||||
A3DStatus stTraverseLeaderSymbol(const A3DMDLeaderSymbol* pSymbol, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMDLeaderSymbolData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMDLeaderSymbolData, sData);
|
||||
|
||||
_TiXmlElement* symbol = new _TiXmlElement("A3DMDLeaderSymbolData");
|
||||
|
||||
A3DInt32 iRet = A3DMDLeaderSymbolGet(pSymbol, &sData);
|
||||
A3DStatus iRet = A3DMDLeaderSymbolGet(pSymbol, &sData);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
symbol->SetDoubleAttribute("m_dAdditionalParameter", sData.m_dAdditionalParameter);
|
||||
@@ -735,14 +739,14 @@ int stTraverseLeaderSymbol(const A3DMDLeaderSymbol* pSymbol, _TiXmlElement* sett
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int stTraverseLeaderStub(const A3DMDMarkupLeaderStub* pStub, _TiXmlElement* setting)
|
||||
A3DStatus stTraverseLeaderStub(const A3DMDMarkupLeaderStub* pStub, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMDMarkupLeaderStubData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMDMarkupLeaderStubData, sData);
|
||||
|
||||
_TiXmlElement* stub = new _TiXmlElement("A3DMDMarkupLeaderStubData");
|
||||
|
||||
A3DInt32 iRet = A3DMDMarkupLeaderStubGet(pStub, &sData);
|
||||
A3DStatus iRet = A3DMDMarkupLeaderStubGet(pStub, &sData);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
traverseDoubles("m_pdValues" , sData.m_uiValuesAndAnchorTypesSize, sData.m_pdValues , stub);
|
||||
@@ -754,14 +758,14 @@ int stTraverseLeaderStub(const A3DMDMarkupLeaderStub* pStub, _TiXmlElement* sett
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int stTraverseMDPosition2D(const A3DMDPosition2D* pPos, _TiXmlElement* setting)
|
||||
A3DStatus stTraverseMDPosition2D(const A3DMDPosition2D* pPos, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMDPosition2DData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMDPosition2DData, sData);
|
||||
|
||||
_TiXmlElement* pos = new _TiXmlElement("A3DMDPosition2DData");
|
||||
|
||||
A3DInt32 iRet = A3DMDPosition2DGet(pPos, &sData);
|
||||
A3DStatus iRet = A3DMDPosition2DGet(pPos, &sData);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
pos->SetDoubleAttribute("m_dOffset", sData.m_dOffset);
|
||||
@@ -774,14 +778,14 @@ int stTraverseMDPosition2D(const A3DMDPosition2D* pPos, _TiXmlElement* setting)
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int stTraverseMDPosition3D(const A3DMDPosition3D* pPos, _TiXmlElement* setting)
|
||||
A3DStatus stTraverseMDPosition3D(const A3DMDPosition3D* pPos, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMDPosition3DData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMDPosition3DData, sData);
|
||||
|
||||
_TiXmlElement* pos = new _TiXmlElement("A3DMDPosition3DData");
|
||||
|
||||
A3DInt32 iRet = A3DMDPosition3DGet(pPos, &sData);
|
||||
A3DStatus iRet = A3DMDPosition3DGet(pPos, &sData);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
traversePoint("m_sPosition", sData.m_sPosition, pos);
|
||||
@@ -792,14 +796,14 @@ int stTraverseMDPosition3D(const A3DMDPosition3D* pPos, _TiXmlElement* setting)
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int stTraverseMDPositionReference(const A3DMDPositionReference* pPos, _TiXmlElement* setting)
|
||||
A3DStatus stTraverseMDPositionReference(const A3DMDPositionReference* pPos, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMDPositionReferenceData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMDPositionReferenceData, sData);
|
||||
|
||||
_TiXmlElement* pos = new _TiXmlElement("A3DMDPositionReferenceData");
|
||||
|
||||
A3DInt32 iRet = A3DMDPositionReferenceGet(pPos, &sData);
|
||||
A3DStatus iRet = A3DMDPositionReferenceGet(pPos, &sData);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
// traverseLinkedItem(sData.m_psLinkedItem, pos); // avoid recursive visitation...
|
||||
@@ -812,10 +816,10 @@ int stTraverseMDPositionReference(const A3DMDPositionReference* pPos, _TiXmlElem
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int stTraverseMDPosition(const A3DMDPosition* pPos, _TiXmlElement* setting)
|
||||
A3DStatus stTraverseMDPosition(const A3DMDPosition* pPos, _TiXmlElement* setting)
|
||||
{
|
||||
A3DEEntityType eType = kA3DTypeUnknown;
|
||||
A3DInt32 iRet = A3DEntityGetType(pPos, &eType);
|
||||
A3DStatus iRet = A3DEntityGetType(pPos, &eType);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
switch(eType)
|
||||
@@ -838,14 +842,14 @@ int stTraverseMDPosition(const A3DMDPosition* pPos, _TiXmlElement* setting)
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int stTraverseLeaderDefinition(const A3DMDLeaderDefinition* pLeaderDef, _TiXmlElement* setting)
|
||||
A3DStatus stTraverseLeaderDefinition(const A3DMDLeaderDefinition* pLeaderDef, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMDLeaderDefinitionData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMDLeaderDefinitionData, sData);
|
||||
|
||||
_TiXmlElement* definition = new _TiXmlElement("A3DMDLeaderDefinitionData");
|
||||
|
||||
A3DInt32 iRet = A3DMDLeaderDefinitionGet(pLeaderDef, &sData);
|
||||
A3DStatus iRet = A3DMDLeaderDefinitionGet(pLeaderDef, &sData);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
setLeaderSymbolType(definition, "m_eTailSymbol", sData.m_eTailSymbol);
|
||||
@@ -876,7 +880,7 @@ int stTraverseLeaderDefinition(const A3DMDLeaderDefinition* pLeaderDef, _TiXmlEl
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseLeader(const A3DMkpLeader* pLeader, _TiXmlElement* setting)
|
||||
A3DStatus traverseLeader(const A3DMkpLeader* pLeader, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMkpLeaderData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMkpLeaderData, sData);
|
||||
@@ -884,23 +888,32 @@ int traverseLeader(const A3DMkpLeader* pLeader, _TiXmlElement* setting)
|
||||
_TiXmlElement* leader = new _TiXmlElement("A3DMkpLeaderData");
|
||||
traverseSource(pLeader, leader);
|
||||
|
||||
A3DInt32 iRet = A3DMkpLeaderGet(pLeader, &sData);
|
||||
A3DStatus iRet = A3DMkpLeaderGet(pLeader, &sData);
|
||||
if(iRet == A3D_SUCCESS)
|
||||
{
|
||||
traverseLinkedItem(sData.m_pLinkedItem, leader);
|
||||
traverseTessBase(sData.m_pTessellation, leader);
|
||||
if(sData.m_pLinkedItem)
|
||||
{
|
||||
traverseLinkedItem(sData.m_pLinkedItem, leader);
|
||||
}
|
||||
|
||||
if (sData.m_pTessellation)
|
||||
{
|
||||
traverseTessBase(sData.m_pTessellation, leader);
|
||||
}
|
||||
|
||||
stTraverseLeaderDefinition(pLeader, leader);
|
||||
|
||||
A3DMkpLeaderGet(NULL, &sData);
|
||||
}
|
||||
else
|
||||
leader->SetAttribute("error", iRet);
|
||||
leader->SetAttribute("error", A3DMiscGetErrorMsg(iRet));
|
||||
|
||||
setting->LinkEndChild(leader);
|
||||
return iRet;
|
||||
}
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseLinkedItem(const A3DMiscMarkupLinkedItem* pMkpLinkedItem, _TiXmlElement* setting)
|
||||
A3DStatus traverseLinkedItem(const A3DMiscMarkupLinkedItem* pMkpLinkedItem, _TiXmlElement* setting)
|
||||
{
|
||||
A3DMiscMarkupLinkedItemData sData;
|
||||
A3D_INITIALIZE_DATA(A3DMiscMarkupLinkedItemData, sData);
|
||||
@@ -908,8 +921,8 @@ int traverseLinkedItem(const A3DMiscMarkupLinkedItem* pMkpLinkedItem, _TiXmlElem
|
||||
_TiXmlElement* mkplinkeditem = new _TiXmlElement("A3DMiscMarkupLinkedItemData");
|
||||
traverseSource(pMkpLinkedItem, mkplinkeditem);
|
||||
|
||||
A3DInt32 iRet = A3DMiscMarkupLinkedItemGet(pMkpLinkedItem, &sData);
|
||||
if(pMkpLinkedItem && iRet == A3D_SUCCESS)
|
||||
A3DStatus iRet = A3DMiscMarkupLinkedItemGet(pMkpLinkedItem, &sData);
|
||||
if(iRet == A3D_SUCCESS && pMkpLinkedItem)
|
||||
{
|
||||
traverseEntityReference((A3DMiscEntityReference*)pMkpLinkedItem, mkplinkeditem);
|
||||
mkplinkeditem->SetAttribute("m_bMarkupShowControl", sData.m_bMarkupShowControl);
|
||||
@@ -917,12 +930,12 @@ int traverseLinkedItem(const A3DMiscMarkupLinkedItem* pMkpLinkedItem, _TiXmlElem
|
||||
mkplinkeditem->SetAttribute("m_bLeaderShowControl", sData.m_bLeaderShowControl);
|
||||
mkplinkeditem->SetAttribute("m_bLeaderDeleteControl", sData.m_bLeaderDeleteControl);
|
||||
if(sData.m_pTargetProductOccurrence != NULL)
|
||||
_SetAttributePtr(mkplinkeditem, "m_pTargetProductOccurrence", (void*) sData.m_pTargetProductOccurrence);
|
||||
setAttributePtr("m_pTargetProductOccurrence", sData.m_pTargetProductOccurrence, mkplinkeditem);
|
||||
A3DMiscMarkupLinkedItemGet(NULL, &sData);
|
||||
}
|
||||
else
|
||||
mkplinkeditem->SetAttribute("error", pMkpLinkedItem ? iRet : A3D_INVALID_ENTITY_NULL);
|
||||
mkplinkeditem->SetAttribute("error", pMkpLinkedItem ? A3DMiscGetErrorMsg(iRet) : A3DMiscGetErrorMsg(A3D_INVALID_ENTITY_NULL));
|
||||
|
||||
setting->LinkEndChild(mkplinkeditem);
|
||||
return iRet;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user