C3D Toolkit  Kernel - 117982, Vision - 2.9.2.2
conv_exchange_settings.h File Reference

Settings of import and export procedure. More...

#include <math_define.h>
#include <mb_placement3d.h>
#include <mb_data.h>
#include <conv_predefined.h>
#include <reference_item.h>
#include <tool_cstring.h>
#include <map>

Classes

struct  C3DConverterDebugSettings
 Settings of the debug features of the C3D Converter. More...
 
struct  IProductIdMaker
 Interface of component's identifier generator. More...
 
class  IC3DCharEncodingTransformer
 An interface for string encoding. More...
 
class  IConvertorProperty3D
 Interface of converter's properties. More...
 
struct  NameProductIdMaker
 Implementation of component's identifier generator. More...
 
class  ConvConvertorProperty3D
 Pre-defined implementation of converter's properties. More...
 
struct  ConvConvertorProperty3D::LogRecord
 Converter message data. More...
 
class  C3DCharEncodingTransformerLocale
 Transform strings using the set locale. More...
 
class  IC3DCharEncodingTransformerStep
 Transform strings using the STEP wide characters encoding. More...
 
class  IC3DCharEncodingTransformerUTF8
 Transform strings using the utf-8 encoding. More...
 

Macros

#define LENGTH_UNIT_MM   1.0
 Length units constants.
More...
 
#define LENGTH_UNIT_CM   10.0
 Centimeters.
 
#define LENGTH_UNIT_DM   100.0
 Decimeters.
 
#define LENGTH_UNIT_METER   1000.0
 Meters.
 
#define LENGTH_UNIT_INCH   25.4
 Inches.
 
#define MASS_UNIT_GM   1.0
 Mass units constants. More...
 
#define MASS_UNIT_KG   1000.0
 Kilograms.
 
#define MASS_UNIT_MG   0.001
 Milligrams.
 
#define MASS_UNIT_MKG   1e-6
 Micrograms.
 
#define MASS_UNIT_OU   28.35
 Ounces.
 
#define MASS_UNIT_PN   453.59
 Pounds.
 
#define EXPORT_DEFAULT   -1
 Default for specified format.
 
#define EXPORT_STEP_203   203
 STEP applied protocol STEP 203 (Configuration controlled design).
 
#define EXPORT_STEP_214   214
 STEP applied protocol STEP 214 (Automotive design).
 
#define EXPORT_STEP_242   242
 STEP applied protocol STEP 242. (default)
 
#define EXPORT_ACIS_4   4
 ACIS version 4.0.

 
#define EXPORT_ACIS_7   7
 ACIS version 7.0 (default).

 
#define EXPORT_ACIS_10   10
 ACIS version 10.0.

 

Enumerations

enum  MbeConverterStrings {
  cvs_BEGIN = 0 , cvs_STEPAuthor , cvs_STEPOrganization , cvs_STEPComment ,
  cvs_CAD_NAME , cvs_STEPPreprocessorVersion , cvs_STEPAuthorization , cvs_END
}
 Indices of strings, transmitted through converter.
More...
 
enum  MbeIOPermiss {
  iop_rSolid = 0 , iop_wSolid , iop_rSurface , iop_wSurface ,
  iop_rCurve , iop_wCurve , iop_rDrafts , iop_wDrafts ,
  iop_rInvisible , iop_wInvisible , iop_rPoint , iop_wPoint ,
  iop_rDocInfo , iop_wDocInfo , iop_rTextDescription , iop_wTextDescription ,
  iop_rDimensions , iop_wDimensions , iop_rAttributes , iop_wAttributes ,
  iop_rBRep , iop_wBRep , iop_rPolygonal , iop_wPolygonal ,
  iop_rLOD0 , iop_wLOD0 , iop_rAssociated , iop_wAssociated ,
  iop_rDensity , iop_wDensity , iop_rValidationProperties , iop_wValidationProperties ,
  iop_rStyle , iop_wStyle , iop_END
}
 Indeces, which filter imported/exported objects or properties.
More...
 
enum  eMsgType {
  emt_ErrorNoId , emt_TextOnly , emt_Info , emt_Warning ,
  emt_Error
}
 Type of a log message.
More...
 
enum  eMsgDetail {
  emd_Title , emd_HEADError , emd_HEADWarinig , emd_HEADInfo ,
  emd_HEADDefaultMsg , emd_STOPFileOpenError , emd_STOPFileOpenErrorOrEmpty , emd_STOPHeaderReadError ,
  emd_STOPNoOrBadData , emd_STOPIncorrectStructure , emd_STOPAddressConflict , emd_ErrorNoRootObject ,
  emd_ErrorSyntaxIncorrectFormFloat , emd_ErrorEmptyLoop , emd_ErrorEmptyQueriesList , emd_ErrorEmptyObjectsList ,
  emd_ErrorEmptyGeomObjectsList , emd_ErrorEmptyShellsList , emd_ErrorEmptyListOfWrieframes , emd_ErrorEmptyCurveCompositesList ,
  emd_ErrorEmptyBoundCurvesList , emd_ErrorEmptyEdgeList , emd_ErrorEmptyFacesList , emd_ErrorEmptyReferencesList ,
  emd_ErrorEmptyOrMore2ReferencesList , emd_ErrorUndefinedFaceSurfaceRef , emd_ErrorUndefinedBaseCurveRef , emd_ErrorRadiusTooCloseToZero ,
  emd_ErrorRadiusValueNegative , emd_ErrorEllipseAxisTooCloseToZero , emd_ErrorEllipseAxisNegative , emd_ErrorNegativeDegree ,
  emd_ErrorNegativeUDegree , emd_ErrorNegativeVDegree , emd_ErrorDegreeFixImpossible , emd_ErrorPolylinePointListLess2 ,
  emd_ErrorPointListLess2 , emd_ErrorKnotsListLess2 , emd_ErrorWeightsListLess2 , emd_ErrorUPointListLess2 ,
  emd_ErrorUKnotsListLess2 , emd_ErrorUWeightsListLess2 , emd_ErrorVPointListLess2 , emd_ErrorVKnotsListLess2 ,
  emd_ErrorVWeightsListLess2 , emd_ErrorListsSizeMismatch , emd_ErrorKnotsWeightsListsOrderMismatch , emd_ErrorKnotsWeightsListsSizeMismatch ,
  emd_ErrorUKnotsWeightsListsSizeMismatch , emd_ErrorVKnotsWeightsListsSizeMismatch , emd_ErrorSplineCurveNotCreatedUndefinedKnotsVector , emd_ErrorSplineSurfaceNotCreatedUndefinedKnotsVectors ,
  emd_ErrorInCorrectSplineSurfaceData , emd_WarningNoSectionTerminator , emd_WarningSyntaxMultipleDotInFloat , emd_WarningSyntaxMultipleEInFloat ,
  emd_WarningLoopNotClosed , emd_WarningContourNotClosed , emd_WarningUndefinedRef , emd_WarningToroidalSurfaceDegenerated ,
  emd_WarningUndefinedBasisCurve , emd_WarningUndefinedSweptCurve , emd_WarningUndefinedExtrusionDirection , emd_WarningUndefinedAxis ,
  emd_WarningUndefinedAxisOfRevolution , emd_WarningUndefinedBasisSurface , emd_WarningUndefinedRepresentation , emd_WarningUndefinedTransformationOperator ,
  emd_WarningUndefinedObjectTransformBy , emd_WarningUndefinedObjectToTransform , emd_WarningUndefinedCurve , emd_WarningUndefinedCompositeSegment ,
  emd_WarningUndefinedDirection , emd_WarningUndefinedAxisDirection , emd_WarningDegeneratedItemWasSkipped , emd_WarningFloatParceFailureDefaultUsed ,
  emd_WarningSameShapeEdgeTwiceInLoop , emd_WarningIncorrectFaceWasNotAddedToShell , emd_WarningBoundsNotConnectedWithSeams , emd_WarningIntCurveWasReplacedBySegment ,
  emd_WarningOpenSolidsNotSupported , emd_WarningOpenMeshesNotSupported , emd_WarningClosedSolidBecameOpenMesh , emd_WarningEmptyMeshSkipped ,
  emd_WarningTriangulationFailed , emd_MessageWeightsFilled , emd_ErrorEdgeCurveFlagTSingleRedefinition , emd_ErrorEdgeCurveFlagFSingleRedefinition ,
  emd_ErrorSTEPEdgeCurveFlagTMultipleRedefinition , emd_ErrorSTEPEdgeCurveFlagFMultipleRedefinition , emd_ErrorSTEPUndefinedFaceGeometry , emd_ErrorSTEPSyntaxMultipleDotInEnum ,
  emd_WarningSTEPPointCorrection , emd_WarningSTEPEdgeCurveByVertices , emd_MessageSTEPFlagChangedToF , emd_MessageSTEPFlagChangedToT ,
  emd_WarningBooleanUndefined , emd_WarningACISUnsupportedInterpoleCurveType , emd_WarningACISUnsupportedParametricCurveType , emd_WarningACISUnsupportedSplineSurfaceType ,
  emd_ErrorACISUnsupportedVersion , emd_WarningACISCannotImportEntityId , emd_WarningACISIncorrectIntAttribute , emd_WarningVRMLGridDuplicatesInMeshes ,
  emd_WarningACISLawIntCurveIsNotCreated , emd_ErrorIGESIncorrectExternalReference , emd_ErrorSTLTooManyTrianglesForBinary , emd_ErrorXTUnsupportedVersion ,
  emd_ErrorJTUnsupportedVersion , emd_ErrorStringEncoding , emd_WarningCurveParametrizationCorrected , emd_ErrorJTDuplicatedTriangles ,
  emd_WarningCreateEdgeBadInput , emd_PluginGeneralProblem , emd_PluginLicenceProblem , emd_PluginFunctionalityLimitation
}
 The key of a detailed log message.
More...
 
enum  eLoggingMode { elm_LoggingOff , elm_LoggingAll , elm_LoggingForId }
 Logging mode.
More...
 

Detailed Description

Settings of import and export procedure.

Interface of settings and pre-defined implementation ConvConvertorProperty3D.

Macro Definition Documentation

◆ LENGTH_UNIT_MM

#define LENGTH_UNIT_MM   1.0

Length units constants.

Millimeters.

◆ MASS_UNIT_GM

#define MASS_UNIT_GM   1.0

Mass units constants.

Grams.

Enumeration Type Documentation

◆ MbeConverterStrings

Indices of strings, transmitted through converter.

Enumerator
cvs_BEGIN 

For lookup only.

cvs_STEPAuthor 

Author of the document, in STEP.

cvs_STEPOrganization 

The organization, the author is related with, in STEP.

cvs_STEPComment 

Annotation, in STEP.

cvs_CAD_NAME 

CAD Name for export.

cvs_STEPPreprocessorVersion 

Preprocerssor version, in STEP.

cvs_STEPAuthorization 

Authorization, in STEP.

cvs_END 

For lookup only.

◆ MbeIOPermiss

Indeces, which filter imported/exported objects or properties.

Enumerator
iop_rSolid 

Import solid solids.

iop_wSolid 

Export solid solids.

iop_rSurface 

Import surfaces.

iop_wSurface 

Export surfaces.

iop_rCurve 

Import curves.

iop_wCurve 

Export curves.

iop_rDrafts 

Import drafts (ignored).

iop_wDrafts 

Export drafts.

iop_rInvisible 

Import invisible objects (not applied).

iop_wInvisible 

Export invisible objects.

iop_rPoint 

Import points.

iop_wPoint 

Export points.

iop_rDocInfo 

Import components info ( author, organization, description ).

iop_wDocInfo 

Export components info ( author, organization, description ).

iop_rTextDescription 

Import technical requirements.

iop_wTextDescription 

Export technical requirements.

iop_rDimensions 

Import dimensions.

iop_wDimensions 

Export dimensions.

iop_rAttributes 

Import attributes.

iop_wAttributes 

Export attributes.

iop_rBRep 

Import shapes in boundary representation (JT only).

iop_wBRep 

Export shapes in boundary representation (JT only).

iop_rPolygonal 

Import polygonal shapes.

iop_wPolygonal 

Export polygonal shapes.

iop_rLOD0 

Import polygonal shapes of the 0-th LOD.

iop_wLOD0 

Export polygonal shapes of the 0-th LOD.

iop_rAssociated 

Import associated geometry (threads etc).

iop_wAssociated 

Export associated geometry (threads etc).

iop_rDensity 

Import density units.

iop_wDensity 

Export density units.

iop_rValidationProperties 

Import validation properties - volume, surface area, centroid.

iop_wValidationProperties 

Export validation properties - volume, surface area, centroid.

iop_rStyle 

Import appearance.

iop_wStyle 

Export appearance.

◆ eMsgDetail

enum eMsgDetail

The key of a detailed log message.

Enumerator
emd_Title 

File header.

emd_HEADError 

Error.

emd_HEADWarinig 

Warning.

emd_HEADInfo 

Info.

emd_HEADDefaultMsg 

Message.

emd_STOPFileOpenError 

Cannot open file.

emd_STOPFileOpenErrorOrEmpty 

Cannot open file or file is empty.

emd_STOPHeaderReadError 

Cannot read file header.

emd_STOPNoOrBadData 

File body does not exist or incorrect.

emd_STOPIncorrectStructure 

Incorrect file structure.

emd_STOPAddressConflict 

Two or more entities have the same id.

emd_ErrorNoRootObject 

Root object not found.

emd_ErrorSyntaxIncorrectFormFloat 

Error reading floating-point number.

emd_ErrorEmptyLoop 

Face has an empty loop.

emd_ErrorEmptyObjectsList 

List of objects is empty.

emd_ErrorEmptyGeomObjectsList 

List of geometric objects is empty.

emd_ErrorEmptyShellsList 

List of shells is empty.

emd_ErrorEmptyListOfWrieframes 

List of frames is empty.

emd_ErrorEmptyCurveCompositesList 

Composite curve has an empty list of composites.

emd_ErrorEmptyBoundCurvesList 

List of boundary curves is empty.

emd_ErrorEmptyEdgeList 

List of edges is empty.

emd_ErrorEmptyFacesList 

List of faces is empty.

emd_ErrorEmptyReferencesList 

List of references is empty.

emd_ErrorEmptyOrMore2ReferencesList 

List of references is empty or contains more than 2 items.

emd_ErrorUndefinedFaceSurfaceRef 

Invalid reference to base surface.

emd_ErrorUndefinedBaseCurveRef 

Invalid reference to base curve.

emd_ErrorRadiusTooCloseToZero 

Too small radius.

emd_ErrorRadiusValueNegative 

Negative value of radius.

emd_ErrorEllipseAxisTooCloseToZero 

Ellipse axis is too short.

emd_ErrorEllipseAxisNegative 

Ellipse axis length is negative.

emd_ErrorNegativeDegree 

Negative spline order.

emd_ErrorNegativeUDegree 

Spline surface order along U is negative.

emd_ErrorNegativeVDegree 

Spline surface order along V is negative.

emd_ErrorDegreeFixImpossible 

Cannot fix spline order.

emd_ErrorPolylinePointListLess2 

Polyline contains less then 2 points.

emd_ErrorPointListLess2 

List of points contains less then 2 points.

emd_ErrorKnotsListLess2 

List of knots contains less then 2 values.

emd_ErrorWeightsListLess2 

List of weights contains less then 2 values.

emd_ErrorUPointListLess2 

List of points along U contains less then 2 points.

emd_ErrorUKnotsListLess2 

List of knots along U contains less then 2 values.

emd_ErrorUWeightsListLess2 

List of weights along U contains less then 2 values.

emd_ErrorVPointListLess2 

List of points along V contains less then 2 points.

emd_ErrorVKnotsListLess2 

List of knots along V contains less then 2 values.

emd_ErrorVWeightsListLess2 

List of weights along V contains less then 2 values.

emd_ErrorListsSizeMismatch 

Lists size mismatch.

emd_ErrorKnotsWeightsListsOrderMismatch 

Sizes of knots and weights lists do not agree with the spline order.

emd_ErrorKnotsWeightsListsSizeMismatch 

Size of knots list does not agree with the size of the list of weights.

emd_ErrorUKnotsWeightsListsSizeMismatch 

Sizes of knots and weights lists along U do not agree.

emd_ErrorVKnotsWeightsListsSizeMismatch 

Sizes of knots and weights lists along V do not agree.

emd_ErrorSplineCurveNotCreatedUndefinedKnotsVector 

Cannot create spline, because knots are not defined.

emd_ErrorSplineSurfaceNotCreatedUndefinedKnotsVectors 

Cannot create spline surface, because knots are not defined.

emd_ErrorInCorrectSplineSurfaceData 

Spline surface parameters are not valid.

emd_WarningNoSectionTerminator 

Section terminator not found.

emd_WarningSyntaxMultipleDotInFloat 

Too many dots in a floating-point number.

emd_WarningSyntaxMultipleEInFloat 

Too many E signs in a floating-point number.

emd_WarningLoopNotClosed 

Loop is not closed.

emd_WarningContourNotClosed 

contour is not closed.

emd_WarningUndefinedRef 

Invalid reference.

emd_WarningToroidalSurfaceDegenerated 

Toroidal surface is degenerate.

emd_WarningUndefinedBasisCurve 

Base curve not defined.

emd_WarningUndefinedSweptCurve 

Generatrix curve is not defined.

emd_WarningUndefinedExtrusionDirection 

Extrusion direction is not defined.

emd_WarningUndefinedAxis 

Axis is not defined.

emd_WarningUndefinedAxisOfRevolution 

Rotation axis is not defined.

emd_WarningUndefinedBasisSurface 

Base surface is not defined.

emd_WarningUndefinedRepresentation 

Representation is not defined.

emd_WarningUndefinedTransformationOperator 

Transformation is not defined.

emd_WarningUndefinedObjectTransformBy 

Basic object of transformation is not defined.

emd_WarningUndefinedObjectToTransform 

No object to transform is defined.

emd_WarningUndefinedCurve 

Curve is not defined.

emd_WarningUndefinedCompositeSegment 

Composite curve segment is not defined.

emd_WarningUndefinedDirection 

Direction is not defined.

emd_WarningUndefinedAxisDirection 

Axis direction is not defined.

emd_WarningDegeneratedItemWasSkipped 

Degenerate object was missed.

emd_WarningFloatParceFailureDefaultUsed 

Floating point value couldn't be parced; default value was used.

emd_WarningSameShapeEdgeTwiceInLoop 

Edge based on same curves twice enters a loop.

emd_WarningIncorrectFaceWasNotAddedToShell 

Incorrect face was not added to shell.

emd_WarningBoundsNotConnectedWithSeams 

Bounds of periodic face not connected with seams.

emd_WarningIntCurveWasReplacedBySegment 

Intersection curve was replaced by segment.

emd_WarningOpenSolidsNotSupported 

Format does not support export of open solids.

emd_WarningOpenMeshesNotSupported 

Format does not support export of open meshes.

emd_WarningClosedSolidBecameOpenMesh 

Triangulation of closed solid created an open mesh.

emd_WarningEmptyMeshSkipped 

Mesh without grids is skipped.

emd_WarningTriangulationFailed 

Triangulation failed. Object is skipped.

emd_MessageWeightsFilled 

Weights are set.

emd_ErrorEdgeCurveFlagTSingleRedefinition 

Double .T. face inclusion.

emd_ErrorEdgeCurveFlagFSingleRedefinition 

Double .F. face inclusion.

emd_ErrorSTEPEdgeCurveFlagTMultipleRedefinition 

Multiple .T. face inclusion in STEP.

emd_ErrorSTEPEdgeCurveFlagFMultipleRedefinition 

Multiple .F. face inclusion in STEP.

emd_ErrorSTEPUndefinedFaceGeometry 

Face geometry is not defined in STEP.

emd_ErrorSTEPSyntaxMultipleDotInEnum 

Too many dots in a enumeration record in STEP.

emd_WarningSTEPPointCorrection 

Point location corrected. ( by BUG_73871 )

emd_WarningSTEPEdgeCurveByVertices 

Edge curve corrected in accordance with vertices. ( by BUG_73871 )

emd_MessageSTEPFlagChangedToF 

Flag was set as .F. in STEP.

emd_MessageSTEPFlagChangedToT 

Flag was set as .T. in STEP.

emd_WarningBooleanUndefined 

Boolean value not defined.

emd_WarningACISUnsupportedInterpoleCurveType 

Interpolation curve type is not supported by SAT converter.

emd_WarningACISUnsupportedParametricCurveType 

Parametric curve type is not supported by SAT converter.

emd_WarningACISUnsupportedSplineSurfaceType 

Spline surface type is not supported by SAT converter.

emd_ErrorACISUnsupportedVersion 

Th version of file is not supported by SAT converter.

emd_WarningACISCannotImportEntityId 

Cannot import this object by SAT converter.

emd_WarningACISIncorrectIntAttribute 

Incorrect integer attribute.

emd_WarningVRMLGridDuplicatesInMeshes 

There are grid duplicates in meshes.

emd_WarningACISLawIntCurveIsNotCreated 

Law intersection curve is not created.

emd_ErrorIGESIncorrectExternalReference 

Invalid external reference in IGES.

emd_ErrorSTLTooManyTrianglesForBinary 

Too many triangles (not represented by unsigned 32-bit number) for export to binary STL.

emd_ErrorXTUnsupportedVersion 

Th version of file is not supported by X_T converter.

emd_ErrorJTUnsupportedVersion 

Th version of file is not supported by JT converter.

emd_ErrorStringEncoding 

String encoding error.

emd_WarningCurveParametrizationCorrected 

Curve parameterization was corrected.

emd_ErrorJTDuplicatedTriangles 

Mesh contains duplicate triangles and cannot be written.

emd_WarningCreateEdgeBadInput 

Incorrect input data for intersection curve.

emd_PluginGeneralProblem 

General plugin fault.

emd_PluginLicenceProblem 

Plugin couldn't be activated.

emd_PluginFunctionalityLimitation 

Plugin' funtionality doesn't cover the required case.