From: eap Date: Wed, 20 Jul 2005 10:42:39 +0000 (+0000) Subject: PAL9166 - add MakeSketcherOnPlane() and MakeMarkerPntTwoVec() X-Git-Tag: T2_2_5a~6 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=8b53f387a2538fd8a59ee93883f36bf1ea67d0e3;p=modules%2Fgeom.git PAL9166 - add MakeSketcherOnPlane() and MakeMarkerPntTwoVec() --- diff --git a/src/GEOM_SWIG/batchmode_geompy.py b/src/GEOM_SWIG/batchmode_geompy.py index e9b8eeeb3..1bdbb8aec 100644 --- a/src/GEOM_SWIG/batchmode_geompy.py +++ b/src/GEOM_SWIG/batchmode_geompy.py @@ -169,6 +169,30 @@ def MakeMarker(OX,OY,OZ, XDX,XDY,XDZ, YDX,YDY,YDZ): print "MakeMarker : ", BasicOp.GetErrorCode() return anObj +def MakeMarkerPntTwoVec(theOrigin, theXVec, theYVec): + """ + * Create a local coordinate system. + * \param theOrigin Point of coordinate system origin. + * \param theXVec Vector of X direction + * \param theYVec Vector of Y direction + * \return New GEOM_Object, containing the created coordinate system. + """ + O = PointCoordinates( theOrigin ) + OXOY = [] + for vec in [ theXVec, theYVec ]: + v1, v2 = SubShapeAll( vec, ShapeType["VERTEX"] ) + p1 = PointCoordinates( v1 ) + p2 = PointCoordinates( v2 ) + for i in range( 0, 3 ): + OXOY.append( p2[i] - p1[i] ) + # + anObj = BasicOp.MakeMarker( O[0], O[1], O[2], + OXOY[0], OXOY[1], OXOY[2], + OXOY[3], OXOY[4], OXOY[5], ) + if BasicOp.IsDone() == 0: + print "MakeMarker : ", BasicOp.GetErrorCode() + return anObj + # ----------------------------------------------------------------------------- # Curves # ----------------------------------------------------------------------------- @@ -223,6 +247,21 @@ def MakeSketcher(Cmd, WPL = [0,0,0, 0,0,1, 1,0,0]): print "MakeSketcher : ", CurvesOp.GetErrorCode() return anObj +def MakeSketcherOnPlane(theCommand, theWorkingPlane): + """ + * Create a sketcher (wire or face), following the textual description, + * passed through \a theCommand argument. \n + * For format of the description string see the previous method.\n + * \param theCommand String, defining the sketcher in local + * coordinates of the working plane. + * \param theWorkingPlane Planar Face of the working plane. + * \return New GEOM_Object, containing the created wire. + """ + anObj = CurvesOp.MakeSketcherOnPlane(theCommand, theWorkingPlane) + if CurvesOp.IsDone() == 0: + print "MakeSketcher : ", CurvesOp.GetErrorCode() + return anObj + # ----------------------------------------------------------------------------- # Create 3D Primitives # -----------------------------------------------------------------------------