]> OCCT Git - occt.git/commitdiff
For some STEP files we fail for geometric tolerances to read the "geometric_tolerance... CR384
authordkulikov <dkulikov@opencascade.com>
Mon, 14 Jul 2025 16:00:16 +0000 (17:00 +0100)
committerdkulikov <dkulikov@opencascade.com>
Mon, 14 Jul 2025 17:46:27 +0000 (18:46 +0100)
StepDimTol_GeometricTolerance and related classes can now process both
StepBasic_MeasureWithUnit and StepRepr_ReprItemAndMeasureWithUnit.
Unit tests for changed methods are added.

103 files changed:
src/DataExchange/TKDESTEP/GTests/FILES.cmake
src/DataExchange/TKDESTEP/GTests/StepTransientReplacements_Test.cxx [new file with mode: 0644]
src/DataExchange/TKDESTEP/RWStepBasic/RWStepBasic_RWConversionBasedUnit.cxx
src/DataExchange/TKDESTEP/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndAreaUnit.cxx
src/DataExchange/TKDESTEP/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndLengthUnit.cxx
src/DataExchange/TKDESTEP/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndMassUnit.cxx
src/DataExchange/TKDESTEP/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndPlaneAngleUnit.cxx
src/DataExchange/TKDESTEP/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndRatioUnit.cxx
src/DataExchange/TKDESTEP/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndSolidAngleUnit.cxx
src/DataExchange/TKDESTEP/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndTimeUnit.cxx
src/DataExchange/TKDESTEP/RWStepBasic/RWStepBasic_RWConversionBasedUnitAndVolumeUnit.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWAngularityTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWCircularRunoutTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWCoaxialityTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWConcentricityTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWCylindricityTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWFlatnessTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthDatRef.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndGeoTolWthMod.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndUneqDisGeoTol.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthMaxTol.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeoTolAndGeoTolWthMod.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeometricTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeometricToleranceWithDatumReference.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeometricToleranceWithDefinedAreaUnit.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeometricToleranceWithDefinedUnit.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeometricToleranceWithMaximumTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWGeometricToleranceWithModifiers.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWLineProfileTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWModifiedGeometricTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWParallelismTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWPerpendicularityTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWPositionTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWRoundnessTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWStraightnessTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWSurfaceProfileTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWSymmetryTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWTotalRunoutTolerance.cxx
src/DataExchange/TKDESTEP/RWStepDimTol/RWStepDimTol_RWUnequallyDisposedGeometricTolerance.cxx
src/DataExchange/TKDESTEP/RWStepRepr/RWStepRepr_RWMakeFromUsageOption.cxx
src/DataExchange/TKDESTEP/RWStepRepr/RWStepRepr_RWParallelOffset.cxx
src/DataExchange/TKDESTEP/RWStepRepr/RWStepRepr_RWQuantifiedAssemblyComponentUsage.cxx
src/DataExchange/TKDESTEP/RWStepShape/RWStepShape_RWMeasureQualification.cxx
src/DataExchange/TKDESTEP/RWStepShape/RWStepShape_RWToleranceValue.cxx
src/DataExchange/TKDESTEP/STEPCAFControl/STEPCAFControl_Reader.cxx
src/DataExchange/TKDESTEP/STEPConstruct/STEPConstruct_UnitContext.cxx
src/DataExchange/TKDESTEP/STEPControl/STEPControl_Reader.cxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnit.cxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnit.hxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndLengthUnit.cxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndLengthUnit.hxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndMassUnit.cxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndMassUnit.hxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndPlaneAngleUnit.cxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndPlaneAngleUnit.hxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndRatioUnit.cxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndRatioUnit.hxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndSolidAngleUnit.cxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndSolidAngleUnit.hxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndTimeUnit.cxx
src/DataExchange/TKDESTEP/StepBasic/StepBasic_ConversionBasedUnitAndTimeUnit.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRef.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRef.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthMaxTol.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthMaxTol.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthMod.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeoTolAndGeoTolWthMod.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricTolerance.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricTolerance.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricToleranceWithDatumReference.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricToleranceWithDatumReference.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricToleranceWithDefinedAreaUnit.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricToleranceWithDefinedAreaUnit.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricToleranceWithDefinedUnit.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricToleranceWithDefinedUnit.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricToleranceWithMaximumTolerance.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricToleranceWithMaximumTolerance.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricToleranceWithModifiers.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_GeometricToleranceWithModifiers.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_ModifiedGeometricTolerance.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_ModifiedGeometricTolerance.hxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_UnequallyDisposedGeometricTolerance.cxx
src/DataExchange/TKDESTEP/StepDimTol/StepDimTol_UnequallyDisposedGeometricTolerance.hxx
src/DataExchange/TKDESTEP/StepRepr/StepRepr_MakeFromUsageOption.cxx
src/DataExchange/TKDESTEP/StepRepr/StepRepr_MakeFromUsageOption.hxx
src/DataExchange/TKDESTEP/StepRepr/StepRepr_ParallelOffset.cxx
src/DataExchange/TKDESTEP/StepRepr/StepRepr_ParallelOffset.hxx
src/DataExchange/TKDESTEP/StepRepr/StepRepr_QuantifiedAssemblyComponentUsage.cxx
src/DataExchange/TKDESTEP/StepRepr/StepRepr_QuantifiedAssemblyComponentUsage.hxx
src/DataExchange/TKDESTEP/StepShape/StepShape_MeasureQualification.cxx
src/DataExchange/TKDESTEP/StepShape/StepShape_MeasureQualification.hxx
src/DataExchange/TKDESTEP/StepToGeom/StepToGeom.cxx
tests/bugs/step/bug_gh384 [new file with mode: 0644]

index 88e540224417891817cecc583fa23e69341d0428..df6050cd9d8ffa3d927a6890a9a680c8e254fe8a 100644 (file)
@@ -13,4 +13,5 @@ set(OCCT_TKDESTEP_GTests_FILES
     StepTidy_PlaneReducer_Test.cxx
     StepTidy_Merger_Test.cxx
     StepTidy_VectorReducer_Test.cxx
+    StepTransientReplacements_Test.cxx
 )
diff --git a/src/DataExchange/TKDESTEP/GTests/StepTransientReplacements_Test.cxx b/src/DataExchange/TKDESTEP/GTests/StepTransientReplacements_Test.cxx
new file mode 100644 (file)
index 0000000..629d5b1
--- /dev/null
@@ -0,0 +1,361 @@
+#include <gtest/gtest.h>
+
+#include <Standard_Transient.hxx>
+#include <StepBasic_MeasureWithUnit.hxx>
+#include <StepRepr_ReprItemAndMeasureWithUnit.hxx>
+
+#include <StepBasic_ConversionBasedUnit.hxx>
+#include <StepBasic_DimensionalExponents.hxx>
+#include <StepBasic_SiUnit.hxx>
+#include <StepBasic_MeasureValueMember.hxx>
+#include <StepBasic_SiPrefix.hxx>
+#include <StepBasic_SiUnitName.hxx>
+
+#include <StepDimTol_GeometricTolerance.hxx>
+#include <StepRepr_MakeFromUsageOption.hxx>
+#include <StepRepr_ParallelOffset.hxx>
+#include <StepRepr_QuantifiedAssemblyComponentUsage.hxx>
+#include <StepShape_MeasureQualification.hxx>
+#include <StepData_Logical.hxx>
+#include <StepRepr_ProductDefinitionShape.hxx>
+#include <StepBasic_ProductDefinition.hxx>
+#include <StepDimTol_GeometricToleranceTarget.hxx>
+#include <StepShape_HArray1OfValueQualifier.hxx>
+
+// Helper functions to create test objects
+namespace
+{
+
+// Create a MeasureWithUnit
+Handle(StepBasic_MeasureWithUnit) CreateMeasureWithUnit(const Standard_Real theValue)
+{
+  Handle(StepBasic_MeasureWithUnit) aMeasure = new StepBasic_MeasureWithUnit();
+
+  // Set value component
+  Handle(StepBasic_MeasureValueMember) aValueMember = new StepBasic_MeasureValueMember();
+  aValueMember->SetName("POSITIVE_LENGTH_MEASURE");
+  aValueMember->SetReal(theValue);
+  aMeasure->SetValueComponentMember(aValueMember);
+
+  // Create a dummy SiUnit for unit component
+  Handle(StepBasic_SiUnit) aSiUnit = new StepBasic_SiUnit();
+  aSiUnit->Init(Standard_False,
+                StepBasic_SiPrefix::StepBasic_spMilli,
+                StepBasic_SiUnitName::StepBasic_sunMetre);
+  StepBasic_Unit aUnit;
+  aUnit.SetValue(aSiUnit);
+  aMeasure->SetUnitComponent(aUnit);
+
+  return aMeasure;
+}
+
+// Create a ReprItemAndMeasureWithUnit
+Handle(StepRepr_ReprItemAndMeasureWithUnit) CreateReprItemAndMeasureWithUnit(
+  const Standard_Real theValue)
+{
+  Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasure =
+    new StepRepr_ReprItemAndMeasureWithUnit();
+  Handle(StepBasic_MeasureWithUnit) aMeasure = CreateMeasureWithUnit(theValue);
+  aReprMeasure->SetMeasureWithUnit(aMeasure);
+
+  // Set other required fields
+  Handle(TCollection_HAsciiString) aName = new TCollection_HAsciiString("TestReprItem");
+  aReprMeasure->SetName(aName);
+
+  return aReprMeasure;
+}
+} // namespace
+
+// Test fixture for all transient replacement tests
+class StepTransientReplacements : public ::testing::Test
+{
+protected:
+  void SetUp() override
+  {
+    // Create common test objects
+    myMeasureWithUnit            = CreateMeasureWithUnit(5.0);
+    myReprItemAndMeasureWithUnit = CreateReprItemAndMeasureWithUnit(10.0);
+
+    // Create dimensional exponents
+    myDimensionalExponents = new StepBasic_DimensionalExponents();
+    myDimensionalExponents->Init(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
+
+    // Create name string
+    myName = new TCollection_HAsciiString("TestName");
+
+    // Create description string
+    myDescription = new TCollection_HAsciiString("TestDescription");
+
+    // Create product definition
+    myProductDefinition = new StepBasic_ProductDefinition();
+
+    // Create product definition shape
+    myProductDefinitionShape = new StepRepr_ProductDefinitionShape();
+
+    // Create qualifiers array
+    myQualifiers = new StepShape_HArray1OfValueQualifier(1, 1);
+  }
+
+  // Common test objects
+  Handle(StepBasic_MeasureWithUnit)           myMeasureWithUnit;
+  Handle(StepRepr_ReprItemAndMeasureWithUnit) myReprItemAndMeasureWithUnit;
+  Handle(StepBasic_DimensionalExponents)      myDimensionalExponents;
+  Handle(TCollection_HAsciiString)            myName;
+  Handle(TCollection_HAsciiString)            myDescription;
+  Handle(StepBasic_ProductDefinition)         myProductDefinition;
+  Handle(StepRepr_ProductDefinitionShape)     myProductDefinitionShape;
+  Handle(StepShape_HArray1OfValueQualifier)   myQualifiers;
+};
+
+// Test ConversionBasedUnit with different transient types
+TEST_F(StepTransientReplacements, ConversionBasedUnit_WorksWithBothTypes)
+{
+  // Create ConversionBasedUnit
+  Handle(StepBasic_ConversionBasedUnit) aUnit = new StepBasic_ConversionBasedUnit();
+
+  // Test with MeasureWithUnit
+  aUnit->Init(myDimensionalExponents, myName, myMeasureWithUnit);
+  EXPECT_FALSE(aUnit->ConversionFactor().IsNull());
+  EXPECT_TRUE(aUnit->ConversionFactor()->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)));
+
+  Handle(StepBasic_MeasureWithUnit) aMeasure =
+    Handle(StepBasic_MeasureWithUnit)::DownCast(aUnit->ConversionFactor());
+  EXPECT_FALSE(aMeasure.IsNull());
+  EXPECT_NEAR(aMeasure->ValueComponent(), 5.0, 1e-7);
+
+  // Test with ReprItemAndMeasureWithUnit
+  aUnit->SetConversionFactor(myReprItemAndMeasureWithUnit);
+  EXPECT_FALSE(aUnit->ConversionFactor().IsNull());
+  EXPECT_TRUE(
+    aUnit->ConversionFactor()->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)));
+
+  Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasure =
+    Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(aUnit->ConversionFactor());
+  EXPECT_FALSE(aReprMeasure.IsNull());
+  Handle(StepBasic_MeasureWithUnit) aExtractedMeasure = aReprMeasure->GetMeasureWithUnit();
+  EXPECT_NEAR(aExtractedMeasure->ValueComponent(), 10.0, 1e-7);
+}
+
+// Test GeometricTolerance with different transient types
+TEST_F(StepTransientReplacements, GeometricTolerance_WorksWithBothTypes)
+{
+  // Create GeometricTolerance
+  Handle(StepDimTol_GeometricTolerance) aTolerance = new StepDimTol_GeometricTolerance();
+
+  // Create a dummy tolerance target
+  StepDimTol_GeometricToleranceTarget aTarget;
+
+  // Test with MeasureWithUnit
+  aTolerance->Init(myName, myDescription, myMeasureWithUnit, aTarget);
+  EXPECT_FALSE(aTolerance->Magnitude().IsNull());
+  EXPECT_TRUE(aTolerance->Magnitude()->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)));
+
+  Handle(StepBasic_MeasureWithUnit) aMeasure =
+    Handle(StepBasic_MeasureWithUnit)::DownCast(aTolerance->Magnitude());
+  EXPECT_FALSE(aMeasure.IsNull());
+  EXPECT_NEAR(aMeasure->ValueComponent(), 5.0, 1e-7);
+
+  // Test with ReprItemAndMeasureWithUnit
+  aTolerance->SetMagnitude(myReprItemAndMeasureWithUnit);
+  EXPECT_FALSE(aTolerance->Magnitude().IsNull());
+  EXPECT_TRUE(aTolerance->Magnitude()->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)));
+
+  Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasure =
+    Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(aTolerance->Magnitude());
+  EXPECT_FALSE(aReprMeasure.IsNull());
+  Handle(StepBasic_MeasureWithUnit) aExtractedMeasure = aReprMeasure->GetMeasureWithUnit();
+  EXPECT_NEAR(aExtractedMeasure->ValueComponent(), 10.0, 1e-7);
+}
+
+// Test MakeFromUsageOption with different transient types
+TEST_F(StepTransientReplacements, MakeFromUsageOption_WorksWithBothTypes)
+{
+  // Create MakeFromUsageOption
+  Handle(StepRepr_MakeFromUsageOption) aMakeFromUsage = new StepRepr_MakeFromUsageOption();
+
+  // Test with MeasureWithUnit
+  // Use proper function signature for Init
+  Standard_Boolean hasDescription = Standard_True;
+  aMakeFromUsage->Init(myName,
+                       myName,
+                       hasDescription,
+                       myDescription,
+                       myProductDefinition,
+                       myProductDefinition,
+                       1,
+                       myDescription,
+                       myMeasureWithUnit);
+
+  EXPECT_FALSE(aMakeFromUsage->Quantity().IsNull());
+  EXPECT_TRUE(aMakeFromUsage->Quantity()->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)));
+
+  Handle(StepBasic_MeasureWithUnit) aMeasure =
+    Handle(StepBasic_MeasureWithUnit)::DownCast(aMakeFromUsage->Quantity());
+  EXPECT_FALSE(aMeasure.IsNull());
+  EXPECT_NEAR(aMeasure->ValueComponent(), 5.0, 1e-7);
+
+  // Test with ReprItemAndMeasureWithUnit
+  aMakeFromUsage->SetQuantity(myReprItemAndMeasureWithUnit);
+  EXPECT_FALSE(aMakeFromUsage->Quantity().IsNull());
+  EXPECT_TRUE(
+    aMakeFromUsage->Quantity()->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)));
+
+  Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasure =
+    Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(aMakeFromUsage->Quantity());
+  EXPECT_FALSE(aReprMeasure.IsNull());
+  Handle(StepBasic_MeasureWithUnit) aExtractedMeasure = aReprMeasure->GetMeasureWithUnit();
+  EXPECT_NEAR(aExtractedMeasure->ValueComponent(), 10.0, 1e-7);
+}
+
+// Test ParallelOffset with different transient types
+TEST_F(StepTransientReplacements, ParallelOffset_WorksWithBothTypes)
+{
+  // Create ParallelOffset
+  Handle(StepRepr_ParallelOffset) aParallelOffset = new StepRepr_ParallelOffset();
+
+  // Test with MeasureWithUnit
+  aParallelOffset->Init(myName,
+                        myDescription,
+                        myProductDefinitionShape,
+                        StepData_LTrue,
+                        myMeasureWithUnit);
+
+  EXPECT_FALSE(aParallelOffset->Offset().IsNull());
+  EXPECT_TRUE(aParallelOffset->Offset()->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)));
+
+  Handle(StepBasic_MeasureWithUnit) aMeasure =
+    Handle(StepBasic_MeasureWithUnit)::DownCast(aParallelOffset->Offset());
+  EXPECT_FALSE(aMeasure.IsNull());
+  EXPECT_NEAR(aMeasure->ValueComponent(), 5.0, 1e-7);
+
+  // Test with ReprItemAndMeasureWithUnit
+  aParallelOffset->SetOffset(myReprItemAndMeasureWithUnit);
+  EXPECT_FALSE(aParallelOffset->Offset().IsNull());
+  EXPECT_TRUE(
+    aParallelOffset->Offset()->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)));
+
+  Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasure =
+    Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(aParallelOffset->Offset());
+  EXPECT_FALSE(aReprMeasure.IsNull());
+  Handle(StepBasic_MeasureWithUnit) aExtractedMeasure = aReprMeasure->GetMeasureWithUnit();
+  EXPECT_NEAR(aExtractedMeasure->ValueComponent(), 10.0, 1e-7);
+}
+
+// Test QuantifiedAssemblyComponentUsage with different transient types
+TEST_F(StepTransientReplacements, QuantifiedAssemblyComponentUsage_WorksWithBothTypes)
+{
+  // Create QuantifiedAssemblyComponentUsage
+  Handle(StepRepr_QuantifiedAssemblyComponentUsage) aUsage =
+    new StepRepr_QuantifiedAssemblyComponentUsage();
+
+  // Test with MeasureWithUnit
+  // Use proper function signature for Init
+  Standard_Boolean hasDescription         = Standard_True;
+  Standard_Boolean hasReferenceDesignator = Standard_True;
+  aUsage->Init(myName,
+               myName,
+               hasDescription,
+               myDescription,
+               myProductDefinition,
+               myProductDefinition,
+               hasReferenceDesignator,
+               myName,
+               myMeasureWithUnit);
+
+  EXPECT_FALSE(aUsage->Quantity().IsNull());
+  EXPECT_TRUE(aUsage->Quantity()->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)));
+
+  Handle(StepBasic_MeasureWithUnit) aMeasure =
+    Handle(StepBasic_MeasureWithUnit)::DownCast(aUsage->Quantity());
+  EXPECT_FALSE(aMeasure.IsNull());
+  EXPECT_NEAR(aMeasure->ValueComponent(), 5.0, 1e-7);
+
+  // Test with ReprItemAndMeasureWithUnit
+  aUsage->SetQuantity(myReprItemAndMeasureWithUnit);
+  EXPECT_FALSE(aUsage->Quantity().IsNull());
+  EXPECT_TRUE(aUsage->Quantity()->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)));
+
+  Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasure =
+    Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(aUsage->Quantity());
+  EXPECT_FALSE(aReprMeasure.IsNull());
+  Handle(StepBasic_MeasureWithUnit) aExtractedMeasure = aReprMeasure->GetMeasureWithUnit();
+  EXPECT_NEAR(aExtractedMeasure->ValueComponent(), 10.0, 1e-7);
+}
+
+// Test MeasureQualification with different transient types
+TEST_F(StepTransientReplacements, MeasureQualification_WorksWithBothTypes)
+{
+  // Create MeasureQualification
+  Handle(StepShape_MeasureQualification) aQualification = new StepShape_MeasureQualification();
+
+  // Test with MeasureWithUnit
+  aQualification->Init(myName, myDescription, myMeasureWithUnit, myQualifiers);
+
+  EXPECT_FALSE(aQualification->QualifiedMeasure().IsNull());
+  EXPECT_TRUE(aQualification->QualifiedMeasure()->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)));
+
+  Handle(StepBasic_MeasureWithUnit) aMeasure =
+    Handle(StepBasic_MeasureWithUnit)::DownCast(aQualification->QualifiedMeasure());
+  EXPECT_FALSE(aMeasure.IsNull());
+  EXPECT_NEAR(aMeasure->ValueComponent(), 5.0, 1e-7);
+
+  // Test with ReprItemAndMeasureWithUnit
+  aQualification->SetQualifiedMeasure(myReprItemAndMeasureWithUnit);
+  EXPECT_FALSE(aQualification->QualifiedMeasure().IsNull());
+  EXPECT_TRUE(
+    aQualification->QualifiedMeasure()->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)));
+
+  Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasure =
+    Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(aQualification->QualifiedMeasure());
+  EXPECT_FALSE(aReprMeasure.IsNull());
+  Handle(StepBasic_MeasureWithUnit) aExtractedMeasure = aReprMeasure->GetMeasureWithUnit();
+  EXPECT_NEAR(aExtractedMeasure->ValueComponent(), 10.0, 1e-7);
+}
+
+// Test GetMeasureWithUnit helper function from STEPCAFControl_Reader namespace
+TEST_F(StepTransientReplacements, GetMeasureWithUnit_ExtractsCorrectly)
+{
+  // This tests the helper function that was added in STEPCAFControl_Reader.cxx
+  // We recreate the function here for testing
+
+  auto GetMeasureWithUnit =
+    [](const Handle(Standard_Transient)& theMeasure) -> Handle(StepBasic_MeasureWithUnit) {
+    if (theMeasure.IsNull())
+    {
+      return nullptr;
+    }
+
+    Handle(StepBasic_MeasureWithUnit) aMeasureWithUnit;
+    if (theMeasure->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)))
+    {
+      aMeasureWithUnit = Handle(StepBasic_MeasureWithUnit)::DownCast(theMeasure);
+    }
+    else if (theMeasure->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)))
+    {
+      Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasureItem =
+        Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(theMeasure);
+      aMeasureWithUnit = aReprMeasureItem->GetMeasureWithUnit();
+    }
+    return aMeasureWithUnit;
+  };
+
+  // Test with null
+  Handle(Standard_Transient)        aNullTransient;
+  Handle(StepBasic_MeasureWithUnit) aExtracted = GetMeasureWithUnit(aNullTransient);
+  EXPECT_TRUE(aExtracted.IsNull());
+
+  // Test with MeasureWithUnit
+  aExtracted = GetMeasureWithUnit(myMeasureWithUnit);
+  EXPECT_FALSE(aExtracted.IsNull());
+  EXPECT_NEAR(aExtracted->ValueComponent(), 5.0, 1e-7);
+
+  // Test with ReprItemAndMeasureWithUnit
+  aExtracted = GetMeasureWithUnit(myReprItemAndMeasureWithUnit);
+  EXPECT_FALSE(aExtracted.IsNull());
+  EXPECT_NEAR(aExtracted->ValueComponent(), 10.0, 1e-7);
+
+  // Test with unrelated type
+  Handle(Standard_Transient) anUnrelatedTransient = myName;
+  aExtracted                                      = GetMeasureWithUnit(anUnrelatedTransient);
+  EXPECT_TRUE(aExtracted.IsNull());
+}
index 2d0d93217679e5d1575f327296f744e0690cc621..4cde9fc4d7819a0fa7ced1e0c23ce69d6d537ad5 100644 (file)
@@ -52,13 +52,13 @@ void RWStepBasic_RWConversionBasedUnit::ReadStep(
 
   // --- own field : conversionFactor ---
 
-  Handle(StepBasic_MeasureWithUnit) aConversionFactor;
+  Handle(Standard_Transient) aConversionFactor;
   // szv#4:S4163:12Mar99 `Standard_Boolean stat3 =` not needed
   data->ReadEntity(num,
                    3,
                    "conversion_factor",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aConversionFactor);
 
   //--- Initialisation of the read entity ---
index 6f8724fc5518f14c3db8f91561a4943a02d9c481..17843ca8b3e4f1aca55db09ba4c528951fd77e72 100644 (file)
@@ -43,12 +43,12 @@ void RWStepBasic_RWConversionBasedUnitAndAreaUnit::ReadStep(
   data->ReadString(num, 1, "name", ach, aName);
 
   // --- field : conversionFactor ---
-  Handle(StepBasic_MeasureWithUnit) aConversionFactor;
+  Handle(Standard_Transient) aConversionFactor;
   data->ReadEntity(num,
                    2,
                    "conversion_factor",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aConversionFactor);
   num = data->NextForComplex(num);
 
index 5981c9a56a270ed3d186b19e99f76a8ae0ed79d8..ece2f5f2b04f9e552d7fc23574e362703928dd52 100644 (file)
@@ -44,13 +44,13 @@ void RWStepBasic_RWConversionBasedUnitAndLengthUnit::ReadStep(
 
   // --- field : conversionFactor ---
 
-  Handle(StepBasic_MeasureWithUnit) aConversionFactor;
+  Handle(Standard_Transient) aConversionFactor;
   // szv#4:S4163:12Mar99 `Standard_Boolean stat2 =` not needed
   data->ReadEntity(num,
                    2,
                    "conversion_factor",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aConversionFactor);
 
   num = data->NextForComplex(num);
index 99f4bc96179a76e7b1cf9c07cef5a2f20d5c5b07..c61f01408c0de153f374bc2cf33de9b36f42c52c 100644 (file)
@@ -43,13 +43,13 @@ void RWStepBasic_RWConversionBasedUnitAndMassUnit::ReadStep(
   // szv#4:S4163:12Mar99 `Standard_Boolean stat1 =` not needed
   data->ReadString(num, 1, "name", ach, aName);
   // --- field : conversionFactor ---
-  Handle(StepBasic_MeasureWithUnit) aConversionFactor;
+  Handle(Standard_Transient) aConversionFactor;
   // szv#4:S4163:12Mar99 `Standard_Boolean stat2 =` not needed
   data->ReadEntity(num,
                    2,
                    "conversion_factor",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aConversionFactor);
 
   num = data->NextForComplex(num);
index 63f018aec73648e7b28c9d3c7eced613f8fbf393..260d1135361fcffd4c20e7fb78502c2d1134371a 100644 (file)
@@ -42,12 +42,12 @@ void RWStepBasic_RWConversionBasedUnitAndPlaneAngleUnit::ReadStep(
     return;
   Handle(TCollection_HAsciiString) aName;
   data->ReadString(num, 1, "name", ach, aName);
-  Handle(StepBasic_MeasureWithUnit) aConversionFactor;
+  Handle(Standard_Transient) aConversionFactor;
   data->ReadEntity(num,
                    2,
                    "conversion_factor",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aConversionFactor);
 
   // NAMED_UNIT
index c9c73890b0d9c23cac2ddd1a633ace834a5d00ca..c4656bfd64f10edecd1402b4531b4cf66a20a476 100644 (file)
@@ -44,13 +44,13 @@ void RWStepBasic_RWConversionBasedUnitAndRatioUnit::ReadStep(
 
   // --- field : conversionFactor ---
 
-  Handle(StepBasic_MeasureWithUnit) aConversionFactor;
+  Handle(Standard_Transient) aConversionFactor;
   // szv#4:S4163:12Mar99 `Standard_Boolean stat2 =` not needed
   data->ReadEntity(num,
                    2,
                    "conversion_factor",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aConversionFactor);
 
   num = data->NextForComplex(num);
index fc3796fef417c479da35c6225a2acbc4614c8ca2..013196647f38d93832433ebda8f6b731333a1d1a 100644 (file)
@@ -47,13 +47,13 @@ void RWStepBasic_RWConversionBasedUnitAndSolidAngleUnit::ReadStep(
 
   // --- field : conversionFactor ---
 
-  Handle(StepBasic_MeasureWithUnit) aConversionFactor;
+  Handle(Standard_Transient) aConversionFactor;
   // szv#4:S4163:12Mar99 `Standard_Boolean stat2 =` not needed
   data->ReadEntity(num,
                    2,
                    "conversion_factor",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aConversionFactor);
 
   num = data->NextForComplex(num);
index 06190c6de5c886538d7943058ebae6b02ec7ef7c..e014516cfe8860956254c882c387dfb070dd0b24 100644 (file)
@@ -44,13 +44,13 @@ void RWStepBasic_RWConversionBasedUnitAndTimeUnit::ReadStep(
 
   // --- field : conversionFactor ---
 
-  Handle(StepBasic_MeasureWithUnit) aConversionFactor;
+  Handle(Standard_Transient) aConversionFactor;
   // szv#4:S4163:12Mar99 `Standard_Boolean stat2 =` not needed
   data->ReadEntity(num,
                    2,
                    "conversion_factor",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aConversionFactor);
 
   num = data->NextForComplex(num);
index e9cad3d39239e032e3fce49e5f4612d49e5a5802..0752e2f9e186e17222284c3c3ecd424c1729c8a0 100644 (file)
@@ -38,12 +38,12 @@ void RWStepBasic_RWConversionBasedUnitAndVolumeUnit::ReadStep(
   data->ReadString(num, 1, "name", ach, aName);
 
   // --- field : conversionFactor ---
-  Handle(StepBasic_MeasureWithUnit) aConversionFactor;
+  Handle(Standard_Transient) aConversionFactor;
   data->ReadEntity(num,
                    2,
                    "conversion_factor",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aConversionFactor);
 
   num = data->NextForComplex(num);
index 675dbfec440bc5fb74960f855e81ff281aedcd42..9e07f054c5c1e3d627b1f261dc86617cacb3bb7c 100644 (file)
@@ -49,12 +49,12 @@ void RWStepDimTol_RWAngularityTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index a8275ebc1ae2a2f12e36b3138603247b344b824e..de48bbede0e033046344dfaf20a6417321966249 100644 (file)
@@ -49,12 +49,12 @@ void RWStepDimTol_RWCircularRunoutTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index d02bdf7a88faa3a14127428f4abfce128c7770ae..5959578f907d8c999f2e14016e5b36e3e7b93396 100644 (file)
@@ -49,12 +49,12 @@ void RWStepDimTol_RWCoaxialityTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index 29c2d9a42c421573b1c1d430eb4eda5bd49dd2b9..0c52dce8f6364822cfcc2ae091aaa758caf366b9 100644 (file)
@@ -49,12 +49,12 @@ void RWStepDimTol_RWConcentricityTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index dea05763a3460474208541c947022c3613e7af10..b273909233a1991a5624c8ad5bffc9b2cea6f854 100644 (file)
@@ -47,12 +47,12 @@ void RWStepDimTol_RWCylindricityTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index afc22f27fc3eaea9eb9abc87e0d76f39a628f5d6..8e4528efedf0a39eab1ddf36467bd542bab0e313 100644 (file)
@@ -47,12 +47,12 @@ void RWStepDimTol_RWFlatnessTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index 15be9b31a18aaae891eb07c0ed1744fa36f84f0d..8b0a9c6344b0f655faec2ccb841dfe1b004a30af 100644 (file)
@@ -44,8 +44,8 @@ void RWStepDimTol_RWGeoTolAndGeoTolWthDatRef::ReadStep(
   data->ReadString(num, 1, "name", ach, aName);
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "description", ach, aDescription);
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
-  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), aMagnitude);
+  Handle(Standard_Transient) aMagnitude;
+  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(Standard_Transient), aMagnitude);
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
   data->ReadEntity(num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
 
index ed81cb20473be0a37ad475b67d08e53aebc73f0b..81cc33d2e1dbeef98cda15bddff335e6ce143b35 100644 (file)
@@ -49,8 +49,8 @@ void RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol::ReadStep(
   data->ReadString(num, 1, "name", ach, aName);
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "description", ach, aDescription);
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
-  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), aMagnitude);
+  Handle(Standard_Transient) aMagnitude;
+  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(Standard_Transient), aMagnitude);
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
   data->ReadEntity(num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
 
index e4a50e8be48a81161f20753cf8cd181d252fbe81..ecd69027a488ca31c6386c2e7ab977b5d6e945ae 100644 (file)
@@ -48,8 +48,8 @@ void RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndGeoTolWthMod::ReadStep(
   data->ReadString(num, 1, "name", ach, aName);
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "description", ach, aDescription);
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
-  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), aMagnitude);
+  Handle(Standard_Transient) aMagnitude;
+  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(Standard_Transient), aMagnitude);
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
   data->ReadEntity(num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
 
index e86c0766a8ec7026631a0f03151076876d286b62..c32c6d190f0c06e6af85fd7d5d4caf83043b33ab 100644 (file)
@@ -46,8 +46,8 @@ void RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::ReadStep(
   data->ReadString(num, 1, "name", ach, aName);
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "description", ach, aDescription);
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
-  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), aMagnitude);
+  Handle(Standard_Transient) aMagnitude;
+  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(Standard_Transient), aMagnitude);
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
   data->ReadEntity(num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
 
index 41496f691b1ea98b951639c098a70f75edb31c57..5d37f1196c070852ae61f8f422c5b99c6636a25f 100644 (file)
@@ -47,8 +47,8 @@ void RWStepDimTol_RWGeoTolAndGeoTolWthDatRefAndUneqDisGeoTol::ReadStep(
   data->ReadString(num, 1, "name", ach, aName);
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "description", ach, aDescription);
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
-  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), aMagnitude);
+  Handle(Standard_Transient) aMagnitude;
+  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(Standard_Transient), aMagnitude);
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
   data->ReadEntity(num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
 
index 48c8ad721dc8c1682f8fcdd0858f923cebeba046..bb06e28d2310671acacb36d1473f837a7584712d 100644 (file)
@@ -44,8 +44,8 @@ void RWStepDimTol_RWGeoTolAndGeoTolWthMaxTol::ReadStep(
   data->ReadString(num, 1, "name", ach, aName);
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "description", ach, aDescription);
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
-  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), aMagnitude);
+  Handle(Standard_Transient) aMagnitude;
+  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(Standard_Transient), aMagnitude);
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
   data->ReadEntity(num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
 
index 497a5b4a357abd1e5936cbc54e6892a2be494a3d..186988c69760c241eda56d1e839d28eb3adfabac 100644 (file)
@@ -43,8 +43,8 @@ void RWStepDimTol_RWGeoTolAndGeoTolWthMod::ReadStep(
   data->ReadString(num, 1, "name", ach, aName);
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "description", ach, aDescription);
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
-  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), aMagnitude);
+  Handle(Standard_Transient) aMagnitude;
+  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(Standard_Transient), aMagnitude);
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
   data->ReadEntity(num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
 
index 0275555db2c90e30cc226eec3377520ef312358e..94f3a25d6734700a6db25bfd2e949dffc44d515c 100644 (file)
@@ -47,8 +47,8 @@ void RWStepDimTol_RWGeometricTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "description", ach, aDescription);
 
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
-  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), aMagnitude);
+  Handle(Standard_Transient) aMagnitude;
+  data->ReadEntity(num, 3, "magnitude", ach, STANDARD_TYPE(Standard_Transient), aMagnitude);
 
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
   data->ReadEntity(num, 4, "toleranced_shape_aspect", ach, aTolerancedShapeAspect);
index baab136f11b461a0ddb0597781115d1f8d5d99cb..541c0f4743d297c9228829e47f40c4d65057a579 100644 (file)
@@ -51,12 +51,12 @@ void RWStepDimTol_RWGeometricToleranceWithDatumReference::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index 73c3c47ddd3e53e121c72df883bebdbf51705533..2e42f247544094a8ea3824dad5691c7f8ff808e5 100644 (file)
@@ -49,12 +49,12 @@ void RWStepDimTol_RWGeometricToleranceWithDefinedAreaUnit::ReadStep(
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aDescription);
 
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
+  Handle(Standard_Transient) aMagnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aMagnitude);
 
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
index 39b594bb2eb9b42cdda226e293ebbd2d72f22423..503b4a3aeed8a56f6751309d333c821a6a660e82 100644 (file)
@@ -48,12 +48,12 @@ void RWStepDimTol_RWGeometricToleranceWithDefinedUnit::ReadStep(
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aDescription);
 
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
+  Handle(Standard_Transient) aMagnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aMagnitude);
 
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
index 506d7dd698b2723bbc9f210b2bb0cfb3831c070e..9f77f671a2aef02580dfe006384e2117a5ca903c 100644 (file)
@@ -50,12 +50,12 @@ void RWStepDimTol_RWGeometricToleranceWithMaximumTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aDescription);
 
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
+  Handle(Standard_Transient) aMagnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aMagnitude);
 
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
index d118d4b22031eff12ea70d0445d1ac2cae471b00..ea265d1ebf63fbc59ddf8bec895862911b20d2bc 100644 (file)
@@ -47,12 +47,12 @@ void RWStepDimTol_RWGeometricToleranceWithModifiers::ReadStep(
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aDescription);
 
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
+  Handle(Standard_Transient) aMagnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aMagnitude);
 
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
index 21e2da135fd0c7bc76f38a7ea9690b1d76253ff6..062e8c303448c3ebe7c0a0083ded35c25cccd3f8 100644 (file)
@@ -46,12 +46,12 @@ void RWStepDimTol_RWLineProfileTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index f6c09d6b0de12c2c1d55e14583131f1b8a1afb62..7810b8d82d1803e28aa4b1a10da4da4218c69fb1 100644 (file)
@@ -46,12 +46,12 @@ void RWStepDimTol_RWModifiedGeometricTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index 764b1e6922fd91b494789d46eca2b16a4cd5198c..3769c62fe8da4d8ec4c63d1eb07f12b9ae110b02 100644 (file)
@@ -47,12 +47,12 @@ void RWStepDimTol_RWParallelismTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index ff9e3f61c05410057334f9624d2684a38311520d..f638979a2941bfc9a15dc7fd41a2bc486158fc3c 100644 (file)
@@ -47,12 +47,12 @@ void RWStepDimTol_RWPerpendicularityTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index 37b9a6086788207840a5f06d5ff1d677dde73060..18982fdb52eea8e28149a964a71525731910ad3f 100644 (file)
@@ -46,12 +46,12 @@ void RWStepDimTol_RWPositionTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index ba040b51c90d430be2957c5af1a49aa1d625a984..2b648758e97ec92a1253c614d53d713e1d2c5237 100644 (file)
@@ -46,12 +46,12 @@ void RWStepDimTol_RWRoundnessTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index cf83ebd32b23a36a15a5106af7fe52f6d37a9173..50648f45a703537a9dbd40833f7c088338c3c7a4 100644 (file)
@@ -46,12 +46,12 @@ void RWStepDimTol_RWStraightnessTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index 0cd54a3fdf5e1fc45c9a823d1c51f35feb9ec850..cd74f2d4b959dbdecb080580fad4b9823b91a5d5 100644 (file)
@@ -46,12 +46,12 @@ void RWStepDimTol_RWSurfaceProfileTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index 068d3824d28955896f61eab1429817bd8edeac6d..c6e14b13dee20f2d0c2a9f0b3352ec213052dc8b 100644 (file)
@@ -47,12 +47,12 @@ void RWStepDimTol_RWSymmetryTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index f434bcad8a512ee696bc535d4b6171ac33d2ea82..586c476c6b91914542c230dab9da81c9ba833220 100644 (file)
@@ -47,12 +47,12 @@ void RWStepDimTol_RWTotalRunoutTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aGeometricTolerance_Description;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aGeometricTolerance_Description);
 
-  Handle(StepBasic_MeasureWithUnit) aGeometricTolerance_Magnitude;
+  Handle(Standard_Transient) aGeometricTolerance_Magnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aGeometricTolerance_Magnitude);
 
   StepDimTol_GeometricToleranceTarget aGeometricTolerance_TolerancedShapeAspect;
index 495aac46dc9416f0d39bd00643b656bbe05ea622..b92ec40ebcbdc595c5233dc1e1cfc9f614f0f5f6 100644 (file)
@@ -47,12 +47,12 @@ void RWStepDimTol_RWUnequallyDisposedGeometricTolerance::ReadStep(
   Handle(TCollection_HAsciiString) aDescription;
   data->ReadString(num, 2, "geometric_tolerance.description", ach, aDescription);
 
-  Handle(StepBasic_MeasureWithUnit) aMagnitude;
+  Handle(Standard_Transient) aMagnitude;
   data->ReadEntity(num,
                    3,
                    "geometric_tolerance.magnitude",
                    ach,
-                   STANDARD_TYPE(StepBasic_MeasureWithUnit),
+                   STANDARD_TYPE(Standard_Transient),
                    aMagnitude);
 
   StepDimTol_GeometricToleranceTarget aTolerancedShapeAspect;
index 2f4e23947b86ab5f269049c03b53ec3baa163be3..9e3b07358a0be023a946e51615961c86a56aa77d 100644 (file)
@@ -91,8 +91,8 @@ void RWStepRepr_RWMakeFromUsageOption::ReadStep(
   Handle(TCollection_HAsciiString) aRankingRationale;
   data->ReadString(num, 7, "ranking_rationale", ach, aRankingRationale);
 
-  Handle(StepBasic_MeasureWithUnit) aQuantity;
-  data->ReadEntity(num, 8, "quantity", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), aQuantity);
+  Handle(Standard_Transient) aQuantity;
+  data->ReadEntity(num, 8, "quantity", ach, STANDARD_TYPE(Standard_Transient), aQuantity);
 
   // Initialize entity
   ent->Init(aProductDefinitionRelationship_Id,
index f940391312ed2e756d1d31556d95e94e5ffcd07f..669f72a38f0a3d7ca560411270394efeab8ac2d6 100644 (file)
@@ -65,8 +65,8 @@ void RWStepRepr_RWParallelOffset::ReadStep(const Handle(StepData_StepReaderData)
 
   // Own fields of ParallelOffset
 
-  Handle(StepBasic_MeasureWithUnit) anOffset;
-  data->ReadEntity(num, 5, "offset", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), anOffset);
+  Handle(Standard_Transient) anOffset;
+  data->ReadEntity(num, 5, "offset", ach, STANDARD_TYPE(Standard_Transient), anOffset);
 
   // Initialize entity
   ent->Init(aShapeAspect_Name,
index b1e46e2a20af4cc1879f6e2ea24e1f1c8a3093cc..b1dd893c4ff1f6745755ba8e8c313d0d58332c02 100644 (file)
@@ -102,8 +102,8 @@ void RWStepRepr_RWQuantifiedAssemblyComponentUsage::ReadStep(
 
   // Own fields of QuantifiedAssemblyComponentUsage
 
-  Handle(StepBasic_MeasureWithUnit) aQuantity;
-  data->ReadEntity(num, 7, "quantity", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), aQuantity);
+  Handle(Standard_Transient) aQuantity;
+  data->ReadEntity(num, 7, "quantity", ach, STANDARD_TYPE(Standard_Transient), aQuantity);
 
   // Initialize entity
   ent->Init(aProductDefinitionRelationship_Id,
index b511d8f503849a22abe672fb1121d34147dfb93c..5bbd491bc392ceaeb15d249b5c71686e0879aca4 100644 (file)
@@ -47,8 +47,8 @@ void RWStepShape_RWMeasureQualification::ReadStep(
 
   // --- own field : qualified_measure ---
 
-  Handle(StepBasic_MeasureWithUnit) aQM;
-  data->ReadEntity(num, 3, "qualified_measure", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), aQM);
+  Handle(Standard_Transient) aQM;
+  data->ReadEntity(num, 3, "qualified_measure", ach, STANDARD_TYPE(Standard_Transient), aQM);
 
   // --- own field : qualifiers ---
 
index 3f768954ac11268868bbab75b141d16b6c78ac21..942720a09464e6aa91634052147a34a715702a3a 100644 (file)
@@ -34,63 +34,18 @@ void RWStepShape_RWToleranceValue::ReadStep(const Handle(StepData_StepReaderData
 
   // --- own field : lower_bound ---
 
-  Handle(Standard_Transient) LB;
-  if (!data->ReadEntity(num, 1, "lower_bound", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), LB))
-  {
-    Handle(StepRepr_MeasureRepresentationItem)  aMSR;
-    Handle(StepRepr_ReprItemAndMeasureWithUnit) aRIMU;
-
-    if (data->ReadEntity(num,
-                         1,
-                         "lower_bound",
-                         ach,
-                         STANDARD_TYPE(StepRepr_MeasureRepresentationItem),
-                         aMSR)
-        || data->ReadEntity(num,
-                            1,
-                            "lower_bound",
-                            ach,
-                            STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit),
-                            aRIMU))
-    {
-      if (!aMSR.IsNull())
-        LB = aMSR;
-      else if (!aRIMU.IsNull())
-        LB = aRIMU;
-    }
-  }
+  Handle(Standard_Transient) aLowerBound;
+  data->ReadEntity(num, 1, "lower_bound", ach, STANDARD_TYPE(Standard_Transient), aLowerBound);
 
   // --- own field : upper_bound ---
 
-  Handle(Standard_Transient) UB;
-  if (!data->ReadEntity(num, 2, "upper_bound", ach, STANDARD_TYPE(StepBasic_MeasureWithUnit), UB))
-  {
-    Handle(StepRepr_MeasureRepresentationItem)  aMSR1;
-    Handle(StepRepr_ReprItemAndMeasureWithUnit) aRIMU1;
-    if (data->ReadEntity(num,
-                         2,
-                         "upper_bound",
-                         ach,
-                         STANDARD_TYPE(StepRepr_MeasureRepresentationItem),
-                         aMSR1)
-        || data->ReadEntity(num,
-                            2,
-                            "upper_bound",
-                            ach,
-                            STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit),
-                            aRIMU1))
-    {
-      if (!aMSR1.IsNull())
-        UB = aMSR1;
-      else if (!aRIMU1.IsNull())
-        UB = aRIMU1;
-    }
-  }
+  Handle(Standard_Transient) anUpperBound;
+  data->ReadEntity(num, 2, "upper_bound", ach, STANDARD_TYPE(Standard_Transient), anUpperBound);
 
   //--- Initialisation of the read entity ---
-  if (!LB.IsNull() && !UB.IsNull())
+  if (!aLowerBound.IsNull() && !anUpperBound.IsNull())
     ach->ClearFails();
-  ent->Init(LB, UB);
+  ent->Init(aLowerBound, anUpperBound);
 }
 
 void RWStepShape_RWToleranceValue::WriteStep(StepData_StepWriter&                    SW,
index 636916e3b16e63841ea59315dbc120eecd092550..cdcc6f3d16b273d692c6e361e374ecbf9191a714 100644 (file)
 #include <Bnd_Box.hxx>
 #include <BRepBndLib.hxx>
 
-// skl 21.08.2003 for reading G&DT
-// #include <StepRepr_CompoundItemDefinition.hxx>
-// #include <StepRepr_CompoundItemDefinitionMember.hxx>
-// #include <StepBasic_ConversionBasedUnit.hxx>
-// #include <TDataStd_Real.hxx>
-// #include <TDataStd_Constraint.hxx>
-// #include <TDataStd_ConstraintEnum.hxx>
-// #include <TNaming_Tool.hxx>
-// #include <AIS_InteractiveObject.hxx>
-// #include <TPrsStd_ConstraintTools.hxx>
-// #include <AIS_DiameterDimension.hxx>
-// #include <TPrsStd_Position.hxx>
-// #include <TPrsStd_AISPresentation.hxx>
-// #include <TNaming_Builder.hxx>
-#ifdef OCCT_DEBUG
-//! Converts address of the passed shape (TShape) to string.
-//! \param theShape [in] Shape to dump.
-//! \return corresponding string.
-TCollection_AsciiString AddrToString(const TopoDS_Shape& theShape)
+namespace
 {
-  std::string        anAddrStr;
-  std::ostringstream ost;
-  ost << theShape.TShape().get();
-  anAddrStr = ost.str();
-
-  TCollection_AsciiString aStr = TCollection_AsciiString("[").Cat(anAddrStr.c_str()).Cat("]");
+// Returns a MeasureWithUnit from the given Standard_Transient object.
+// If the object is a StepRepr_ReprItemAndMeasureWithUnit, it retrieves
+// the MeasureWithUnit from it. If it is a StepBasic_MeasureWithUnit,
+// it returns it directly. If the object is neither, it returns a null handle.
+// @param theMeasure The Standard_Transient object to check.
+// @return Handle to StepBasic_MeasureWithUnit if found, otherwise null handle.
+static Handle(StepBasic_MeasureWithUnit) GetMeasureWithUnit(
+  const Handle(Standard_Transient)& theMeasure)
+{
+  if (theMeasure.IsNull())
+  {
+    return nullptr;
+  }
 
-  return aStr;
+  Handle(StepBasic_MeasureWithUnit) aMeasureWithUnit;
+  if (theMeasure->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)))
+  {
+    aMeasureWithUnit = Handle(StepBasic_MeasureWithUnit)::DownCast(theMeasure);
+  }
+  else if (theMeasure->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)))
+  {
+    Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasureItem =
+      Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(theMeasure);
+    aMeasureWithUnit = aReprMeasureItem->GetMeasureWithUnit();
+  }
+  return aMeasureWithUnit;
 }
-#endif
+} // namespace
 
 //=================================================================================================
 
@@ -1991,7 +1991,7 @@ Standard_Boolean STEPCAFControl_Reader::ReadSHUOs(
     {
       if (style != aHSeqOfInvisStyle->Value(si))
         continue;
-        // found that current style is invisible.
+      // found that current style is invisible.
 #ifdef OCCT_DEBUG
       std::cout << "Warning: item No " << i << "(" << style->Item()->DynamicType()->Name()
                 << ") is invisible" << std::endl;
@@ -2091,7 +2091,7 @@ static Standard_Boolean GetMassConversionFactor(const Handle(StepBasic_NamedUnit
     return Standard_False;
   Handle(StepBasic_ConversionBasedUnitAndMassUnit) CBUMU =
     Handle(StepBasic_ConversionBasedUnitAndMassUnit)::DownCast(NU);
-  Handle(StepBasic_MeasureWithUnit) MWUCBU = CBUMU->ConversionFactor();
+  Handle(StepBasic_MeasureWithUnit) MWUCBU = GetMeasureWithUnit(CBUMU->ConversionFactor());
   afact                                    = MWUCBU->ValueComponent();
   StepBasic_Unit anUnit2                   = MWUCBU->UnitComponent();
   if (anUnit2.CaseNum(anUnit2.Value()) == 1)
@@ -3680,12 +3680,11 @@ TDF_Label STEPCAFControl_Reader::createGDTObjectInXCAF(const Handle(Standard_Tra
             Handle(StepDimTol_GeometricTolerance) GT =
               Handle(StepDimTol_GeometricTolerance)::DownCast(theEnt);
             // read common data for tolerance
-            // Standard_Real dim = GT->Magnitude()->ValueComponent();
-            Handle(StepBasic_MeasureWithUnit) dim3 = GT->Magnitude();
+            Handle(StepBasic_MeasureWithUnit) dim3 = GetMeasureWithUnit(GT->Magnitude());
             if (dim3.IsNull())
               continue;
             Standard_Real  dim    = dim3->ValueComponent();
-            StepBasic_Unit anUnit = GT->Magnitude()->UnitComponent();
+            StepBasic_Unit anUnit = dim3->UnitComponent();
             if (anUnit.IsNull())
               continue;
             if (!(anUnit.CaseNum(anUnit.Value()) == 1))
@@ -4136,15 +4135,7 @@ static void setDimObjectToXCAF(const Handle(Standard_Transient)&    theEnt,
         Handle(Standard_Transient) aUpperBound = aTV->UpperBound();
         if (aUpperBound.IsNull())
           continue;
-        Handle(StepBasic_MeasureWithUnit) aMWU;
-        if (aUpperBound->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)))
-          aMWU = Handle(StepBasic_MeasureWithUnit)::DownCast(aUpperBound);
-        else if (aUpperBound->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)))
-        {
-          Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasureItem =
-            Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(aUpperBound);
-          aMWU = aReprMeasureItem->GetMeasureWithUnit();
-        }
+        Handle(StepBasic_MeasureWithUnit) aMWU = GetMeasureWithUnit(aUpperBound);
         if (aMWU.IsNull())
           continue;
         Standard_Real  aVal   = aMWU->ValueComponent();
@@ -4173,14 +4164,7 @@ static void setDimObjectToXCAF(const Handle(Standard_Transient)&    theEnt,
         if (aLowerBound.IsNull())
           continue;
 
-        if (aLowerBound->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)))
-          aMWU = Handle(StepBasic_MeasureWithUnit)::DownCast(aLowerBound);
-        else if (aLowerBound->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)))
-        {
-          Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasureItem =
-            Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(aLowerBound);
-          aMWU = aReprMeasureItem->GetMeasureWithUnit();
-        }
+        aMWU = GetMeasureWithUnit(aLowerBound);
         if (aMWU.IsNull())
           continue;
 
@@ -4550,17 +4534,20 @@ static void setGeomTolObjectToXCAF(const Handle(Standard_Transient)&    theEnt,
   if (!aTolEnt->Magnitude().IsNull())
   {
     // get value
-    Standard_Real  aVal   = aTolEnt->Magnitude()->ValueComponent();
-    StepBasic_Unit anUnit = aTolEnt->Magnitude()->UnitComponent();
-    if (anUnit.IsNull())
-      return;
-    if (!(anUnit.CaseNum(anUnit.Value()) == 1))
-      return;
-    Handle(StepBasic_NamedUnit) NU = anUnit.NamedUnit();
-    STEPConstruct_UnitContext   anUnitCtx;
-    anUnitCtx.ComputeFactors(NU, theLocalFactors);
-    aVal = aVal * anUnitCtx.LengthFactor();
-    aTolObj->SetValue(aVal);
+    if (Handle(StepBasic_MeasureWithUnit) aMWU = GetMeasureWithUnit(aTolEnt->Magnitude()))
+    {
+      Standard_Real  aVal   = aMWU->ValueComponent();
+      StepBasic_Unit anUnit = aMWU->UnitComponent();
+      if (anUnit.IsNull())
+        return;
+      if (!(anUnit.CaseNum(anUnit.Value()) == 1))
+        return;
+      Handle(StepBasic_NamedUnit) NU = anUnit.NamedUnit();
+      STEPConstruct_UnitContext   anUnitCtx;
+      anUnitCtx.ComputeFactors(NU, theLocalFactors);
+      aVal = aVal * anUnitCtx.LengthFactor();
+      aTolObj->SetValue(aVal);
+    }
   }
   // get modifiers
   XCAFDimTolObjects_GeomToleranceTypeValue aTypeV = XCAFDimTolObjects_GeomToleranceTypeValue_None;
index 0e79dce272050166fc0e28c05002d6aa946d4d2f..bf5bd94be1e9fb1ebde5bcd11e79ac4502f235b5 100644 (file)
@@ -38,6 +38,7 @@
 #include <StepGeom_GeomRepContextAndGlobUnitAssCtxAndGlobUncertaintyAssCtx.hxx>
 #include <StepRepr_GlobalUncertaintyAssignedContext.hxx>
 #include <StepRepr_GlobalUnitAssignedContext.hxx>
+#include <StepRepr_ReprItemAndMeasureWithUnit.hxx>
 #include <TCollection_HAsciiString.hxx>
 
 //=================================================================================================
@@ -284,10 +285,6 @@ Standard_Integer STEPConstruct_UnitContext::ComputeFactors(
 
   if (aContext.IsNull())
   {
-#ifdef OCCT_DEBUG
-    std::cout << " -- STEPConstruct_UnitContext:ComputeFactor, Context undefined -> default"
-              << std::endl;
-#endif
     return 1;
   }
 
@@ -299,15 +296,12 @@ Standard_Integer STEPConstruct_UnitContext::ComputeFactors(
   {
     Handle(StepBasic_NamedUnit) theNamedUnit = aContext->UnitsValue(i);
     status                                   = ComputeFactors(theNamedUnit, theLocalFactors);
-#ifdef OCCT_DEBUG
-    if (status == -1)
-      std::cout << " -- STEPConstruct_UnitContext:ComputeFactor: Unit item no." << i
-                << " is not recognized" << std::endl;
-#endif
   }
   return status;
 }
 
+//=================================================================================================
+
 Standard_Integer STEPConstruct_UnitContext::ComputeFactors(const Handle(StepBasic_NamedUnit)& aUnit,
                                                            const StepData_Factors& theLocalFactors)
 {
@@ -326,28 +320,33 @@ Standard_Integer STEPConstruct_UnitContext::ComputeFactors(const Handle(StepBasi
   {
     Handle(StepBasic_ConversionBasedUnit) theCBU =
       Handle(StepBasic_ConversionBasedUnit)::DownCast(aUnit);
-    //    Handle(StepBasic_DimensionalExponents) theDimExp = theCBU->Dimensions();
-    Handle(StepBasic_MeasureWithUnit) theMWU;
+
+    Handle(StepBasic_MeasureWithUnit) aMWU;
     if (!theCBU.IsNull())
     {
-      theMWU = theCBU->ConversionFactor();
+      Handle(Standard_Transient) aConvFactor = theCBU->ConversionFactor();
+      if (aConvFactor->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)))
+      {
+        aMWU = Handle(StepBasic_MeasureWithUnit)::DownCast(aConvFactor);
+      }
+      else if (aConvFactor->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)))
+      {
+        Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasureItem =
+          Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(aConvFactor);
+        aMWU = aReprMeasureItem->GetMeasureWithUnit();
+      }
+
       // sln 8.10.2001: the case of unrecognized entity
-      if (theMWU.IsNull())
+      if (aMWU.IsNull())
+      {
         return -1;
-      // if (!theMWU->IsKind(STANDARD_TYPE(StepBasic_LengthMeasureWithUnit))) { gka
-      //       return 2;
-      // }
-      Handle(StepBasic_NamedUnit) theTargetUnit = theMWU->UnitComponent().NamedUnit();
-      // StepBasic_Unit theTargetUnit = theMWU->UnitComponent();
-      Standard_Real theSIPFactor = 1.;
+      }
+
+      Handle(StepBasic_NamedUnit) theTargetUnit = aMWU->UnitComponent().NamedUnit();
+      Standard_Real               theSIPFactor  = 1.;
 
       //: f5 abv 24 Apr 98: ProSTEP TR8 tr8_bv1_tc: INCHES
-      // gka   Handle(StepBasic_SiUnitAndLengthUnit) theSUALU =
-      //       Handle(StepBasic_SiUnitAndLengthUnit)::DownCast(theTargetUnit);
-      //       Handle(StepBasic_SiUnit) theSIU;
-      //       if ( ! theSUALU.IsNull() ) theSIU = Handle(StepBasic_SiUnit)::DownCast(theSUALU);
-      Handle(StepBasic_SiUnit) theSIU =                    // f5
-        Handle(StepBasic_SiUnit)::DownCast(theTargetUnit); // f5
+      Handle(StepBasic_SiUnit) theSIU = Handle(StepBasic_SiUnit)::DownCast(theTargetUnit);
 
       if (!theSIU.IsNull())
       {
@@ -360,15 +359,12 @@ Standard_Integer STEPConstruct_UnitContext::ComputeFactors(const Handle(StepBasi
         // Treat the SiUnitName
         if (!SiUnitNameFactor(theSIU, theSIUNF))
           status = 11; // et continue
-                       // std::cout << "The SiUnitNameFactor is :";
-        // std::cout << theSIUNF << std::endl;
       }
       else
       {
-        //      std::cout << "Recursive algo required - Aborted" << std::endl;
         return 3;
       }
-      Standard_Real theMVAL = theMWU->ValueComponent();
+      Standard_Real theMVAL = aMWU->ValueComponent();
       theFactor             = theSIPFactor * theMVAL; // * theSIUNF * pow(10.,theLExp)
     }
     parameter = theFactor;
@@ -379,9 +375,6 @@ Standard_Integer STEPConstruct_UnitContext::ComputeFactors(const Handle(StepBasi
     else
     {
       status = 14;
-#ifdef OCCT_DEBUG
-      std::cout << "Error in the file : parameter double defined" << std::endl;
-#endif
     }
   }
   else if (aUnit->IsKind(STANDARD_TYPE(StepBasic_SiUnit)))
@@ -409,18 +402,12 @@ Standard_Integer STEPConstruct_UnitContext::ComputeFactors(const Handle(StepBasi
     else
     {
       status = 14;
-#ifdef OCCT_DEBUG
-      std::cout << "Error in the file : parameter double defined" << std::endl;
-#endif
     }
   }
 
   // Defining a type of unit
   if (!parameterDone)
   {
-#ifdef OCCT_DEBUG
-    std::cout << "Unit Type not implemented" << std::endl;
-#endif
     return 0;
   }
 
@@ -438,9 +425,6 @@ Standard_Integer STEPConstruct_UnitContext::ComputeFactors(const Handle(StepBasi
     else
     {
       status = 14;
-#ifdef OCCT_DEBUG
-      std::cout << "Error in the file : LengthFactor double defined" << std::endl;
-#endif
     }
   } // end of LengthUnit
   else if (aUnit->IsKind(STANDARD_TYPE(StepBasic_ConversionBasedUnitAndPlaneAngleUnit))
@@ -503,9 +487,6 @@ Standard_Integer STEPConstruct_UnitContext::ComputeTolerance(
     Handle(StepBasic_UncertaintyMeasureWithUnit) aUMWU = aContext->UncertaintyValue(un);
     if (aUMWU.IsNull())
     {
-#ifdef OCCT_DEBUG
-      std::cout << "BAD Uncertainty Measure with Units, n0." << un << std::endl;
-#endif
       continue;
     }
     // Decode the associated Unit
@@ -540,10 +521,6 @@ Standard_Integer STEPConstruct_UnitContext::ComputeTolerance(
     }
   }
 
-#ifdef OCCT_DEBUG
-  if (hasUncertainty)
-    std::cout << "UNCERTAINTY read as " << theUncertainty << std::endl;
-#endif
   return status;
 }
 
index db7014213cf80afb094b063df62e6b79aa2e1f3b..d0df52564d57cd4df2dea72c07b185391a7ae91b 100644 (file)
@@ -49,6 +49,7 @@
 #include <StepRepr_RepresentationMap.hxx>
 #include <StepRepr_RepresentationRelationship.hxx>
 #include <StepRepr_ShapeAspect.hxx>
+#include <StepRepr_ReprItemAndMeasureWithUnit.hxx>
 #include <StepShape_ManifoldSolidBrep.hxx>
 #include <StepShape_ShapeDefinitionRepresentation.hxx>
 #include <StepShape_ShapeRepresentation.hxx>
@@ -808,7 +809,18 @@ Standard_Boolean STEPControl_Reader::findUnits(
     Standard_Real           anUnitFact = 0;
     if (!aConvUnit.IsNull())
     {
-      Handle(StepBasic_MeasureWithUnit) aMeasWithUnit = aConvUnit->ConversionFactor();
+      Handle(StepBasic_MeasureWithUnit) aMeasWithUnit;
+      Handle(Standard_Transient)        aConvFactor = aConvUnit->ConversionFactor();
+      if (aConvFactor->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)))
+      {
+        aMeasWithUnit = Handle(StepBasic_MeasureWithUnit)::DownCast(aConvFactor);
+      }
+      else if (aConvFactor->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)))
+      {
+        Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasureItem =
+          Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(aConvFactor);
+        aMeasWithUnit = aReprMeasureItem->GetMeasureWithUnit();
+      }
 
       if (aMeasWithUnit.IsNull())
         continue;
index 32fc867174d90946a1a5aba1e458d8dce9725729..f505118c73ad98e3bebee4fdb26b18e306514757 100644 (file)
@@ -22,7 +22,7 @@ StepBasic_ConversionBasedUnit::StepBasic_ConversionBasedUnit() {}
 
 void StepBasic_ConversionBasedUnit::Init(const Handle(StepBasic_DimensionalExponents)& aDimensions,
                                          const Handle(TCollection_HAsciiString)&       aName,
-                                         const Handle(StepBasic_MeasureWithUnit)& aConversionFactor)
+                                         const Handle(Standard_Transient)& aConversionFactor)
 {
   // --- classe own fields ---
   name             = aName;
@@ -42,12 +42,12 @@ Handle(TCollection_HAsciiString) StepBasic_ConversionBasedUnit::Name() const
 }
 
 void StepBasic_ConversionBasedUnit::SetConversionFactor(
-  const Handle(StepBasic_MeasureWithUnit)& aConversionFactor)
+  const Handle(Standard_Transient)& aConversionFactor)
 {
   conversionFactor = aConversionFactor;
 }
 
-Handle(StepBasic_MeasureWithUnit) StepBasic_ConversionBasedUnit::ConversionFactor() const
+Handle(Standard_Transient) StepBasic_ConversionBasedUnit::ConversionFactor() const
 {
   return conversionFactor;
 }
index 3120fa00e0f3fffb6d5b6dbdc01b321e9be7f1a7..d5c0557d8f9f12dd4900b25a4a1a1c01befa1eb5 100644 (file)
@@ -37,23 +37,22 @@ public:
 
   Standard_EXPORT void Init(const Handle(StepBasic_DimensionalExponents)& aDimensions,
                             const Handle(TCollection_HAsciiString)&       aName,
-                            const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor);
+                            const Handle(Standard_Transient)&             aConversionFactor);
 
   Standard_EXPORT void SetName(const Handle(TCollection_HAsciiString)& aName);
 
   Standard_EXPORT Handle(TCollection_HAsciiString) Name() const;
 
-  Standard_EXPORT void SetConversionFactor(
-    const Handle(StepBasic_MeasureWithUnit)& aConversionFactor);
+  Standard_EXPORT void SetConversionFactor(const Handle(Standard_Transient)& aConversionFactor);
 
-  Standard_EXPORT Handle(StepBasic_MeasureWithUnit) ConversionFactor() const;
+  Standard_EXPORT Handle(Standard_Transient) ConversionFactor() const;
 
   DEFINE_STANDARD_RTTIEXT(StepBasic_ConversionBasedUnit, StepBasic_NamedUnit)
 
 protected:
 private:
-  Handle(TCollection_HAsciiString)  name;
-  Handle(StepBasic_MeasureWithUnit) conversionFactor;
+  Handle(TCollection_HAsciiString) name;
+  Handle(Standard_Transient)       conversionFactor;
 };
 
 #endif // _StepBasic_ConversionBasedUnit_HeaderFile
index 7630ff991d03ea9a52eaad7f2bf87d4e74c7d9a7..a0a5d95371652c73eef7b374a6abadf669bde1d2 100644 (file)
@@ -26,7 +26,7 @@ StepBasic_ConversionBasedUnitAndLengthUnit::StepBasic_ConversionBasedUnitAndLeng
 void StepBasic_ConversionBasedUnitAndLengthUnit::Init(
   const Handle(StepBasic_DimensionalExponents)& aDimensions,
   const Handle(TCollection_HAsciiString)&       aName,
-  const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor)
+  const Handle(Standard_Transient)&             aConversionFactor)
 {
   // --- ANDOR component fields ---
   StepBasic_ConversionBasedUnit::Init(aDimensions, aName, aConversionFactor);
index 0123cddc6ae1388662a86a547bd7bcb36c711aab..fe5faef1b50aaed7ea3094ef259469b0a29ca736 100644 (file)
@@ -38,7 +38,7 @@ public:
 
   Standard_EXPORT void Init(const Handle(StepBasic_DimensionalExponents)& aDimensions,
                             const Handle(TCollection_HAsciiString)&       aName,
-                            const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor);
+                            const Handle(Standard_Transient)&             aConversionFactor);
 
   Standard_EXPORT void SetLengthUnit(const Handle(StepBasic_LengthUnit)& aLengthUnit);
 
index d65d2a751e7ca58a5624b0b557cea5b93118e368..0959ca91591e4c8088e6aa2be32ff63ae33547a3 100644 (file)
@@ -29,7 +29,7 @@ StepBasic_ConversionBasedUnitAndMassUnit::StepBasic_ConversionBasedUnitAndMassUn
 void StepBasic_ConversionBasedUnitAndMassUnit::Init(
   const Handle(StepBasic_DimensionalExponents)& aDimensions,
   const Handle(TCollection_HAsciiString)&       aName,
-  const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor)
+  const Handle(Standard_Transient)&             aConversionFactor)
 {
   // --- ANDOR component fields ---
   StepBasic_ConversionBasedUnit::Init(aDimensions, aName, aConversionFactor);
index 212696ef3430a8bde630b3c00aa62ad12bca2289..7694c76b0be4c802d033124b2d0f96498c04d607 100644 (file)
@@ -37,7 +37,7 @@ public:
 
   Standard_EXPORT void Init(const Handle(StepBasic_DimensionalExponents)& aDimensions,
                             const Handle(TCollection_HAsciiString)&       aName,
-                            const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor);
+                            const Handle(Standard_Transient)&             aConversionFactor);
 
   Standard_EXPORT void SetMassUnit(const Handle(StepBasic_MassUnit)& aMassUnit);
 
index 02a346a93f919f0da6fd18179e9e03b405fa671c..b2f5bac86b9fa3358456469edd03be12a1a2a980 100644 (file)
@@ -26,7 +26,7 @@ StepBasic_ConversionBasedUnitAndPlaneAngleUnit::StepBasic_ConversionBasedUnitAnd
 void StepBasic_ConversionBasedUnitAndPlaneAngleUnit::Init(
   const Handle(StepBasic_DimensionalExponents)& aDimensions,
   const Handle(TCollection_HAsciiString)&       aName,
-  const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor)
+  const Handle(Standard_Transient)&             aConversionFactor)
 {
   // --- ANDOR component fields ---
   StepBasic_ConversionBasedUnit::Init(aDimensions, aName, aConversionFactor);
index 170369526c05753bacb1f8bc0b3f374521e97c54..366ab7f1b4dbdbd84893a09b8b3e71ff74d3eaa1 100644 (file)
@@ -39,7 +39,7 @@ public:
 
   Standard_EXPORT void Init(const Handle(StepBasic_DimensionalExponents)& aDimensions,
                             const Handle(TCollection_HAsciiString)&       aName,
-                            const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor);
+                            const Handle(Standard_Transient)&             aConversionFactor);
 
   Standard_EXPORT void SetPlaneAngleUnit(const Handle(StepBasic_PlaneAngleUnit)& aPlaneAngleUnit);
 
index d352a1acf0aaf644bef5b287eac70428a5f6db53..7b728294310fbbc9c59196d44e7ff96a78ef3926 100644 (file)
@@ -25,7 +25,7 @@ StepBasic_ConversionBasedUnitAndRatioUnit::StepBasic_ConversionBasedUnitAndRatio
 void StepBasic_ConversionBasedUnitAndRatioUnit::Init(
   const Handle(StepBasic_DimensionalExponents)& aDimensions,
   const Handle(TCollection_HAsciiString)&       aName,
-  const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor)
+  const Handle(Standard_Transient)&             aConversionFactor)
 {
   // --- ANDOR component fields ---
   StepBasic_ConversionBasedUnit::Init(aDimensions, aName, aConversionFactor);
index 97c9c681964826553d904dd6b488a89d209ac77d..a0e702cd2127eefbf65ce166641ddcaf35017deb 100644 (file)
@@ -38,7 +38,7 @@ public:
 
   Standard_EXPORT void Init(const Handle(StepBasic_DimensionalExponents)& aDimensions,
                             const Handle(TCollection_HAsciiString)&       aName,
-                            const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor);
+                            const Handle(Standard_Transient)&             aConversionFactor);
 
   Standard_EXPORT void SetRatioUnit(const Handle(StepBasic_RatioUnit)& aRatioUnit);
 
index f2fe6a19251545739a7215ffbf417a21ea3983a5..69e25db55bcdc886dd06e0775e03a6adcd391208 100644 (file)
@@ -26,7 +26,7 @@ StepBasic_ConversionBasedUnitAndSolidAngleUnit::StepBasic_ConversionBasedUnitAnd
 void StepBasic_ConversionBasedUnitAndSolidAngleUnit::Init(
   const Handle(StepBasic_DimensionalExponents)& aDimensions,
   const Handle(TCollection_HAsciiString)&       aName,
-  const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor)
+  const Handle(Standard_Transient)&             aConversionFactor)
 {
   // --- ANDOR component fields ---
   StepBasic_ConversionBasedUnit::Init(aDimensions, aName, aConversionFactor);
index f5bd7ccd7efd38c36ed8d024755a504438cfeecc..92d3f12bd3a89488b2320a652ffd4dce0825f007 100644 (file)
@@ -39,7 +39,7 @@ public:
 
   Standard_EXPORT void Init(const Handle(StepBasic_DimensionalExponents)& aDimensions,
                             const Handle(TCollection_HAsciiString)&       aName,
-                            const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor);
+                            const Handle(Standard_Transient)&             aConversionFactor);
 
   Standard_EXPORT void SetSolidAngleUnit(const Handle(StepBasic_SolidAngleUnit)& aSolidAngleUnit);
 
index ffe6e3890cb4947e3702e0e701691c0e2c79c90f..48353eb6c824a26026383ed07f57d981a93e2997 100644 (file)
@@ -25,7 +25,7 @@ StepBasic_ConversionBasedUnitAndTimeUnit::StepBasic_ConversionBasedUnitAndTimeUn
 void StepBasic_ConversionBasedUnitAndTimeUnit::Init(
   const Handle(StepBasic_DimensionalExponents)& aDimensions,
   const Handle(TCollection_HAsciiString)&       aName,
-  const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor)
+  const Handle(Standard_Transient)&             aConversionFactor)
 {
   // --- ANDOR component fields ---
   StepBasic_ConversionBasedUnit::Init(aDimensions, aName, aConversionFactor);
index e27e4205a6f8a2b5b10b63ab4d1d6188de507846..d3ef94fb973860f46f493f108547eab38b332743 100644 (file)
@@ -38,7 +38,7 @@ public:
 
   Standard_EXPORT void Init(const Handle(StepBasic_DimensionalExponents)& aDimensions,
                             const Handle(TCollection_HAsciiString)&       aName,
-                            const Handle(StepBasic_MeasureWithUnit)&      aConversionFactor);
+                            const Handle(Standard_Transient)&             aConversionFactor);
 
   Standard_EXPORT void SetTimeUnit(const Handle(StepBasic_TimeUnit)& aTimeUnit);
 
index 1f85820fa758d5b28a019f8a79410bb7a7e77314..c41512addca3e47ba0728517dc94dbecfae9fe46 100644 (file)
@@ -30,7 +30,7 @@ StepDimTol_GeoTolAndGeoTolWthDatRef::StepDimTol_GeoTolAndGeoTolWthDatRef() {}
 void StepDimTol_GeoTolAndGeoTolWthDatRef::Init(
   const Handle(TCollection_HAsciiString)&                        theName,
   const Handle(TCollection_HAsciiString)&                        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                       theMagnitude,
+  const Handle(Standard_Transient)&                              theMagnitude,
   const Handle(StepRepr_ShapeAspect)&                            theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
   const StepDimTol_GeometricToleranceType                        theType)
@@ -48,7 +48,7 @@ void StepDimTol_GeoTolAndGeoTolWthDatRef::Init(
 void StepDimTol_GeoTolAndGeoTolWthDatRef::Init(
   const Handle(TCollection_HAsciiString)&                        theName,
   const Handle(TCollection_HAsciiString)&                        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                       theMagnitude,
+  const Handle(Standard_Transient)&                              theMagnitude,
   const StepDimTol_GeometricToleranceTarget&                     theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
   const StepDimTol_GeometricToleranceType                        theType)
index bf16d64cf0a55ca39d29531b08e832bf4bbd026e..ffb8303f97925b01c1c57d01583d4d512c10fc82 100644 (file)
@@ -24,7 +24,6 @@
 class StepDimTol_GeometricToleranceTarget;
 class StepDimTol_GeometricToleranceWithDatumReference;
 class TCollection_HAsciiString;
-class StepBasic_MeasureWithUnit;
 class StepRepr_ShapeAspect;
 
 class StepDimTol_GeoTolAndGeoTolWthDatRef;
@@ -36,16 +35,16 @@ class StepDimTol_GeoTolAndGeoTolWthDatRef : public StepDimTol_GeometricTolerance
 public:
   Standard_EXPORT StepDimTol_GeoTolAndGeoTolWthDatRef();
 
-  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&  theName,
-                            const Handle(TCollection_HAsciiString)&  theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)& theMagnitude,
-                            const Handle(StepRepr_ShapeAspect)&      theTolerancedShapeAspect,
+  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)& theName,
+                            const Handle(TCollection_HAsciiString)& theDescription,
+                            const Handle(Standard_Transient)&       theMagnitude,
+                            const Handle(StepRepr_ShapeAspect)&     theTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
                             const StepDimTol_GeometricToleranceType                        theType);
 
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&    aName,
                             const Handle(TCollection_HAsciiString)&    aDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&   aMagnitude,
+                            const Handle(Standard_Transient)&          aMagnitude,
                             const StepDimTol_GeometricToleranceTarget& aTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithDatumReference)& aGTWDR,
                             const StepDimTol_GeometricToleranceType                        theType);
index 389cfaf0b9e856e5dc4e96be5db8846ab297b8c4..40cbced70095e44eae69b367a54261d0662ba1a7 100644 (file)
@@ -36,7 +36,7 @@ StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol::
 void StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol::Init(
   const Handle(TCollection_HAsciiString)&                        theName,
   const Handle(TCollection_HAsciiString)&                        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                       theMagnitude,
+  const Handle(Standard_Transient)&                              theMagnitude,
   const Handle(StepRepr_ShapeAspect)&                            theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
   const Handle(StepDimTol_GeometricToleranceWithModifiers)&      theGTWM,
@@ -58,7 +58,7 @@ void StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol::Init(
 void StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol::Init(
   const Handle(TCollection_HAsciiString)&                        theName,
   const Handle(TCollection_HAsciiString)&                        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                       theMagnitude,
+  const Handle(Standard_Transient)&                              theMagnitude,
   const StepDimTol_GeometricToleranceTarget&                     theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
   const Handle(StepDimTol_GeometricToleranceWithModifiers)&      theGTWM,
index 6511b410905bd9e6d8ae20bceff947b7d75162f8..d3523fd885303faca61605c699f7a158aa3d1005 100644 (file)
@@ -26,7 +26,6 @@ class StepDimTol_GeometricToleranceWithDatumReference;
 class StepDimTol_GeometricToleranceWithModifiers;
 class TCollection_HAsciiString;
 class StepBasic_LengthMeasureWithUnit;
-class StepBasic_MeasureWithUnit;
 class StepRepr_ShapeAspect;
 
 DEFINE_STANDARD_HANDLE(StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol,
@@ -39,10 +38,10 @@ class StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol
 public:
   Standard_EXPORT StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMaxTol();
 
-  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&  theName,
-                            const Handle(TCollection_HAsciiString)&  theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)& theMagnitude,
-                            const Handle(StepRepr_ShapeAspect)&      theTolerancedShapeAspect,
+  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)& theName,
+                            const Handle(TCollection_HAsciiString)& theDescription,
+                            const Handle(Standard_Transient)&       theMagnitude,
+                            const Handle(StepRepr_ShapeAspect)&     theTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
                             const Handle(StepDimTol_GeometricToleranceWithModifiers)&      theGTWM,
                             const Handle(StepBasic_LengthMeasureWithUnit)& theMaxTol,
@@ -50,7 +49,7 @@ public:
 
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&    aName,
                             const Handle(TCollection_HAsciiString)&    aDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&   aMagnitude,
+                            const Handle(Standard_Transient)&          aMagnitude,
                             const StepDimTol_GeometricToleranceTarget& aTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithDatumReference)& aGTWDR,
                             const Handle(StepDimTol_GeometricToleranceWithModifiers)&      aGTWM,
index b76795aa891abaea9c7caf84810c19b3d5177421..acd71d8fe333981e75b23fe9851ab8a1abeba55d 100644 (file)
@@ -35,7 +35,7 @@ StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod::
 void StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod::Init(
   const Handle(TCollection_HAsciiString)&                        theName,
   const Handle(TCollection_HAsciiString)&                        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                       theMagnitude,
+  const Handle(Standard_Transient)&                              theMagnitude,
   const Handle(StepRepr_ShapeAspect)&                            theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
   const Handle(StepDimTol_GeometricToleranceWithModifiers)&      theGTWM,
@@ -55,7 +55,7 @@ void StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod::Init(
 void StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod::Init(
   const Handle(TCollection_HAsciiString)&                        theName,
   const Handle(TCollection_HAsciiString)&                        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                       theMagnitude,
+  const Handle(Standard_Transient)&                              theMagnitude,
   const StepDimTol_GeometricToleranceTarget&                     theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
   const Handle(StepDimTol_GeometricToleranceWithModifiers)&      theGTWM,
index 3e2a381160766ab1e305bb08addc5a7a8133a37c..7fef145d891eecf7d91dbbb9d316740f622dd3b4 100644 (file)
@@ -25,7 +25,6 @@ class StepDimTol_GeometricToleranceTarget;
 class StepDimTol_GeometricToleranceWithDatumReference;
 class StepDimTol_GeometricToleranceWithModifiers;
 class TCollection_HAsciiString;
-class StepBasic_MeasureWithUnit;
 class StepRepr_ShapeAspect;
 
 class StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod;
@@ -38,17 +37,17 @@ class StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod : public StepDimTol_Geo
 public:
   Standard_EXPORT StepDimTol_GeoTolAndGeoTolWthDatRefAndGeoTolWthMod();
 
-  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&  theName,
-                            const Handle(TCollection_HAsciiString)&  theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)& theMagnitude,
-                            const Handle(StepRepr_ShapeAspect)&      theTolerancedShapeAspect,
+  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)& theName,
+                            const Handle(TCollection_HAsciiString)& theDescription,
+                            const Handle(Standard_Transient)&       theMagnitude,
+                            const Handle(StepRepr_ShapeAspect)&     theTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
                             const Handle(StepDimTol_GeometricToleranceWithModifiers)&      theGTWM,
                             const StepDimTol_GeometricToleranceType                        theType);
 
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&    aName,
                             const Handle(TCollection_HAsciiString)&    aDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&   aMagnitude,
+                            const Handle(Standard_Transient)&          aMagnitude,
                             const StepDimTol_GeometricToleranceTarget& aTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithDatumReference)& aGTWDR,
                             const Handle(StepDimTol_GeometricToleranceWithModifiers)&      aGTWM,
index fcc9ee41825100fcdbc1dc6e526d33fb399eda08..2743008a88947a1fc2fcec2c042ec3697b18d228 100644 (file)
@@ -34,7 +34,7 @@ StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::
 void StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::Init(
   const Handle(TCollection_HAsciiString)&                        aName,
   const Handle(TCollection_HAsciiString)&                        aDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                       aMagnitude,
+  const Handle(Standard_Transient)&                              aMagnitude,
   const Handle(StepRepr_ShapeAspect)&                            aTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithDatumReference)& aGTWDR,
   const Handle(StepDimTol_ModifiedGeometricTolerance)&           aMGT)
@@ -52,7 +52,7 @@ void StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::Init(
 void StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol::Init(
   const Handle(TCollection_HAsciiString)&                        aName,
   const Handle(TCollection_HAsciiString)&                        aDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                       aMagnitude,
+  const Handle(Standard_Transient)&                              aMagnitude,
   const StepDimTol_GeometricToleranceTarget&                     aTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithDatumReference)& aGTWDR,
   const Handle(StepDimTol_ModifiedGeometricTolerance)&           aMGT)
index a6a8f8615cf6c09cad6b8b9430f287cf8b4ba6d1..25b96e86cb4e3d82c80a83f7b9b3084979ee4c62 100644 (file)
@@ -25,7 +25,6 @@ class StepDimTol_GeometricToleranceWithDatumReference;
 class StepDimTol_ModifiedGeometricTolerance;
 class StepDimTol_PositionTolerance;
 class TCollection_HAsciiString;
-class StepBasic_MeasureWithUnit;
 class StepRepr_ShapeAspect;
 
 class StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol;
@@ -39,16 +38,16 @@ class StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol
 public:
   Standard_EXPORT StepDimTol_GeoTolAndGeoTolWthDatRefAndModGeoTolAndPosTol();
 
-  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&  aName,
-                            const Handle(TCollection_HAsciiString)&  aDescription,
-                            const Handle(StepBasic_MeasureWithUnit)& aMagnitude,
-                            const Handle(StepRepr_ShapeAspect)&      aTolerancedShapeAspect,
+  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)& aName,
+                            const Handle(TCollection_HAsciiString)& aDescription,
+                            const Handle(Standard_Transient)&       aMagnitude,
+                            const Handle(StepRepr_ShapeAspect)&     aTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithDatumReference)& aGTWDR,
                             const Handle(StepDimTol_ModifiedGeometricTolerance)&           aMGT);
 
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&    aName,
                             const Handle(TCollection_HAsciiString)&    aDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&   aMagnitude,
+                            const Handle(Standard_Transient)&          aMagnitude,
                             const StepDimTol_GeometricToleranceTarget& aTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithDatumReference)& aGTWDR,
                             const Handle(StepDimTol_ModifiedGeometricTolerance)&           aMGT);
index 685b51c90fcf976b7efde4a89bc3f666d3b9134f..c075d41ab31d71b7bc529e59d55982ae1cf0b36d 100644 (file)
@@ -34,7 +34,7 @@ StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol::
 void StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol::Init(
   const Handle(TCollection_HAsciiString)&                        theName,
   const Handle(TCollection_HAsciiString)&                        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                       theMagnitude,
+  const Handle(Standard_Transient)&                              theMagnitude,
   const Handle(StepRepr_ShapeAspect)&                            theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
   const StepDimTol_GeometricToleranceType                        theType,
@@ -54,7 +54,7 @@ void StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol::Init(
 void StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol::Init(
   const Handle(TCollection_HAsciiString)&                        theName,
   const Handle(TCollection_HAsciiString)&                        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                       theMagnitude,
+  const Handle(Standard_Transient)&                              theMagnitude,
   const StepDimTol_GeometricToleranceTarget&                     theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
   const StepDimTol_GeometricToleranceType                        theType,
index b526fa6d76e6b06910b8eb08ee23a165e46f1efb..0197cab37be8af494ff929331a6354865ff0de9e 100644 (file)
@@ -24,7 +24,6 @@ class StepDimTol_GeometricToleranceTarget;
 class StepDimTol_GeometricToleranceWithDatumReference;
 class StepDimTol_UnequallyDisposedGeometricTolerance;
 class TCollection_HAsciiString;
-class StepBasic_MeasureWithUnit;
 class StepRepr_ShapeAspect;
 
 class StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol;
@@ -38,17 +37,17 @@ class StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol
 public:
   Standard_EXPORT StepDimTol_GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol();
 
-  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&  theName,
-                            const Handle(TCollection_HAsciiString)&  theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)& theMagnitude,
-                            const Handle(StepRepr_ShapeAspect)&      theTolerancedShapeAspect,
+  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)& theName,
+                            const Handle(TCollection_HAsciiString)& theDescription,
+                            const Handle(Standard_Transient)&       theMagnitude,
+                            const Handle(StepRepr_ShapeAspect)&     theTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithDatumReference)& theGTWDR,
                             const StepDimTol_GeometricToleranceType                        theType,
                             const Handle(StepDimTol_UnequallyDisposedGeometricTolerance)&  theUDGT);
 
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&    aName,
                             const Handle(TCollection_HAsciiString)&    aDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&   aMagnitude,
+                            const Handle(Standard_Transient)&          aMagnitude,
                             const StepDimTol_GeometricToleranceTarget& aTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithDatumReference)& aGTWDR,
                             const StepDimTol_GeometricToleranceType                        theType,
index 7f639140ac1b4c71d8907e3596b40e4379ede7b8..6ce6e746e5e3c854c415194c71db643abf6c5899 100644 (file)
@@ -31,7 +31,7 @@ StepDimTol_GeoTolAndGeoTolWthMaxTol::StepDimTol_GeoTolAndGeoTolWthMaxTol() {}
 void StepDimTol_GeoTolAndGeoTolWthMaxTol::Init(
   const Handle(TCollection_HAsciiString)&                   theName,
   const Handle(TCollection_HAsciiString)&                   theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                  theMagnitude,
+  const Handle(Standard_Transient)&                         theMagnitude,
   const Handle(StepRepr_ShapeAspect)&                       theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithModifiers)& theGTWM,
   const Handle(StepBasic_LengthMeasureWithUnit)&            theMaxTol,
@@ -51,7 +51,7 @@ void StepDimTol_GeoTolAndGeoTolWthMaxTol::Init(
 void StepDimTol_GeoTolAndGeoTolWthMaxTol::Init(
   const Handle(TCollection_HAsciiString)&                   theName,
   const Handle(TCollection_HAsciiString)&                   theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                  theMagnitude,
+  const Handle(Standard_Transient)&                         theMagnitude,
   const StepDimTol_GeometricToleranceTarget&                theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithModifiers)& theGTWM,
   const Handle(StepBasic_LengthMeasureWithUnit)&            theMaxTol,
index fd1937ccfe54c683afd1d10cac2341ce5f73611e..5c83e97689cee8e0f3394db42a16610c3f982989 100644 (file)
@@ -25,7 +25,6 @@ class StepDimTol_GeometricToleranceTarget;
 class StepDimTol_GeometricToleranceWithModifiers;
 class TCollection_HAsciiString;
 class StepBasic_LengthMeasureWithUnit;
-class StepBasic_MeasureWithUnit;
 class StepRepr_ShapeAspect;
 
 class StepDimTol_GeoTolAndGeoTolWthMaxTol;
@@ -37,17 +36,17 @@ class StepDimTol_GeoTolAndGeoTolWthMaxTol : public StepDimTol_GeoTolAndGeoTolWth
 public:
   Standard_EXPORT StepDimTol_GeoTolAndGeoTolWthMaxTol();
 
-  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&  theName,
-                            const Handle(TCollection_HAsciiString)&  theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)& theMagnitude,
-                            const Handle(StepRepr_ShapeAspect)&      theTolerancedShapeAspect,
+  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)& theName,
+                            const Handle(TCollection_HAsciiString)& theDescription,
+                            const Handle(Standard_Transient)&       theMagnitude,
+                            const Handle(StepRepr_ShapeAspect)&     theTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithModifiers)& theGTWM,
                             const Handle(StepBasic_LengthMeasureWithUnit)&            theMaxTol,
                             const StepDimTol_GeometricToleranceType                   theType);
 
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&    aName,
                             const Handle(TCollection_HAsciiString)&    aDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&   aMagnitude,
+                            const Handle(Standard_Transient)&          aMagnitude,
                             const StepDimTol_GeometricToleranceTarget& aTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithModifiers)& aGTWM,
                             const Handle(StepBasic_LengthMeasureWithUnit)&            theMaxTol,
index ebf6b33a3d45a2f1d04e0c907b5dd6562fbd6d03..1de2f22f917c0fb722040062a370d4b28c1e76d1 100644 (file)
@@ -30,7 +30,7 @@ StepDimTol_GeoTolAndGeoTolWthMod::StepDimTol_GeoTolAndGeoTolWthMod() {}
 void StepDimTol_GeoTolAndGeoTolWthMod::Init(
   const Handle(TCollection_HAsciiString)&                   theName,
   const Handle(TCollection_HAsciiString)&                   theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                  theMagnitude,
+  const Handle(Standard_Transient)&                         theMagnitude,
   const Handle(StepRepr_ShapeAspect)&                       theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithModifiers)& theGTWM,
   const StepDimTol_GeometricToleranceType                   theType)
@@ -48,7 +48,7 @@ void StepDimTol_GeoTolAndGeoTolWthMod::Init(
 void StepDimTol_GeoTolAndGeoTolWthMod::Init(
   const Handle(TCollection_HAsciiString)&                   theName,
   const Handle(TCollection_HAsciiString)&                   theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                  theMagnitude,
+  const Handle(Standard_Transient)&                         theMagnitude,
   const StepDimTol_GeometricToleranceTarget&                theTolerancedShapeAspect,
   const Handle(StepDimTol_GeometricToleranceWithModifiers)& theGTWM,
   const StepDimTol_GeometricToleranceType                   theType)
index e54b0f5bd487eb3a8de4146f837181d7e09b5845..0df4fbb0f687a70490ed718811b19c454326adec 100644 (file)
@@ -24,7 +24,6 @@
 class StepDimTol_GeometricToleranceTarget;
 class StepDimTol_GeometricToleranceWithModifiers;
 class TCollection_HAsciiString;
-class StepBasic_MeasureWithUnit;
 class StepRepr_ShapeAspect;
 
 class StepDimTol_GeoTolAndGeoTolWthMod;
@@ -36,16 +35,16 @@ class StepDimTol_GeoTolAndGeoTolWthMod : public StepDimTol_GeometricTolerance
 public:
   Standard_EXPORT StepDimTol_GeoTolAndGeoTolWthMod();
 
-  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&  theName,
-                            const Handle(TCollection_HAsciiString)&  theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)& theMagnitude,
-                            const Handle(StepRepr_ShapeAspect)&      theTolerancedShapeAspect,
+  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)& theName,
+                            const Handle(TCollection_HAsciiString)& theDescription,
+                            const Handle(Standard_Transient)&       theMagnitude,
+                            const Handle(StepRepr_ShapeAspect)&     theTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithModifiers)& theGTWM,
                             const StepDimTol_GeometricToleranceType                   theType);
 
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&    aName,
                             const Handle(TCollection_HAsciiString)&    aDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&   aMagnitude,
+                            const Handle(Standard_Transient)&          aMagnitude,
                             const StepDimTol_GeometricToleranceTarget& aTolerancedShapeAspect,
                             const Handle(StepDimTol_GeometricToleranceWithModifiers)& aGTWM,
                             const StepDimTol_GeometricToleranceType                   theType);
index 32268530439c8637b6f28ffeeec9b68ec6e8af8a..4db4640acc797e447426bebf8e2cc6e88a21a3d5 100644 (file)
@@ -32,7 +32,7 @@ StepDimTol_GeometricTolerance::StepDimTol_GeometricTolerance() {}
 void StepDimTol_GeometricTolerance::Init(
   const Handle(TCollection_HAsciiString)&    theName,
   const Handle(TCollection_HAsciiString)&    theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&   theMagnitude,
+  const Handle(Standard_Transient)&          theMagnitude,
   const StepDimTol_GeometricToleranceTarget& theTolerancedShapeAspect)
 {
 
@@ -48,10 +48,10 @@ void StepDimTol_GeometricTolerance::Init(
 //=================================================================================================
 
 void StepDimTol_GeometricTolerance::Init(
-  const Handle(TCollection_HAsciiString)&  theName,
-  const Handle(TCollection_HAsciiString)&  theDescription,
-  const Handle(StepBasic_MeasureWithUnit)& theMagnitude,
-  const Handle(StepRepr_ShapeAspect)&      theTolerancedShapeAspect)
+  const Handle(TCollection_HAsciiString)& theName,
+  const Handle(TCollection_HAsciiString)& theDescription,
+  const Handle(Standard_Transient)&       theMagnitude,
+  const Handle(StepRepr_ShapeAspect)&     theTolerancedShapeAspect)
 {
 
   myName = theName;
@@ -94,15 +94,14 @@ void StepDimTol_GeometricTolerance::SetDescription(
 
 //=================================================================================================
 
-Handle(StepBasic_MeasureWithUnit) StepDimTol_GeometricTolerance::Magnitude() const
+Handle(Standard_Transient) StepDimTol_GeometricTolerance::Magnitude() const
 {
   return myMagnitude;
 }
 
 //=================================================================================================
 
-void StepDimTol_GeometricTolerance::SetMagnitude(
-  const Handle(StepBasic_MeasureWithUnit)& theMagnitude)
+void StepDimTol_GeometricTolerance::SetMagnitude(const Handle(Standard_Transient)& theMagnitude)
 {
   myMagnitude = theMagnitude;
 }
index 6c435d77121be9587e6c6992e2401eff1160bbeb..c8bde803696f2d0b755262d7b3c3540cc245b6f3 100644 (file)
@@ -22,7 +22,6 @@
 #include <Standard_Transient.hxx>
 #include <StepDimTol_GeometricToleranceTarget.hxx>
 class TCollection_HAsciiString;
-class StepBasic_MeasureWithUnit;
 class StepRepr_ShapeAspect;
 
 class StepDimTol_GeometricTolerance;
@@ -37,15 +36,15 @@ public:
   Standard_EXPORT StepDimTol_GeometricTolerance();
 
   //! Initialize all fields (own and inherited) AP214
-  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&  theName,
-                            const Handle(TCollection_HAsciiString)&  theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)& theMagnitude,
-                            const Handle(StepRepr_ShapeAspect)&      theTolerancedShapeAspect);
+  Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)& theName,
+                            const Handle(TCollection_HAsciiString)& theDescription,
+                            const Handle(Standard_Transient)&       theMagnitude,
+                            const Handle(StepRepr_ShapeAspect)&     theTolerancedShapeAspect);
 
   //! Initialize all fields (own and inherited) AP242
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&    theName,
                             const Handle(TCollection_HAsciiString)&    theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&   theMagnitude,
+                            const Handle(Standard_Transient)&          theMagnitude,
                             const StepDimTol_GeometricToleranceTarget& theTolerancedShapeAspect);
 
   //! Returns field Name
@@ -61,10 +60,10 @@ public:
   Standard_EXPORT void SetDescription(const Handle(TCollection_HAsciiString)& theDescription);
 
   //! Returns field Magnitude
-  Standard_EXPORT Handle(StepBasic_MeasureWithUnit) Magnitude() const;
+  Standard_EXPORT Handle(Standard_Transient) Magnitude() const;
 
   //! Set field Magnitude
-  Standard_EXPORT void SetMagnitude(const Handle(StepBasic_MeasureWithUnit)& theMagnitude);
+  Standard_EXPORT void SetMagnitude(const Handle(Standard_Transient)& theMagnitude);
 
   //! Returns field TolerancedShapeAspect
   //! Note: in AP214(203) type of this attribute can be only StepRepr_ShapeAspect
@@ -84,7 +83,7 @@ protected:
 private:
   Handle(TCollection_HAsciiString)    myName;
   Handle(TCollection_HAsciiString)    myDescription;
-  Handle(StepBasic_MeasureWithUnit)   myMagnitude;
+  Handle(Standard_Transient)          myMagnitude;
   StepDimTol_GeometricToleranceTarget myTolerancedShapeAspect;
 };
 
index 615ef26daf7e8c64991a2189ca1555d5987ff6f2..7ff6e10cf0814804d369dccb61c0fc9353d0a299 100644 (file)
@@ -35,7 +35,7 @@ StepDimTol_GeometricToleranceWithDatumReference::StepDimTol_GeometricToleranceWi
 void StepDimTol_GeometricToleranceWithDatumReference::Init(
   const Handle(TCollection_HAsciiString)&           theGeometricTolerance_Name,
   const Handle(TCollection_HAsciiString)&           theGeometricTolerance_Description,
-  const Handle(StepBasic_MeasureWithUnit)&          theGeometricTolerance_Magnitude,
+  const Handle(Standard_Transient)&                 theGeometricTolerance_Magnitude,
   const Handle(StepRepr_ShapeAspect)&               theGeometricTolerance_TolerancedShapeAspect,
   const Handle(StepDimTol_HArray1OfDatumReference)& theDatumSystem)
 {
@@ -59,7 +59,7 @@ void StepDimTol_GeometricToleranceWithDatumReference::Init(
 void StepDimTol_GeometricToleranceWithDatumReference::Init(
   const Handle(TCollection_HAsciiString)&    theGeometricTolerance_Name,
   const Handle(TCollection_HAsciiString)&    theGeometricTolerance_Description,
-  const Handle(StepBasic_MeasureWithUnit)&   theGeometricTolerance_Magnitude,
+  const Handle(Standard_Transient)&          theGeometricTolerance_Magnitude,
   const StepDimTol_GeometricToleranceTarget& theGeometricTolerance_TolerancedShapeAspect,
   const Handle(StepDimTol_HArray1OfDatumSystemOrReference)& theDatumSystem)
 {
index 6410ba7fa42e19649cb954f583d89bde4a5230ae..1e4e62ab9f44bf150bf181c12d809b9160d840a7 100644 (file)
@@ -23,7 +23,6 @@
 #include <StepDimTol_HArray1OfDatumSystemOrReference.hxx>
 #include <StepDimTol_GeometricTolerance.hxx>
 class TCollection_HAsciiString;
-class StepBasic_MeasureWithUnit;
 class StepDimTol_GeometricToleranceTarget;
 class StepRepr_ShapeAspect;
 
@@ -43,7 +42,7 @@ public:
   Standard_EXPORT void Init(
     const Handle(TCollection_HAsciiString)&           theGeometricTolerance_Name,
     const Handle(TCollection_HAsciiString)&           theGeometricTolerance_Description,
-    const Handle(StepBasic_MeasureWithUnit)&          theGeometricTolerance_Magnitude,
+    const Handle(Standard_Transient)&                 theGeometricTolerance_Magnitude,
     const Handle(StepRepr_ShapeAspect)&               theGeometricTolerance_TolerancedShapeAspect,
     const Handle(StepDimTol_HArray1OfDatumReference)& theDatumSystem);
 
@@ -51,7 +50,7 @@ public:
   Standard_EXPORT void Init(
     const Handle(TCollection_HAsciiString)&    theGeometricTolerance_Name,
     const Handle(TCollection_HAsciiString)&    theGeometricTolerance_Description,
-    const Handle(StepBasic_MeasureWithUnit)&   theGeometricTolerance_Magnitude,
+    const Handle(Standard_Transient)&          theGeometricTolerance_Magnitude,
     const StepDimTol_GeometricToleranceTarget& theGeometricTolerance_TolerancedShapeAspect,
     const Handle(StepDimTol_HArray1OfDatumSystemOrReference)& theDatumSystem);
 
index cdf9b229a6372024f451cb64c9f0e737a151d933..020542952513eb4b92339430a8b5d22f09b507b6 100644 (file)
@@ -29,7 +29,7 @@ StepDimTol_GeometricToleranceWithDefinedAreaUnit::StepDimTol_GeometricToleranceW
 void StepDimTol_GeometricToleranceWithDefinedAreaUnit::Init(
   const Handle(TCollection_HAsciiString)&        theName,
   const Handle(TCollection_HAsciiString)&        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&       theMagnitude,
+  const Handle(Standard_Transient)&              theMagnitude,
   const StepDimTol_GeometricToleranceTarget&     theTolerancedShapeAspect,
   const Handle(StepBasic_LengthMeasureWithUnit)& theUnitSize,
   const StepDimTol_AreaUnitType                  theUnitType,
index f82d6969a6f5c984b9adb27be7c79a6a69c19c9a..44564167dffc5c44de6bd23a26534095c4b8c6cf 100644 (file)
@@ -43,7 +43,7 @@ public:
   //! Initialize all fields (own and inherited)
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&        theName,
                             const Handle(TCollection_HAsciiString)&        theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&       theMagnitude,
+                            const Handle(Standard_Transient)&              theMagnitude,
                             const StepDimTol_GeometricToleranceTarget&     theTolerancedShapeAspect,
                             const Handle(StepBasic_LengthMeasureWithUnit)& theUnitSize,
                             const StepDimTol_AreaUnitType                  theAreaType,
index d94680e0bd33774ca7c14c11236734db196ccac2..1a9004ce5de95a7f3c2c79a8e532715aecf0fd12 100644 (file)
@@ -30,7 +30,7 @@ StepDimTol_GeometricToleranceWithDefinedUnit::StepDimTol_GeometricToleranceWithD
 void StepDimTol_GeometricToleranceWithDefinedUnit::Init(
   const Handle(TCollection_HAsciiString)&        theName,
   const Handle(TCollection_HAsciiString)&        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&       theMagnitude,
+  const Handle(Standard_Transient)&              theMagnitude,
   const Handle(StepRepr_ShapeAspect)&            theTolerancedShapeAspect,
   const Handle(StepBasic_LengthMeasureWithUnit)& theUnitSize)
 {
@@ -46,7 +46,7 @@ void StepDimTol_GeometricToleranceWithDefinedUnit::Init(
 void StepDimTol_GeometricToleranceWithDefinedUnit::Init(
   const Handle(TCollection_HAsciiString)&        theName,
   const Handle(TCollection_HAsciiString)&        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&       theMagnitude,
+  const Handle(Standard_Transient)&              theMagnitude,
   const StepDimTol_GeometricToleranceTarget&     theTolerancedShapeAspect,
   const Handle(StepBasic_LengthMeasureWithUnit)& theUnitSize)
 {
index 3f25884bae680698b6a9dbf06e1f622ffcdfe02e..9876e64a72d1705e2a6c4d38ef149e3e1b8320a8 100644 (file)
@@ -40,14 +40,14 @@ public:
   //! Initialize all fields (own and inherited) AP214
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&        theName,
                             const Handle(TCollection_HAsciiString)&        theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&       theMagnitude,
+                            const Handle(Standard_Transient)&              theMagnitude,
                             const Handle(StepRepr_ShapeAspect)&            theTolerancedShapeAspect,
                             const Handle(StepBasic_LengthMeasureWithUnit)& theUnitSize);
 
   //! Initialize all fields (own and inherited) AP242
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&        theName,
                             const Handle(TCollection_HAsciiString)&        theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&       theMagnitude,
+                            const Handle(Standard_Transient)&              theMagnitude,
                             const StepDimTol_GeometricToleranceTarget&     theTolerancedShapeAspect,
                             const Handle(StepBasic_LengthMeasureWithUnit)& theUnitSize);
 
index 7c7abc15937d23ef5caf9cf663702caeb482fb67..2a0a3facdd3f71a844d54a06038888eed361ec6d 100644 (file)
@@ -33,7 +33,7 @@ StepDimTol_GeometricToleranceWithMaximumTolerance::
 void StepDimTol_GeometricToleranceWithMaximumTolerance::Init(
   const Handle(TCollection_HAsciiString)&                       theName,
   const Handle(TCollection_HAsciiString)&                       theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                      theMagnitude,
+  const Handle(Standard_Transient)&                             theMagnitude,
   const StepDimTol_GeometricToleranceTarget&                    theTolerancedShapeAspect,
   const Handle(StepDimTol_HArray1OfGeometricToleranceModifier)& theModifiers,
   const Handle(StepBasic_LengthMeasureWithUnit)&                theMaximumUpperTolerance)
index a518411139b713aaa4c57f745ec606ffde2bdb61..2fd9ce26dfed341b142bccaaf488a89c63757145 100644 (file)
@@ -43,7 +43,7 @@ public:
   Standard_EXPORT void Init(
     const Handle(TCollection_HAsciiString)&                       theName,
     const Handle(TCollection_HAsciiString)&                       theDescription,
-    const Handle(StepBasic_MeasureWithUnit)&                      theMagnitude,
+    const Handle(Standard_Transient)&                             theMagnitude,
     const StepDimTol_GeometricToleranceTarget&                    theTolerancedShapeAspect,
     const Handle(StepDimTol_HArray1OfGeometricToleranceModifier)& theModifiers,
     const Handle(StepBasic_LengthMeasureWithUnit)&                theUnitSize);
index b98ac4e2cb154119a954587526994794c41e217f..6a6b803a3f9e072e1679310bca21eada25f293b5 100644 (file)
@@ -30,7 +30,7 @@ StepDimTol_GeometricToleranceWithModifiers::StepDimTol_GeometricToleranceWithMod
 void StepDimTol_GeometricToleranceWithModifiers::Init(
   const Handle(TCollection_HAsciiString)&                       theName,
   const Handle(TCollection_HAsciiString)&                       theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&                      theMagnitude,
+  const Handle(Standard_Transient)&                             theMagnitude,
   const StepDimTol_GeometricToleranceTarget&                    theTolerancedShapeAspect,
   const Handle(StepDimTol_HArray1OfGeometricToleranceModifier)& theModifiers)
 {
index bbb1833a1a49a191473b49a0b30abb0c7e2d461f..bdcaf8152fd7249f888f52b4c3ec5c0b7832eefc 100644 (file)
@@ -23,7 +23,6 @@
 #include <StepDimTol_HArray1OfGeometricToleranceModifier.hxx>
 
 class TCollection_HAsciiString;
-class StepBasic_MeasureWithUnit;
 class StepDimTol_GeometricToleranceTarget;
 
 class StepDimTol_GeometricToleranceWithModifiers;
@@ -41,7 +40,7 @@ public:
   Standard_EXPORT void Init(
     const Handle(TCollection_HAsciiString)&                       theName,
     const Handle(TCollection_HAsciiString)&                       theDescription,
-    const Handle(StepBasic_MeasureWithUnit)&                      theMagnitude,
+    const Handle(Standard_Transient)&                             theMagnitude,
     const StepDimTol_GeometricToleranceTarget&                    theTolerancedShapeAspect,
     const Handle(StepDimTol_HArray1OfGeometricToleranceModifier)& theModifiers);
 
index e54377647daf6b3551111296a7e764a9f748fd9c..50c5e8c5fbbe10be19e586d4537de3f74c134e52 100644 (file)
@@ -30,11 +30,11 @@ StepDimTol_ModifiedGeometricTolerance::StepDimTol_ModifiedGeometricTolerance() {
 //=================================================================================================
 
 void StepDimTol_ModifiedGeometricTolerance::Init(
-  const Handle(TCollection_HAsciiString)&  theGeometricTolerance_Name,
-  const Handle(TCollection_HAsciiString)&  theGeometricTolerance_Description,
-  const Handle(StepBasic_MeasureWithUnit)& theGeometricTolerance_Magnitude,
-  const Handle(StepRepr_ShapeAspect)&      theGeometricTolerance_TolerancedShapeAspect,
-  const StepDimTol_LimitCondition          theModifier)
+  const Handle(TCollection_HAsciiString)& theGeometricTolerance_Name,
+  const Handle(TCollection_HAsciiString)& theGeometricTolerance_Description,
+  const Handle(Standard_Transient)&       theGeometricTolerance_Magnitude,
+  const Handle(StepRepr_ShapeAspect)&     theGeometricTolerance_TolerancedShapeAspect,
+  const StepDimTol_LimitCondition         theModifier)
 {
   StepDimTol_GeometricTolerance::Init(theGeometricTolerance_Name,
                                       theGeometricTolerance_Description,
@@ -49,7 +49,7 @@ void StepDimTol_ModifiedGeometricTolerance::Init(
 void StepDimTol_ModifiedGeometricTolerance::Init(
   const Handle(TCollection_HAsciiString)&    theGeometricTolerance_Name,
   const Handle(TCollection_HAsciiString)&    theGeometricTolerance_Description,
-  const Handle(StepBasic_MeasureWithUnit)&   theGeometricTolerance_Magnitude,
+  const Handle(Standard_Transient)&          theGeometricTolerance_Magnitude,
   const StepDimTol_GeometricToleranceTarget& theGeometricTolerance_TolerancedShapeAspect,
   const StepDimTol_LimitCondition            theModifier)
 {
index 631e6364afcdce6b495dc894fdeffe4d44723ead..2466f530425f75c03937507355d1ba983a679c4a 100644 (file)
@@ -22,7 +22,6 @@
 #include <StepDimTol_LimitCondition.hxx>
 #include <StepDimTol_GeometricTolerance.hxx>
 class TCollection_HAsciiString;
-class StepBasic_MeasureWithUnit;
 class StepDimTol_GeometricToleranceTarget;
 class StepRepr_ShapeAspect;
 
@@ -39,17 +38,17 @@ public:
 
   //! Initialize all fields (own and inherited) AP214
   Standard_EXPORT void Init(
-    const Handle(TCollection_HAsciiString)&  theGeometricTolerance_Name,
-    const Handle(TCollection_HAsciiString)&  theGeometricTolerance_Description,
-    const Handle(StepBasic_MeasureWithUnit)& theGeometricTolerance_Magnitude,
-    const Handle(StepRepr_ShapeAspect)&      theGeometricTolerance_TolerancedShapeAspect,
-    const StepDimTol_LimitCondition          theModifier);
+    const Handle(TCollection_HAsciiString)& theGeometricTolerance_Name,
+    const Handle(TCollection_HAsciiString)& theGeometricTolerance_Description,
+    const Handle(Standard_Transient)&       theGeometricTolerance_Magnitude,
+    const Handle(StepRepr_ShapeAspect)&     theGeometricTolerance_TolerancedShapeAspect,
+    const StepDimTol_LimitCondition         theModifier);
 
   //! Initialize all fields (own and inherited) AP242
   Standard_EXPORT void Init(
     const Handle(TCollection_HAsciiString)&    theGeometricTolerance_Name,
     const Handle(TCollection_HAsciiString)&    theGeometricTolerance_Description,
-    const Handle(StepBasic_MeasureWithUnit)&   theGeometricTolerance_Magnitude,
+    const Handle(Standard_Transient)&          theGeometricTolerance_Magnitude,
     const StepDimTol_GeometricToleranceTarget& theGeometricTolerance_TolerancedShapeAspect,
     const StepDimTol_LimitCondition            theModifier);
 
index f853e26e1e12ecbd43e85ae058e1298b455e85eb..5e0cfc27ca3c8a66077a045b35dc3aa2841d7cd7 100644 (file)
@@ -30,7 +30,7 @@ StepDimTol_UnequallyDisposedGeometricTolerance::StepDimTol_UnequallyDisposedGeom
 void StepDimTol_UnequallyDisposedGeometricTolerance::Init(
   const Handle(TCollection_HAsciiString)&        theName,
   const Handle(TCollection_HAsciiString)&        theDescription,
-  const Handle(StepBasic_MeasureWithUnit)&       theMagnitude,
+  const Handle(Standard_Transient)&              theMagnitude,
   const StepDimTol_GeometricToleranceTarget&     theTolerancedShapeAspect,
   const Handle(StepBasic_LengthMeasureWithUnit)& theDisplacement)
 {
index 4ff94b8c319876951b30afe6894953e3282dc5eb..81d497a20792142b072cd80724c505d7ea4aa982 100644 (file)
@@ -40,7 +40,7 @@ public:
   //! Initialize all fields (own and inherited)
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&        theName,
                             const Handle(TCollection_HAsciiString)&        theDescription,
-                            const Handle(StepBasic_MeasureWithUnit)&       theMagnitude,
+                            const Handle(Standard_Transient)&              theMagnitude,
                             const StepDimTol_GeometricToleranceTarget&     theTolerancedShapeAspect,
                             const Handle(StepBasic_LengthMeasureWithUnit)& theDisplacement);
 
index e9530fb3f8e447502339a336586d7ebbbb418215..3bbb71cc7e1cc530931a36719f95fe9a4a0fbf58 100644 (file)
@@ -36,10 +36,10 @@ void StepRepr_MakeFromUsageOption::Init(
   const Handle(StepBasic_ProductDefinition)&
     aProductDefinitionRelationship_RelatingProductDefinition,
   const Handle(StepBasic_ProductDefinition)&
-                                           aProductDefinitionRelationship_RelatedProductDefinition,
-  const Standard_Integer                   aRanking,
-  const Handle(TCollection_HAsciiString)&  aRankingRationale,
-  const Handle(StepBasic_MeasureWithUnit)& aQuantity)
+                                          aProductDefinitionRelationship_RelatedProductDefinition,
+  const Standard_Integer                  aRanking,
+  const Handle(TCollection_HAsciiString)& aRankingRationale,
+  const Handle(Standard_Transient)&       aQuantity)
 {
   StepRepr_ProductDefinitionUsage::Init(aProductDefinitionRelationship_Id,
                                         aProductDefinitionRelationship_Name,
@@ -65,10 +65,10 @@ void StepRepr_MakeFromUsageOption::Init(
   const StepBasic_ProductDefinitionOrReference&
     aProductDefinitionRelationship_RelatingProductDefinition,
   const StepBasic_ProductDefinitionOrReference&
-                                           aProductDefinitionRelationship_RelatedProductDefinition,
-  const Standard_Integer                   aRanking,
-  const Handle(TCollection_HAsciiString)&  aRankingRationale,
-  const Handle(StepBasic_MeasureWithUnit)& aQuantity)
+                                          aProductDefinitionRelationship_RelatedProductDefinition,
+  const Standard_Integer                  aRanking,
+  const Handle(TCollection_HAsciiString)& aRankingRationale,
+  const Handle(Standard_Transient)&       aQuantity)
 {
   StepRepr_ProductDefinitionUsage::Init(aProductDefinitionRelationship_Id,
                                         aProductDefinitionRelationship_Name,
@@ -115,14 +115,14 @@ void StepRepr_MakeFromUsageOption::SetRankingRationale(
 
 //=================================================================================================
 
-Handle(StepBasic_MeasureWithUnit) StepRepr_MakeFromUsageOption::Quantity() const
+Handle(Standard_Transient) StepRepr_MakeFromUsageOption::Quantity() const
 {
   return theQuantity;
 }
 
 //=================================================================================================
 
-void StepRepr_MakeFromUsageOption::SetQuantity(const Handle(StepBasic_MeasureWithUnit)& aQuantity)
+void StepRepr_MakeFromUsageOption::SetQuantity(const Handle(Standard_Transient)& aQuantity)
 {
   theQuantity = aQuantity;
 }
index 20584986c750d4be83f16ae2a6ae3e192e437a18..344c529f1b08082cf6b7a5efc1dd2d1c1c586774 100644 (file)
@@ -22,7 +22,6 @@
 #include <Standard_Integer.hxx>
 #include <StepRepr_ProductDefinitionUsage.hxx>
 class TCollection_HAsciiString;
-class StepBasic_MeasureWithUnit;
 class StepBasic_ProductDefinition;
 
 class StepRepr_MakeFromUsageOption;
@@ -48,7 +47,7 @@ public:
                                             aProductDefinitionRelationship_RelatedProductDefinition,
     const Standard_Integer                  aRanking,
     const Handle(TCollection_HAsciiString)& aRankingRationale,
-    const Handle(StepBasic_MeasureWithUnit)& aQuantity);
+    const Handle(Standard_Transient)&       aQuantity);
 
   //! Initialize all fields (own and inherited)
   Standard_EXPORT void Init(
@@ -62,7 +61,7 @@ public:
                                             aProductDefinitionRelationship_RelatedProductDefinition,
     const Standard_Integer                  aRanking,
     const Handle(TCollection_HAsciiString)& aRankingRationale,
-    const Handle(StepBasic_MeasureWithUnit)& aQuantity);
+    const Handle(Standard_Transient)&       aQuantity);
 
   //! Returns field Ranking
   Standard_EXPORT Standard_Integer Ranking() const;
@@ -78,18 +77,18 @@ public:
     const Handle(TCollection_HAsciiString)& RankingRationale);
 
   //! Returns field Quantity
-  Standard_EXPORT Handle(StepBasic_MeasureWithUnit) Quantity() const;
+  Standard_EXPORT Handle(Standard_Transient) Quantity() const;
 
   //! Set field Quantity
-  Standard_EXPORT void SetQuantity(const Handle(StepBasic_MeasureWithUnit)& Quantity);
+  Standard_EXPORT void SetQuantity(const Handle(Standard_Transient)& Quantity);
 
   DEFINE_STANDARD_RTTIEXT(StepRepr_MakeFromUsageOption, StepRepr_ProductDefinitionUsage)
 
 protected:
 private:
-  Standard_Integer                  theRanking;
-  Handle(TCollection_HAsciiString)  theRankingRationale;
-  Handle(StepBasic_MeasureWithUnit) theQuantity;
+  Standard_Integer                 theRanking;
+  Handle(TCollection_HAsciiString) theRankingRationale;
+  Handle(Standard_Transient)       theQuantity;
 };
 
 #endif // _StepRepr_MakeFromUsageOption_HeaderFile
index 0b1b579163c0b0a876416483d6cec11460819650..e6188b135790bd54830590e7d3181238c55e8214 100644 (file)
@@ -26,7 +26,7 @@ void StepRepr_ParallelOffset::Init(
   const Handle(TCollection_HAsciiString)&        theShapeAspect_Description,
   const Handle(StepRepr_ProductDefinitionShape)& theShapeAspect_OfShape,
   const StepData_Logical                         theShapeAspect_ProductDefinitional,
-  const Handle(StepBasic_MeasureWithUnit)&       theOffset)
+  const Handle(Standard_Transient)&              theOffset)
 {
   StepRepr_ShapeAspect::Init(theShapeAspect_Name,
                              theShapeAspect_Description,
index b89e463f06e635569cbe0f2df6e4606b0139d014..9b6ab54ae685509ba0c878d214d02ce69b5e67ad 100644 (file)
@@ -21,7 +21,6 @@
 
 #include <StepRepr_DerivedShapeAspect.hxx>
 #include <StepData_Logical.hxx>
-class StepBasic_MeasureWithUnit;
 class TCollection_HAsciiString;
 class StepRepr_ProductDefinitionShape;
 
@@ -40,17 +39,17 @@ public:
                             const Handle(TCollection_HAsciiString)&        theDescription,
                             const Handle(StepRepr_ProductDefinitionShape)& theOfShape,
                             const StepData_Logical                         theProductDefinitional,
-                            const Handle(StepBasic_MeasureWithUnit)&       theOffset);
+                            const Handle(Standard_Transient)&              theOffset);
 
   //! Returns field Offset
-  inline Handle(StepBasic_MeasureWithUnit) Offset() const { return offset; }
+  inline Handle(Standard_Transient) Offset() const { return offset; }
 
   //! Set field Offset
-  inline void SetOffset(const Handle(StepBasic_MeasureWithUnit)& theOffset) { offset = theOffset; }
+  inline void SetOffset(const Handle(Standard_Transient)& theOffset) { offset = theOffset; }
 
   DEFINE_STANDARD_RTTIEXT(StepRepr_ParallelOffset, StepRepr_DerivedShapeAspect)
 
 private:
-  Handle(StepBasic_MeasureWithUnit) offset;
+  Handle(Standard_Transient) offset;
 };
 #endif // _StepRepr_ParallelOffset_HeaderFile
index 5a63df15f3981af2ec9dcad75cbc73376e32ce3f..b06102a9eadbb90d1febd5be7244f8e5ebf75901 100644 (file)
@@ -37,10 +37,10 @@ void StepRepr_QuantifiedAssemblyComponentUsage::Init(
   const Handle(StepBasic_ProductDefinition)&
     aProductDefinitionRelationship_RelatingProductDefinition,
   const Handle(StepBasic_ProductDefinition)&
-                                           aProductDefinitionRelationship_RelatedProductDefinition,
-  const Standard_Boolean                   hasAssemblyComponentUsage_ReferenceDesignator,
-  const Handle(TCollection_HAsciiString)&  aAssemblyComponentUsage_ReferenceDesignator,
-  const Handle(StepBasic_MeasureWithUnit)& aQuantity)
+                                          aProductDefinitionRelationship_RelatedProductDefinition,
+  const Standard_Boolean                  hasAssemblyComponentUsage_ReferenceDesignator,
+  const Handle(TCollection_HAsciiString)& aAssemblyComponentUsage_ReferenceDesignator,
+  const Handle(Standard_Transient)&       aQuantity)
 {
   StepRepr_AssemblyComponentUsage::Init(aProductDefinitionRelationship_Id,
                                         aProductDefinitionRelationship_Name,
@@ -64,10 +64,10 @@ void StepRepr_QuantifiedAssemblyComponentUsage::Init(
   const StepBasic_ProductDefinitionOrReference&
     aProductDefinitionRelationship_RelatingProductDefinition,
   const StepBasic_ProductDefinitionOrReference&
-                                           aProductDefinitionRelationship_RelatedProductDefinition,
-  const Standard_Boolean                   hasAssemblyComponentUsage_ReferenceDesignator,
-  const Handle(TCollection_HAsciiString)&  aAssemblyComponentUsage_ReferenceDesignator,
-  const Handle(StepBasic_MeasureWithUnit)& aQuantity)
+                                          aProductDefinitionRelationship_RelatedProductDefinition,
+  const Standard_Boolean                  hasAssemblyComponentUsage_ReferenceDesignator,
+  const Handle(TCollection_HAsciiString)& aAssemblyComponentUsage_ReferenceDesignator,
+  const Handle(Standard_Transient)&       aQuantity)
 {
   StepRepr_AssemblyComponentUsage::Init(aProductDefinitionRelationship_Id,
                                         aProductDefinitionRelationship_Name,
@@ -83,7 +83,7 @@ void StepRepr_QuantifiedAssemblyComponentUsage::Init(
 
 //=================================================================================================
 
-Handle(StepBasic_MeasureWithUnit) StepRepr_QuantifiedAssemblyComponentUsage::Quantity() const
+Handle(Standard_Transient) StepRepr_QuantifiedAssemblyComponentUsage::Quantity() const
 {
   return theQuantity;
 }
@@ -91,7 +91,7 @@ Handle(StepBasic_MeasureWithUnit) StepRepr_QuantifiedAssemblyComponentUsage::Qua
 //=================================================================================================
 
 void StepRepr_QuantifiedAssemblyComponentUsage::SetQuantity(
-  const Handle(StepBasic_MeasureWithUnit)& aQuantity)
+  const Handle(Standard_Transient)& aQuantity)
 {
   theQuantity = aQuantity;
 }
index 57488f8f5bece4beae79da9a19414c7a9e0da90b..3fed617d274650af1a70a51bbfb20c21e5d01f98 100644 (file)
@@ -20,7 +20,6 @@
 #include <Standard_Type.hxx>
 
 #include <StepRepr_AssemblyComponentUsage.hxx>
-class StepBasic_MeasureWithUnit;
 class TCollection_HAsciiString;
 class StepBasic_ProductDefinition;
 
@@ -47,7 +46,7 @@ public:
                                             aProductDefinitionRelationship_RelatedProductDefinition,
     const Standard_Boolean                  hasAssemblyComponentUsage_ReferenceDesignator,
     const Handle(TCollection_HAsciiString)& aAssemblyComponentUsage_ReferenceDesignator,
-    const Handle(StepBasic_MeasureWithUnit)& aQuantity);
+    const Handle(Standard_Transient)&       aQuantity);
 
   //! Initialize all fields (own and inherited)
   Standard_EXPORT void Init(
@@ -61,20 +60,20 @@ public:
                                             aProductDefinitionRelationship_RelatedProductDefinition,
     const Standard_Boolean                  hasAssemblyComponentUsage_ReferenceDesignator,
     const Handle(TCollection_HAsciiString)& aAssemblyComponentUsage_ReferenceDesignator,
-    const Handle(StepBasic_MeasureWithUnit)& aQuantity);
+    const Handle(Standard_Transient)&       aQuantity);
 
   //! Returns field Quantity
-  Standard_EXPORT Handle(StepBasic_MeasureWithUnit) Quantity() const;
+  Standard_EXPORT Handle(Standard_Transient) Quantity() const;
 
   //! Set field Quantity
-  Standard_EXPORT void SetQuantity(const Handle(StepBasic_MeasureWithUnit)& Quantity);
+  Standard_EXPORT void SetQuantity(const Handle(Standard_Transient)& Quantity);
 
   DEFINE_STANDARD_RTTIEXT(StepRepr_QuantifiedAssemblyComponentUsage,
                           StepRepr_AssemblyComponentUsage)
 
 protected:
 private:
-  Handle(StepBasic_MeasureWithUnit) theQuantity;
+  Handle(Standard_Transient) theQuantity;
 };
 
 #endif // _StepRepr_QuantifiedAssemblyComponentUsage_HeaderFile
index c37cd1269e29c036bdc5a70ef1b78fc406a21d6e..b3d5eced8967f05d0a4f72813dc79a47b957c09f 100644 (file)
@@ -23,7 +23,7 @@ StepShape_MeasureQualification::StepShape_MeasureQualification() {}
 void StepShape_MeasureQualification::Init(
   const Handle(TCollection_HAsciiString)&          name,
   const Handle(TCollection_HAsciiString)&          description,
-  const Handle(StepBasic_MeasureWithUnit)&         qualified_measure,
+  const Handle(Standard_Transient)&                qualified_measure,
   const Handle(StepShape_HArray1OfValueQualifier)& qualifiers)
 {
   theName             = name;
@@ -53,13 +53,13 @@ void StepShape_MeasureQualification::SetDescription(
   theDescription = description;
 }
 
-Handle(StepBasic_MeasureWithUnit) StepShape_MeasureQualification::QualifiedMeasure() const
+Handle(Standard_Transient) StepShape_MeasureQualification::QualifiedMeasure() const
 {
   return theQualifiedMeasure;
 }
 
 void StepShape_MeasureQualification::SetQualifiedMeasure(
-  const Handle(StepBasic_MeasureWithUnit)& qualified_measure)
+  const Handle(Standard_Transient)& qualified_measure)
 {
   theQualifiedMeasure = qualified_measure;
 }
index 7ee791ba13762552b8073eae3a19a73d501901ea..a6059dd9b2d324040900985e024c6bb4114409be 100644 (file)
@@ -23,7 +23,6 @@
 #include <Standard_Transient.hxx>
 #include <Standard_Integer.hxx>
 class TCollection_HAsciiString;
-class StepBasic_MeasureWithUnit;
 class StepShape_ValueQualifier;
 
 class StepShape_MeasureQualification;
@@ -38,7 +37,7 @@ public:
 
   Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)&          name,
                             const Handle(TCollection_HAsciiString)&          description,
-                            const Handle(StepBasic_MeasureWithUnit)&         qualified_measure,
+                            const Handle(Standard_Transient)&                qualified_measure,
                             const Handle(StepShape_HArray1OfValueQualifier)& qualifiers);
 
   Standard_EXPORT Handle(TCollection_HAsciiString) Name() const;
@@ -49,10 +48,9 @@ public:
 
   Standard_EXPORT void SetDescription(const Handle(TCollection_HAsciiString)& description);
 
-  Standard_EXPORT Handle(StepBasic_MeasureWithUnit) QualifiedMeasure() const;
+  Standard_EXPORT Handle(Standard_Transient) QualifiedMeasure() const;
 
-  Standard_EXPORT void SetQualifiedMeasure(
-    const Handle(StepBasic_MeasureWithUnit)& qualified_measure);
+  Standard_EXPORT void SetQualifiedMeasure(const Handle(Standard_Transient)& qualified_measure);
 
   Standard_EXPORT Handle(StepShape_HArray1OfValueQualifier) Qualifiers() const;
 
@@ -71,7 +69,7 @@ protected:
 private:
   Handle(TCollection_HAsciiString)          theName;
   Handle(TCollection_HAsciiString)          theDescription;
-  Handle(StepBasic_MeasureWithUnit)         theQualifiedMeasure;
+  Handle(Standard_Transient)                theQualifiedMeasure;
   Handle(StepShape_HArray1OfValueQualifier) theQualifiers;
 };
 
index 9c4a9201f1885bcf26cacda414bae9eaab5d097c..132d82aa1bb7c716904855035f543da9c38d3d0f 100644 (file)
 #include <StepBasic_SiUnitAndPlaneAngleUnit.hxx>
 #include <StepBasic_MeasureWithUnit.hxx>
 #include <StepRepr_GlobalUnitAssignedContext.hxx>
+#include <StepRepr_ReprItemAndMeasureWithUnit.hxx>
 #include <STEPConstruct_UnitContext.hxx>
 
 //=============================================================================
@@ -2558,8 +2559,20 @@ Handle(TColStd_HArray1OfReal) StepToGeom::MakeYprRotation(
   {
     Handle(StepBasic_ConversionBasedUnitAndPlaneAngleUnit) aConverUnit =
       Handle(StepBasic_ConversionBasedUnitAndPlaneAngleUnit)::DownCast(aPau);
-    anAngle = anAngle * aConverUnit->ConversionFactor()->ValueComponent();
-    aPau    = aConverUnit->ConversionFactor()->UnitComponent().NamedUnit();
+    Handle(StepBasic_MeasureWithUnit) aConversionFactor;
+    Handle(Standard_Transient)        aTransientFactor = aConverUnit->ConversionFactor();
+    if (aTransientFactor->IsKind(STANDARD_TYPE(StepBasic_MeasureWithUnit)))
+    {
+      aConversionFactor = Handle(StepBasic_MeasureWithUnit)::DownCast(aTransientFactor);
+    }
+    else if (aTransientFactor->IsKind(STANDARD_TYPE(StepRepr_ReprItemAndMeasureWithUnit)))
+    {
+      Handle(StepRepr_ReprItemAndMeasureWithUnit) aReprMeasureItem =
+        Handle(StepRepr_ReprItemAndMeasureWithUnit)::DownCast(aTransientFactor);
+      aConversionFactor = aReprMeasureItem->GetMeasureWithUnit();
+    }
+    anAngle = anAngle * aConversionFactor->ValueComponent();
+    aPau    = aConversionFactor->UnitComponent().NamedUnit();
   }
   if (aPau.IsNull())
   {
diff --git a/tests/bugs/step/bug_gh384 b/tests/bugs/step/bug_gh384
new file mode 100644 (file)
index 0000000..a4c56a4
--- /dev/null
@@ -0,0 +1,34 @@
+puts "===================================="
+puts "For some STEP files we fail for geometric tolerances to read the geometric_tolerance.magnitude"
+puts "===================================="
+pload OCAF
+
+Close D -silent
+
+ReadStep D [locate_data_file bug_gh384.stp]
+
+proc checkEqual {theActualValue theExpectedValue {theTolerance 1.0e-7}} {
+    # Calculate absolute difference
+    set aDifference [expr abs($theActualValue - $theExpectedValue)]
+    
+    # Check if difference is within tolerance
+    set isEqual [expr {$aDifference <= $theTolerance}]
+    
+    if {!$isEqual} {
+      puts "Error: Tolerance data is not correct"
+      puts "Expected: $theExpectedValue, actual: $anActualValue"
+    }
+}
+
+set aTolerance0 [XGetToleranceValue D "0:1:4:1"]
+checkEqual $aTolerance0 0.75
+
+set aTolerance1 [XGetToleranceValue D "0:1:4:5"]
+checkEqual $aTolerance1 0.75
+
+set aTolerance2 [XGetToleranceValue D "0:1:4:11"]
+checkEqual $aTolerance2 1.25
+
+set aTolerance3 [XGetToleranceValue D "0:1:4:15"]
+checkEqual $aTolerance3 0.5
+