]> SALOME platform Git repositories - modules/geom.git/blob - doc/salome/examples/basic_geom_objs_ex06.py
Salome HOME
Merge from BR_plugins_pbyacs 03/04/2013
[modules/geom.git] / doc / salome / examples / basic_geom_objs_ex06.py
1 # Creation of a Curve
2
3 import salome
4 salome.salome_init()
5 import GEOM
6 from salome.geom import geomBuilder
7 geompy = geomBuilder.New(salome.myStudy)
8 gg = salome.ImportComponentGUI("GEOM")
9
10 # create vertices and vectors
11 p0 = geompy.MakeVertex(0.  , 0.  , 0.  )
12 p1 = geompy.MakeVertex(50. , 100., 200.)
13 p2 = geompy.MakeVertex(150.,  50., 100.)
14 p3 = geompy.MakeVertex(100., 150., 170.)
15 p4 = geompy.MakeVertex(200., 200., 150.)
16
17 v1 = geompy.MakeVectorDXDYDZ(0, 1, 0)
18 v2 = geompy.MakeVectorDXDYDZ(1, 0, 0)
19
20 # create a polyline from a list of points
21 polyline = geompy.MakePolyline([p0, p1, p2, p3, p4])
22
23 # create a bezier curve from a list of points
24 bezier = geompy.MakeBezier([p0, p1, p2, p3, p4])
25
26 #create a b-spline curve from a list of points
27 interpol = geompy.MakeInterpol([p0, p1, p2, p3, p4], False)
28
29 #create a b-spline curve with defined directions at the ends
30 interpol_tangents = geompy.MakeInterpolWithTangents([p0, p1, p2, p3, p4], v1, v2)
31
32 #create a polyline using parametric definition of the basic points
33 param_polyline = geompy.MakeCurveParametric("t", "sin(t)", "cos(t)", 0., 100., 100, GEOM.Polyline, theNewMethod=True)
34
35 # create a bezier curve using parametric definition of the basic points
36 param_bezier = geompy.MakeCurveParametric("t", "sin(t)", "cos(t)", 0., 100., 20, GEOM.Bezier, theNewMethod=True)
37
38 #create a b-spline curve using parametric definition of the basic points
39 param_interpol = geompy.MakeCurveParametric("t", "sin(t)", "cos(t)", 0., 100., 100, GEOM.Interpolation, theNewMethod=True)
40
41
42 # add objects in the study
43 id_p0       = geompy.addToStudy(p0,       "Point1")
44 id_p1       = geompy.addToStudy(p1,       "Point2")
45 id_p2       = geompy.addToStudy(p2,       "Point3")
46 id_p3       = geompy.addToStudy(p3,       "Point4")
47 id_p4       = geompy.addToStudy(p4,       "Point5")
48 id_v1       = geompy.addToStudy(v1,       "Vector1")
49 id_v2       = geompy.addToStudy(v2,       "Vector2")
50 id_polyline = geompy.addToStudy(polyline, "Polyline")
51 id_bezier   = geompy.addToStudy(bezier,   "Bezier")
52 id_interpol = geompy.addToStudy(interpol, "Interpol")
53 id_interpol_tangents = geompy.addToStudy(interpol_tangents, "Interpol Tangents")
54 id_param_polyline = geompy.addToStudy(param_polyline, "Polyline Parametric")
55 id_param_bezier = geompy.addToStudy(param_bezier, "Bezier Parametric")
56 id_param_interpol = geompy.addToStudy(param_interpol, "Interpol Parametric")
57
58
59 # display the points and the curves
60 gg.createAndDisplayGO(id_p0)
61 gg.createAndDisplayGO(id_p1)
62 gg.createAndDisplayGO(id_p2)
63 gg.createAndDisplayGO(id_p3)
64 gg.createAndDisplayGO(id_p4)
65 gg.createAndDisplayGO(id_polyline)
66 gg.createAndDisplayGO(id_bezier)
67 gg.createAndDisplayGO(id_interpol) 
68 gg.createAndDisplayGO(id_interpol_tangents) 
69 gg.createAndDisplayGO(id_param_polyline)
70 gg.createAndDisplayGO(id_param_bezier)
71 gg.createAndDisplayGO(id_param_interpol)