rnc: Added a control in order to prevent the Shape driver from building invalid edges (edges without C1 continuity)

This commit is contained in:
gdd 2011-06-15 13:19:24 +00:00
parent 35239cd2c8
commit 6243f56466

View File

@ -789,7 +789,10 @@ Standard_Integer GEOMImpl_ShapeDriver::Execute(TFunction_Logbook& log) const
concatcurve->SetValue(concatcurve->Lower(), Concat.BSplineCurve());
}
// rnc : prevents the driver from building an edge without C1 continuity
if (concatcurve->Value(concatcurve->Lower())->Continuity()==GeomAbs_C0){
Standard_ConstructionError::Raise("Construction aborted : The given Wire has sharp bends between some Edges, no valid Edge can be built");
}
ResEdge = BRepLib_MakeEdge(concatcurve->Value(concatcurve->Lower()),
FirstVertex, LastVertex);
}