#include <TopExp.hxx>
#include <TopoDS_Edge.hxx>
#include <TopoDS_Vertex.hxx>
-//#include <gp_XYZ.hxx>
-//#include <Adaptor3d_Curve.hxx>
+#include <gp_XYZ.hxx>
+#include <Adaptor3d_Curve.hxx>
class TopoDS_Wire;
-//double ProjectPointToCurve(const gp_XYZ& thePoint,
-// const Adaptor3d_Curve& theCurve,
-// double& theParameter);
+//! Get the parameter of the projected point on the curve, and return the distance of the original point
+double ProjectPointToCurve(const gp_XYZ& thePoint,
+ const Adaptor3d_Curve& theCurve,
+ double& theParameter);
-//! The type represents a 1 monifold connected topo curve
+//! The type represents a 1 manifold connected topo curve
//! with forward orientation.
class HYDROData_TopoCurve
{
HYDROData_TopoCurve(const TopoDS_Edge& theEdge) {myEdges.push_back(theEdge);}
//! Initializes the curve by the wire.
- //! Returns 'false' if the wire is not 1 monifold or
+ //! Returns 'false' if the wire is not 1 manifold or
//! is disconnected or is empty.
HYDRODATA_EXPORT bool Initialize(const TopoDS_Wire& theWire);
const double theDeflection, HYDROData_TopoCurve& theCurve) const;
//! Calculates the values of the curve in its knots.
- //! Returns 'false' if a curve edge has a nonidentity location or a nonforward
+ //! Returns 'false' if a curve edge has a non-identity location or a non-forward
//! orientation or has no a B-spline representation.
HYDRODATA_EXPORT bool ValuesInKnots(std::list<gp_XYZ>& theValues) const;