View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0024876 | Open CASCADE | OCCT:Modeling Algorithms | public | 2014-04-28 16:35 | 2016-12-09 08:43 |
Reporter | Assigned To | apn | |||
Priority | normal | Severity | minor | ||
Status | closed | Resolution | fixed | ||
Target Version | 6.8.0 | Fixed in Version | 6.8.0 | ||
Summary | 0024876: Add protection of shapes against modification of geometry | ||||
Description | Implementation of topological data model and modeling algorithms in OCCT should follow general approach that each operation produces new shape without modifying its arguments. This is especially important for OCAF which relies on this feature for its Undo/Redo mechanism. The problem is that this rule seems to be not documented and is not always followed, see #24302. OCCT shape data structure (TopoDS_Shape) and low-level tools modifying it (BRep package) use special flag Free/Frozen to protect against modification of topology. The idea is to add similar flag for modification of geometric data in the shapes (including tolerances), and use it to protect against modification of input shapes by algorithms. Having this protection available, it will be possible to find all places in the code violating the rule, and fix them. | ||||
Tags | No tags attached. | ||||
Test case number | Not needed | ||||
|
Added flag "locked" for protection of geometric data in the shapes (including tolerances). To set a flag added command "setflags". These changes are located in branch CR24876. Please review. |
|
Branch CR24876 is ready to be tested. |
|
Dear BugMaster, Branch CR24876 (and products from GIT master) was compiled on Linux, MacOS and Windows platforms and tested. SHA-1: 5db6f333972d3df9b411cef2a150dcdc69c8a183 Number of compiler warnings: Linux: 17 (17 on master) Windows: 0 (0 on master) MacOS: 202 (202 on master) products component : Linux: 11 (11 on master) Windows: 2 (2 on master) Regressions/Differences: http://occt-tests/CR24876-master-occt/Debian60-64/summary.html http://occt-tests/CR24876-master-occt/Windows-32-VC9/summary.html boolean - bopcut_2d (005) - D5 Testing cases: Absent Testing on Linux: Total MEMORY difference: 359749648 / 359742796 Total CPU difference: 51283.3099999998 / 51526.670000000115 Testing on Windows: Total MEMORY difference: 382183620 / 382734216 Total CPU difference: 38962.71875 / 39034.0625 |
|
This fix is rebased on current master, test case "bopcut_2d(005) D5" was modified. Branch CR24876_1 is ready to be tested. |
|
Dear BugMaster, Branch CR24876_1 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested. SHA-1: bd7b30001727e53d2bc3b18176d3be9f5ee5e194 Number of compiler warnings: occt component : Linux: 15 (15 on master) Windows: 0 (0 on master) MacOS: 199 (199 on master) products component : Linux: 11 (11 on master) Windows: 2 (2 on master) Regressions/Differences: No regressions/differences Testing cases: Not needed Testing on Linux: Total MEMORY difference: 350220960 / 349968948 Total CPU difference: 54527.42000000005 / 52504.370000000075 Testing on Windows: Total MEMORY difference: 377051416 / 377481972 Total CPU difference: 39175.96875 / 39673.921875 There are no differences in images found by testdiff. |
|
Branch CR24876 has been deleted by inv. SHA-1: 5db6f333972d3df9b411cef2a150dcdc69c8a183 |
|
Branch CR24876_1 has been deleted by inv. SHA-1: bd7b30001727e53d2bc3b18176d3be9f5ee5e194 |
occt: master ebfb9ce2 2014-07-10 10:42:12
Committer: apn Details Diff |
0024876: Add protection of shapes against modification of geometry Added flag "locked" for protection of geometric data in the shapes (including tolerances). Modification test case to avoid regression. |
Affected Issues 0024876 |
|
mod - src/BRep/BRep_Builder.cxx | Diff File | ||
mod - src/DBRep/DBRep.cxx | Diff File | ||
mod - src/TopoDS/TopoDS.cdl | Diff File | ||
mod - src/TopoDS/TopoDS_Shape.cdl | Diff File | ||
mod - src/TopoDS/TopoDS_Shape.lxx | Diff File | ||
mod - src/TopoDS/TopoDS_TShape.cdl | Diff File | ||
mod - src/TopoDS/TopoDS_TShape.lxx | Diff File | ||
add - tests/boolean/bopcut_2d/D5 | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2014-04-28 16:35 |
|
New Issue | |
2014-04-28 16:35 |
|
Assigned To | => ifv |
2014-05-19 10:14 |
|
Assigned To | ifv => ink |
2014-05-19 10:14 |
|
Status | new => assigned |
2014-05-19 11:05 |
|
Note Added: 0029380 | |
2014-05-19 11:10 |
|
Assigned To | ink => abv |
2014-05-19 14:53 |
|
Status | assigned => resolved |
2014-05-21 11:18 |
|
Assigned To | abv => gka |
2014-05-21 11:41 |
|
Note Added: 0029429 | |
2014-05-21 11:41 |
|
Status | resolved => reviewed |
2014-05-22 11:10 | bugmaster | Assigned To | gka => apn |
2014-05-26 17:42 | apn | Assigned To | apn => apv |
2014-05-28 11:46 |
|
Note Added: 0029568 | |
2014-05-28 11:47 |
|
Note Edited: 0029568 | |
2014-05-28 11:47 |
|
Note Edited: 0029568 | |
2014-05-28 11:48 |
|
Assigned To | apv => ink |
2014-05-28 11:48 |
|
Status | reviewed => assigned |
2014-05-28 12:02 | apn | Note Edited: 0029568 | |
2014-07-08 13:32 |
|
Note Added: 0030000 | |
2014-07-08 13:32 |
|
Status | assigned => resolved |
2014-07-08 13:32 |
|
Status | resolved => reviewed |
2014-07-08 14:39 |
|
Assigned To | ink => mkv |
2014-07-09 15:33 |
|
Note Added: 0030036 | |
2014-07-09 15:34 |
|
Test case number | => Not needed |
2014-07-09 15:34 |
|
Assigned To | mkv => bugmaster |
2014-07-09 15:34 |
|
Status | reviewed => tested |
2014-07-11 14:22 | apn | Changeset attached | => occt master ebfb9ce2 |
2014-07-11 14:22 | apn | Assigned To | bugmaster => apn |
2014-07-11 14:22 | apn | Status | tested => verified |
2014-07-11 14:22 | apn | Resolution | open => fixed |
2014-07-22 16:10 | git | Note Added: 0030333 | |
2014-07-22 16:10 | git | Note Added: 0030334 | |
2014-08-20 17:26 | Pawel | Relationship added | parent of 0025173 |
2014-11-11 12:45 |
|
Fixed in Version | => 6.8.0 |
2014-11-11 12:57 |
|
Status | verified => closed |