Back to index

salome-geom  6.5.0
GEOMAlgo_ShapeAlgo.cxx
Go to the documentation of this file.
00001 // Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
00002 //
00003 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
00004 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
00005 //
00006 // This library is free software; you can redistribute it and/or
00007 // modify it under the terms of the GNU Lesser General Public
00008 // License as published by the Free Software Foundation; either
00009 // version 2.1 of the License.
00010 //
00011 // This library is distributed in the hope that it will be useful,
00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014 // Lesser General Public License for more details.
00015 //
00016 // You should have received a copy of the GNU Lesser General Public
00017 // License along with this library; if not, write to the Free Software
00018 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
00019 //
00020 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
00021 //
00022 
00023 // File:        GEOMAlgo_ShapeAlgo.cxx
00024 // Created:     Tue Dec  7 12:06:54 2004
00025 // Author:      Peter KURNEV
00026 //              <pkv@irinox>
00027 //
00028 #include <GEOMAlgo_ShapeAlgo.hxx>
00029 #include <IntTools_Context.hxx>
00030 
00031 //=======================================================================
00032 //function : GEOMAlgo_ShapeAlgo
00033 //purpose  :
00034 //=======================================================================
00035 GEOMAlgo_ShapeAlgo::GEOMAlgo_ShapeAlgo()
00036 :
00037   GEOMAlgo_Algo()
00038 {
00039   myTolerance=0.0001;
00040 }
00041 
00042 //=======================================================================
00043 //function : ~
00044 //purpose  :
00045 //=======================================================================
00046 GEOMAlgo_ShapeAlgo::~GEOMAlgo_ShapeAlgo()
00047 {
00048 }
00049 //=======================================================================
00050 //function : SetContext
00051 //purpose  :
00052 //=======================================================================
00053 void GEOMAlgo_ShapeAlgo::SetContext(const Handle(IntTools_Context)& theContext)
00054 {
00055   myContext=theContext;
00056 }
00057 //=======================================================================
00058 //function : Context
00059 //purpose  :
00060 //=======================================================================
00061 const Handle(IntTools_Context)& GEOMAlgo_ShapeAlgo::Context()const
00062 {
00063   return myContext;
00064 }
00065 //=======================================================================
00066 //function : SetShape
00067 //purpose  :
00068 //=======================================================================
00069 void GEOMAlgo_ShapeAlgo::SetShape(const TopoDS_Shape& aS)
00070 {
00071   myShape=aS;
00072 }
00073 //=======================================================================
00074 //function : Shape
00075 //purpose  :
00076 //=======================================================================
00077 const TopoDS_Shape& GEOMAlgo_ShapeAlgo::Shape()const
00078 {
00079   return myShape;
00080 }
00081 //=======================================================================
00082 //function : SetTolerance
00083 //purpose  :
00084 //=======================================================================
00085 void GEOMAlgo_ShapeAlgo::SetTolerance(const Standard_Real aT)
00086 {
00087   myTolerance=aT;
00088 }
00089 //=======================================================================
00090 //function : Tolerance
00091 //purpose  :
00092 //=======================================================================
00093 Standard_Real GEOMAlgo_ShapeAlgo::Tolerance()const
00094 {
00095   return myTolerance;
00096 }
00097 //=======================================================================
00098 //function : Result
00099 //purpose  :
00100 //=======================================================================
00101 const TopoDS_Shape& GEOMAlgo_ShapeAlgo::Result()const
00102 {
00103   return myResult;
00104 }
00105 //=======================================================================
00106 //function : Perform
00107 //purpose  :
00108 //=======================================================================
00109 void GEOMAlgo_ShapeAlgo::Perform()
00110 {
00111   if (myContext.IsNull()) {
00112     myContext=new IntTools_Context;
00113   }
00114 }