DiscussionsIssue archiveOCCT:Data Exchange

Archived issue #0032748

Data Exchange, Step Import - xstep.cascade.unit doesn't work [regression since OCCT 7.6.0]

CommunityOCCT:Data Exchangeclosed10 public notes

Search issues

Description

Using STEPControl_Reader without internal DRAW commands leads to incorrect work with Interface unit parameter.
It is necessary to set Unit to StepData_StepModel during the Read process.
For example, STEPControl_Writer initializes its own unit in the STEPControl_ActorWrite::Transfer(), if it is not initialized.

Steps to reproduce

Not required

Public activity

10 archived notes

Participants are labeled by their role within this record.

01Commenter 2
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: atychini
Date: Fri Jan 21 21:55:45 2022 +0300

    0032748: Data Exchange, Step Import - xstep.cascade.unit doesn't work [regression since OCCT 7.6.0]
    Added new condition in STEPControl_ActorRead::Transfer: if StepData_StepModel is not an initialized Unit - we set unit to this step model
02Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
03Commenter 3
Dear Author,
please review branch CR32748

All tests are OK, see:
http://jenkins-test-08.nnov.opencascade.com/view/CR32748-master-atychini/view/COMPARE/
04Author
I have minor remark:
1622   XSAlgo::AlgoContainer()->PrepareForTransfer();

+  if (!aStepModel->IsInitializedUnit())
+  {
+    XSAlgo::AlgoContainer()->PrepareForTransfer(); // update unit info
+    aStepModel->SetLocalLengthUnit(UnitsMethods::GetCasCadeLengthUnit());
+  }

I think there should be only one preparation,
05Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
06Commenter 3
Commenter 4, do we have this problem only in STEP translator, or maybe we should check IGES / Products as well?

> STEPControl_ActorRead.cxx
07Author
Iges and other DE OCCT components are protected from this problem. But there are PROD components with the same problem and they need to be fixed (DXF, Parasolid all components based on XS interface)
08Author
Dear Commenter 1,
please integrate. The current bug is fixed.

OCCT: CR32748
PROD: NOT
09Commenter 9
Combination -
OCCT branch : [archived branch]
master SHA - [revision removed]
[revision removed]
Products branch : [archived branch] SHA - [revision removed]
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 18541.880000000696 / 18411.29000000044 [+0.71%]
Products
Total CPU difference: 11695.81000000013 / 11647.290000000106 [+0.42%]
Windows-64-VC14:
OCCT
Total CPU difference: 20349.546875 / 20285.25 [+0.32%]
Products
Total CPU difference: 13126.203125 / 13132.546875 [-0.05%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention
10Commenter 2
Branch [archived branch] has been deleted by Participant.

[revision removed]

Related records