Salome HOME
0020695: EDF 1076 GEOM: Add a new shape in GEOM: T-shape
[modules/geom.git] / src / GEOM_SWIG / GEOM_TestAll.py
index 317f1dc40abeab3c51208b0e458c9ef5d725309f..e0d2599f990ef63e38b1605181fc0e7852569d58 100644 (file)
@@ -1,3 +1,4 @@
+#  -*- coding: iso-8859-1 -*-
 #  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
 #
 #  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
@@ -30,7 +31,8 @@
 # ! documentation generation to identify certain places of this file
 #
 def TestAll (geompy, math):
-
+  import GEOM
+  
   #Create base Variables
   nbtimes1  = 5      #Short
   nbtimes2  = 5
@@ -89,6 +91,8 @@ def TestAll (geompy, math):
   Line2  = geompy.MakeLineTwoPnt(pxyz, pz)                  #(2 GEOM_Object_ptr)->GEOM_Object_ptr
   Plane  = geompy.MakePlane(pz, vxyz, trimsize)             #(2 GEOM_Object_ptr, Double)->GEOM_Object_ptr
   Plane1 = geompy.MakePlaneThreePnt(px, pz, p200, trimsize) #(4 Doubles)->GEOM_Object_ptr
+  Plane2 = geompy.MakePlane2Vec(vx, vz, trimsize)          #(2 GEOM_Object_ptr, Double)->GEOM_Object_ptr
+  Plane3 = geompy.MakePlaneLCS(cs1, trimsize, 3)           #(1 GEOM_Object_ptr, 2 Double)->GEOM_Object_ptr
 
   Arc      = geompy.MakeArc(py, pz, px)                   #(3 GEOM_Object_ptr)->GEOM_Object_ptr
   Arc2     = geompy.MakeArcCenter(py, pz, px,0)           #(3 GEOM_Object_ptr,Boolean)->GEOM_Object_ptr
@@ -99,19 +103,32 @@ def TestAll (geompy, math):
   Ellipse  = geompy.MakeEllipse(p0, vy, radius2, radius1) #(2 GEOM_Object_ptr, 2 Doubles)->GEOM_Object_ptr
   Polyline = geompy.MakePolyline([p0, pz, py, p200])      #(List of GEOM_Object_ptr)->GEOM_Object_ptr
   Bezier   = geompy.MakeBezier([p0, pz, p200, px])        #(List of GEOM_Object_ptr)->GEOM_Object_ptr
-  Interpol = geompy.MakeInterpol([px, py, p200, pxyz])    #(List of GEOM_Object_ptr)->GEOM_Object_ptr
+  Interpol = geompy.MakeInterpol([px, py, p200, pxyz], True) #(List of GEOM_Object_ptr,Boolean)->GEOM_Object_ptr
   Sketcher = geompy.MakeSketcher("Sketcher:F -100 -100:TT 250 -100:R 0:C 100 150:R 0:L 300:WW",
                                  [100,0,0, 1,1,1, -1,1,0]) #(String, List of Doubles)->GEOM_Object_ptr
   Sketcher3d = geompy.Make3DSketcher([0,0,0, 50,50,50, 0,50,50, 10,0,0])
+  
+  #Create local coordinate system from shape
+  cs4 = geompy.MakeMarkerFromShape(Plane)
 
   #Test point on curve creation
   p_on_arc = geompy.MakeVertexOnCurve(Arc, 0.25) #(GEOM_Object_ptr, Double)->GEOM_Object_ptr
+  p_on_arc2 = geompy.MakeVertexOnCurveByCoord(Arc, 100, -10, 10 ) #(GEOM_Object_ptr, Double)->GEOM_Object_ptr
 
   #Test point on lines intersection
   p_on_l1l2 = geompy.MakeVertexOnLinesIntersection(Line1, Line2) #(2 GEOM_Object_ptr)->GEOM_Object_ptr
 
   #Test tangent on curve creation
   tan_on_arc = geompy.MakeTangentOnCurve(Arc, 0.7) #(GEOM_Object_ptr, Double)->GEOM_Object_ptr
+  
+  #Test tangent on face creation
+  tan_vertex_1 = geompy.MakeVertex(0, 0, 0)
+  tan_vertex_2 = geompy.MakeVertex(0, 90, 30)
+  tan_vertex_3 = geompy.MakeVertex(100, 90, 0)
+  tan_vertex_4 = geompy.MakeVertex(-100, 90, 0)
+  tan_curve = geompy.MakeInterpol([tan_vertex_4, tan_vertex_2, tan_vertex_3, tan_vertex_1], False)
+  tan_extrusion = geompy.MakePrismDXDYDZ(tan_curve, 0, 30, -60)
+  tan_on_face = geompy.MakeTangentPlaneOnFace(tan_extrusion, 0.7, 0.5, 150)
 
   #Create base geometry 3D
   Box      = geompy.MakeBoxTwoPnt(p0, p200)                   #(2 GEOM_Object_ptr)->GEOM_Object_ptr
@@ -164,6 +181,7 @@ def TestAll (geompy, math):
 
   #Test point on surface creation
   p_on_face = geompy.MakeVertexOnSurface(Face, 0.1, 0.8) #(GEOM_Object_ptr, Double, Double)->GEOM_Object_ptr
+  p_on_face2 = geompy.MakeVertexOnSurfaceByCoord(Face, 0., 0., 0.) #(GEOM_Object_ptr, Double, Double, Double)->GEOM_Object_ptr
 
   # Test plane from existing face creation
   Plane2 = geompy.MakePlaneFace(Face, trimsize)      #(GEOM_Object_ptr, Double)->GEOM_Object_ptr
@@ -288,12 +306,15 @@ def TestAll (geompy, math):
   id_cs1 = geompy.addToStudy(cs1, "CS 50,50,50, 1,0,0, 0,1,0")
   id_cs2 = geompy.addToStudy(cs2, "CS 70,80,10, 1,0,1, 1,1,0")
   id_cs3 = geompy.addToStudy(cs3, "CS: pz, vxy, vz")
+  id_cs4 = geompy.addToStudy(cs4, "CS: Plane")
 
   id_Line   = geompy.addToStudy(Line,   "Line")
   id_Line1  = geompy.addToStudy(Line1,  "Line by point and vector")
   id_Line3  = geompy.addToStudy(Line3,  "Line on Two Faces Intersection")
   id_Plane  = geompy.addToStudy(Plane,  "Plane")
   id_Plane1 = geompy.addToStudy(Plane1,  "Plane by 3 points")
+  id_Plane2 = geompy.addToStudy(Plane2,  "Plane by 2 vectors")
+  id_Plane3 = geompy.addToStudy(Plane3,  "Plane by LCS")
 
   id_Arc      = geompy.addToStudy(Arc,      "Arc")
   id_Arc2     = geompy.addToStudy(Arc2,     "Arc2")
@@ -309,9 +330,12 @@ def TestAll (geompy, math):
   id_Sketcher3d = geompy.addToStudy(Sketcher3d, "Sketcher 3D")
 
   id_p_on_arc  = geompy.addToStudy(p_on_arc,  "Vertex on Arc (0.25)")
+  id_p_on_arc2 =  geompy.addToStudy(p_on_arc2, "Vertex on Arc at(100, -10, 10)" )
+  
   id_p_on_l1l2 = geompy.addToStudy(p_on_l1l2, "Vertex on Lines Intersection")
 
-  id_tan_on_arc = geompy.addToStudy(tan_on_arc, "Tangent on Arc (0.7)")
+  id_tan_on_arc  = geompy.addToStudy(tan_on_arc, "Tangent on Arc (0.7)")
+  id_tan_on_face = geompy.addToStudy(tan_on_face, "Tangent on Face")
 
   id_Box      = geompy.addToStudy(Box,      "Box")
   id_Box1     = geompy.addToStudy(Box1,     "Box 10x20x30")
@@ -344,6 +368,7 @@ def TestAll (geompy, math):
   id_Shell    = geompy.addToStudy(Shell,    "Shell")
 
   id_p_on_face = geompy.addToStudy(p_on_face, "Vertex on Face (0.1, 0.8)")
+  id_p_on_face2 = geompy.addToStudy(p_on_face2, "Vertex on Face at(0., 0., 0.)")
 
   id_Prism1   = geompy.addToStudy(Prism1,     "Prism by Two Pnt")
   id_Shell1   = geompy.addToStudy(Shell1,   "Shell from Prism1 faces")
@@ -437,4 +462,10 @@ def TestAll (geompy, math):
     if ind_e != ind:
       print "Error in GetSubShape or GetSubShapeID"
 
+  # RestoreSubShapes
+  geompy.RestoreSubShapes(Copy)
+  geompy.RestoreSubShapes(RotatPnt, [], GEOM.FSM_Transformed)
+  geompy.RestoreSubShapes(Partition, [Box])
+  geompy.RestoreSubShapes(Partition1)
+
   print "DONE"