MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0027457Open CASCADE[OCCT] OCCT:Modeling Datapublic2016-05-01 15:142021-09-09 23:20
Reporterabv 
Assigned Tobugmaster 
PriorityhighSeverityintegration request 
StatusverifiedResolutionfixed 
PlatformOSOS Version
Product Version 
Target Version[OCCT] 7.6.0*Fixed in Version 
Summary0027457: Modeling - Raise exception if scaled transformation is used for shape location
DescriptionThe fact is that use of transformations with non-unit scale factor in shape locations (e.g. method TopoDS_Shape::Moved()) is not well supported in OCCT: in most cases (especially if underlying geometry is elementary) this will lead to invalid shape, and most algorithms will fail due to being not able to handle effect of scaling on parameterization. It is quite regular that users get confused by this possibility (see e.g. https://github.com/tpaviot/oce/issues/615 [^]).

To prevent confusion, we can raise exception when scaled transformation is used for shape (e.g. in TopLoc_Location).
Steps To ReproduceTest cases
bugs moddata_3 bug27457
bugs moddata_3 bug27457_1
bugs moddata_3 bug27457_2
TagsNo tags attached.
Test case numbersat/doc_6/G3
Attached Files? file icon bug27457_1.brep (17,407 bytes) 2021-07-26 11:47
? file icon bug27457_2.brep (1,739 bytes) 2021-07-26 11:48

- Relationships
related to 0024860closedbugmaster Community [Regression] Modeling Data - OCC 6.7.1 beta BRepBuilderAPI_Transform loses pcurves 
related to 0032253closedbugmaster Community Mesh - The refactored Mesher fails to mesh correctly scaled (planar) faces 
related to 0029998newkgv Community Visualization - PrsMgr_PresentableObject::SetLocalTransformation() does not support anisotropic scale 

-  Notes
(0053982)
msv (developer)
2016-05-11 10:24

Dear IFV, please solve this and use this agreement when fixing 0024860.
(0099810)
msv (developer)
2021-03-29 12:13

In the context of this bug it is needed to add some compatibility code for 'old' files, which contain shapes with scaling transforms.
It must not be automatic invocation of such conversion. It is needed to develop a convenient procedure that can convert such shapes. May be, it is needed also to develop a procedure to update shapes in an OCAF document, so that to simplify the movement of customer applications on new version.
And, of course it is needed to reflect this change in upgrade guide.
(0099999)
ifv (developer)
2021-04-02 15:32

Debugging
(0100106)
git (administrator)
2021-04-05 15:59

Branch CR27457 has been created by ifv.

SHA-1: 66af1fe09b8ea079c48c0de025fd0d75c02b2773


Detailed log of new commits:

Author: ifv
Date: Mon Apr 5 11:15:45 2021 +0300

    0027457: Modeling - Raise exception if scaled transformation is used for shape location
(0100138)
ifv (developer)
2021-04-06 18:29

Debugging
(0100139)
git (administrator)
2021-04-06 18:38

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 4fa6f76612fc69d69b6b73ac69dafe7e81afe34e
(0100169)
git (administrator)
2021-04-07 15:17

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 80d961fe554353083df920b1fc678187936bce5f
(0100170)
ifv (developer)
2021-04-07 16:02

Debugging
(0100180)
git (administrator)
2021-04-08 12:56

Branch CR27457 has been updated forcibly by ifv.

SHA-1: f2eef54a7990d187ee56b9473f2a08b07db4f681
(0100186)
ifv (developer)
2021-04-08 17:12

Debugging
(0100192)
ifv (developer)
2021-04-09 09:35

Debugging
(0100253)
git (administrator)
2021-04-12 19:13

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 091e6a6cfe7682e597739606f9a68829259910ae
(0100279)
git (administrator)
2021-04-13 14:38

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 1bc1acae639258428a37ba5bd6041a2e1c9f7b1f
(0100280)
ifv (developer)
2021-04-13 14:40
edited on: 2021-04-19 11:09

Debugging

(0100504)
ifv (developer)
2021-04-22 09:14
edited on: 2021-04-26 10:15

Debugging

(0100513)
git (administrator)
2021-04-22 13:07

Branch CR27457 has been updated forcibly by ifv.

SHA-1: c8715b08b800059d4a5b2d9ec25663b065b90765
(0100766)
ifv (developer)
2021-05-04 16:23

Integration
(0100767)
ifv (developer)
2021-05-04 16:24

Testing
(0100783)
git (administrator)
2021-05-05 15:37

Branch CR27457 has been updated forcibly by ifv.

SHA-1: f5c37f01e50e350c1ce702c2e98fed32cdd48b92
(0100787)
ifv (developer)
2021-05-05 18:07

Debugging
(0100788)
ifv (developer)
2021-05-05 18:08

Testing
(0100883)
ifv (developer)
2021-05-11 16:23

Solution elaboration
(0100917)
ifv (developer)
2021-05-12 16:17

Solution elaboration
(0100949)
ifv (developer)
2021-05-13 16:22

Solution elaboration
(0100980)
ifv (developer)
2021-05-14 10:36

Solution implementation
(0101100)
ifv (developer)
2021-05-17 16:30

Solution implementation
(0101164)
ifv (developer)
2021-05-19 09:14
edited on: 2021-05-24 11:21

Debugging
+ 18/05: 7h.

(0101212)
ifv (developer)
2021-05-20 15:16

Solution implementation
(0101354)
ifv (developer)
2021-05-25 12:31
edited on: 2021-05-28 13:04

Solution implementation

(0101426)
ifv (developer)
2021-05-27 16:22
edited on: 2021-05-28 13:02

Solution implementation

(0101443)
ifv (developer)
2021-05-28 13:04

Solution implementation
(0101522)
ifv (developer)
2021-05-31 16:31

Solution implementation
(0101554)
git (administrator)
2021-06-02 17:41

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 47b7c64e61ae16f5f251cef4793c954015c4e576
(0101555)
ifv (developer)
2021-06-02 17:42

Debugging
(0101557)
git (administrator)
2021-06-02 18:06

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 32de735862e73afea43384880ff7042405eea1ea
(0102183)
git (administrator)
2021-06-30 13:35

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 6a104ab487f9638c6e27155782a4a25268b8c379
(0102185)
ifv (developer)
2021-06-30 13:46

Testing
(0102815)
git (administrator)
2021-07-26 13:07

Branch CR27457 has been updated forcibly by ifv.

SHA-1: f0613dd8dbd2e760b3c25749472259ce21a5235f
(0102828)
git (administrator)
2021-07-27 14:18

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 7930b20e52d2e38ec02a563f40eabafa96fe0fa8
(0102952)
git (administrator)
2021-08-03 14:38

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 782999b78712787e66506d4b721fe99a1013359a
(0102992)
git (administrator)
2021-08-05 09:53

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 2820f4f03cbee914981373ff09ee1255ac0ad11b
(0102993)
ifv (developer)
2021-08-05 12:17

Branches CR27457 in OCCT repository and CR27457 in Products repository are ready for review
(0103022)
ifv (developer)
2021-08-06 10:16

Debugging
(0103090)
kgv (developer)
2021-08-07 14:25

+        catch (Standard_DomainError)

Should be "const Standard_DomainError& " to avoid compiler warnings.

+          Message::SendWarning() << "Operation is not done: " << aName << 
" is not a valid transformation - scale = " << aScale;

Is it intentional that the message has no "Error: " and thus wouldn't lead test case to be considered failed?
(0103093)
msv (developer)
2021-08-09 11:44

I have no comments. Please correct KGV's ones.
(0103152)
git (administrator)
2021-08-12 12:56

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 3eea7b0e41b09ffa20e319bcae8c5b5b3a3a8c55
(0103227)
git (administrator)
2021-08-16 10:37

Branch CR27457 has been updated forcibly by ifv.

SHA-1: 12779b3bd862efe672e48deb394bd27ebc063905
(0103231)
ifv (developer)
2021-08-16 11:59
edited on: 2021-08-16 12:01

Debugging

(0103242)
ifv (developer)
2021-08-16 16:21

Branch CR27457 is updated according to remarks
Branches for integration
OCCT - CR27457
Products - Not

Warning message
 Message::SendWarning() << "Operation is not done:...

is used to prevent put "Error" in test message in order to avoid considering test failed.
(0103315)
msv (developer)
2021-08-19 23:37

Branches for integration
OCCT - CR27457
Products - CR27457

Dear IFV, please confirm that products branch is also actual.
(0103324)
bugmaster (administrator)
2021-08-21 14:19

Combination -
OCCT branch : IR-2021-08-20
master SHA - da80ff68f1e9853c1015a5dbb6199541e92789ce
a87b7ddc8cb44606b91e3f37113847c3f5f50fdc
Products branch : IR-2021-08-20 SHA - dd282797d1b40a373376bcd4a820edeb3d4d52f6
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: 17364.550000000334 / 17371.860000000408 [-0.04%]
Products
Total CPU difference: 11522.500000000102 / 11493.740000000085 [+0.25%]
Windows-64-VC14:
OCCT
Total CPU difference: 19242.96875 / 19148.140625 [+0.50%]
Products
Total CPU difference: 12876.5625 / 12805.328125 [+0.56%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention
(0103328)
git (administrator)
2021-08-21 14:31

Branch CR27457 has been deleted by mnt.

SHA-1: 12779b3bd862efe672e48deb394bd27ebc063905

- Related Changesets
occt: master 9592ae24
Timestamp: 2021-04-05 08:15:45
Author: ifv
Committer: bugmaster
Details ] Diff ]
0027457: Modeling - Raise exception if scaled transformation is used for shape location

Implementation of raising exception while using scale and mirror transformation in shape location
TopLoc/TopLoc_Location.hxx
TopoDS/TopoDS_Shape.hxx

Implementation of new tools for removing forbidden locations from shapes:
BRepTools/BRepTools_PurgeLocations.cxx
BRepTools/BRepTools_PurgeLocations.hxx
BRepTools/BRepTools.cxx
BRepTools/BRepTools.hxx

Draw commands for transforming shapes are corrected, new draw commands: purgeloc, checkloc added
BRepTest/BRepTest_BasicCommands.cxx

Fixing unstable test bug xde bug24759
StepToGeom/StepToGeom.cxx

All other C++ commits are modification of algorithms used mainly in import/export operations in order to allows these operations if shape locations contains scale and mirror transformations.

New test for command purgeloc added
tests/bugs/moddata_3/bug27457
tests/bugs/moddata_3/bug27457_1
tests/bugs/moddata_3/bug27457_2

Some test corrected according to modifications.
mod - src/BinTools/BinTools_ShapeReader.cxx Diff ] File ]
mod - src/BinTools/BinTools_ShapeSet.cxx Diff ] File ]
mod - src/BRep/BRep_Tool.cxx Diff ] File ]
mod - src/BRepBuilderAPI/BRepBuilderAPI_Transform.cxx Diff ] File ]
mod - src/BRepLib/BRepLib.cxx Diff ] File ]
mod - src/BRepTest/BRepTest_BasicCommands.cxx Diff ] File ]
mod - src/BRepTools/BRepTools.cxx Diff ] File ]
mod - src/BRepTools/BRepTools.hxx Diff ] File ]
mod - src/BRepTools/BRepTools_Modifier.cxx Diff ] File ]
add - src/BRepTools/BRepTools_PurgeLocations.cxx Diff ] File ]
add - src/BRepTools/BRepTools_PurgeLocations.hxx Diff ] File ]
mod - src/BRepTools/BRepTools_ReShape.cxx Diff ] File ]
mod - src/BRepTools/FILES Diff ] File ]
mod - src/IGESCAFControl/IGESCAFControl_Writer.cxx Diff ] File ]
mod - src/IGESToBRep/IGESToBRep_CurveAndSurface.cxx Diff ] File ]
mod - src/IGESToBRep/IGESToBRep_TopoSurface.cxx Diff ] File ]
mod - src/RWGltf/RWGltf_GltfJsonParser.cxx Diff ] File ]
mod - src/RWMesh/RWMesh_CafReader.cxx Diff ] File ]
mod - src/ShapeCustom/ShapeCustom.cxx Diff ] File ]
mod - src/ShapeFix/ShapeFix_Shape.cxx Diff ] File ]
mod - src/ShapeProcess/ShapeProcess_OperLibrary.cxx Diff ] File ]
mod - src/ShapeProcess/ShapeProcess_ShapeContext.cxx Diff ] File ]
mod - src/StepToGeom/StepToGeom.cxx Diff ] File ]
mod - src/TopExp/TopExp.cxx Diff ] File ]
mod - src/TopExp/TopExp.hxx Diff ] File ]
mod - src/TopLoc/TopLoc_Location.hxx Diff ] File ]
mod - src/TopoDS/TopoDS_Builder.cxx Diff ] File ]
mod - src/TopoDS/TopoDS_Iterator.cxx Diff ] File ]
mod - src/TopoDS/TopoDS_Shape.hxx Diff ] File ]
mod - src/TopTools/TopTools_ShapeSet.cxx Diff ] File ]
mod - src/VrmlData/VrmlData_Group.cxx Diff ] File ]
mod - src/XCAFDoc/XCAFDoc_ShapeTool.cxx Diff ] File ]
mod - src/XCAFPrs/XCAFPrs.cxx Diff ] File ]
mod - tests/bugs/modalg_6/bug28394_2 Diff ] File ]
add - tests/bugs/moddata_3/bug27457 Diff ] File ]
add - tests/bugs/moddata_3/bug27457_1 Diff ] File ]
add - tests/bugs/moddata_3/bug27457_2 Diff ] File ]
mod - tests/v3d/bugs/bug22240 Diff ] File ]
mod - tests/v3d/bugs/bug30630_1 Diff ] File ]
mod - tests/v3d/bugs/bug30630_2 Diff ] File ]
mod - tests/v3d/bugs/bug30630_3 Diff ] File ]

- Issue History
Date Modified Username Field Change
2016-05-01 15:14 abv New Issue
2016-05-01 15:14 abv Assigned To => msv
2016-05-11 10:24 msv Note Added: 0053982
2016-05-11 10:24 msv Assigned To msv => ifv
2016-05-11 10:24 msv Status new => assigned
2016-05-11 10:24 msv Relationship added related to 0024860
2016-05-19 10:26 msv Relationship added related to 0027298
2016-10-25 15:47 msv Target Version 7.1.0 => 7.2.0
2017-07-20 15:30 msv Target Version 7.2.0 => 7.3.0
2017-12-05 17:09 msv Target Version 7.3.0 => 7.4.0
2019-08-12 16:45 msv Target Version 7.4.0 => 7.5.0
2020-09-14 22:54 msv Target Version 7.5.0 => 7.6.0*
2021-03-27 22:38 msv Relationship added related to 0032253
2021-03-29 10:44 kgv Priority normal => high
2021-03-29 10:44 kgv Severity minor => integration request
2021-03-29 12:13 msv Note Added: 0099810
2021-04-02 15:32 ifv Note Added: 0099999
2021-04-05 15:59 git Note Added: 0100106
2021-04-06 18:29 ifv Note Added: 0100138
2021-04-06 18:38 git Note Added: 0100139
2021-04-07 15:17 git Note Added: 0100169
2021-04-07 16:02 ifv Note Added: 0100170
2021-04-08 12:56 git Note Added: 0100180
2021-04-08 17:12 ifv Note Added: 0100186
2021-04-09 09:35 ifv Note Added: 0100192
2021-04-12 19:13 git Note Added: 0100253
2021-04-13 14:38 git Note Added: 0100279
2021-04-13 14:40 ifv Note Added: 0100280
2021-04-19 11:09 szy Note Edited: 0100280 View Revisions
2021-04-22 09:14 ifv Note Added: 0100504
2021-04-22 13:07 git Note Added: 0100513
2021-04-26 10:15 ifv Note Edited: 0100504 View Revisions
2021-05-04 16:23 ifv Note Added: 0100766
2021-05-04 16:24 ifv Note Added: 0100767
2021-05-05 15:37 git Note Added: 0100783
2021-05-05 18:07 ifv Note Added: 0100787
2021-05-05 18:08 ifv Note Added: 0100788
2021-05-11 16:23 ifv Note Added: 0100883
2021-05-12 16:17 ifv Note Added: 0100917
2021-05-13 16:22 ifv Note Added: 0100949
2021-05-14 10:36 ifv Note Added: 0100980
2021-05-17 16:30 ifv Note Added: 0101100
2021-05-19 09:14 ifv Note Added: 0101164
2021-05-20 15:16 ifv Note Added: 0101212
2021-05-24 11:21 szy Note Edited: 0101164 View Revisions
2021-05-25 12:31 ifv Note Added: 0101354
2021-05-27 16:22 ifv Note Added: 0101426
2021-05-28 13:02 ifv Note Edited: 0101426 View Revisions
2021-05-28 13:04 ifv Note Edited: 0101354 View Revisions
2021-05-28 13:04 ifv Note Added: 0101443
2021-05-31 16:31 ifv Note Added: 0101522
2021-06-02 17:41 git Note Added: 0101554
2021-06-02 17:42 ifv Note Added: 0101555
2021-06-02 18:06 git Note Added: 0101557
2021-06-30 13:35 git Note Added: 0102183
2021-06-30 13:46 ifv Note Added: 0102185
2021-07-26 11:47 ifv File Added: bug27457_1.brep
2021-07-26 11:48 ifv File Added: bug27457_2.brep
2021-07-26 13:07 git Note Added: 0102815
2021-07-27 14:18 git Note Added: 0102828
2021-08-03 14:38 git Note Added: 0102952
2021-08-05 09:53 git Note Added: 0102992
2021-08-05 12:17 ifv Note Added: 0102993
2021-08-05 12:17 ifv Assigned To ifv => msv
2021-08-05 12:17 ifv Status assigned => resolved
2021-08-05 12:17 ifv Steps to Reproduce Updated View Revisions
2021-08-05 12:19 ifv Steps to Reproduce Updated View Revisions
2021-08-06 10:16 ifv Note Added: 0103022
2021-08-07 14:25 kgv Note Added: 0103090
2021-08-09 11:44 msv Note Added: 0103093
2021-08-09 11:44 msv Assigned To msv => ifv
2021-08-09 11:44 msv Status resolved => assigned
2021-08-12 12:56 git Note Added: 0103152
2021-08-16 10:37 git Note Added: 0103227
2021-08-16 11:59 ifv Note Added: 0103231
2021-08-16 12:01 ifv Note Edited: 0103231 View Revisions
2021-08-16 16:21 ifv Note Added: 0103242
2021-08-16 16:21 ifv Assigned To ifv => kgv
2021-08-16 16:21 ifv Status assigned => resolved
2021-08-19 14:36 kgv Assigned To kgv => msv
2021-08-19 23:37 msv Note Added: 0103315
2021-08-19 23:37 msv Assigned To msv => bugmaster
2021-08-19 23:37 msv Status resolved => reviewed
2021-08-21 14:19 bugmaster Note Added: 0103324
2021-08-21 14:19 bugmaster Status reviewed => tested
2021-08-21 14:22 bugmaster Changeset attached => occt master 9592ae24
2021-08-21 14:22 bugmaster Status tested => verified
2021-08-21 14:22 bugmaster Resolution open => fixed
2021-08-21 14:31 git Note Added: 0103328
2021-09-04 15:59 smoskvin Test case number => sat/doc_6/G3
2021-09-09 23:20 kgv Relationship added related to 0029998


Copyright © 2000 - 2021 MantisBT Team
Powered by Mantis Bugtracker