1 <!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
\r
6 <title>Complex Objects</title>
\r
7 <meta http-equiv="content-type" content="text/html; charset=windows-1252">
\r
8 <meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
\r
9 <link rel="stylesheet" href="default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
\r
11 if (navigator.appName !="Netscape")
\r
12 { document.write("<link rel='stylesheet' href='default.css'>");}
\r
15 <style type="text/css">
\r
17 p.whs1 { font-family:'Lucida Console' , monospace; }
\r
19 </style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
\r
22 if (innerWidth != origWidth || innerHeight != origHeight)
\r
25 if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
\r
26 origWidth = innerWidth;
\r
27 origHeight = innerHeight;
\r
33 <style type="text/css">
\r
35 div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
\r
36 p.WebHelpNavBar { text-align:right; }
\r
38 </style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>
\r
39 <script type="text/javascript" language="javascript" src="whver.js"></script>
\r
40 <script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>
\r
41 <script type="text/javascript" language="javascript1.2" src="whutils.js"></script>
\r
42 <script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>
\r
43 <script type="text/javascript" language="javascript1.2">
\r
45 if (window.gbWhTopic)
\r
47 if (window.setRelStartPage)
\r
49 addTocInfo("Geometry module\nTUI Scripts\nCreating Geometric Objects\nComplex Objects");
\r
50 addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");
\r
51 addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");
\r
56 if (window.setRelStartPage)
\r
58 setRelStartPage("index.htm");
\r
68 document.location.reload();
\r
72 <body><script type="text/javascript" language="javascript1.2">
\r
74 if (window.writeIntopicBar)
\r
78 <h1>Complex Objects</h1>
\r
80 <h3><a name=bookmark>Creation of a Prism</a></h3>
\r
82 <p class="whs1">import geompy</p>
\r
84 <p class="whs1">import salome</p>
\r
86 <p class="whs1">gg = salome.ImportComponentGUI("GEOM")</p>
\r
90 <p># create a vertex and a vector</p>
\r
92 <p class="whs1">p1 = geompy.MakeVertex(
\r
97 <p class="whs1">p2 = geompy.MakeVertex(
\r
98 100., 0.,
\r
101 <p class="whs1">p3 = geompy.MakeVertex(
\r
102 100., 100., 0.)</p>
\r
104 <p class="whs1">p4 = geompy.MakeVertex(
\r
106 100., 0.)</p>
\r
108 <p class="whs1">p5 = geompy.MakeVertex(
\r
113 <p class="whs1">p6 = geompy.MakeVertex(-100.,
\r
115 0.)</p>
\r
117 <p class="whs1">p7 = geompy.MakeVertex(-100.,-100.,
\r
118 0.)</p>
\r
120 <p class="whs1">p8 = geompy.MakeVertex(
\r
121 0.,-100.,
\r
122 0.)</p>
\r
126 <p># create a vector from the given components</p>
\r
128 <p class="whs1">vector = geompy.MakeVectorDXDYDZ(50.,
\r
133 <p>#create vectors from two points</p>
\r
135 <p class="whs1">vector1_arc1 = geompy.MakeVector(p1,
\r
138 <p class="whs1">vector2_arc1 = geompy.MakeVector(p1,
\r
141 <p class="whs1">vector1_arc2 = geompy.MakeVector(p1,
\r
144 <p class="whs1">vector2_arc2 = geompy.MakeVector(p1,
\r
149 <p># create arcs from three points</p>
\r
151 <p class="whs1">arc1 = geompy.MakeArc(p2,
\r
154 <p class="whs1">arc2 = geompy.MakeArc(p6,
\r
159 <p># create wires</p>
\r
161 <p class="whs1">wire1 = geompy.MakeWire([vector1_arc1,
\r
162 arc1, vector2_arc1])</p>
\r
164 <p class="whs1">wire2 = geompy.MakeWire([vector1_arc2,
\r
165 arc2, vector2_arc2])</p>
\r
169 <p># create faces</p>
\r
171 <p class="whs1">isPlanarWanted = 1</p>
\r
173 <p class="whs1">face1 = geompy.MakeFace(wire1,
\r
174 isPlanarWanted)</p>
\r
176 <p class="whs1">face2 = geompy.MakeFace(wire2,
\r
177 isPlanarWanted)</p>
\r
181 <p># create prisms</p>
\r
183 <p class="whs1">prism1 = geompy.MakePrism(face2,
\r
186 <p class="whs1">prism2 = geompy.MakePrismVecH(face1,
\r
191 <p># add objects in the study</p>
\r
193 <p class="whs1">id_face1 =
\r
194 geompy.addToStudy(face1,"Face1")</p>
\r
196 <p class="whs1">id_face2 =
\r
197 geompy.addToStudy(face2,"Face2")</p>
\r
199 <p class="whs1">id_prism1 = geompy.addToStudy(prism1,"Prism1")</p>
\r
201 <p class="whs1">id_prism2 = geompy.addToStudy(prism2,"Prism2")</p>
\r
205 <p># display cylinders</p>
\r
207 <p class="whs1">gg.createAndDisplayGO(id_face1)</p>
\r
209 <p class="whs1">gg.setDisplayMode(id_face1,1)</p>
\r
211 <p class="whs1">gg.createAndDisplayGO(id_face2)</p>
\r
213 <p class="whs1">gg.setDisplayMode(id_face2,1)</p>
\r
215 <p class="whs1">gg.createAndDisplayGO(id_prism1)</p>
\r
217 <p class="whs1">gg.setDisplayMode(id_prism1,1)</p>
\r
219 <p class="whs1">gg.createAndDisplayGO(id_prism2)</p>
\r
221 <p><span style="font-family: 'Lucida Console', monospace;">gg.setDisplayMode(id_prism2,1)</span>
\r
224 <h3><a name=bookmark1>Creation of a Revolution</a></h3>
\r
226 <p class="whs1">import geompy</p>
\r
228 <p class="whs1">import salome</p>
\r
230 <p class="whs1">gg = salome.ImportComponentGUI("GEOM")</p>
\r
234 <p># create a vertex and a vector</p>
\r
236 <p class="whs1">p1 = geompy.MakeVertex(
\r
237 10., 10.,
\r
240 <p class="whs1">p2 = geompy.MakeVertex(
\r
241 15., 15.,
\r
244 <p class="whs1">p3 = geompy.MakeVertex(
\r
245 40., 40.,
\r
246 0.)</p>
\r
250 <p>#create vectors from two points</p>
\r
252 <p class="whs1">vector1 = geompy.MakeVector(p1,
\r
255 <p class="whs1">vector2 = geompy.MakeVector(p1,
\r
260 <p># create a vector from the given components</p>
\r
262 <p class="whs1">vector3 = geompy.MakeVectorDXDYDZ(-20.,
\r
267 <p># create a wire</p>
\r
269 <p class="whs1">wire = geompy.MakeWire([vector1,
\r
274 <p># create a revolution</p>
\r
276 <p class="whs1">revolution = geompy.MakeRevolution(wire,
\r
281 <p># add objects in the study</p>
\r
283 <p class="whs1">id_vector3 =
\r
284 geompy.addToStudy(vector3,"Axis")</p>
\r
286 <p class="whs1">id_wire =
\r
287 geompy.addToStudy(wire,"Wire")</p>
\r
289 <p class="whs1">id_revolution = geompy.addToStudy(revolution,"Revolution")</p>
\r
293 <p># display the vector, the wire and the revolution</p>
\r
295 <p class="whs1">gg.createAndDisplayGO(id_vector3)</p>
\r
297 <p class="whs1">gg.createAndDisplayGO(id_wire)</p>
\r
299 <p class="whs1">gg.createAndDisplayGO(id_revolution)</p>
\r
301 <p><span style="font-family: 'Lucida Console', monospace;">gg.setDisplayMode(id_revolution,1)</span>
\r
304 <h3><a name=bookmark2>Creation of a Filling</a></h3>
\r
306 <p class="whs1">import geompy</p>
\r
308 <p class="whs1">import salome</p>
\r
310 <p class="whs1">gg = salome.ImportComponentGUI("GEOM")</p>
\r
312 <p class="whs1">mindeg = 2</p>
\r
314 <p class="whs1">maxdeg = 5</p>
\r
316 <p class="whs1">tol3d =
\r
319 <p class="whs1">tol2d =
\r
322 <p class="whs1">nbiter = 5</p>
\r
326 <p># create a vertex and a vector</p>
\r
328 <p class="whs1">p1 = geompy.MakeVertex(
\r
329 -30., -30.,
\r
332 <p class="whs1">p2 = geompy.MakeVertex(
\r
333 -60., -60.,
\r
336 <p class="whs1">p3 = geompy.MakeVertex(
\r
337 -30., -30.,
\r
342 <p># create an arc from three points</p>
\r
344 <p class="whs1">arc = geompy.MakeArc(p1,
\r
347 <p class="whs1">ShapeListCompound
\r
350 <p class="whs1">i = 0</p>
\r
352 <p class="whs1">while i <= 3 :</p>
\r
354 <p class="whs1"> S
\r
355 = geompy.MakeTranslation(arc, i * 50., 0., 0.)</p>
\r
357 <p class="whs1"> ShapeListCompound.append(S)</p>
\r
359 <p class="whs1"> i
\r
362 <p class="whs1">compound = geompy.MakeCompound(ShapeListCompound)</p>
\r
366 <p># create a filling</p>
\r
368 <p class="whs1">filling = geompy.MakeFilling(compound,
\r
369 mindeg, maxdeg, tol3d, tol2d, nbiter)</p>
\r
373 <p># add objects in the study</p>
\r
375 <p class="whs1">id_compound = geompy.addToStudy(compound,"Compound")</p>
\r
377 <p class="whs1">id_filling = geompy.addToStudy(filling,"Filling")</p>
\r
381 <p># display the compound and the filling</p>
\r
383 <p class="whs1">gg.createAndDisplayGO(id_compound)</p>
\r
385 <p class="whs1">gg.createAndDisplayGO(id_filling)</p>
\r
387 <p><span style="font-family: 'Lucida Console', monospace;">gg.setDisplayMode(id_filling,1)</span>
\r
392 <h3><a name=bookmark3>Creation of a Pipe</a></h3>
\r
394 <p class="whs1">import geompy</p>
\r
396 <p class="whs1">import salome</p>
\r
398 <p class="whs1">gg = salome.ImportComponentGUI("GEOM")</p>
\r
402 <p># create vertices</p>
\r
404 <p class="whs1">p0 =
\r
405 geompy.MakeVertex(0. ,
\r
409 <p class="whs1">px =
\r
410 geompy.MakeVertex(100., 0. ,
\r
413 <p class="whs1">py =
\r
414 geompy.MakeVertex(0. ,
\r
415 100., 0. )</p>
\r
417 <p class="whs1">pz =
\r
418 geompy.MakeVertex(0. ,
\r
419 0. , 100.)</p>
\r
421 <p class="whs1">pxyz = geompy.MakeVertex(100.,
\r
426 <p># create a vector from two points</p>
\r
428 <p class="whs1">vxy = geompy.MakeVector(px,
\r
433 <p># create an arc from three points</p>
\r
435 <p class="whs1">arc = geompy.MakeArc(py,
\r
440 <p># create a wire</p>
\r
442 <p class="whs1">wire = geompy.MakeWire([vxy,
\r
447 <p># create an edge</p>
\r
449 <p class="whs1">edge = geompy.MakeEdge(p0,
\r
454 <p># create a pipe</p>
\r
456 <p class="whs1">pipe = geompy.MakePipe(wire,
\r
461 <p># add objects in the study</p>
\r
463 <p class="whs1">id_wire = geompy.addToStudy(wire,"Wire")</p>
\r
465 <p class="whs1">id_edge = geompy.addToStudy(edge,"Edge")</p>
\r
467 <p class="whs1">id_pipe = geompy.addToStudy(pipe,"Pipe")</p>
\r
471 <p># display the wire, the edge (path) and the pipe</p>
\r
473 <p class="whs1">gg.createAndDisplayGO(id_wire)</p>
\r
475 <p class="whs1">gg.createAndDisplayGO(id_edge)</p>
\r
477 <p class="whs1">gg.createAndDisplayGO(id_pipe)</p>
\r
479 <p><span style="font-family: 'Lucida Console', monospace;">gg.setDisplayMode(id_pipe,1)</span>
\r
482 <script type="text/javascript" language="javascript1.2">
\r
484 if (window.writeIntopicBar)
\r
485 writeIntopicBar(0);
\r