1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-09 13:22:24 +03:00

0030146: Visualization - exception during attempt to display Edge without geometry

StdPrs_ToolRFace no skips curves with NULL curves.
Code has been cleaned up from duplicated checks, redundant casts
and dummy Adaptor2d_Curve2dPtr typedef.

StdSelect_BRepSelectionTool::GetSensitiveForFace() now catches
Standard_NullObject exception to skip invalid Edges.
This commit is contained in:
kgv
2018-09-20 11:40:19 +03:00
committed by bugmaster
parent c39bb31bac
commit 4ba5491a50
17 changed files with 188 additions and 208 deletions

View File

@@ -621,7 +621,16 @@ Standard_Boolean StdSelect_BRepSelectionTool::GetSensitiveForFace (const TopoDS_
BRepAdaptor_Curve cu3d;
for (BRepTools_WireExplorer aWireExplorer (aWire); aWireExplorer.More(); aWireExplorer.Next())
{
cu3d.Initialize (aWireExplorer.Current());
try
{
OCC_CATCH_SIGNALS
cu3d.Initialize (aWireExplorer.Current());
}
catch (Standard_NullObject)
{
continue;
}
Standard_Real wf = 0.0, wl = 0.0;
BRep_Tool::Range (aWireExplorer.Current(), wf, wl);
if (Abs (wf - wl) <= Precision::Confusion())