Discussion
Notes and system updates
Branch CR33099 has been created by @anon-075
SHA-1: 0f455fa7c44b346e92a6d91707ee2373446de31a
Detailed log of new commits:
Author: @anon-546
Date: Fri Aug 12 15:02:44 2022 +0300
0033099: Data Exchange, Step Import - Wrong PMI values in GDT
Fixed magnitude class to handle main GDT value.
Branch CR33099_1 has been created by @anon-550
SHA-1: 91fe6e53adb6c21de3535203eff8e0e70763c2c2
Detailed log of new commits:
Author: @anon-546
Date: Fri Aug 12 15:02:44 2022 +0300
0033099: Data Exchange, Step Import - Wrong PMI values in GDT
Fixed magnitude class to handle main GDT value.
Branch CR33099_1 has been updated forcibly by ichesnokova.
SHA-1: 3efb5c2a7e1221f455b7d768dfea3ee25ce04e28
Branch CR33099_1 has been updated forcibly by ichesnokova.
SHA-1: 58239e1c0c05127e0d3bf70d988ece9d3eb05c80
Branch CR33099_2 has been created by @anon-513
SHA-1: 05657c1989ed3c46f77877ae53569d12ad08e591
Detailed log of new commits:
Author: @anon-546
Date: Fri Aug 12 13:02:44 2022 +0100
0033099: Data Exchange, Step Import - Wrong PMI values in GDT
Create StepRepr_MeasureWithUnit class for select type of measure.
Branch CR33099_2 has been updated forcibly by anv.
SHA-1: 0738b90a3dcf8850e42f3ec52218db30542d5114
Branch CR33099_2 has been updated forcibly by anv.
SHA-1: 98fd3a7958610b481dc7d5998e007c3f41e9bd29
Dear ika,
The fix is ready and tested. Branch for integration is CR33099_2.
Please review.
Dear anv,
The general approach is not OK from my point of view:
1) Creating of new StepRepr_MeasureWithUnit while we already have StepBasic_MeasureWithUnit will lead to problems with understanding in the future.
2) The STEP reading classes copy the STEP schema as much as possible, so it will be better to avoid creating an auxiliary SELECT entity that does not exist in the schema.
Summarising these items, I would suppose a bit another approach.
First of all, the root of the problem are complex entities used in the file to define the GDT value. The class for them is already implemented in OCCT StepRepr_ReprItemAndLengthMeasureWithUnitAndQRI. It will be better to use it, but here we will face another issue. Two entities reference this complex type: SHAPE_DIMENSION_REPRESENTATION and GEOMETRIC_TOLERANCE. The first one should process the StepRepr_ReprItemAndLengthMeasureWithUnitAndQRI properly because the inheritance branch of the corresponding attribute is OK, but GEOMETRIC_TOLERANCE supposes measure_with_unit as the magnitude parameter, which is not inherited from the same item, but we can use the root Standard_Transient for the magnitude pole. ReadEntity() is smart enough to read both StepRepr_ReprItemAndLengthMeasureWithUnitAndQRI and StepBasic_MeasureWithUnit into it.
The last step will be to check the processing of the value in STEPCAFControl_Reader and add necessary ifs.
Branch CR33099_2 has been updated forcibly by anv.
SHA-1: b281b7eb0962bb22b53286e2b55b8474ac727a35
Branch CR33099_2 has been updated forcibly by anv.
SHA-1: 180d78172c15c1c3a41536e7e90f4770265e8776
Needs to clear code style changes.
Needs to clear non-PMI related updates. Changes must to be mostly for PMI related objects.
Recommended way is read as Entity and put into PMI anly needed type.
So, only RW will need to be updated. But for the beginning need to revert any code style changes.