]> OCCT Git - occt-copy.git/commit
0028442: Incorrect result of 3D offset operation in mode Complete, Join type - Inters...
authoremv <emv@opencascade.com>
Thu, 9 Feb 2017 05:57:49 +0000 (08:57 +0300)
committeremv <emv@opencascade.com>
Fri, 7 Jul 2017 07:02:53 +0000 (10:02 +0300)
commit01e4b82d1b303dfee11be155ca5c4d71b9dd69e7
tree4608e82a0f8c14c1e544a3cdf65dc8c0970bb8ce
parentac949d002349461117c8cdb472502dfd970954b5
0028442: Incorrect result of 3D offset operation in mode Complete, Join type - Intersection

1. For the support of the new configurations of the input shapes for the 3D offset algorithm
(shapes containing the faces with holes, which are growing during offset operation and
sometimes (depending on the offset value) even kill the faces themselves) the new function
*FindFacesInsideHoleWires* has been implemented. This new function looks for the splits of
the offset face located inside the new hole wire built from offset edges of the edges of the
hole wires of the original face. All found splits are simply removed.

2. Test cases for the issue.
98 files changed:
src/BRepOffset/BRepOffset_MakeOffset.cxx
src/BRepOffset/BRepOffset_MakeOffset_1.cxx
src/BRepOffset/BRepOffset_Tool.cxx
src/BRepOffset/BRepOffset_Tool.hxx
tests/offset/shape_type_i_c/YA1 [new file with mode: 0644]
tests/offset/shape_type_i_c/YA2 [new file with mode: 0644]
tests/offset/shape_type_i_c/YA3 [new file with mode: 0644]
tests/offset/shape_type_i_c/YA4 [new file with mode: 0644]
tests/offset/shape_type_i_c/YA5 [new file with mode: 0644]
tests/offset/shape_type_i_c/YA6 [new file with mode: 0644]
tests/offset/shape_type_i_c/YA7 [new file with mode: 0644]
tests/offset/shape_type_i_c/YA8 [new file with mode: 0644]
tests/offset/shape_type_i_c/YA9 [new file with mode: 0644]
tests/offset/shape_type_i_c/YB1 [new file with mode: 0644]
tests/offset/shape_type_i_c/YB2 [new file with mode: 0644]
tests/offset/shape_type_i_c/YB3 [new file with mode: 0644]
tests/offset/shape_type_i_c/YB4 [new file with mode: 0644]
tests/offset/shape_type_i_c/YB5 [new file with mode: 0644]
tests/offset/shape_type_i_c/YB6 [new file with mode: 0644]
tests/offset/shape_type_i_c/YB7 [new file with mode: 0644]
tests/offset/shape_type_i_c/YB8 [new file with mode: 0644]
tests/offset/shape_type_i_c/YB9 [new file with mode: 0644]
tests/offset/shape_type_i_c/YC1 [new file with mode: 0644]
tests/offset/shape_type_i_c/YC2 [new file with mode: 0644]
tests/offset/shape_type_i_c/YC3 [new file with mode: 0644]
tests/offset/shape_type_i_c/YC4 [new file with mode: 0644]
tests/offset/shape_type_i_c/YC5 [new file with mode: 0644]
tests/offset/shape_type_i_c/YC6 [new file with mode: 0644]
tests/offset/shape_type_i_c/YC7 [new file with mode: 0644]
tests/offset/shape_type_i_c/YC8 [new file with mode: 0644]
tests/offset/shape_type_i_c/YC9 [new file with mode: 0644]
tests/offset/shape_type_i_c/YD1 [new file with mode: 0644]
tests/offset/shape_type_i_c/YD2 [new file with mode: 0644]
tests/offset/shape_type_i_c/YD3 [new file with mode: 0644]
tests/offset/shape_type_i_c/YD4 [new file with mode: 0644]
tests/offset/shape_type_i_c/YD5 [new file with mode: 0644]
tests/offset/shape_type_i_c/YD6 [new file with mode: 0644]
tests/offset/shape_type_i_c/YD7 [new file with mode: 0644]
tests/offset/shape_type_i_c/YD8 [new file with mode: 0644]
tests/offset/shape_type_i_c/YD9 [new file with mode: 0644]
tests/offset/shape_type_i_c/YE1 [new file with mode: 0644]
tests/offset/shape_type_i_c/YE2 [new file with mode: 0644]
tests/offset/shape_type_i_c/YE3 [new file with mode: 0644]
tests/offset/shape_type_i_c/YE4 [new file with mode: 0644]
tests/offset/shape_type_i_c/YE5 [new file with mode: 0644]
tests/offset/shape_type_i_c/YE6 [new file with mode: 0644]
tests/offset/shape_type_i_c/YE7 [new file with mode: 0644]
tests/offset/shape_type_i_c/YE8 [new file with mode: 0644]
tests/offset/shape_type_i_c/YE9 [new file with mode: 0644]
tests/offset/shape_type_i_c/YF1 [new file with mode: 0644]
tests/offset/shape_type_i_c/YF2 [new file with mode: 0644]
tests/offset/shape_type_i_c/YF3 [new file with mode: 0644]
tests/offset/shape_type_i_c/YF4 [new file with mode: 0644]
tests/offset/shape_type_i_c/YF5 [new file with mode: 0644]
tests/offset/shape_type_i_c/YF6 [new file with mode: 0644]
tests/offset/shape_type_i_c/YF7 [new file with mode: 0644]
tests/offset/shape_type_i_c/YF8 [new file with mode: 0644]
tests/offset/shape_type_i_c/YF9 [new file with mode: 0644]
tests/offset/shape_type_i_c/YG1 [new file with mode: 0644]
tests/offset/shape_type_i_c/YG2 [new file with mode: 0644]
tests/offset/shape_type_i_c/YG3 [new file with mode: 0644]
tests/offset/shape_type_i_c/YG4 [new file with mode: 0644]
tests/offset/shape_type_i_c/YG5 [new file with mode: 0644]
tests/offset/shape_type_i_c/YG6 [new file with mode: 0644]
tests/offset/shape_type_i_c/YG7 [new file with mode: 0644]
tests/offset/shape_type_i_c/YG8 [new file with mode: 0644]
tests/offset/shape_type_i_c/YG9 [new file with mode: 0644]
tests/offset/shape_type_i_c/YH1 [new file with mode: 0644]
tests/offset/shape_type_i_c/YH2 [new file with mode: 0644]
tests/offset/shape_type_i_c/YH3 [new file with mode: 0644]
tests/offset/shape_type_i_c/YH4 [new file with mode: 0644]
tests/offset/shape_type_i_c/YH5 [new file with mode: 0644]
tests/offset/shape_type_i_c/YH6 [new file with mode: 0644]
tests/offset/shape_type_i_c/YH7 [new file with mode: 0644]
tests/offset/shape_type_i_c/YH8 [new file with mode: 0644]
tests/offset/shape_type_i_c/YH9 [new file with mode: 0644]
tests/offset/shape_type_i_c/YI1 [new file with mode: 0644]
tests/offset/shape_type_i_c/YI2 [new file with mode: 0644]
tests/offset/shape_type_i_c/YI3 [new file with mode: 0644]
tests/offset/shape_type_i_c/YI4 [new file with mode: 0644]
tests/offset/shape_type_i_c/YI5 [new file with mode: 0644]
tests/offset/shape_type_i_c/YI6 [new file with mode: 0644]
tests/offset/shape_type_i_c/YI7 [new file with mode: 0644]
tests/offset/shape_type_i_c/YI8 [new file with mode: 0644]
tests/offset/shape_type_i_c/YI9 [new file with mode: 0644]
tests/offset/shape_type_i_c/YJ1 [new file with mode: 0644]
tests/offset/shape_type_i_c/YJ2 [new file with mode: 0644]
tests/offset/shape_type_i_c/YJ3 [new file with mode: 0644]
tests/offset/shape_type_i_c/YJ4 [new file with mode: 0644]
tests/offset/shape_type_i_c/YJ5 [new file with mode: 0644]
tests/offset/shape_type_i_c/YJ6 [new file with mode: 0644]
tests/offset/shape_type_i_c/YJ7 [new file with mode: 0644]
tests/offset/shape_type_i_c/YJ8 [new file with mode: 0644]
tests/offset/shape_type_i_c/YJ9 [new file with mode: 0644]
tests/offset/shape_type_i_c/YK1 [new file with mode: 0644]
tests/offset/shape_type_i_c/YK2 [new file with mode: 0644]
tests/offset/shape_type_i_c/YK3 [new file with mode: 0644]
tests/offset/shape_type_i_c/YK4 [new file with mode: 0644]