Salome HOME
add image in binary
[modules/smesh.git] / doc / salome / gui / SMESH / defining_hypotheses_tui.htm
1 <!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
2
3 <html>
4
5 <head>
6 <title>Defining hypotheses TUI</title>
7 <meta http-equiv="content-type" content="text/html; charset=windows-1252">
8 <meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com"><style>
9 <!--
10 P { margin-top:0pt; margin-bottom:0pt; }
11 LI.kadov-P {  }
12 -->
13 </style><style type="text/css">
14 <!--
15 p.whs1 { font-weight:bold; }
16 p.whs2 { font-family:'Lucida Console' , monospace; }
17 p.whs3 { font-family:'Times New Roman' , serif; }
18 p.whs4 { margin-top:0pt; margin-bottom:0pt; font-family:'Lucida Console' , monospace; }
19 p.whs5 { margin-top:0pt; margin-bottom:0pt; font-family:'Times New Roman' , serif; }
20 p.whs6 { margin-top:0pt; margin-bottom:0pt; }
21 -->
22 </style><script type="text/javascript" language="JavaScript">
23 <!--
24 if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
25 {
26   var strNSS = "<style type='text/css'>";
27   strNSS += "p.whs4 {margin-top:1pt;margin-bottom:1pt; }";
28   strNSS += "p.whs5 {margin-top:1pt;margin-bottom:1pt; }";
29   strNSS += "p.whs6 {margin-top:1pt;margin-bottom:1pt; }";
30   strNSS +="</style>";
31   document.write(strNSS);
32 }
33 //-->
34 </script>
35 <script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
36 <!--
37 function reDo() {
38   if (innerWidth != origWidth || innerHeight != origHeight)
39      location.reload();
40 }
41 if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
42         origWidth = innerWidth;
43         origHeight = innerHeight;
44         onresize = reDo;
45 }
46 onerror = null; 
47 //-->
48 </script>
49 <style type="text/css">
50 <!--
51 div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
52 p.WebHelpNavBar { text-align:right; }
53 -->
54 </style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>
55 <script type="text/javascript" language="javascript" src="whver.js"></script>
56 <script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>
57 <script type="text/javascript" language="javascript1.2" src="whutils.js"></script>
58 <script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>
59 <script type="text/javascript" language="javascript1.2">
60 <!--
61 if (window.gbWhTopic)
62 {
63         if (window.setRelStartPage)
64         {
65         addTocInfo("MESH module\nTUI Scripts\nDefining Hypotheses");
66 addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");
67 addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");
68
69         }
70
71
72         if (window.setRelStartPage)
73         {
74         setRelStartPage("index.htm");
75
76                 autoSync(1);
77                 sendSyncInfo();
78                 sendAveInfoOut();
79         }
80
81 }
82 else
83         if (window.gbIE4)
84                 document.location.reload();
85 //-->
86 </script>
87 </head>
88 <body><script type="text/javascript" language="javascript1.2">
89 <!--
90 if (window.writeIntopicBar)
91         writeIntopicBar(4);
92 //-->
93 </script>
94 <h1>Defining Hypotheses and Algorithms</h1>
95
96 <h3>Defining 1D Hypotheses</h3>
97
98 <p class="whs1"><a name=bookmark>1D Arithmetic</a></p>
99
100 <p>&nbsp;</p>
101
102 <p class="whs2">from geompy import 
103  *</p>
104
105 <p class="whs2">import smesh</p>
106
107 <p>&nbsp;</p>
108
109 <p># create vertices</p>
110
111 <p class="whs2">Point111 = MakeVertex( 
112  0, &nbsp;0, &nbsp;0)</p>
113
114 <p class="whs2">Point211 = MakeVertex(10, 
115  &nbsp;0, &nbsp;0)</p>
116
117 <p class="whs2">Point121 = MakeVertex( 
118  0, 10, &nbsp;0)</p>
119
120 <p class="whs2">Point221 = MakeVertex(10, 
121  10, &nbsp;0)</p>
122
123 <p class="whs2">Point112 = MakeVertex( 
124  0, &nbsp;0, 10)</p>
125
126 <p class="whs2">Point212 = MakeVertex(10, 
127  &nbsp;0, 10)</p>
128
129 <p class="whs2">Point122 = MakeVertex( 
130  0, 10, 10)</p>
131
132 <p class="whs2">Point222 = MakeVertex(10, 
133  10, 10)</p>
134
135 <p>&nbsp;</p>
136
137 <p># create edges</p>
138
139 <p class="whs2">EdgeX111 = MakeEdge(Point111, 
140  Point211)</p>
141
142 <p class="whs2">EdgeX121 = MakeEdge(Point121, 
143  Point221)</p>
144
145 <p class="whs2">EdgeX112 = MakeEdge(Point112, 
146  Point212)</p>
147
148 <p class="whs2">EdgeX122 = MakeEdge(Point122, 
149  Point222)</p>
150
151 <p class="whs2">EdgeY11 = MakeEdge(Point111, 
152  Point121)</p>
153
154 <p class="whs2">EdgeY21 = MakeEdge(Point211, 
155  Point221)</p>
156
157 <p class="whs2">EdgeY12 = MakeEdge(Point112, 
158  Point122)</p>
159
160 <p class="whs2">EdgeY22 = MakeEdge(Point212, 
161  Point222)</p>
162
163 <p class="whs2">EdgeZ111 = MakeEdge(Point111, 
164  Point112)</p>
165
166 <p class="whs2">EdgeZ211 = MakeEdge(Point211, 
167  Point212)</p>
168
169 <p class="whs2">EdgeZ121 = MakeEdge(Point121, 
170  Point122)</p>
171
172 <p class="whs2">EdgeZ221 = MakeEdge(Point221, 
173  Point222)</p>
174
175 <p>&nbsp;</p>
176
177 <p># create faces</p>
178
179 <p class="whs2">FaceX11 = MakeQuad(EdgeY11, 
180  EdgeZ111, EdgeY12, EdgeZ121)</p>
181
182 <p class="whs2">FaceX21 = MakeQuad(EdgeY21, 
183  EdgeZ211, EdgeY22, EdgeZ221)</p>
184
185 <p class="whs2">FaceY111 = MakeQuad(EdgeX111, 
186  EdgeZ111, EdgeX112, EdgeZ211)</p>
187
188 <p class="whs2">FaceY121 = MakeQuad(EdgeX121, 
189  EdgeZ121, EdgeX122, EdgeZ221)</p>
190
191 <p class="whs2">FaceZ11 = MakeQuad(EdgeX111, 
192  EdgeY11, EdgeX121, EdgeY21)</p>
193
194 <p class="whs2">FaceZ12 = MakeQuad(EdgeX112, 
195  EdgeY12, EdgeX122, EdgeY22)</p>
196
197 <p>&nbsp;</p>
198
199 <p># create a solid</p>
200
201 <p class="whs2">Block = MakeHexa(FaceX11, 
202  FaceX21, FaceY111, FaceY121, FaceZ11, FaceZ12)</p>
203
204 <p>&nbsp;</p>
205
206 <p># create a compound</p>
207
208 <p class="whs2">box = MakeCompound([Block])</p>
209
210 <p>&nbsp;</p>
211
212 <p># add in the study</p>
213
214 <p class="whs2">box_id = addToStudy(box, 
215  &quot;Box compound&quot;)</p>
216
217 <p>&nbsp;</p>
218
219 <p># create a hexahedral mesh on the box</p>
220
221 <p class="whs2">hexa = smesh.Mesh(box, 
222  &quot;Box compound : hexahedrical mesh&quot;)</p>
223
224 <p class="whs2">algo = hexa.Segment()</p>
225
226 <p>&nbsp;</p>
227
228 <p># define &quot;NumberOfSegments&quot; hypothesis to cut an edge in a 
229  fixed number of segments</p>
230
231 <p class="whs2">algo.NumberOfSegments(4)</p>
232
233 <p>&nbsp;</p>
234
235 <p># create a quadrangle 2D algorithm for faces</p>
236
237 <p class="whs2">hexa.Quadrangle()</p>
238
239 <p>&nbsp;</p>
240
241 <p># create a hexahedron 3D algorithm for solids</p>
242
243 <p class="whs2">hexa.Hexahedron()</p>
244
245 <p>&nbsp;</p>
246
247 <p># create a local hypothesis</p>
248
249 <p class="whs2">algo = hexa.Segment(EdgeX111)</p>
250
251 <p>&nbsp;</p>
252
253 <p># define &quot;Arithmetic1D&quot; hypothesis to cut an edge in several 
254  segments with arithmetic length increasing</p>
255
256 <p class="whs2">algo.Arithmetic1D(1, 
257  4)</p>
258
259 <p>&nbsp;</p>
260
261 <p># define &quot;Propagation&quot; hypothesis that propagates all other 
262  hypothesis on all edges on the opposite side in case of quadrangular faces</p>
263
264 <p class="whs2">algo.Propagation()</p>
265
266 <p>&nbsp;</p>
267
268 <p># compute the mesh</p>
269
270 <p class="whs2">hexa.Compute() </p>
271
272 <p class="whs2">&nbsp;</p>
273
274 <h4><a name=bookmark9>Deflection 1D and Number of Segments</a></h4>
275
276 <p class="whs2">&nbsp;</p>
277
278 <p class="whs2">import smesh</p>
279
280 <p class="whs2">import geompy</p>
281
282 <p class="whs2">import salome</p>
283
284 <p class="whs2">gg = salome.ImportComponentGUI(&quot;GEOM&quot;)</p>
285
286 <p class="whs2">&nbsp;</p>
287
288 <p class="whs3"># create vertices</p>
289
290 <p class="whs2">px &nbsp;&nbsp;= 
291  geompy.MakeVertex(100., 0. &nbsp;, 
292  0. &nbsp;)</p>
293
294 <p class="whs2">py &nbsp;&nbsp;= 
295  geompy.MakeVertex(0. &nbsp;, 
296  100., 0. &nbsp;)</p>
297
298 <p class="whs2">pz &nbsp;&nbsp;= 
299  geompy.MakeVertex(0. &nbsp;, 
300  0. &nbsp;, 100.)</p>
301
302 <p class="whs2">&nbsp;</p>
303
304 <p class="whs3"># create a vector from 
305  two points</p>
306
307 <p class="whs2">vxy = geompy.MakeVector(px, 
308  py)</p>
309
310 <p class="whs2">&nbsp;</p>
311
312 <p class="whs3"># create an arc from 
313  three points</p>
314
315 <p class="whs2">arc = geompy.MakeArc(py, 
316  pz, px)</p>
317
318 <p class="whs2">&nbsp;</p>
319
320 <p class="whs3"># create a wire</p>
321
322 <p class="whs2">wire = geompy.MakeWire([vxy, 
323  arc])</p>
324
325 <p class="whs2">isPlanarFace = 1</p>
326
327 <p class="whs2">&nbsp;</p>
328
329 <p class="whs3"># create a face from 
330  the wire</p>
331
332 <p class="whs2">face1 = geompy.MakeFace(wire, 
333  isPlanarFace)</p>
334
335 <p class="whs2">&nbsp;</p>
336
337 <p class="whs3"><span style="font-family: 'Times New Roman', serif;"># 
338  get edges from the face</span></p>
339
340 <p class="whs2">vxy,arc = geompy.SubShapeAll(face1,geompy.ShapeType[&quot;EDGE&quot;])</p>
341
342 <p class="whs3">&nbsp;</p>
343
344 <p class="whs3"># add objects in the 
345  study</p>
346
347 <p class="whs2">id_face1 = geompy.addToStudy(face1,&quot;Face1&quot;)</p>
348
349 <p class="whs2">id_arc = geompy.addToStudyInFather(face1,arc,&quot;Arc 
350  Edge&quot;)</p>
351
352 <p class="whs2">&nbsp;</p>
353
354 <p class="whs3"># display faces</p>
355
356 <p class="whs2">gg.createAndDisplayGO(id_face1)</p>
357
358 <p class="whs2">gg.setDisplayMode(id_face1,1)</p>
359
360 <p class="whs2">gg.setTransparency(id_face1,0.2)</p>
361
362 <p class="whs2">&nbsp;</p>
363
364 <p class="whs3"># create hexahedral mesh</p>
365
366 <p class="whs2">hexa = smesh.Mesh(face1, 
367  &quot;Face compound : hexahedrical mesh&quot;)</p>
368
369 <p class="whs2">algo = hexa.Triangle()</p>
370
371 <p class="whs2">&nbsp;</p>
372
373 <p class="whs3"># define &quot;MaxElementArea&quot; 
374  hypothesis</p>
375
376 <p class="whs2">algo.MaxElementArea(30)</p>
377
378 <p class="whs2">&nbsp;</p>
379
380 <p class="whs3"># create a local hypothesis 
381  on the wire</p>
382
383 <p class="whs2">algo = hexa.Segment(wire)</p>
384
385 <p class="whs2">&nbsp;</p>
386
387 <p class="whs3"># define &quot;NumberOfSegments&quot; 
388  hypothesis to cut a straight edge in a fixed number of segments</p>
389
390 <p class="whs2">algo.NumberOfSegments(6)</p>
391
392 <p class="whs2">&nbsp;</p>
393
394 <p class="whs3"># define a local &quot;Deflection1D&quot; 
395  hypothesis on the arc</p>
396
397 <p class="whs2">algo = hexa.Segment(arc)</p>
398
399 <p class="whs2">algo.Deflection1D(1)</p>
400
401 <p class="whs2">&nbsp;</p>
402
403 <p class="whs2">&nbsp;</p>
404
405 <p class="whs3"># compute the mesh</p>
406
407 <p class="whs2">hexa.Compute() </p>
408
409 <p>&nbsp;</p>
410
411 <h4><a name=bookmark2>Start and End Length</a></h4>
412
413 <p class="whs2">from geompy import 
414  *</p>
415
416 <p class="whs2">import smesh</p>
417
418 <p>&nbsp;</p>
419
420 <p># create vertices</p>
421
422 <p class="whs2">Point111 = MakeVertex( 
423  0, &nbsp;0, &nbsp;0)</p>
424
425 <p class="whs2">Point211 = MakeVertex(10, 
426  &nbsp;0, &nbsp;0)</p>
427
428 <p class="whs2">Point121 = MakeVertex( 
429  0, 10, &nbsp;0)</p>
430
431 <p class="whs2">Point221 = MakeVertex(10, 
432  10, &nbsp;0)</p>
433
434 <p class="whs2">Point112 = MakeVertex( 
435  0, &nbsp;0, 10)</p>
436
437 <p class="whs2">Point212 = MakeVertex(10, 
438  &nbsp;0, 10)</p>
439
440 <p class="whs2">Point122 = MakeVertex( 
441  0, 10, 10)</p>
442
443 <p class="whs2">Point222 = MakeVertex(10, 
444  10, 10)</p>
445
446 <p>&nbsp;</p>
447
448 <p># create edges</p>
449
450 <p class="whs2">EdgeX111 = MakeEdge(Point111, 
451  Point211)</p>
452
453 <p class="whs2">EdgeX121 = MakeEdge(Point121, 
454  Point221)</p>
455
456 <p class="whs2">EdgeX112 = MakeEdge(Point112, 
457  Point212)</p>
458
459 <p class="whs2">EdgeX122 = MakeEdge(Point122, 
460  Point222)</p>
461
462 <p class="whs2">EdgeY11 = MakeEdge(Point111, 
463  Point121)</p>
464
465 <p class="whs2">EdgeY21 = MakeEdge(Point211, 
466  Point221)</p>
467
468 <p class="whs2">EdgeY12 = MakeEdge(Point112, 
469  Point122)</p>
470
471 <p class="whs2">EdgeY22 = MakeEdge(Point212, 
472  Point222)</p>
473
474 <p class="whs2">EdgeZ111 = MakeEdge(Point111, 
475  Point112)</p>
476
477 <p class="whs2">EdgeZ211 = MakeEdge(Point211, 
478  Point212)</p>
479
480 <p class="whs2">EdgeZ121 = MakeEdge(Point121, 
481  Point122)</p>
482
483 <p class="whs2">EdgeZ221 = MakeEdge(Point221, 
484  Point222)</p>
485
486 <p>&nbsp;</p>
487
488 <p># create faces</p>
489
490 <p class="whs2">FaceX11 = MakeQuad(EdgeY11, 
491  EdgeZ111, EdgeY12, EdgeZ121)</p>
492
493 <p class="whs2">FaceX21 = MakeQuad(EdgeY21, 
494  EdgeZ211, EdgeY22, EdgeZ221)</p>
495
496 <p class="whs2">FaceY111 = MakeQuad(EdgeX111, 
497  EdgeZ111, EdgeX112, EdgeZ211)</p>
498
499 <p class="whs2">FaceY121 = MakeQuad(EdgeX121, 
500  EdgeZ121, EdgeX122, EdgeZ221)</p>
501
502 <p class="whs2">FaceZ11 = MakeQuad(EdgeX111, 
503  EdgeY11, EdgeX121, EdgeY21)</p>
504
505 <p class="whs2">FaceZ12 = MakeQuad(EdgeX112, 
506  EdgeY12, EdgeX122, EdgeY22)</p>
507
508 <p>&nbsp;</p>
509
510 <p># create a solid</p>
511
512 <p class="whs2">Block = MakeHexa(FaceX11, 
513  FaceX21, FaceY111, FaceY121, FaceZ11, FaceZ12)</p>
514
515 <p>&nbsp;</p>
516
517 <p># create a compound</p>
518
519 <p class="whs2">box = MakeCompound([Block])</p>
520
521 <p>&nbsp;</p>
522
523 <p># add in the study</p>
524
525 <p class="whs2">box_id = addToStudy(box, 
526  &quot;Box compound&quot;)</p>
527
528 <p>&nbsp;</p>
529
530 <p># create a hexahedral mesh on the box</p>
531
532 <p class="whs2">hexa = smesh.Mesh(box, 
533  &quot;Box compound : hexahedrical mesh&quot;)</p>
534
535 <p class="whs2">algo = hexa.Segment()</p>
536
537 <p>&nbsp;</p>
538
539 <p># define &quot;NumberOfSegments&quot; hypothesis to cut an edge in a 
540  fixed number of segments</p>
541
542 <p class="whs2">algo.NumberOfSegments(4)</p>
543
544 <p>&nbsp;</p>
545
546 <p># create a quadrangle 2D algorithm for faces</p>
547
548 <p class="whs2">hexa.Quadrangle()</p>
549
550 <p>&nbsp;</p>
551
552 <p># create a hexahedron 3D algorithm for solids</p>
553
554 <p class="whs2">hexa.Hexahedron()</p>
555
556 <p>&nbsp;</p>
557
558 <p># create a local hypothesis</p>
559
560 <p class="whs2">algo = hexa.Segment(EdgeX111)</p>
561
562 <p>&nbsp;</p>
563
564 <p># define &quot;StartEndLength&quot; hypothesis to cut an edge in several 
565  segments with increasing geometric length </p>
566
567 <p class="whs2">algo.StartEndLength(1, 
568  6)</p>
569
570 <p>&nbsp;</p>
571
572 <p># define &quot;Propagation&quot; hypothesis that propagates all other 
573  hypothesis on all edges on the opposite side in case of quadrangular faces</p>
574
575 <p class="whs2">algo.Propagation()</p>
576
577 <p>&nbsp;</p>
578
579 <p># compute the mesh</p>
580
581 <p class="whs2">hexa.Compute() </p>
582
583 <p class="whs2">&nbsp;</p>
584
585 <h4><a name=bookmark3>Average Length</a></h4>
586
587 <p class="whs2">from geompy import 
588  *</p>
589
590 <p class="whs2">import smesh</p>
591
592 <p class="whs2">&nbsp;</p>
593
594 <p class="whs3"># create vertices</p>
595
596 <p class="whs2">Point111 = MakeVertex( 
597  0, &nbsp;0, &nbsp;0)</p>
598
599 <p class="whs2">Point211 = MakeVertex(10, 
600  &nbsp;0, &nbsp;0)</p>
601
602 <p class="whs2">Point121 = MakeVertex( 
603  0, 10, &nbsp;0)</p>
604
605 <p class="whs2">Point221 = MakeVertex(10, 
606  10, &nbsp;0)</p>
607
608 <p class="whs2">Point112 = MakeVertex( 
609  0, &nbsp;0, 10)</p>
610
611 <p class="whs2">Point212 = MakeVertex(10, 
612  &nbsp;0, 10)</p>
613
614 <p class="whs2">Point122 = MakeVertex( 
615  0, 10, 10)</p>
616
617 <p class="whs2">Point222 = MakeVertex(10, 
618  10, 10)</p>
619
620 <p class="whs2">&nbsp;</p>
621
622 <p class="whs3"># create edges</p>
623
624 <p class="whs2">EdgeX111 = MakeEdge(Point111, 
625  Point211)</p>
626
627 <p class="whs2">EdgeX121 = MakeEdge(Point121, 
628  Point221)</p>
629
630 <p class="whs2">EdgeX112 = MakeEdge(Point112, 
631  Point212)</p>
632
633 <p class="whs2">EdgeX122 = MakeEdge(Point122, 
634  Point222)</p>
635
636 <p class="whs2">EdgeY11 = MakeEdge(Point111, 
637  Point121)</p>
638
639 <p class="whs2">EdgeY21 = MakeEdge(Point211, 
640  Point221)</p>
641
642 <p class="whs2">EdgeY12 = MakeEdge(Point112, 
643  Point122)</p>
644
645 <p class="whs2">EdgeY22 = MakeEdge(Point212, 
646  Point222)</p>
647
648 <p class="whs2">EdgeZ111 = MakeEdge(Point111, 
649  Point112)</p>
650
651 <p class="whs2">EdgeZ211 = MakeEdge(Point211, 
652  Point212)</p>
653
654 <p class="whs2">EdgeZ121 = MakeEdge(Point121, 
655  Point122)</p>
656
657 <p class="whs2">EdgeZ221 = MakeEdge(Point221, 
658  Point222)</p>
659
660 <p class="whs2">&nbsp;</p>
661
662 <p class="whs3"># create faces</p>
663
664 <p class="whs2">FaceX11 = MakeQuad(EdgeY11, 
665  EdgeZ111, EdgeY12, EdgeZ121)</p>
666
667 <p class="whs2">FaceX21 = MakeQuad(EdgeY21, 
668  EdgeZ211, EdgeY22, EdgeZ221)</p>
669
670 <p class="whs2">FaceY111 = MakeQuad(EdgeX111, 
671  EdgeZ111, EdgeX112, EdgeZ211)</p>
672
673 <p class="whs2">FaceY121 = MakeQuad(EdgeX121, 
674  EdgeZ121, EdgeX122, EdgeZ221)</p>
675
676 <p class="whs2">FaceZ11 = MakeQuad(EdgeX111, 
677  EdgeY11, EdgeX121, EdgeY21)</p>
678
679 <p class="whs2">FaceZ12 = MakeQuad(EdgeX112, 
680  EdgeY12, EdgeX122, EdgeY22)</p>
681
682 <p class="whs2">&nbsp;</p>
683
684 <p class="whs3"># create a solid</p>
685
686 <p class="whs2">Block = MakeHexa(FaceX11, 
687  FaceX21, FaceY111, FaceY121, FaceZ11, FaceZ12)</p>
688
689 <p class="whs2">&nbsp;</p>
690
691 <p class="whs3"># create a compound</p>
692
693 <p class="whs2">box = MakeCompound([Block])</p>
694
695 <p class="whs2">&nbsp;</p>
696
697 <p class="whs3"># add in the study</p>
698
699 <p class="whs2">box_id = addToStudy(box, 
700  &quot;Box compound&quot;)</p>
701
702 <p class="whs2">&nbsp;</p>
703
704 <p class="whs3"># create a hexahedral 
705  mesh on the box</p>
706
707 <p class="whs2">hexa = smesh.Mesh(box, 
708  &quot;Box compound : hexahedrical mesh&quot;)</p>
709
710 <p class="whs2">algo = hexa.Segment()</p>
711
712 <p class="whs2">&nbsp;</p>
713
714 <p class="whs3"># define &quot;NumberOfSegments&quot; 
715  hypothesis to cut an edge in a fixed number of segments</p>
716
717 <p class="whs2">algo.NumberOfSegments(4)</p>
718
719 <p class="whs2">&nbsp;</p>
720
721 <p class="whs3"># create a quadrangle 
722  2D algorithm for faces</p>
723
724 <p class="whs2">hexa.Quadrangle()</p>
725
726 <p class="whs2">&nbsp;</p>
727
728 <p class="whs3"># create a hexahedron 
729  3D algorithm for solids</p>
730
731 <p class="whs2">hexa.Hexahedron()</p>
732
733 <p class="whs2">&nbsp;</p>
734
735 <p class="whs3"># create a local hypothesis</p>
736
737 <p class="whs2">algo = hexa.Segment(EdgeX111)</p>
738
739 <p class="whs2">&nbsp;</p>
740
741 <p class="whs3"># define &quot;LocalLength&quot; 
742  hypothesis to cut an edge in several segments with the same length</p>
743
744 <p class="whs2">algo.LocalLength(2)</p>
745
746 <p class="whs2">&nbsp;</p>
747
748 <p class="whs3"># define &quot;Propagation&quot; 
749  hypothesis that propagates all other hypothesis on all edges on<span style="font-family: 'Times New Roman', serif;"> 
750  the opposite side in case of quadrangular faces</span></p>
751
752 <p class="whs2">algo.Propagation()</p>
753
754 <p class="whs2">&nbsp;</p>
755
756 <p class="whs3"># compute the mesh</p>
757
758 <p class="whs2">hexa.Compute() </p>
759
760 <p class="whs2">&nbsp;</p>
761
762 <p class="whs2">&nbsp;</p>
763
764 <h3>Defining 2D and 3D hypotheses</h3>
765
766 <h4><a name=bookmark4>Maximum Element Area</a></h4>
767
768 <p class="whs4"><span style="font-family: 'Lucida Console', monospace;">import 
769  smesh</span></p>
770
771 <p class="whs4">import geompy</p>
772
773 <p class="whs4">import salome</p>
774
775 <p class="whs4">&nbsp;</p>
776
777 <p class="whs5"># create a face</p>
778
779 <p class="whs4">px &nbsp;&nbsp;= 
780  geompy.MakeVertex(100., 0. &nbsp;, 
781  0. &nbsp;)</p>
782
783 <p class="whs4">py &nbsp;&nbsp;= 
784  geompy.MakeVertex(0. &nbsp;, 
785  100., 0. &nbsp;)</p>
786
787 <p class="whs4">pz &nbsp;&nbsp;= 
788  geompy.MakeVertex(0. &nbsp;, 
789  0. &nbsp;, 100.)</p>
790
791 <p class="whs4">&nbsp;</p>
792
793 <p class="whs4">vxy = geompy.MakeVector(px, 
794  py)</p>
795
796 <p class="whs4">arc = geompy.MakeArc(py, 
797  pz, px)</p>
798
799 <p class="whs4">wire = geompy.MakeWire([vxy, 
800  arc])</p>
801
802 <p class="whs4">&nbsp;</p>
803
804 <p class="whs4">isPlanarFace = 1</p>
805
806 <p class="whs4">face = geompy.MakeFace(wire, 
807  isPlanarFace)</p>
808
809 <p class="whs4">&nbsp;</p>
810
811 <p class="whs5"># add the face in the 
812  study</p>
813
814 <p class="whs4">id_face = geompy.addToStudy(face, 
815  &quot;Face to be meshed&quot;)</p>
816
817 <p class="whs4">&nbsp;</p>
818
819 <p class="whs5"># create a mesh</p>
820
821 <p class="whs4">tria_mesh = smesh.Mesh(face, 
822  &quot;Face : triangulation&quot;)</p>
823
824 <p class="whs4">&nbsp;</p>
825
826 <p class="whs5"># define 1D meshing:</p>
827
828 <p class="whs4">algo = tria_mesh.Segment()</p>
829
830 <p class="whs4">algo.NumberOfSegments(20)</p>
831
832 <p class="whs4">&nbsp;</p>
833
834 <p class="whs5"># define 2D meshing:</p>
835
836 <p class="whs5">&nbsp;</p>
837
838 <p class="whs5"># assign triangulation 
839  algorithm</p>
840
841 <p class="whs4">algo = tria_mesh.Triangle()</p>
842
843 <p class="whs4">&nbsp;</p>
844
845 <p class="whs5"># apply &quot;Max Element 
846  Area&quot; hypothesis to each triangle</p>
847
848 <p class="whs4">algo.MaxElementArea(100)</p>
849
850 <p class="whs4">&nbsp;</p>
851
852 <p class="whs5"># compute the mesh</p>
853
854 <p class="whs4">tria_mesh.Compute() 
855  &nbsp;</p>
856
857 <p class="whs4">&nbsp;</p>
858
859 <h4><a name=bookmark5>Maximum Element Volume</a></h4>
860
861 <p class="whs4"><span style="font-family: 'Lucida Console', monospace;">import 
862  salome</span></p>
863
864 <p class="whs4">import geompy</p>
865
866 <p class="whs4">import StdMeshers</p>
867
868 <p class="whs4">import NETGENPlugin</p>
869
870 <p class="whs4">&nbsp;</p>
871
872 <p class="whs4">smesh = salome.lcc.FindOrLoadComponent(&quot;FactoryServer&quot;, 
873  &quot;SMESH&quot;)</p>
874
875 <p class="whs4">smeshgui = salome.ImportComponentGUI(&quot;SMESH&quot;)</p>
876
877 <p class="whs4">smeshgui.Init(salome.myStudyId);</p>
878
879 <p class="whs4">&nbsp;</p>
880
881 <p class="whs5"># create a box</p>
882
883 <p class="whs4">box = geompy.MakeCylinderRH(30, 
884  50) #MakeBox(0., 0., 0., </p>
885
886 <p class="whs4">100., 200., 300.)</p>
887
888 <p class="whs4">&nbsp;</p>
889
890 <p class="whs5"># add the box in the 
891  study</p>
892
893 <p class="whs4">idbox = geompy.addToStudy(box, 
894  &quot;box&quot;)</p>
895
896 <p class="whs4">&nbsp;</p>
897
898 <p class="whs5"># create a set of hypotheses</p>
899
900 <p class="whs5">&nbsp;</p>
901
902 <p class="whs5"># Number of Segments</p>
903
904 <p class="whs4">numberOfSegments 
905  = 7</p>
906
907 <p class="whs4">hypNbSeg = smesh.CreateHypothesis(&quot;NumberOfSegments&quot;, 
908  &quot;libStdMeshersEngine.so&quot;)</p>
909
910 <p class="whs4">hypNbSeg.SetNumberOfSegments(numberOfSegments)</p>
911
912 <p class="whs4">print hypNbSeg.GetName()</p>
913
914 <p class="whs4">print hypNbSeg.GetNumberOfSegments()</p>
915
916 <p class="whs4">smeshgui.SetName(salome.ObjectToID(hypNbSeg), 
917  &quot;NumberOfSegments_7&quot;)</p>
918
919 <p class="whs4">&nbsp;</p>
920
921 <p class="whs5"># Max Element Area</p>
922
923 <p class="whs4">maxElementArea = 
924  800</p>
925
926 <p class="whs4">hypArea = smesh.CreateHypothesis(&quot;MaxElementArea&quot;, 
927  &quot;libStdMeshersEngine.so&quot;)</p>
928
929 <p class="whs4">hypArea.SetMaxElementArea(maxElementArea)</p>
930
931 <p class="whs4">print hypArea.GetName()</p>
932
933 <p class="whs4">print hypArea.GetMaxElementArea()</p>
934
935 <p class="whs4">smeshgui.SetName(salome.ObjectToID(hypArea), 
936  &quot;MaxElementArea_800&quot;)</p>
937
938 <p class="whs4">&nbsp;</p>
939
940 <p class="whs5"># Max Element Volume</p>
941
942 <p class="whs4">maxElementVolume 
943  = 900</p>
944
945 <p class="whs4">hypVolume = smesh.CreateHypothesis(&quot;MaxElementVolume&quot;, 
946  &quot;libStdMeshersEngine.so&quot;)</p>
947
948 <p class="whs4">hypVolume.SetMaxElementVolume(maxElementVolume)</p>
949
950 <p class="whs4">print hypVolume.GetName()</p>
951
952 <p class="whs4">print hypVolume.GetMaxElementVolume()</p>
953
954 <p class="whs4">smeshgui.SetName(salome.ObjectToID(hypVolume), 
955  &quot;MaxElementVolume_900&quot;)</p>
956
957 <p class="whs4">&nbsp;</p>
958
959 <p class="whs5"># create a set of algorithms</p>
960
961 <p class="whs5">&nbsp;</p>
962
963 <p class="whs5"># Regular_1D</p>
964
965 <p class="whs4">regular1D = smesh.CreateHypothesis(&quot;Regular_1D&quot;, 
966  &quot;libStdMeshersEngine.so&quot;)</p>
967
968 <p class="whs4">smeshgui.SetName(salome.ObjectToID(regular1D), 
969  &quot;Wire Discretisation&quot;)</p>
970
971 <p class="whs4">&nbsp;</p>
972
973 <p class="whs5"># MEFISTO_2D</p>
974
975 <p class="whs4">mefisto2D = smesh.CreateHypothesis(&quot;MEFISTO_2D&quot;, 
976  &quot;libStdMeshersEngine.so&quot;)</p>
977
978 <p class="whs4">smeshgui.SetName(salome.ObjectToID(mefisto2D), 
979  &quot;MEFISTO_2D&quot;)</p>
980
981 <p class="whs4">&nbsp;</p>
982
983 <p class="whs5"># NETGEN_3D (Tetrahedron 
984  meshing algorithm)</p>
985
986 <p class="whs4">tetra3D = smesh.CreateHypothesis(&quot;NETGEN_3D&quot;, 
987  &quot;libNETGENEngine.so&quot;)</p>
988
989 <p class="whs4">smeshgui.SetName(salome.ObjectToID(tetra3D), 
990  &quot;NETGEN_3D&quot;)</p>
991
992 <p class="whs4">&nbsp;</p>
993
994 <p class="whs5"># initialize a mesh 
995  with the box</p>
996
997 <p class="whs4">mesh = smesh.CreateMesh(box)</p>
998
999 <p class="whs4">smeshgui.SetName(salome.ObjectToID(mesh), 
1000  &quot;MeshBox&quot;)</p>
1001
1002 <p class="whs4">&nbsp;</p>
1003
1004 <p class="whs5"># add hypotheses and 
1005  algorithms to the box</p>
1006
1007 <p class="whs4">mesh.AddHypothesis(box,hypNbSeg)</p>
1008
1009 <p class="whs4">mesh.AddHypothesis(box,hypArea)</p>
1010
1011 <p class="whs4">mesh.AddHypothesis(box,hypVolume)</p>
1012
1013 <p class="whs4">mesh.AddHypothesis(box,regular1D)</p>
1014
1015 <p class="whs4">mesh.AddHypothesis(box,mefisto2D)</p>
1016
1017 <p class="whs4">mesh.AddHypothesis(box,tetra3D)</p>
1018
1019 <p class="whs4">&nbsp;</p>
1020
1021 <p class="whs5"># compute the mesh</p>
1022
1023 <p class="whs4">ret = smesh.Compute(mesh,box)</p>
1024
1025 <p class="whs4">if ret == 0:</p>
1026
1027 <p class="whs4">&nbsp;&nbsp;&nbsp;&nbsp;print 
1028  &quot;probleme when computing the mesh&quot;</p>
1029
1030 <p class="whs4">else:</p>
1031
1032 <p class="whs4">&nbsp;&nbsp;&nbsp;&nbsp;print 
1033  &quot;Computation succeded&quot;</p>
1034
1035 <p class="whs4">salome.sg.updateObjBrowser(1) 
1036  </p>
1037
1038 <p class="whs4">&nbsp;</p>
1039
1040 <h4><a name=bookmark6>Length from Edges</a></h4>
1041
1042 <p class="whs2"><span style="font-family: 'Lucida Console', monospace;">import 
1043  salome</span></p>
1044
1045 <p class="whs2">import geompy</p>
1046
1047 <p class="whs2">import smesh</p>
1048
1049 <p class="whs2">&nbsp;</p>
1050
1051 <p class="whs3"># create sketchers</p>
1052
1053 <p class="whs2">sketcher1 = geompy.MakeSketcher(&quot;Sketcher:F 
1054  0 0:TT 70 0:TT 70 70:TT 0 70:WW&quot;)</p>
1055
1056 <p class="whs2">sketcher2 = geompy.MakeSketcher(&quot;Sketcher:F 
1057  20 20:TT 50 20:TT 50 50:TT 20 50:WW&quot;)</p>
1058
1059 <p class="whs2">isPlanarFace = 1</p>
1060
1061 <p class="whs2">&nbsp;</p>
1062
1063 <p class="whs3"># create a face from 
1064  two wires</p>
1065
1066 <p class="whs2">face1 = geompy.MakeFaces([sketcher1, 
1067  sketcher2],isPlanarFace)</p>
1068
1069 <p class="whs2">&nbsp;</p>
1070
1071 <p class="whs3"># add object in the study</p>
1072
1073 <p class="whs2">id_face1 = geompy.addToStudy(face1,&quot;Face1&quot;)</p>
1074
1075 <p class="whs2">&nbsp;</p>
1076
1077 <p class="whs3"># create a mesh</p>
1078
1079 <p class="whs2">tria = smesh.Mesh(face1, 
1080  &quot;Face : triangle 2D mesh&quot;)</p>
1081
1082 <p class="whs2">&nbsp;</p>
1083
1084 <p class="whs3"># Define 1D meshing</p>
1085
1086 <p class="whs2">algo = tria.Segment()</p>
1087
1088 <p class="whs2">algo.NumberOfSegments(2)</p>
1089
1090 <p class="whs2">&nbsp;</p>
1091
1092 <p class="whs3"># create and assign the 
1093  algorithm for 2D meshing with triangles</p>
1094
1095 <p class="whs2">algo = tria.Triangle()</p>
1096
1097 <p class="whs2">&nbsp;</p>
1098
1099 <p class="whs3"># create and assign &quot;LengthFromEdges&quot; 
1100  hypothesis to build triangles </p>
1101
1102 <p class="whs3"># based on the length 
1103  of the edges taken from the wire</p>
1104
1105 <p class="whs2">algo.LengthFromEdges()</p>
1106
1107 <p class="whs2">&nbsp;</p>
1108
1109 <p class="whs3"># compute the mesh</p>
1110
1111 <p class="whs2">tria.Compute() </p>
1112
1113 <p class="whs2">&nbsp;</p>
1114
1115 <h3>Defining Additional Hypotheses</h3>
1116
1117 <h4><a name=bookmark7>Propagation</a></h4>
1118
1119 <p class="whs2"><span style="font-family: 'Lucida Console', monospace;">from 
1120  geompy import *</span></p>
1121
1122 <p class="whs2">import smesh</p>
1123
1124 <p class="whs2">&nbsp;</p>
1125
1126 <p class="whs3"># create vertices</p>
1127
1128 <p class="whs2">Point111 = MakeVertex( 
1129  0, &nbsp;0, &nbsp;0)</p>
1130
1131 <p class="whs2">Point211 = MakeVertex(10, 
1132  &nbsp;0, &nbsp;0)</p>
1133
1134 <p class="whs2">Point121 = MakeVertex( 
1135  0, 10, &nbsp;0)</p>
1136
1137 <p class="whs2">Point221 = MakeVertex(10, 
1138  10, &nbsp;0)</p>
1139
1140 <p class="whs2">Point112 = MakeVertex( 
1141  0, &nbsp;0, 10)</p>
1142
1143 <p class="whs2">Point212 = MakeVertex(10, 
1144  &nbsp;0, 10)</p>
1145
1146 <p class="whs2">Point122 = MakeVertex( 
1147  0, 10, 10)</p>
1148
1149 <p class="whs2">Point222 = MakeVertex(10, 
1150  10, 10)</p>
1151
1152 <p class="whs2">&nbsp;</p>
1153
1154 <p class="whs3"># create edges</p>
1155
1156 <p class="whs2">EdgeX111 = MakeEdge(Point111, 
1157  Point211)</p>
1158
1159 <p class="whs2">EdgeX121 = MakeEdge(Point121, 
1160  Point221)</p>
1161
1162 <p class="whs2">EdgeX112 = MakeEdge(Point112, 
1163  Point212)</p>
1164
1165 <p class="whs2">EdgeX122 = MakeEdge(Point122, 
1166  Point222)</p>
1167
1168 <p class="whs2">EdgeY11 = MakeEdge(Point111, 
1169  Point121)</p>
1170
1171 <p class="whs2">EdgeY21 = MakeEdge(Point211, 
1172  Point221)</p>
1173
1174 <p class="whs2">EdgeY12 = MakeEdge(Point112, 
1175  Point122)</p>
1176
1177 <p class="whs2">EdgeY22 = MakeEdge(Point212, 
1178  Point222)</p>
1179
1180 <p class="whs2">EdgeZ111 = MakeEdge(Point111, 
1181  Point112)</p>
1182
1183 <p class="whs2">EdgeZ211 = MakeEdge(Point211, 
1184  Point212)</p>
1185
1186 <p class="whs2">EdgeZ121 = MakeEdge(Point121, 
1187  Point122)</p>
1188
1189 <p class="whs2">EdgeZ221 = MakeEdge(Point221, 
1190  Point222)</p>
1191
1192 <p class="whs2">&nbsp;</p>
1193
1194 <p class="whs3"># create faces</p>
1195
1196 <p class="whs2">FaceX11 = MakeQuad(EdgeY11, 
1197  EdgeZ111, EdgeY12, EdgeZ121)</p>
1198
1199 <p class="whs2">FaceX21 = MakeQuad(EdgeY21, 
1200  EdgeZ211, EdgeY22, EdgeZ221)</p>
1201
1202 <p class="whs2">FaceY111 = MakeQuad(EdgeX111, 
1203  EdgeZ111, EdgeX112, EdgeZ211)</p>
1204
1205 <p class="whs2">FaceY121 = MakeQuad(EdgeX121, 
1206  EdgeZ121, EdgeX122, EdgeZ221)</p>
1207
1208 <p class="whs2">FaceZ11 = MakeQuad(EdgeX111, 
1209  EdgeY11, EdgeX121, EdgeY21)</p>
1210
1211 <p class="whs2">FaceZ12 = MakeQuad(EdgeX112, 
1212  EdgeY12, EdgeX122, EdgeY22)</p>
1213
1214 <p class="whs2">&nbsp;</p>
1215
1216 <p class="whs3"># create a solid</p>
1217
1218 <p class="whs2">box = MakeHexa(FaceX11, 
1219  FaceX21, FaceY111, FaceY121, FaceZ11, FaceZ12)</p>
1220
1221 <p class="whs2">&nbsp;</p>
1222
1223 <p class="whs3"># add in the study</p>
1224
1225 <p class="whs2">box_id = addToStudy(box, 
1226  &quot;Box&quot;)</p>
1227
1228 <p class="whs2">&nbsp;</p>
1229
1230 <p class="whs3"># create a hexahedral 
1231  mesh on the box</p>
1232
1233 <p class="whs2">hexa = smesh.Mesh(box, 
1234  &quot;Box : hexahedrical mesh&quot;)</p>
1235
1236 <p class="whs2">&nbsp;</p>
1237
1238 <p class="whs3"># create an 1D algorithm 
1239  for edges</p>
1240
1241 <p class="whs2">algo = hexa.Segment()</p>
1242
1243 <p class="whs2">&nbsp;</p>
1244
1245 <p class="whs3"># define &quot;NumberOfSegments&quot; 
1246  hypothesis to cut an edge in a fixed number of segments</p>
1247
1248 <p class="whs2">algo.NumberOfSegments(4)</p>
1249
1250 <p class="whs2">&nbsp;</p>
1251
1252 <p class="whs3"># create a quadrangle 
1253  2D algorithm for faces</p>
1254
1255 <p class="whs2">hexa.Quadrangle()</p>
1256
1257 <p class="whs2">&nbsp;</p>
1258
1259 <p class="whs3"># create a hexahedron 
1260  3D algorithm for solids</p>
1261
1262 <p class="whs2">hexa.Hexahedron()</p>
1263
1264 <p class="whs2">&nbsp;</p>
1265
1266 <p class="whs3"># create a local hypothesis</p>
1267
1268 <p class="whs2">algo = hexa.Segment(EdgeX111)</p>
1269
1270 <p class="whs2">&nbsp;</p>
1271
1272 <p class="whs3"># define &quot;Arithmetic1D&quot; 
1273  hypothesis to cut an edge<span style="font-family: 'Times New Roman', serif;"> 
1274  in several segments with increasing length</span></p>
1275
1276 <p class="whs2">algo.Arithmetic1D(1, 
1277  4)</p>
1278
1279 <p class="whs2">&nbsp;</p>
1280
1281 <p class="whs3"># define &quot;Propagation&quot; 
1282  hypothesis that propagates all other 1D hypotheses</p>
1283
1284 <p class="whs3"># from all edges on the 
1285  opposite side of a face in case of quadrangular faces</p>
1286
1287 <p class="whs2">algo.Propagation()</p>
1288
1289 <p class="whs2">&nbsp;</p>
1290
1291 <p class="whs3"># compute the mesh</p>
1292
1293 <p class="whs2">hexa.Compute() &nbsp;</p>
1294
1295 <h3><a name=bookmark8>Defining Meshing Algorithms</a></h3>
1296
1297 <p class="whs4"><span style="font-family: 'Lucida Console', monospace;">import 
1298  salome</span></p>
1299
1300 <p class="whs4">import StdMeshers</p>
1301
1302 <p class="whs4">import NETGENPlugin</p>
1303
1304 <p class="whs4">&nbsp;</p>
1305
1306 <p class="whs4">smesh = salome.lcc.FindOrLoadComponent(&quot;FactoryServer&quot;, 
1307  &quot;SMESH&quot;)</p>
1308
1309 <p class="whs4">smeshgui = salome.ImportComponentGUI(&quot;SMESH&quot;)</p>
1310
1311 <p class="whs4">smeshgui.Init(salome.myStudyId);</p>
1312
1313 <p class="whs6">&nbsp;</p>
1314
1315 <p class="whs6"># create algorithms</p>
1316
1317 <p class="whs4">print &quot;-------------------------- 
1318  create Algorithms&quot;</p>
1319
1320 <p class="whs4">print &quot;-------------------------- 
1321  Regular_1D (Wire discretisation)&quot;</p>
1322
1323 <p class="whs4">regular1D = smesh.CreateHypothesis(&quot;Regular_1D&quot;, 
1324  &quot;libStdMeshersEngine.so&quot;)</p>
1325
1326 <p class="whs4">smeshgui.SetName(salome.ObjectToID(regular1D), 
1327  &quot;Wire Discretisation&quot;)</p>
1328
1329 <p class="whs4">&nbsp;</p>
1330
1331 <p class="whs4">print &quot;-------------------------- 
1332  MEFISTO_2D (Triangle meshing algorithm)&quot;</p>
1333
1334 <p class="whs4">mefisto2D = smesh.CreateHypothesis(&quot;MEFISTO_2D&quot;, 
1335  &quot;libStdMeshersEngine.so&quot;)</p>
1336
1337 <p class="whs4">smeshgui.SetName(salome.ObjectToID(mefisto2D), 
1338  &quot;MEFISTO_2D&quot;)</p>
1339
1340 <p class="whs4">&nbsp;</p>
1341
1342 <p class="whs4">print &quot;-------------------------- 
1343  Quadrangle_2D (Quadrangle meshing algorithm)&quot;</p>
1344
1345 <p class="whs4">quad2D = smesh.CreateHypothesis( 
1346  &quot;Quadrangle_2D&quot;, &quot;libStdMeshersEngine.so&quot; )</p>
1347
1348 <p class="whs4">smeshgui.SetName(salome.ObjectToID(quad2D), 
1349  &quot;Quadrangle_2D&quot;)</p>
1350
1351 <p class="whs4">&nbsp;</p>
1352
1353 <p class="whs4">print &quot;-------------------------- 
1354  Hexa_3D (Hexahedron meshing algorithm)&quot;</p>
1355
1356 <p class="whs4">hexa3D = smesh.CreateHypothesis(&quot;Hexa_3D&quot;, 
1357  &quot;libStdMeshersEngine.so&quot;)</p>
1358
1359 <p class="whs4">smeshgui.SetName(salome.ObjectToID(hexa3D), 
1360  &quot;HEXA_3D&quot;)</p>
1361
1362 <p class="whs4">&nbsp;</p>
1363
1364 <p class="whs4">print &quot;-------------------------- 
1365  NETGEN_3D (Tetrahedron meshing algorithm)&quot;</p>
1366
1367 <p class="whs4">netgen3D = smesh.CreateHypothesis(&quot;NETGEN_3D&quot;, 
1368  &quot;libNETGENEngine.so&quot;)</p>
1369
1370 <p class="whs4">smeshgui.SetName(salome.ObjectToID(netgen3D), 
1371  &quot;NETGEN_3D&quot;)</p>
1372
1373 <p class="whs4">salome.sg.updateObjBrowser(1)</p>
1374
1375 <p class="whs6">&nbsp;</p>
1376
1377 <script type="text/javascript" language="javascript1.2">
1378 <!--
1379 if (window.writeIntopicBar)
1380         writeIntopicBar(0);
1381 //-->
1382 </script>
1383 </body>
1384 </html>