]> OCCT Git - occt.git/commit
0027063: BRepGProps raises exception on edge with no curves
authorifv <igor.feoktistov@opencascade.com>
Tue, 10 Dec 2013 11:40:40 +0000 (15:40 +0400)
committerabv <abv@opencascade.com>
Fri, 5 Feb 2016 08:14:40 +0000 (11:14 +0300)
commita4ed7309ff948a944c788942b912d095c3bef032
treec908d2e482ab0f4af2e574d2aa0a6c86f72536d2
parent5747059b21d1c506eb34f0e79b960ef837f886e6
0027063: BRepGProps raises exception on edge with no curves

Method BRepGProp::LinearProperties() is corrected to treat not geometric edges (their length is zero). To avoid wrong working of command nexplode global properties are calculated as point properties of vertexes. Small value Epsilon(1.) is used as density of points. This prevents exception on shapes that contain such edges, e.g. copy of a wire containing degenerated edge.

Method BRep_Tool::IsGeometric() is optimized to avoid nested iteration for check of 3D curve for Null.
Small bug is fixed in GProp_PGProps.cxx
src/BRep/BRep_Tool.cxx
src/BRepGProp/BRepGProp.cxx
src/GProp/GProp_PGProps.cxx
tests/bugs/modalg_5/bug27063 [new file with mode: 0644]