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,6 +14,14 @@
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#ifndef _MAX_PATH
|
||||
# ifdef _MSC_VER
|
||||
# define _MAX_PATH 260
|
||||
# else
|
||||
# define _MAX_PATH 4096
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef WIN32
|
||||
# pragma warning (disable:4090)
|
||||
# define _CRT_SECURE_NO_DEPRECATE 1
|
||||
@@ -27,7 +35,7 @@
|
||||
|
||||
#ifdef __APPLE__
|
||||
# include "TargetConditionals.h"
|
||||
# if TARGET_OS_IPHONE == 1 || TARGET_IPHONE_SIMULATOR == 1
|
||||
# if TARGET_OS_MACCATALYST != 1 && (TARGET_OS_IPHONE == 1 || TARGET_IPHONE_SIMULATOR == 1)
|
||||
# include "tinyxml.h"
|
||||
# include "common.hpp"
|
||||
# else
|
||||
@@ -44,57 +52,79 @@
|
||||
# include "../common.hpp"
|
||||
#endif
|
||||
|
||||
#if !defined(__ANDROID__) && !defined(APPLE_IOS)
|
||||
//######################################################################################################################
|
||||
void ShowUsage(MY_CHAR** ppcArgv);
|
||||
|
||||
//######################################################################################################################
|
||||
bool ParseArgs(A3DInt32 iArgc, MY_CHAR** ppcArgv,
|
||||
MY_CHAR(&acSrcFileName)[_MAX_PATH * 2],
|
||||
MY_CHAR(&acDstFileName)[_MAX_PATH * 2],
|
||||
MY_CHAR(&acLogFileName)[_MAX_PATH * 2],
|
||||
unsigned& uPrc2xmlFlagArgs);
|
||||
#endif // !defined(__ANDROID__) && !defined(APPLE_IOS)
|
||||
|
||||
//######################################################################################################################
|
||||
A3DStatus ProcessFile(
|
||||
A3DSDKHOOPSExchangeLoader& sHoopsExchangeLoader,
|
||||
A3DImport& sImport,
|
||||
const MY_CHAR* pcPRCFile,
|
||||
const MY_CHAR* pcXMLFile);
|
||||
const MY_CHAR* pcXMLFile,
|
||||
bool bDumpPictures);
|
||||
|
||||
//######################################################################################################################
|
||||
void _SetAttributePtr(_TiXmlElement* psElement, const A3DUTF8Char* pcAttribName, void* pValue);
|
||||
void setTextureDirectory(const MY_CHAR *texturePath); // use this to also output texture pictures files
|
||||
|
||||
//######################################################################################################################
|
||||
void _SetDoubleAttribute(_TiXmlElement* psElement, const char* name, double val);
|
||||
void setAttributePtr(const A3DUTF8Char* pcAttribName, const A3DEntity* pElement, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseDoubles(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DDouble* pd, _TiXmlElement* setting);
|
||||
unsigned int getPRC2XMLID(const A3DEntity* pElement);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseUInts(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DUns32* pui, _TiXmlElement* setting);
|
||||
void setAttributePRC2XMLID(const A3DEntity* pElement, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseUChars(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DUns8* pui, _TiXmlElement* setting);
|
||||
A3DStatus traversePRC2XMLIDs(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DEntity** pp, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseBools(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DBool* pb, _TiXmlElement* setting);
|
||||
void setDoubleAttribute(_TiXmlElement* psElement, const char* name, double val);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseVoids(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DVoid** pp, _TiXmlElement* setting);
|
||||
A3DStatus traverseDoubles(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DDouble* pd, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traversePoint2d(const A3DUTF8Char* name, const A3DVector2dData& sData, _TiXmlElement* setting);
|
||||
A3DStatus traverseUInts(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DUns32* pui, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traversePoint(const A3DUTF8Char* name, const A3DVector3dData& sData, _TiXmlElement* setting);
|
||||
A3DStatus traverseUChars(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DUns8* pui, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traversePoints(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DVector3dData* pv, _TiXmlElement* setting);
|
||||
A3DStatus traverseBools(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DBool* pb, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseInterval(const A3DIntervalData* pData, _TiXmlElement* setting);
|
||||
A3DStatus traversePoint2d(const A3DUTF8Char* name, const A3DVector2dData& sData, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseDomain(const A3DDomainData* pData, _TiXmlElement* setting);
|
||||
A3DStatus traversePoint(const A3DUTF8Char* name, const A3DVector3dData& sData, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseBoundingBox(const A3DBoundingBoxData* pData, _TiXmlElement* setting);
|
||||
A3DStatus traversePoints(const A3DUTF8Char* name, const A3DUns32 uiSize, const A3DVector3dData* pv, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseParam(const A3DParameterizationData* pData, _TiXmlElement* setting);
|
||||
A3DStatus traverseInterval(const A3DIntervalData* pData, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseUVParam(const A3DUVParameterizationData* pData, _TiXmlElement* setting);
|
||||
A3DStatus traverseDomain(const A3DDomainData* pData, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
A3DStatus traverseBoundingBox(const A3DBoundingBoxData* pData, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
A3DStatus traverseParam(const A3DParameterizationData* pData, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
A3DStatus traverseUVParam(const A3DUVParameterizationData* pData, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
A3DStatus traverseTransformation(const A3DMiscTransformation* pTrsf, _TiXmlElement *setting);
|
||||
@@ -106,114 +136,125 @@ A3DStatus traverseCartesianTransformationData(const A3DMiscCartesianTransformati
|
||||
A3DStatus traverseCartesianTransformation(const A3DMiscCartesianTransformation* pTransfo3d, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseSource(const A3DEntity* pEntity, _TiXmlElement* setting);
|
||||
A3DStatus traverseSource(const A3DEntity* pEntity, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseGlobal(const A3DGlobal* pGlobal, _TiXmlElement* setting);
|
||||
A3DStatus traverseGlobal(const A3DGlobal* pGlobal, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseModel(const A3DAsmModelFile* pModelFile, _TiXmlElement* setting);
|
||||
A3DStatus traverseModel(const A3DAsmModelFile* pModelFile, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int dumpRelationships(const A3DBIMData* pBimData, _TiXmlElement* model);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseFonts(_TiXmlElement* setting);
|
||||
A3DStatus traverseFonts(_TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseCurve(const A3DCrvBase* pCrv, _TiXmlElement* setting);
|
||||
A3DStatus traverseCurve(const A3DCrvBase* pCrv, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseSurface(const A3DSurfBase* pSrf, _TiXmlElement* setting);
|
||||
A3DStatus traverseSurface(const A3DSurfBase* pSrf, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseSrfPlane(const A3DSurfPlane* pSrf, _TiXmlElement* setting);
|
||||
A3DStatus traverseSrfPlane(const A3DSurfPlane* pSrf, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseAnnotation(const A3DMkpAnnotationEntity* pAnnot, _TiXmlElement* setting);
|
||||
A3DStatus traverseAnnotation(const A3DMkpAnnotationEntity* pAnnot, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMarkup(const A3DMkpMarkup* pMarkup, _TiXmlElement* setting);
|
||||
A3DStatus traverseMarkup(const A3DMkpMarkup* pMarkup, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseLeader(const A3DMkpLeader* pLeader, _TiXmlElement* setting);
|
||||
A3DStatus traverseLeader(const A3DMkpLeader* pLeader, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseLinkedItem(const A3DMiscMarkupLinkedItem* pMkpLinkedItem, _TiXmlElement* setting);
|
||||
A3DStatus traverseLinkedItem(const A3DMiscMarkupLinkedItem* pMkpLinkedItem, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseEntityReference(const A3DMiscEntityReference* pEntityReference, _TiXmlElement* setting);
|
||||
A3DStatus traverseEntityReference(const A3DMiscEntityReference* pEntityReference, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseSingleWireBody(const A3DTopoSingleWireBody* pSingleWireBody, _TiXmlElement* setting);
|
||||
A3DStatus traverseSingleWireBody(const A3DTopoSingleWireBody* pSingleWireBody, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseTopoContext(const A3DTopoContext* pContext, _TiXmlElement* setting);
|
||||
A3DStatus traverseTopoContext(const A3DTopoContext* pContext, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseBodyContent(const A3DTopoBody* pBody, _TiXmlElement* setting,unsigned char &ucBehav);
|
||||
A3DStatus traverseBodyContent(const A3DTopoBody* pBody, _TiXmlElement* setting,unsigned char &ucBehav);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseBrepData(const A3DTopoBrepData* pBrepData, _TiXmlElement* setting);
|
||||
A3DStatus traverseBrepData(const A3DTopoBrepData* pBrepData, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseTessBase(const A3DTessBase* pTess, _TiXmlElement* setting);
|
||||
A3DStatus traverseTessBase(const A3DTessBase* pTess, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseView(const A3DMkpView* pView, _TiXmlElement* setting);
|
||||
A3DStatus traverseView(const A3DMkpView* pView, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseRepItem(const A3DRiRepresentationItem* pRepItem, _TiXmlElement* setting);
|
||||
A3DStatus traverseRepItem(const A3DRiRepresentationItem* pRepItem, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseCSys(const A3DRiCoordinateSystem* pCSys, _TiXmlElement* setting);
|
||||
A3DStatus traverseCSys(const A3DRiCoordinateSystem* pCSys, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseTextureApplication(const A3DGraphTextureApplicationData& sData, _TiXmlElement* setting);
|
||||
A3DStatus traverseTextureApplication(const A3DGraphTextureApplicationData& sData, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseTextureDefinition(const A3DGraphTextureDefinitionData& sData, _TiXmlElement* setting);
|
||||
A3DStatus traverseTextureDefinition(const A3DGraphTextureDefinitionData& sData, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMarkupTess(const A3DTessMarkup* pMarkupTess, _TiXmlElement* setting);
|
||||
A3DStatus traverseMarkupTess(const A3DTessMarkup* pMarkupTess, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMarkupDefinition(const A3DMkpMarkup* pMarkup, _TiXmlElement* setting);
|
||||
A3DStatus traverseMarkupDefinition(const A3DMkpMarkup* pMarkup, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMarkupText(const A3DMarkupText* pA3DMarkup, _TiXmlElement* setting);
|
||||
A3DStatus traverseMarkupText(const A3DMarkupText* pA3DMarkup, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMarkupRichText(const A3DMarkupRichText* pA3DMarkup, _TiXmlElement* setting);
|
||||
A3DStatus traverseMarkupRichText(const A3DMarkupRichText* pA3DMarkup, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMarkupDatum(const A3DMarkupDatum* pA3DMarkup, _TiXmlElement* setting);
|
||||
A3DStatus traverseMarkupDatum(const A3DMarkupDatum* pA3DMarkup, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMarkupTextProperties(const A3DMDTextProperties* pA3DTextProperties, _TiXmlElement* setting);
|
||||
A3DStatus traverseMarkupTextProperties(const A3DMDTextProperties* pA3DTextProperties, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMarkupGDT(const A3DMarkupGDT* psMarkup, _TiXmlElement* setting);
|
||||
A3DStatus traverseMarkupGDT(const A3DMarkupGDT* psMarkup, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMarkupDimension(const A3DMarkupDimension* pMarkup, _TiXmlElement* setting);
|
||||
A3DStatus traverseMarkupDimension(const A3DMarkupDimension* pMarkup, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseDrawing(const A3DDrawingModel * pDrawing, _TiXmlElement* setting);
|
||||
A3DStatus traverseDrawing(const A3DDrawingModel * pDrawing, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMaterial(const A3DGraphMaterialData& sData, _TiXmlElement* setting);
|
||||
A3DStatus traverseMaterial(const A3DGraphMaterialData& sData, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseMaterialProperties(const A3DEntity* pEntity, _TiXmlElement* xmlfather);
|
||||
A3DStatus traverseMaterialProperties(const A3DEntity* pEntity, _TiXmlElement* xmlfather);
|
||||
|
||||
//######################################################################################################################
|
||||
A3DVoid traverseFeatureTree(const A3DFRMTree* pFeatFeatureTree, _TiXmlElement* xmlfather);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseToleranceSizeValue(const A3DMDToleranceSizeValue* pToleranceSizeValue, _TiXmlElement* setting);
|
||||
A3DStatus traverseToleranceSizeValue(const A3DMDToleranceSizeValue* pToleranceSizeValue, _TiXmlElement* setting);
|
||||
|
||||
//######################################################################################################################
|
||||
int traverseConstraint(const A3DAsmConstraint* pAsmConstraint, _TiXmlElement* xmlfather);
|
||||
A3DStatus traverseConstraint(const A3DAsmConstraint* pAsmConstraint, _TiXmlElement* xmlfather);
|
||||
|
||||
//######################################################################################################################
|
||||
A3DStatus traversePublicationSet(const A3DAsmPublicationSet* pPublicationSet, _TiXmlElement* pXMLParent);
|
||||
|
||||
//######################################################################################################################
|
||||
enum PRC2XMLFlagArgs
|
||||
{
|
||||
EMPTY=0x0,
|
||||
DUMPPICTURES=0x1,
|
||||
DUMPRELATIONSHIPS=0x2
|
||||
};
|
||||
|
||||
#endif /* __A3DTESTERREAD_H__ */
|
||||
|
||||
Reference in New Issue
Block a user