]> OCCT Git - occt.git/commit
Improving translation of PMIs from STEP. This commit consists of:
authoranv <anv@opencascade.com>
Tue, 26 Sep 2023 15:08:34 +0000 (16:08 +0100)
committeranv <anv@opencascade.com>
Wed, 27 Sep 2023 15:36:09 +0000 (16:36 +0100)
commit9c355a612319ab82487e14827a1736cfb7b79914
treeb9d2ec014d2b73da33cc50dc33c697c002778229
parentcefc95b3c23f9d53d44e6a90e61590ac725ee46d
Improving translation of PMIs from STEP. This commit consists of:

0033099: Data Exchange, Step Import - Wrong PMI values in GDT

measure_with_unit entity is changed to be translated as Handle(Standard_Transient) and to be processed later, depending on the underlying type being used.

0033484: Data Exchange, Step Import - Pretessellated geometry is translated incompletely

Added proper translation for TessellatedCurveSet and ComplexTriangulatedSurfaceSet.

0030024: Data Exchange - STEP, IGES export support of BRep shapes based on tessellated geometry

Support of reading and writing tessellated geometry is added for the following STEP entities:
- triangulated face
- complex triangulated face
- tessellated shell
- tessellated solid
- tessellated shape representation

Models without BRep geometry (mesh formats like STL, OBJ and so on) are supported for writing to STEP.

New parameters are added to enable/disable tessellated geometry reading and writing:
- read.step.tessellated (On/Off/OnNoBRep) (On by default)
- write.step.tessellated (On/Off/OnNoBRep) (OnNoBRep by default)

OnNoBRep - tessellation is read/written only for entities for which there is no BRep representation.

Faces with poly triangulation are written in STEP as triangulated face entities with one coordinates list per face.
Only one poly triangulation per face (returned by BRep_Tool::Triangulation) is written to STEP.
234 files changed:
dox/user_guides/step/step.md
src/RWStepAP214/RWStepAP214_GeneralModule.cxx
src/RWStepAP214/RWStepAP214_ReadWriteModule.cxx
src/RWStepBasic/RWStepBasic_RWConversionBasedUnit.cxx
src/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndAreaUnit.cxx
src/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndLengthUnit.cxx
src/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndMassUnit.cxx
src/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndPlaneAngleUnit.cxx
src/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndRatioUnit.cxx
src/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndSolidAngleUnit.cxx
src/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndTimeUnit.cxx
src/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndVolumeUnit.cxx
src/RWStepDimTol/RWStepDimTol_RWAngularityTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWCircularRunoutTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWCoaxialityTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWConcentricityTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWCylindricityTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWFlatnessTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthDatRef.cxx
src/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol.cxx
src/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndGeoTolWthMod.cxx
src/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol.cxx
src/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndUneqDisGeoTol.cxx
src/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthMaxTol.cxx
src/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthMod.cxx
src/RWStepDimTol/RWStepDimTol_RWGeometricTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWGeometricToleranceWithDatumReference.cxx
src/RWStepDimTol/RWStepDimTol_RWGeometricToleranceWithDefinedAreaUnit.cxx
src/RWStepDimTol/RWStepDimTol_RWGeometricToleranceWithDefinedUnit.cxx
src/RWStepDimTol/RWStepDimTol_RWGeometricToleranceWithMaximumTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWGeometricToleranceWithModifiers.cxx
src/RWStepDimTol/RWStepDimTol_RWLineProfileTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWModifiedGeometricTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWParallelismTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWPerpendicularityTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWPositionTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWRoundnessTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWStraightnessTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWSurfaceProfileTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWSymmetryTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWTotalRunoutTolerance.cxx
src/RWStepDimTol/RWStepDimTol_RWUnequallyDisposedGeometricTolerance.cxx
src/RWStepRepr/RWStepRepr_RWMakeFromUsageOption.cxx
src/RWStepRepr/RWStepRepr_RWParallelOffset.cxx
src/RWStepRepr/RWStepRepr_RWQuantifiedAssemblyComponentUsage.cxx
src/RWStepShape/RWStepShape_RWMeasureQualification.cxx
src/RWStepShape/RWStepShape_RWToleranceValue.cxx
src/RWStepVisual/FILES
src/RWStepVisual/RWStepVisual_RWComplexTriangulatedFace.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWComplexTriangulatedFace.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWComplexTriangulatedSurfaceSet.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWComplexTriangulatedSurfaceSet.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWCubicBezierTessellatedEdge.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWCubicBezierTessellatedEdge.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWCubicBezierTriangulatedFace.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWCubicBezierTriangulatedFace.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedConnectingEdge.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedConnectingEdge.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedEdge.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedEdge.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedPointSet.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedPointSet.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedShapeRepresentation.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedShapeRepresentation.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedShapeRepresentationWithAccuracyParameters.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedShapeRepresentationWithAccuracyParameters.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedShell.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedShell.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedSolid.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedSolid.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedStructuredItem.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedStructuredItem.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedVertex.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedVertex.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedWire.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTessellatedWire.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTriangulatedFace.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWTriangulatedFace.hxx [new file with mode: 0644]
src/STEPCAFControl/STEPCAFControl_GDTProperty.cxx
src/STEPCAFControl/STEPCAFControl_Reader.cxx
src/STEPCAFControl/STEPCAFControl_Writer.cxx
src/STEPConstruct/STEPConstruct_UnitContext.cxx
src/STEPControl/STEPControl_ActorRead.cxx
src/STEPControl/STEPControl_ActorWrite.cxx
src/STEPControl/STEPControl_Controller.cxx
src/STEPControl/STEPControl_Reader.cxx
src/StepAP214/StepAP214_Protocol.cxx
src/StepBasic/StepBasic_ConversionBasedUnit.cxx
src/StepBasic/StepBasic_ConversionBasedUnit.hxx
src/StepBasic/StepBasic_ConversionBasedUnitAndLengthUnit.cxx
src/StepBasic/StepBasic_ConversionBasedUnitAndLengthUnit.hxx
src/StepBasic/StepBasic_ConversionBasedUnitAndMassUnit.cxx
src/StepBasic/StepBasic_ConversionBasedUnitAndMassUnit.hxx
src/StepBasic/StepBasic_ConversionBasedUnitAndPlaneAngleUnit.cxx
src/StepBasic/StepBasic_ConversionBasedUnitAndPlaneAngleUnit.hxx
src/StepBasic/StepBasic_ConversionBasedUnitAndRatioUnit.cxx
src/StepBasic/StepBasic_ConversionBasedUnitAndRatioUnit.hxx
src/StepBasic/StepBasic_ConversionBasedUnitAndSolidAngleUnit.cxx
src/StepBasic/StepBasic_ConversionBasedUnitAndSolidAngleUnit.hxx
src/StepBasic/StepBasic_ConversionBasedUnitAndTimeUnit.cxx
src/StepBasic/StepBasic_ConversionBasedUnitAndTimeUnit.hxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRef.cxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRef.hxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol.cxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol.hxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod.cxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod.hxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol.cxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol.hxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol.cxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol.hxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthMaxTol.cxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthMaxTol.hxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthMod.cxx
src/StepDimTol/StepDimTol_GeoTolAndGeoTolWthMod.hxx
src/StepDimTol/StepDimTol_GeometricTolerance.cxx
src/StepDimTol/StepDimTol_GeometricTolerance.hxx
src/StepDimTol/StepDimTol_GeometricToleranceWithDatumReference.cxx
src/StepDimTol/StepDimTol_GeometricToleranceWithDatumReference.hxx
src/StepDimTol/StepDimTol_GeometricToleranceWithDefinedAreaUnit.cxx
src/StepDimTol/StepDimTol_GeometricToleranceWithDefinedAreaUnit.hxx
src/StepDimTol/StepDimTol_GeometricToleranceWithDefinedUnit.cxx
src/StepDimTol/StepDimTol_GeometricToleranceWithDefinedUnit.hxx
src/StepDimTol/StepDimTol_GeometricToleranceWithMaximumTolerance.cxx
src/StepDimTol/StepDimTol_GeometricToleranceWithMaximumTolerance.hxx
src/StepDimTol/StepDimTol_GeometricToleranceWithModifiers.cxx
src/StepDimTol/StepDimTol_GeometricToleranceWithModifiers.hxx
src/StepDimTol/StepDimTol_ModifiedGeometricTolerance.cxx
src/StepDimTol/StepDimTol_ModifiedGeometricTolerance.hxx
src/StepDimTol/StepDimTol_UnequallyDisposedGeometricTolerance.cxx
src/StepDimTol/StepDimTol_UnequallyDisposedGeometricTolerance.hxx
src/StepRepr/StepRepr_MakeFromUsageOption.cxx
src/StepRepr/StepRepr_MakeFromUsageOption.hxx
src/StepRepr/StepRepr_ParallelOffset.cxx
src/StepRepr/StepRepr_ParallelOffset.hxx
src/StepRepr/StepRepr_QuantifiedAssemblyComponentUsage.cxx
src/StepRepr/StepRepr_QuantifiedAssemblyComponentUsage.hxx
src/StepShape/StepShape_MeasureQualification.cxx
src/StepShape/StepShape_MeasureQualification.hxx
src/StepShape/StepShape_ToleranceValue.cxx
src/StepToTopoDS/FILES
src/StepToTopoDS/StepToTopoDS_Builder.cxx
src/StepToTopoDS/StepToTopoDS_Builder.hxx
src/StepToTopoDS/StepToTopoDS_TranslateFace.cxx
src/StepToTopoDS/StepToTopoDS_TranslateFace.hxx
src/StepToTopoDS/StepToTopoDS_TranslateShell.cxx
src/StepToTopoDS/StepToTopoDS_TranslateShell.hxx
src/StepToTopoDS/StepToTopoDS_TranslateSolid.cxx [new file with mode: 0644]
src/StepToTopoDS/StepToTopoDS_TranslateSolid.hxx [new file with mode: 0644]
src/StepToTopoDS/StepToTopoDS_TranslateSolidError.hxx [new file with mode: 0644]
src/StepVisual/FILES
src/StepVisual/StepVisual_Array1OfTessellatedEdgeOrVertex.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_Array1OfTessellatedStructuredItem.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_ComplexTriangulatedFace.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_ComplexTriangulatedFace.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_ComplexTriangulatedSurfaceSet.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_ComplexTriangulatedSurfaceSet.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_CubicBezierTessellatedEdge.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_CubicBezierTessellatedEdge.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_CubicBezierTriangulatedFace.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_CubicBezierTriangulatedFace.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_EdgeOrCurve.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_EdgeOrCurve.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_FaceOrSurface.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_FaceOrSurface.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_HArray1OfTessellatedEdgeOrVertex.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_HArray1OfTessellatedStructuredItem.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_PathOrCompositeCurve.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_PathOrCompositeCurve.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedConnectingEdge.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedConnectingEdge.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedEdge.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedEdge.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedEdgeOrVertex.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedEdgeOrVertex.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedFace.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedFace.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedPointSet.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedPointSet.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedShapeRepresentation.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedShapeRepresentation.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedShapeRepresentationWithAccuracyParameters.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedShapeRepresentationWithAccuracyParameters.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedShell.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedShell.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedSolid.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedSolid.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedStructuredItem.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedStructuredItem.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedSurfaceSet.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedSurfaceSet.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedVertex.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedVertex.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedWire.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TessellatedWire.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_TriangulatedFace.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_TriangulatedFace.hxx [new file with mode: 0644]
src/TopoDSToStep/FILES
src/TopoDSToStep/TopoDSToStep_Builder.cxx
src/TopoDSToStep/TopoDSToStep_Builder.hxx
src/TopoDSToStep/TopoDSToStep_MakeBrepWithVoids.cxx
src/TopoDSToStep/TopoDSToStep_MakeBrepWithVoids.hxx
src/TopoDSToStep/TopoDSToStep_MakeFacetedBrep.cxx
src/TopoDSToStep/TopoDSToStep_MakeFacetedBrep.hxx
src/TopoDSToStep/TopoDSToStep_MakeFacetedBrepAndBrepWithVoids.cxx
src/TopoDSToStep/TopoDSToStep_MakeFacetedBrepAndBrepWithVoids.hxx
src/TopoDSToStep/TopoDSToStep_MakeManifoldSolidBrep.cxx
src/TopoDSToStep/TopoDSToStep_MakeManifoldSolidBrep.hxx
src/TopoDSToStep/TopoDSToStep_MakeShellBasedSurfaceModel.cxx
src/TopoDSToStep/TopoDSToStep_MakeShellBasedSurfaceModel.hxx
src/TopoDSToStep/TopoDSToStep_MakeStepFace.cxx
src/TopoDSToStep/TopoDSToStep_MakeTessellatedItem.cxx [new file with mode: 0644]
src/TopoDSToStep/TopoDSToStep_MakeTessellatedItem.hxx [new file with mode: 0644]
tests/bugs/step/bug31685_1
tests/bugs/step/bug33099 [new file with mode: 0644]
tests/de_mesh/grids.list
tests/de_mesh/step_read/A1 [new file with mode: 0644]
tests/de_mesh/step_read/A2 [new file with mode: 0644]
tests/de_mesh/step_read/A3 [new file with mode: 0644]
tests/de_mesh/step_read/B1 [new file with mode: 0644]
tests/de_mesh/step_read/begin [new file with mode: 0644]
tests/de_mesh/step_read/end [new file with mode: 0644]
tests/de_mesh/step_write/A1 [new file with mode: 0644]
tests/de_mesh/step_write/A2 [new file with mode: 0644]
tests/de_mesh/step_write/A3 [new file with mode: 0644]
tests/de_mesh/step_write/A4 [new file with mode: 0644]
tests/de_mesh/step_write/B1 [new file with mode: 0644]
tests/de_mesh/step_write/B2 [new file with mode: 0644]
tests/de_mesh/step_write/C1 [new file with mode: 0644]
tests/de_mesh/step_write/C2 [new file with mode: 0644]
tests/de_mesh/step_write/begin [new file with mode: 0644]
tests/de_mesh/step_write/end [new file with mode: 0644]
tests/gdt/presentation/C2 [new file with mode: 0644]
tests/gdt/presentation/end