diff --git a/src/ProjLib/ProjLib_ProjectOnSurface.cxx b/src/ProjLib/ProjLib_ProjectOnSurface.cxx
index a20e997a47..329edd91c9 100644
--- a/src/ProjLib/ProjLib_ProjectOnSurface.cxx
+++ b/src/ProjLib/ProjLib_ProjectOnSurface.cxx
@@ -14,6 +14,7 @@
 // Alternatively, this file may be used under the terms of Open CASCADE
 // commercial license or contractual agreement.
 
+#include <ProjLib_ProjectOnSurface.hxx>
 
 #include <Adaptor3d_Curve.hxx>
 #include <Adaptor3d_Surface.hxx>
@@ -26,7 +27,6 @@
 #include <Geom_BSplineCurve.hxx>
 #include <PLib.hxx>
 #include <Precision.hxx>
-#include <ProjLib_ProjectOnSurface.hxx>
 #include <Standard_NoSuchObject.hxx>
 #include <TColgp_Array1OfPnt.hxx>
 #include <TColStd_Array1OfInteger.hxx>
@@ -154,9 +154,8 @@ myIsDone(Standard_False)
 
 //=======================================================================
 //function : ProjLib_ProjectOnSurface
-//purpose  : 
+//purpose  :
 //=======================================================================
-
 ProjLib_ProjectOnSurface::ProjLib_ProjectOnSurface
 (const Handle(Adaptor3d_Surface)& S ) :
 myTolerance(0.0),
@@ -165,6 +164,20 @@ myIsDone(Standard_False)
   mySurface = S;
 }
 
+//=======================================================================
+//function : Load
+//purpose  :
+//=======================================================================
+void ProjLib_ProjectOnSurface::Load (const Handle(Adaptor3d_Surface)& S)
+{
+  mySurface = S;
+  myIsDone = Standard_False;
+}
+
+//=======================================================================
+//function : Load
+//purpose  :
+//=======================================================================
 void ProjLib_ProjectOnSurface::Load(const Handle(Adaptor3d_Curve)& C,
 				    const Standard_Real  Tolerance) 
 {
@@ -268,13 +281,3 @@ Handle(Geom_BSplineCurve) ProjLib_ProjectOnSurface::BSpline() const
      "ProjLib_ProjectOnSurface:BSpline");
   return myResult ;
 }
-
-//=======================================================================
-//function : IsDone
-//purpose  : 
-//=======================================================================
-
-Standard_Boolean ProjLib_ProjectOnSurface::IsDone() const 
-{
-  return myIsDone;
-}
diff --git a/src/ProjLib/ProjLib_ProjectOnSurface.hxx b/src/ProjLib/ProjLib_ProjectOnSurface.hxx
index 6e5ffa4086..291e835615 100644
--- a/src/ProjLib/ProjLib_ProjectOnSurface.hxx
+++ b/src/ProjLib/ProjLib_ProjectOnSurface.hxx
@@ -29,52 +29,33 @@ public:
 
   DEFINE_STANDARD_ALLOC
 
-  
   //! Create an empty projector.
   Standard_EXPORT ProjLib_ProjectOnSurface();
-  
+
   //! Create a projector normally to the surface <S>.
   Standard_EXPORT ProjLib_ProjectOnSurface(const Handle(Adaptor3d_Surface)& S);
-  
+
   Standard_EXPORT virtual ~ProjLib_ProjectOnSurface();
-  
+
   //! Set the Surface to <S>.
   //! To compute the projection, you have to Load the Curve.
   Standard_EXPORT void Load (const Handle(Adaptor3d_Surface)& S);
-  
+
   //! Compute the projection of the curve <C> on the Surface.
   Standard_EXPORT void Load (const Handle(Adaptor3d_Curve)& C, const Standard_Real Tolerance);
-  
-  Standard_EXPORT Standard_Boolean IsDone() const;
-  
+
+  Standard_Boolean IsDone() const { return myIsDone; }
+
   Standard_EXPORT Handle(Geom_BSplineCurve) BSpline() const;
 
-
-
-
-protected:
-
-
-
-
-
 private:
 
-
-
   Handle(Adaptor3d_Curve) myCurve;
   Handle(Adaptor3d_Surface) mySurface;
   Standard_Real myTolerance;
   Standard_Boolean myIsDone;
   Handle(Geom_BSplineCurve) myResult;
 
-
 };
 
-
-
-
-
-
-
 #endif // _ProjLib_ProjectOnSurface_HeaderFile