-// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
+// Copyright (C) 2014-2015 EDF-R&D
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
//! Cuts the curve in the given parameter of the given edge and
//! fills the cut part.
- HYDRODATA_EXPORT void Cut(
+ //! Returns 'true' if:
+ //! - the curve is open and was split into two parts or
+ //! - the curve is closed and was cut into an open curve.
+ HYDRODATA_EXPORT bool Cut(
const std::list<TopoDS_Edge>::iterator& theEdgePosition,
const double theParameter,
HYDROData_TopoCurve& theCurve);
//! Cuts the curve at the parameters.
//! Each parameter vector list corresponds to the curve edge and
//! is ordered in the ascending order.
- HYDRODATA_EXPORT void Cut(
+ HYDRODATA_EXPORT bool Cut(
const std::deque<std::list<double> >& theParameters,
std::deque<HYDROData_TopoCurve>& theCurves) const;
std::deque<HYDROData_TopoCurve>& theCurves)
{
HYDROData_TopoCurve aCurve;
- if (!aCurve.Initialize(theWire))
+ if (aCurve.Initialize(theWire))
{
return aCurve.Connect(theTolerance, theCurves);
}