]> SALOME platform Git repositories - modules/geom.git/commitdiff
Salome HOME
Update for bugs 16549,13902,16572,16559 and updates for current status of Salome 3X
authormaintenance team <salome-mnt@opencascade.com>
Fri, 26 Oct 2007 13:23:38 +0000 (13:23 +0000)
committermaintenance team <salome-mnt@opencascade.com>
Fri, 26 Oct 2007 13:23:38 +0000 (13:23 +0000)
42 files changed:
doc/salome/gui/GEOM/arc.htm
doc/salome/gui/GEOM/archimede.htm
doc/salome/gui/GEOM/basic_geometrical_objects.htm
doc/salome/gui/GEOM/circle.htm
doc/salome/gui/GEOM/common.htm
doc/salome/gui/GEOM/cone.htm
doc/salome/gui/GEOM/cut.htm
doc/salome/gui/GEOM/explode.htm
doc/salome/gui/GEOM/extrusion.htm
doc/salome/gui/GEOM/face.htm
doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions.htm
doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions.htm
doc/salome/gui/GEOM/fuse.htm
doc/salome/gui/GEOM/geom.log
doc/salome/gui/GEOM/geometrical_objects.htm
doc/salome/gui/GEOM/image39.gif [new file with mode: 0644]
doc/salome/gui/GEOM/measurement_tools.htm
doc/salome/gui/GEOM/mirror_image.htm
doc/salome/gui/GEOM/modify_the_location.htm
doc/salome/gui/GEOM/multi_rotation.htm
doc/salome/gui/GEOM/multi_translation.htm
doc/salome/gui/GEOM/newentity_blocks.htm
doc/salome/gui/GEOM/occ_viewer.htm [new file with mode: 0755]
doc/salome/gui/GEOM/offset_surface.htm
doc/salome/gui/GEOM/pics/angle.png [new file with mode: 0755]
doc/salome/gui/GEOM/pics/circle3.png [new file with mode: 0755]
doc/salome/gui/GEOM/pics/distance.png
doc/salome/gui/GEOM/pipe_creation.htm
doc/salome/gui/GEOM/plane.htm
doc/salome/gui/GEOM/point.htm
doc/salome/gui/GEOM/repairing_operations.htm
doc/salome/gui/GEOM/revolution.htm
doc/salome/gui/GEOM/rotation.htm
doc/salome/gui/GEOM/section.htm
doc/salome/gui/GEOM/sketcher.htm
doc/salome/gui/GEOM/solid.htm
doc/salome/gui/GEOM/transformation_operations.htm
doc/salome/gui/GEOM/translation.htm
doc/salome/gui/GEOM/vector.htm
doc/salome/gui/GEOM/viewing_geometrical_objects.htm
doc/salome/gui/GEOM/working_plane.htm
doc/salome/gui/GEOM/working_with_groups.htm

index 50b685ae81125473af0ce01d595b9d10e24a9bf6..f48d4b86ebc9507ea78e622441f0ab3fea9fad8a 100755 (executable)
@@ -253,8 +253,8 @@ if (window.writeIntopicBar)
 <p class="whs35">&nbsp;</p>\r
 \r
 <p class="whs2">Our TUI Scripts provide you with useful examples \r
- of creation of <a href="basic_geometrical_objects.htm">Basic Geometric \r
- Objects</a>. </p>\r
+ of creation of <a href="basic_geometrical_objects.htm#bookmark">Basic \r
Geometric Objects</a>. </p>\r
 \r
 <p>&nbsp;</p>\r
 \r
index ac3616f4d175ff13636cde6cc6ae30ccb9ff660b..351d6f654af53592bc7c969596951d12f65d6d1c 100755 (executable)
@@ -88,8 +88,6 @@ if (window.writeIntopicBar)
  an <span style="font-weight: bold;"><B>Archimede</B></span> operation in the \r
  Main Menu select <span style="font-weight: bold;"><B>Operations - &gt; Archimede</B></span></p>\r
 \r
-<p class="whs3">&nbsp;</p>\r
-\r
 <p class="whs3">This \r
  operation creates a plane corresponding to the modeled water-line of the \r
  object plunged into the water (in Z direction).</p>\r
@@ -97,7 +95,8 @@ if (window.writeIntopicBar)
 <p class="whs2">&nbsp;</p>\r
 \r
 <p class="whs2"><b style="font-weight: bold;"><span style="font-weight: normal;">The</span> \r
- Result<span style="font-weight: normal;"> will be any</span></b> GEOM_Object.</p>\r
+ Result<span style="font-weight: normal;"> will be a</span></b> GEOM_Object \r
+ (Face).</p>\r
 \r
 <p class="whs2"><b style="font-weight: bold;">TUI Command: \r
  </b><span style="font-style: italic;"><I>geompy.Archimede(Shape,Weight,WaterDensity,MeshingDeflection)</I></span>, \r
index b25b5cb4184087cbe1e39410a3b512ee6462c98e..f12e9082f73a4be1e65991c7338d34ecd7519c4e 100755 (executable)
@@ -87,75 +87,25 @@ if (window.writeIntopicBar)
 \r
 <p>&nbsp;</p>\r
 \r
-<p># create vertices</p>\r
+<p># create vertex</p>\r
 \r
 <p class="whs1">p0 = geompy.MakeVertex(0., \r
  0., 0.)</p>\r
 \r
-<p class="whs1">p100 = geompy.MakeVertexWithRef(p0, \r
- 100., 100., 100.)</p>\r
-\r
-<p class="whs1">px = geompy.MakeVertex(100., \r
- 0., 0.)</p>\r
-\r
-<p class="whs1">py = geompy.MakeVertex(0., \r
- 100., 0.)</p>\r
-\r
-<p class="whs1">pz = geompy.MakeVertex(0., \r
- 0., 100.)</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p># create a curve and a vertex on it</p>\r
-\r
-<p class="whs1">Arc = geompy.MakeArc(py, \r
- pz, px)</p>\r
-\r
-<p class="whs1">p_on_arc = geompy.MakeVertexOnCurve(Arc, \r
- 0.25)</p>\r
-\r
 <p>&nbsp;</p>\r
 \r
-<p># add objects in the study</p>\r
+<p># add object in the study</p>\r
 \r
 <p class="whs1">id_p0 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= \r
  geompy.addToStudy(p0, &nbsp;&nbsp;&quot;Vertex \r
  0&quot;)</p>\r
 \r
-<p class="whs1">id_p100 &nbsp;&nbsp;&nbsp;&nbsp;= \r
- geompy.addToStudy(p100, &quot;Vertex 100&quot;)</p>\r
-\r
-<p class="whs1">id_px &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= \r
- geompy.addToStudy(px, &nbsp;&nbsp;&quot;Vertex \r
- X&quot;)</p>\r
-\r
-<p class="whs1">id_py &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= \r
- geompy.addToStudy(py, &nbsp;&nbsp;&quot;Vertex \r
- Y&quot;)</p>\r
-\r
-<p class="whs1">id_pz &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= \r
- geompy.addToStudy(pz, &nbsp;&nbsp;&quot;Vertex \r
- Z&quot;)</p>\r
-\r
-<p class="whs1">id_Arc &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= \r
- geompy.addToStudy(Arc, &nbsp;&quot;Arc&quot;)</p>\r
-\r
-<p class="whs1">id_p_on_arc = geompy.addToStudy(p_on_arc, \r
- &quot;Vertex on Arc&quot;)</p>\r
-\r
 <p>&nbsp;</p>\r
 \r
-<p># display vertices</p>\r
+<p># display vertex</p>\r
 \r
 <p class="whs1">gg.createAndDisplayGO(id_p0)</p>\r
 \r
-<p class="whs1">gg.createAndDisplayGO(id_p100)</p>\r
-\r
-<p class="whs1">gg.createAndDisplayGO(id_Arc)</p>\r
-\r
-<p><span style="font-family: 'Lucida Console', monospace;">gg.createAndDisplayGO(id_p_on_arc)</span> \r
- </p>\r
-\r
 <p>&nbsp;</p>\r
 \r
 <h3><a name=bookmark1>Creation of a Line</a></h3>\r
@@ -362,6 +312,87 @@ if (window.writeIntopicBar)
 \r
 <p>&nbsp;</p>\r
 \r
+<h3><a name=bookmark7>Creation of an Arc</a></h3>\r
+\r
+<p class="whs1">import geompy</p>\r
+\r
+<p class="whs1">import salome</p>\r
+\r
+<p class="whs1">gg = salome.ImportComponentGUI(&quot;GEOM&quot;)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># create vertices</p>\r
+\r
+<p class="whs1">p0 = geompy.MakeVertex(0., \r
+ 0., 0.)</p>\r
+\r
+<p class="whs1">p100 = geompy.MakeVertexWithRef(p0, \r
+ 100., 100., 100.)</p>\r
+\r
+<p class="whs1">px = geompy.MakeVertex(100., \r
+ 0., 0.)</p>\r
+\r
+<p class="whs1">py = geompy.MakeVertex(0., \r
+ 100., 0.)</p>\r
+\r
+<p class="whs1">pz = geompy.MakeVertex(0., \r
+ 0., 100.)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># create a curve and a vertex on it</p>\r
+\r
+<p class="whs1">Arc = geompy.MakeArc(py, \r
+ pz, px)</p>\r
+\r
+<p class="whs1">p_on_arc = geompy.MakeVertexOnCurve(Arc, \r
+ 0.25)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># add objects in the study</p>\r
+\r
+<p class="whs1">id_p0 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= \r
+ geompy.addToStudy(p0, &nbsp;&nbsp;&quot;Vertex \r
+ 0&quot;)</p>\r
+\r
+<p class="whs1">id_p100 &nbsp;&nbsp;&nbsp;&nbsp;= \r
+ geompy.addToStudy(p100, &quot;Vertex 100&quot;)</p>\r
+\r
+<p class="whs1">id_px &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= \r
+ geompy.addToStudy(px, &nbsp;&nbsp;&quot;Vertex \r
+ X&quot;)</p>\r
+\r
+<p class="whs1">id_py &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= \r
+ geompy.addToStudy(py, &nbsp;&nbsp;&quot;Vertex \r
+ Y&quot;)</p>\r
+\r
+<p class="whs1">id_pz &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= \r
+ geompy.addToStudy(pz, &nbsp;&nbsp;&quot;Vertex \r
+ Z&quot;)</p>\r
+\r
+<p class="whs1">id_Arc &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= \r
+ geompy.addToStudy(Arc, &nbsp;&quot;Arc&quot;)</p>\r
+\r
+<p class="whs1">id_p_on_arc = geompy.addToStudy(p_on_arc, \r
+ &quot;Vertex on Arc&quot;)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># display vertices</p>\r
+\r
+<p class="whs1">gg.createAndDisplayGO(id_p0)</p>\r
+\r
+<p class="whs1">gg.createAndDisplayGO(id_p100)</p>\r
+\r
+<p class="whs1">gg.createAndDisplayGO(id_Arc)</p>\r
+\r
+<p><span style="font-family: 'Lucida Console', monospace;">gg.createAndDisplayGO(id_p_on_arc)</span> \r
+ </p>\r
+\r
+<p>&nbsp;</p>\r
+\r
 <h3><a name=bookmark4>Creation of a Curve</a></h3>\r
 \r
 <p class="whs1">import geompy</p>\r
index 41bc118a80bb0dee1ed854f5c96d2ce152efab60..5fb5c5848b3099960fe5ec7376ac0da7d2feec00 100755 (executable)
@@ -20,7 +20,9 @@ p.whs3 { font-size:12pt; font-weight:bold; }
 p.whs4 { font-size:12pt; margin-left:40px; }\r
 img_whs5 { border:none; width:312px; height:346px; float:none; border-style:none; }\r
 img_whs6 { border:none; width:312px; height:359px; float:none; border-style:none; }\r
-img_whs7 { border:none; width:348px; height:321px; float:none; border-style:none; }\r
+p.whs7 { font-size:12pt; font-weight:normal; }\r
+img_whs8 { border:none; width:400px; height:359px; float:none; }\r
+img_whs9 { border:none; width:348px; height:321px; float:none; border-style:none; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
 <!--\r
@@ -134,9 +136,29 @@ if (window.writeIntopicBar)
 \r
 <p class="whs4"><b style="font-weight: bold;"><img src="pics/circle2.png" x-maintain-ratio="TRUE" width="312px" height="359px" border="0" class="img_whs6"></b></p>\r
 \r
+<p class="whs4">&nbsp;</p>\r
+\r
+<p class="whs7"><b style="font-weight: normal;">Finally, \r
+ you can define </b>a<span style="font-weight: bold;"><B> Circle</B></span> by \r
+ its Center and two<span style="font-weight: bold;"><B> Points</B></span>.<span \r
+ style="font-weight: bold;"> <B></B></span></p>\r
+\r
+<p class="whs3"><b>TUI Command:</b> &nbsp;<span \r
+ style="font-weight: normal; font-style: italic;"><I>geompy.MakeCircleCenter2Pnt(Point1, \r
+ Point2, Point3), </I></span><span style="font-weight: normal;">where Point1 \r
+ is the center of the circle, the distance between Point1 and Point2 is \r
+ the radius of the circle and Point3 helps to define the plain where the \r
+ circle lies. &nbsp;</span><span style="font-weight: normal; font-style: italic;"><I>&nbsp;</I></span>&nbsp;</p>\r
+\r
+<p class="whs4">&nbsp;</p>\r
+\r
+<p class="whs4"><img src="pics/circle3.png" x-maintain-ratio="TRUE" width="400px" height="359px" border="0" class="img_whs8"></p>\r
+\r
+<p class="whs4">&nbsp;</p>\r
+\r
 <p class="whs2">&nbsp;</p>\r
 \r
-<p class="whs4"><b style="font-weight: bold;"><img src="pics/circles.png" x-maintain-ratio="TRUE" width="348px" height="321px" border="0" class="img_whs7"></b></p>\r
+<p class="whs4"><b style="font-weight: bold;"><img src="pics/circles.png" x-maintain-ratio="TRUE" width="348px" height="321px" border="0" class="img_whs9"></b></p>\r
 \r
 <p>&nbsp;</p>\r
 \r
index 2cbd320c6bec0efa85d609558e428ece313653e2..491c7880f7f0caa7cf230cd46c0f8aced584b2ce 100755 (executable)
@@ -19,8 +19,8 @@ p.whs2 { font-size:12pt; }
 p.whs3 { font-size:12pt; margin-left:0in; margin-right:0in; margin-top:0px; margin-bottom:0px; }\r
 p.whs4 { font-size:12pt; margin-right:0in; margin-top:0px; margin-bottom:0px; margin-left:40px; }\r
 img_whs5 { border:none; width:312px; height:324px; float:none; border-style:none; }\r
-img_whs6 { border:none; border-style:none; width:253px; height:266px; float:none; }\r
-img_whs7 { border:none; border-style:none; float:none; width:234px; height:266px; }\r
+img_whs6 { border:none; width:253px; height:266px; float:none; border-style:none; }\r
+img_whs7 { border:none; float:none; width:234px; height:266px; border-style:none; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript">\r
 <!--\r
@@ -109,8 +109,7 @@ if (window.writeIntopicBar)
 <p class="whs3">&nbsp;</p>\r
 \r
 <p class="whs3"><b style="font-weight: bold;"><span style="font-weight: normal;">The</span> \r
- Result <span style="font-weight: normal;">will be a</span></b> GEOM_Object \r
- (COMPOUND).</p>\r
+ Result <span style="font-weight: normal;">will be any</span></b> GEOM_Object.</p>\r
 \r
 <p class="whs3"><span style="font-weight: bold;"><B>TUI Command:</B></span> \r
  &nbsp;<span style="font-style: italic;"><I>geompy.MakeCommon(s1, \r
index 7c41e1a56e98fbbe97af7ec8a1ce04bfe88ec5bd..fa03dafed5e89b54297ec0765e29c5d188e3af70 100755 (executable)
@@ -20,9 +20,8 @@ p.whs3 { font-weight:bold; }
 p.whs4 { margin-left:40px; }\r
 img_whs5 { border:none; width:312px; height:402px; float:none; border-style:none; }\r
 p.whs6 { font-weight:bold; margin-left:40px; }\r
-img_whs7 { border:none; width:312px; height:402px; float:none; border-style:none; }\r
-p.whs8 { font-size:12pt; margin-left:40px; }\r
-img_whs9 { border:none; width:276px; height:282px; float:none; border-style:none; }\r
+p.whs7 { font-size:12pt; margin-left:40px; }\r
+img_whs8 { border:none; width:276px; height:282px; float:none; border-style:none; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
 <!--\r
@@ -106,8 +105,8 @@ if (window.writeIntopicBar)
  the <span style="font-weight: bold;"><B>Height</B></span> and the first and the \r
  second <span style="font-weight: bold;"><B>Radiuses</B></span>. </p>\r
 \r
-<p><b style="font-weight: bold;">TUI Command:</b> <span style="font-style: italic;"><I>geompy.MakeCone(Point, \r
- Axis, Radius1, Radius2)</I></span></p>\r
+<p><b>TUI Command:</b> <span style="font-style: italic;"><I>geompy.MakeCone(Point, \r
+ Axis, Radius1, Radius2, Height)</I></span></p>\r
 \r
 <p class="whs3"><b style="font-weight: bold;">Arguments: \r
  </b><span style="font-size: 12pt; font-weight: normal;"><font size=3 style="font-size:12pt;">Name + 1 vertex \r
@@ -129,10 +128,11 @@ if (window.writeIntopicBar)
 <p><b style="font-weight: bold;">TUI Command:</b> <span style="font-style: italic;"><I>geompy.MakeConeR1R2H(Radius1, \r
  Radius2, Height)</I></span> </p>\r
 \r
-<p class="whs3"><b>Arguments: </b><span style="font-size: 12pt; font-weight: normal;"><font size=3 style="font-size:12pt;">Name \r
- + 3 values (Radius of the base part, radius of the upper part, height).</font></span></p>\r
+<p class="whs3"><b style="font-weight: bold;">Arguments: \r
+ </b><span style="font-size: 12pt; font-weight: normal;"><font size=3 style="font-size:12pt;">Name + 3 values \r
+ (Radius of the base part, radius of the upper part, height).</font></span></p>\r
 \r
-<p class="whs6"><img src="pics/cone2.png" x-maintain-ratio="TRUE" width="312px" height="402px" border="0" class="img_whs7"></p>\r
+<p class="whs6"><img src="pics/cone2.png" x-maintain-ratio="TRUE" width="312px" height="402px" border="0" class="img_whs5"></p>\r
 \r
 <p class="whs3">&nbsp;</p>\r
 \r
@@ -147,9 +147,9 @@ if (window.writeIntopicBar)
 \r
 <p>&nbsp;</p>\r
 \r
-<p class="whs8"><img src="pics/cones.png" x-maintain-ratio="TRUE" width="276px" height="282px" border="0" class="img_whs9"></p>\r
+<p class="whs7"><img src="pics/cones.png" x-maintain-ratio="TRUE" width="276px" height="282px" border="0" class="img_whs8"></p>\r
 \r
-<p class="whs8">&nbsp;</p>\r
+<p class="whs7">&nbsp;</p>\r
 \r
 <p class="whs2">Our TUI Scripts provide you with useful examples \r
  of creation of <a href="primitives.htm#bookmark4">Primitives</a>. </p>\r
index f279d0fb1487e77009b2c5a8b46608ccc5354941..4ac11d5037cff31fabd80163b5eca2b34d82b257 100755 (executable)
@@ -19,7 +19,7 @@ p.whs2 { font-size:12pt; }
 p.whs3 { font-size:12pt; margin-left:0in; margin-right:0in; margin-top:0px; margin-bottom:0px; }\r
 p.whs4 { font-size:12pt; margin-right:0in; margin-top:0px; margin-bottom:0px; margin-left:40px; }\r
 img_whs5 { border:none; width:312px; height:324px; float:none; border-style:none; }\r
-img_whs6 { border:none; border-style:none; width:253px; height:266px; float:none; }\r
+img_whs6 { border:none; width:253px; height:266px; float:none; border-style:none; }\r
 img_whs7 { border:none; width:231px; height:267px; float:none; border-style:none; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript">\r
@@ -106,8 +106,7 @@ if (window.writeIntopicBar)
  one.</p>\r
 \r
 <p class="whs3"><b style="font-weight: bold;"><span style="font-weight: normal;">The</span> \r
- Result <span style="font-weight: normal;">will be a</span> </b>&nbsp;GEOM_Object \r
- (COMPOUND).</p>\r
+ Result <span style="font-weight: normal;">will be any</span> </b>&nbsp;GEOM_Object.</p>\r
 \r
 <p class="whs3"><b style="font-weight: bold;">Arguments:</b> \r
  Name + 2 shapes.</p>\r
index bbde464f445937a00668ba625afe5685d574bfbe..e396ebedac4bed2ec67d0b6fc6d4864c7803ac09 100755 (executable)
@@ -112,9 +112,9 @@ if (window.writeIntopicBar)
  the </font></span><span style="font-size: 12pt; font-weight: bold;"><font size=3 style="font-size:12pt;"><B>Type of Subshapes</B></font></span><span \r
  style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> you wish to obtain from it</font></span><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;">.</font></span></p>\r
 \r
-<p class="whs5"><b style="font-weight: bold;"><span style="font-weight: normal;">The</span> \r
+<p class="whs5"><b><span style="font-weight: normal;">The</span> \r
  Result <span style="font-weight: normal;">of the operation will be a List</span> \r
- of</b> GEOM_Objects (edges, faces, solids or compsolids).</p>\r
+ of</b> GEOM_Objects (vertices, edges, wires, faces, shells or solids).</p>\r
 \r
 <p class="whs5">&nbsp;</p>\r
 \r
index 89faaaa712b254b22fc6c6617528d2506676855b..281482b73f09e63959696a3ffbc1cc0af8fb2d0d 100755 (executable)
@@ -105,15 +105,15 @@ if (window.writeIntopicBar)
 \r
 <p class="whs2"><b style="font-weight: bold;"><span style="font-weight: normal;">The</span> \r
  Result <span style="font-weight: normal;">of the operation will be a</span></b> \r
- GEOM_Object (edge, face, solid or compsolid).</p>\r
+ GEOM_Object (edge, face, shell, solid or compsolid).</p>\r
 \r
 <p class="whs2"><span style="font-weight: bold;"><B><b style="font-weight: bold;">TUI \r
  Command :</b><i> </i></B></span><span style="font-style: italic;"><I>geompy.MakePrismVecH(Base, \r
  Vector, Height)</I></span></p>\r
 \r
 <p class="whs2"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b style="font-weight: bold;">Arguments:</b> \r
- Name + 1 shape (vertex, edge, wire, face or shell) serving as base object \r
- + 1 vector (for direction of the extrusion) + 1 value (dimension).</font></span></p>\r
+ Name + 1 shape (vertex, edge, planar wire, face or shell) serving as base \r
object + 1 vector (for direction of the extrusion) + 1 value (dimension).</font></span></p>\r
 \r
 <p>&nbsp;</p>\r
 \r
index 86c6b79da004f24c5aa69e3210f89ab929986c93..142a9dda84507242651618145a64159e79cdc679 100755 (executable)
@@ -18,9 +18,8 @@ img_whs1 { width:20px; height:20px; border-style:none; }
 p.whs2 { font-size:12pt; }\r
 p.whs3 { font-size:12pt; margin-left:40px; }\r
 img_whs4 { border:none; width:312px; height:315px; float:none; border-style:none; }\r
-p.whs5 { font-size:12pt; font-style:italic; }\r
-img_whs6 { border:none; width:180px; height:180px; float:none; border-style:none; }\r
-img_whs7 { border:none; float:none; width:180px; height:180px; border-style:none; }\r
+img_whs5 { border:none; width:180px; height:180px; float:none; border-style:none; }\r
+img_whs6 { border:none; float:none; width:180px; height:180px; border-style:none; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
 <!--\r
@@ -91,10 +90,24 @@ if (window.writeIntopicBar)
 \r
 <p class="whs2"><b style="font-weight: bold;"><span style="font-weight: normal;">To \r
  create a </span><span style="font-weight: bold;"><B>Face</B></span><span style="font-weight: normal;"> \r
- you need to select a wire, whose elements will be connected so that the \r
- surface of the resulting object was minimal. Check </span><span style="font-weight: bold;"><B>Try \r
- to create a planar face</B></span><span style="font-weight: normal;"> to create \r
- a planar face or nothing if it is impossible.</span></b></p>\r
+ you need to select input shape(s). </span></b>The list of input shapes \r
+ can include shapes of any type; if the shapes are not wires or edges, \r
+ the algorithm extracts all edges from the input shapes and works on the \r
+ obtained edges. </p>\r
+\r
+<p class="whs2">The edges and wires do not necessary have to \r
+ be closed, the algorithm automatically builds a wire of maximum length \r
+ from all given edges and wires. If it founds multiple closed wires, it \r
+ can build a face with holes or some separate faces, depending on the placement \r
+ of the wires. If some resulting wires remain open, they will be added \r
+ in the resulting compound as is. </p>\r
+\r
+<p class="whs2">&nbsp;</p>\r
+\r
+<p class="whs2"><b style="font-weight: bold;"><span style="font-weight: normal;">Check \r
+ </span><span style="font-weight: bold;"><B>Try to create a planar face</B></span><span \r
+ style="font-weight: normal;"> to create a planar face or nothing if it \r
+ is impossible.</span></b></p>\r
 \r
 <p class="whs2"><b style="font-weight: bold;"><span style="font-weight: normal;">The</span> \r
  Result<span style="font-weight: normal;"> will be a</span></b> GEOM_Object \r
@@ -103,7 +116,8 @@ if (window.writeIntopicBar)
 <p class="whs2">&nbsp;</p>\r
 \r
 <p class="whs2"><b style="font-weight: bold;">TUI Command:</b><i> \r
- </i><span style="font-style: italic;"><I>geompy.MakeFace(Wire, isPlanarWanted</I></span>)</p>\r
+ </i><span style="font-style: italic;"><I>geompy.MakeFaceWires([list of shapes], \r
+ isPlanarWanted</I></span>)</p>\r
 \r
 <p class="whs2"><b style="font-weight: bold;">Arguments:</b> \r
  Name + 1 wire.</p>\r
@@ -114,28 +128,13 @@ if (window.writeIntopicBar)
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
-<p class="whs2">There are some advanced possibilities accessible \r
- only via<span style="font-weight: bold;"><B> TUI commands</B></span>.</p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<p class="whs2"><span style="font-style: italic;"><I>geompy.MakeFaceWires(Wires, \r
- isPlanarWanted)</I></span> - Creates a face on the given wires set. The argument \r
- is not a single wire, but a list of wires. </p>\r
-\r
-<p class="whs2"><span style="font-style: italic;"><I>geompy.MakeFaces(Wires, \r
- isPlanarWanted)</I></span> is a shortcut to <span style="font-style: italic;"><I>MakeFaceWires(). \r
- </I></span></p>\r
-\r
-<p class="whs5">&nbsp;</p>\r
-\r
 <p class="whs2">&nbsp;</p>\r
 \r
 <p class="whs2"><b style="font-weight: bold;">Example:</b></p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
-<p class="whs3"><img src="pics/facesn1.png" x-maintain-ratio="TRUE" width="180px" height="180px" border="0" class="img_whs6"> <img src="pics/facesn2.png" x-maintain-ratio="TRUE" width="180px" height="180px" border="0" class="img_whs6"> <img src="pics/facesn3.png" x-maintain-ratio="TRUE" width="180px" height="180px" border="0" class="img_whs7"></p>\r
+<p class="whs3"><img src="pics/facesn1.png" x-maintain-ratio="TRUE" width="180px" height="180px" border="0" class="img_whs5"> <img src="pics/facesn2.png" x-maintain-ratio="TRUE" width="180px" height="180px" border="0" class="img_whs5"> <img src="pics/facesn3.png" x-maintain-ratio="TRUE" width="180px" height="180px" border="0" class="img_whs6"></p>\r
 \r
 <p class="whs3">&nbsp;</p>\r
 \r
index b740fc8af7fcc6cb6ae7c1d4062b516ad1f78f38..db80433e93160d20d422709c0527ec08b695ec9d 100755 (executable)
@@ -20,9 +20,10 @@ p.whs3 { font-size:12pt; font-weight:normal; }
 img_whs4 { border:none; float:none; width:30px; height:30px; border-style:none; }\r
 p.whs5 { font-size:12pt; text-indent:2px; margin-right:0in; margin-top:0px; margin-bottom:0px; margin-left:48px; }\r
 p.whs6 { text-indent:2px; margin-right:0in; margin-top:0px; margin-bottom:0px; font-size:12pt; margin-left:48px; }\r
-p.whs7 { font-size:12pt; text-indent:2px; margin-left:0in; margin-right:0in; margin-top:0px; margin-bottom:0px; font-weight:normal; }\r
-p.whs8 { margin-left:48px; }\r
-p.whs9 { font-size:12pt; }\r
+p.whs7 { font-size:12pt; text-indent:2px; margin-right:0in; margin-top:0px; margin-bottom:0px; margin-left:0px; }\r
+p.whs8 { font-size:12pt; margin-right:0in; margin-top:0px; margin-bottom:0px; margin-left:48px; }\r
+p.whs9 { margin-left:48px; }\r
+p.whs10 { font-size:12pt; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript">\r
 <!--\r
@@ -33,7 +34,8 @@ if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
   strNSS += "p.whs2 {margin-left:1pt;margin-right:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
   strNSS += "p.whs5 {margin-right:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
   strNSS += "p.whs6 {margin-right:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
-  strNSS += "p.whs7 {margin-left:1pt;margin-right:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
+  strNSS += "p.whs7 {margin-right:1pt;margin-top:1pt;margin-bottom:1pt;margin-left:1pt; }";\r
+  strNSS += "p.whs8 {margin-right:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
   strNSS +="</style>";\r
   document.write(strNSS);\r
 }\r
@@ -104,7 +106,7 @@ if (window.writeIntopicBar)
 \r
 <p class="whs3"><b style="font-weight: bold;"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" x-save-file="TRUE" x-save-method="compute-relative" width="30px" height="30px" border="0" class="img_whs4"><span style="font-weight: normal;">You can use the following \r
  boolean operations for construction of more complex geometrical objects \r
- (2D &amp; 3D elements) :</span></b></p>\r
+ (2D &amp; 3D shapes) :</span></b></p>\r
 \r
 <p class="whs3">&nbsp;</p>\r
 \r
@@ -136,14 +138,41 @@ if (window.writeIntopicBar)
  all these operations, which can be used alongside with separate commands \r
  for each operation.</p>\r
 \r
-<p class="whs5"><span style="font-style: italic;"><I>geompy.MakeBoolean(Shape1, \r
- Shape2, Operation)</I></span>, where Shape1 is the first argument and Shape2 \r
- is the second argument of Boolean operation, Operation is a type of the \r
- Boolean operation (1 \96 Common, 2 \96 Cut, 3 \96 Fuse, 4 \96 Section).</p>\r
+<p class="whs8"><span style="font-style: italic;"><I>geompy.MakeBoolean(Shape1, \r
+ Shape2, Operation)</I></span>, where <span style="font-style: italic;"><I>Shape1</I></span> \r
+ is the first argument, <span style="font-style: italic;"><I>Shape2</I></span> \r
+ is the second argument of Boolean operation and <span style="font-style: italic;"><I>Operation</I></span> \r
+ is a type of the Boolean operation (1 \96 Common, 2 \96 Cut, 3 \96 Fuse, 4 \96 \r
+ Section).</p>\r
 \r
-<p class="whs8">&nbsp;</p>\r
+<p class="whs5">&nbsp;</p>\r
 \r
-<p class="whs9"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;">Our <span style="font-weight: bold;"><B>TUI \r
+<p class="whs7">Besides you can use advanced TUI commands \r
+ performing these operations independently from each other:</p>\r
+\r
+<p class="whs8"><span style="font-style: italic;"><I>geompy.MakeFuse(Shape1, \r
+ Shape2)</I></span>, where <span style="font-style: italic;"><I>Shape1</I></span> \r
+ is the first argument and <span style="font-style: italic;"><I>Shape2</I></span> \r
+ is the second argument of Fuse operation;</p>\r
+\r
+<p class="whs8"><span style="font-style: italic;"><I>geompy.MakeCommon(Shape1, \r
+ Shape2)</I></span>, where <span style="font-style: italic;"><I>Shape1</I></span> \r
+ is the first argument and <span style="font-style: italic;"><I>Shape2</I></span> \r
+ is the second argument of Common operation;</p>\r
+\r
+<p class="whs8"><span style="font-style: italic;"><I>geompy.MakeCut(Shape1, \r
+ Shape2)</I></span>, where <span style="font-style: italic;"><I>Shape1</I></span> \r
+ is the first argument and <span style="font-style: italic;"><I>Shape2</I></span> \r
+ is the second argument of Cut operation;</p>\r
+\r
+<p class="whs8"><span style="font-style: italic;"><I>geompy.MakeSection(Shape1, \r
+ Shape2)</I></span>, where <span style="font-style: italic;"><I>Shape1</I></span> \r
+ is the first argument and <span style="font-style: italic;"><I>Shape</I></span>2 \r
+ is the second argument of Section operation.</p>\r
+\r
+<p class="whs9">&nbsp;</p>\r
+\r
+<p class="whs10"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;">Our <span style="font-weight: bold;"><B>TUI \r
  Scripts</B></span> provide you with useful examples of the use of <a href="../boolean_operations.htm">Boolean \r
  Operations</a>. </font></span></p>\r
 \r
index 1479bff469fcfa4878a30303a8ee5c1c18017fea..93fa7491d0a3abcd2f18c123656a61c7b96f8105 100755 (executable)
@@ -21,35 +21,46 @@ A:link { color:#0000ff; }
 <!--\r
 p.whs1 { font-size:12pt; }\r
 img_whs2 { border:none; float:none; width:30px; height:30px; border-style:none; }\r
-p.whs3 { margin-left:40px; }\r
-img_whs4 { border:none; width:21px; height:19px; border-style:none; }\r
-p.whs5 { font-size:12pt; margin-left:40px; font-weight:bold; }\r
-img_whs6 { border:none; width:272px; height:303px; float:none; border-style:none; }\r
-p.whs7 { font-family:'Times New Roman' , serif; font-size:14pt; }\r
-img_whs8 { width:20px; height:20px; border-style:none; }\r
-p.whs9 { font-family:'Times New Roman' , serif; font-size:12pt; }\r
-img_whs10 { border:none; width:360px; height:307px; float:none; border-style:none; }\r
-p.whs11 { font-size:12pt; margin-left:40px; }\r
-img_whs12 { border:none; width:312px; height:367px; float:none; border-style:none; }\r
-p.whs13 { font-size:12pt; margin-left:400px; }\r
-img_whs14 { border:none; width:360px; height:333px; float:none; border-style:none; }\r
-p.whs15 { font-size:12pt; font-weight:bold; }\r
-img_whs16 { border:none; width:360px; height:328px; float:none; border-style:none; }\r
-p.whs17 { font-size:12pt; font-weight:normal; }\r
-img_whs18 { border:none; width:360px; height:290px; float:none; border-style:none; }\r
-img_whs19 { border:none; width:360px; height:405px; float:none; border-style:none; }\r
-img_whs20 { border:none; width:360px; height:337px; float:none; border-style:none; }\r
-p.whs21 { font-size:12pt; margin-left:40px; text-indent:-40px; }\r
-img_whs22 { border:none; width:25px; height:23px; border-style:none; }\r
-ul.whs23 { list-style:disc; }\r
-img_whs24 { border:none; width:329px; height:436px; float:none; border-style:none; }\r
+p.whs3 { font-size:12pt; margin-left:48px; }\r
+p.whs4 { margin-left:40px; }\r
+img_whs5 { border:none; width:21px; height:19px; border-style:none; }\r
+p.whs6 { font-size:12pt; margin-left:40px; font-weight:bold; }\r
+img_whs7 { border:none; width:272px; height:303px; float:none; border-style:none; }\r
+p.whs8 { font-family:'Times New Roman' , serif; font-size:14pt; }\r
+img_whs9 { width:20px; height:20px; border-style:none; }\r
+p.whs10 { font-family:'Times New Roman' , serif; font-size:12pt; }\r
+img_whs11 { border:none; width:360px; height:307px; float:none; border-style:none; }\r
+p.whs12 { font-size:12pt; margin-left:40px; }\r
+img_whs13 { border:none; width:312px; height:367px; float:none; border-style:none; }\r
+p.whs14 { font-size:12pt; margin-left:400px; }\r
+img_whs15 { border:none; width:360px; height:333px; float:none; border-style:none; }\r
+p.whs16 { font-size:14pt; }\r
+img_whs17 { border:none; width:22px; height:22px; border-style:none; }\r
+img_whs18 { border:none; width:243px; height:203px; float:none; border-style:none; }\r
+p.whs19 { font-size:12pt; margin-left:0px; }\r
+h1.whs20 { font-size:14pt; }\r
+img_whs21 { border:none; width:23px; height:22px; border-style:none; }\r
+p.whs22 { font-size:12pt; font-weight:normal; }\r
+img_whs23 { border:none; width:322px; height:163px; float:none; border-style:none; }\r
+p.whs24 { font-size:12pt; font-weight:bold; }\r
+img_whs25 { border:none; width:360px; height:328px; float:none; border-style:none; }\r
+img_whs26 { border:none; width:360px; height:370px; float:none; }\r
+p.whs27 { font-size:12pt; margin-left:40px; text-indent:-40px; }\r
+img_whs28 { border:none; width:24px; height:22px; border-style:none; }\r
+img_whs29 { border:none; width:360px; height:292px; float:none; }\r
+img_whs30 { border:none; width:360px; height:405px; float:none; border-style:none; }\r
+img_whs31 { border:none; width:360px; height:337px; float:none; border-style:none; }\r
+img_whs32 { border:none; width:25px; height:23px; border-style:none; }\r
+ul.whs33 { list-style:disc; }\r
+img_whs34 { border:none; width:329px; height:436px; float:none; border-style:none; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript">\r
 <!--\r
 if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
 {\r
   var strNSS = "<style type='text/css'>";\r
-  strNSS += "p.whs21 {text-indent:1pt; }";\r
+  strNSS += "p.whs19 {margin-left:1pt; }";\r
+  strNSS += "p.whs27 {text-indent:1pt; }";\r
   strNSS +="</style>";\r
   document.write(strNSS);\r
 }\r
@@ -134,15 +145,28 @@ if (window.writeIntopicBar)
        \r
        <li class=kadov-p><p class="whs1"><a href="#Inertia_axis">Inertia</a></p></li>\r
        \r
-       <li class=kadov-p><p class="whs1"><a href="#Bounding_box">Bounding \r
box</a></p></li>\r
+       <li class=kadov-p><p class="whs1"><a href="#free_boundaries">Check \r
free boundaries</a></p></li>\r
        \r
-       <li class=kadov-p><p class="whs1"><a href="#Min_distance">Min. \r
distance</a></p></li>\r
+       <li class=kadov-p><p class="whs1"><a href="#free_faces">Check \r
free faces</a></p></li>\r
        \r
-       <li class=kadov-p><p class="whs1"><a href="#Tolerance">Tolerance</a></p></li>\r
+       <li class=kadov-p><p class="whs1">Dimensions:</p></li>\r
        \r
-       <li class=kadov-p><p class="whs1"><a href="#Whatis">WhatIs</a></p></li>\r
+       <li class=kadov-p><p class="whs3"><a \r
+ href="#Bounding_box">Bounding box</a></p></li>\r
+       \r
+       <li class=kadov-p><p class="whs3"><a \r
+ href="#Min_distance">Min. distance</a></p></li>\r
+       \r
+       <li class=kadov-p><p class="whs3"><a \r
+ href="#Angle">Angle</a></p></li>\r
+       \r
+       <li class=kadov-p><p class="whs1"><a href="#Tolerance">Compute \r
+ Tolerance</a></p></li>\r
+       \r
+       <li class=kadov-p><p class="whs1"><a href="#Whatis">What \r
+ is</a></p></li>\r
        \r
        <li class=kadov-p><p class="whs1"><a href="#check">Check</a></p></li>\r
        \r
@@ -163,14 +187,14 @@ if (window.writeIntopicBar)
 \r
 <p class=TODO>&nbsp;</p>\r
 \r
-<p class="whs3">In the main menu select <span style="font-weight: bold;"><B>Measures \r
+<p class="whs4">In the main menu select <span style="font-weight: bold;"><B>Measures \r
  </B></span>submenu.</p>\r
 \r
-<p class="whs3">&nbsp;</p>\r
+<p class="whs4">&nbsp;</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs1"><a name=PointCoord>&nbsp;<img src="../image49.gif" width="21px" height="19px" border="0" class="img_whs4"> <span style="font-weight: bold; font-size: 14pt;"><font size=4 style="font-size:14pt;"><B>Point coordinates</B></font></span></a></p>\r
+<p class="whs1"><a name=PointCoord>&nbsp;<img src="../image49.gif" width="21px" height="19px" border="0" class="img_whs5"> <span style="font-weight: bold; font-size: 14pt;"><font size=4 style="font-size:14pt;"><B>Point coordinates</B></font></span></a></p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
@@ -188,18 +212,18 @@ if (window.writeIntopicBar)
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs5"><img src="../pics/measures1.png" x-maintain-ratio="TRUE" width="272px" height="303px" border="0" class="img_whs6"></p>\r
+<p class="whs6"><img src="../pics/measures1.png" x-maintain-ratio="TRUE" width="272px" height="303px" border="0" class="img_whs7"></p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs7"><b style="font-weight: bold;"><a \r
+<p class="whs8"><b style="font-weight: bold;"><a \r
  NAME=Basic_properties\r
-       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image71.gif" width="20px" height="20px" border="0" class="img_whs8"> Basic properties</a></b> \r
+       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image71.gif" width="20px" height="20px" border="0" class="img_whs9"> Basic properties</a></b> \r
  </p>\r
 \r
-<p class="whs9">&nbsp;</p>\r
+<p class="whs10">&nbsp;</p>\r
 \r
 <p class="whs1">Returns the properties (Length, Surface &amp; \r
  Volume) for the selected geometrical object.</p>\r
@@ -215,17 +239,17 @@ if (window.writeIntopicBar)
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs3"><img src="../pics/neo-basicprop.png" x-maintain-ratio="TRUE" width="360px" height="307px" border="0" class="img_whs10"></p>\r
+<p class="whs4"><img src="../pics/neo-basicprop.png" x-maintain-ratio="TRUE" width="360px" height="307px" border="0" class="img_whs11"></p>\r
 \r
 <p>&nbsp;</p>\r
 \r
 <p>&nbsp;</p>\r
 \r
-<p class="whs7"><a name=Center_gravity\r
-       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image72.gif" width="20px" height="20px" border="0" class="img_whs8"><b style="font-size: 14pt;"> \r
+<p class="whs8"><a name=Center_gravity\r
+       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image72.gif" width="20px" height="20px" border="0" class="img_whs9"><b style="font-size: 14pt;"> \r
  Center of mass</b></a></p>\r
 \r
-<p class="whs9">&nbsp;</p>\r
+<p class="whs10">&nbsp;</p>\r
 \r
 <p class="whs1">Calculates and returns the coordinates of the \r
  gravity center for the selected geometrical object.</p>\r
@@ -241,18 +265,18 @@ if (window.writeIntopicBar)
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs11"><img src="../pics/measures3.png" x-maintain-ratio="TRUE" width="312px" height="367px" border="0" class="img_whs12"></p>\r
+<p class="whs12"><img src="../pics/measures3.png" x-maintain-ratio="TRUE" width="312px" height="367px" border="0" class="img_whs13"></p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs7">&nbsp;</p>\r
+<p class="whs8">&nbsp;</p>\r
 \r
-<p class="whs7"><a NAME=Inertia_axis\r
-       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image73.gif" width="20px" height="20px" border="0" class="img_whs8"><b><font style="font-size: 14pt;"\r
+<p class="whs8"><a NAME=Inertia_axis\r
+       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image73.gif" width="20px" height="20px" border="0" class="img_whs9"><b><font style="font-size: 14pt;"\r
                                                                                                                size=4> Inertia</font></b></a> \r
  </p>\r
 \r
-<p class="whs7">&nbsp;</p>\r
+<p class="whs8">&nbsp;</p>\r
 \r
 <p class="whs1">Returns the axis of inertia for the selected \r
  geometrical object.</p>\r
@@ -263,13 +287,13 @@ if (window.writeIntopicBar)
  the matrix and moments of inertia in the form of Python Tuple (I11, I12, \r
  I13, </p>\r
 \r
-<p class="whs13">&nbsp;I21, \r
+<p class="whs14">&nbsp;I21, \r
  I22, I23, </p>\r
 \r
-<p class="whs13">&nbsp;I31, \r
+<p class="whs14">&nbsp;I31, \r
  I32, I33,</p>\r
 \r
-<p class="whs13"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;">&nbsp;Ix, \r
+<p class="whs14"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;">&nbsp;Ix, \r
  Iy, Iz)</font></span>.</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
@@ -279,20 +303,66 @@ if (window.writeIntopicBar)
  Shape is a shape for which a matrix of inertia and moment of inertia are \r
  returned.</p>\r
 \r
-<p class="whs11">&nbsp;</p>\r
+<p class="whs12">&nbsp;</p>\r
+\r
+<p class="whs12"><img src="../pics/measures4.png" x-maintain-ratio="TRUE" width="360px" height="333px" border="0" class="img_whs15"></p>\r
+\r
+<p class="whs1">&nbsp;</p>\r
+\r
+<p class="whs16"><b style="font-weight: normal;"><a name=free_boundaries\r
+       style="font-size: 14pt;"><img src="../image44.gif" width="22px" height="22px" border="0" class="img_whs17"><span style="font-weight: bold; font-size: 14pt;"><font size=4 style="font-size:14pt;"><B>Check \r
+ Free Boundaries </B></font></span></a></b></p>\r
+\r
+<p class="whs1">&nbsp;</p>\r
+\r
+<p class="whs1">Detects and highlights wires and edges that \r
+ correspond to the shape's boundary.</p>\r
+\r
+<p class="whs1">&nbsp;</p>\r
+\r
+<p class="whs1"><b style="font-weight: bold;">TUI Command :</b><i><span \r
+ style="font-style: italic;"> <I></i>(NoError, ClosedWires, OpenWires) = geompy.GetFreeBoundary(Shape)</I></span>, \r
+ where Shape is a shape to be checked, NoError is false if an error occurred \r
+ while checking free boundaries, ClosedWires is a list of closed free boundary \r
+ wires, OpenWires is a list of open free boundary wires.</p>\r
+\r
+<p class="whs1">&nbsp;</p>\r
+\r
+<p class="whs6"><img src="../pics/repair9.png" x-maintain-ratio="TRUE" width="243px" height="203px" border="0" class="img_whs18"></p>\r
+\r
+<p class="whs19">&nbsp;</p>\r
 \r
-<p class="whs11"><img src="../pics/measures4.png" x-maintain-ratio="TRUE" width="360px" height="333px" border="0" class="img_whs14"></p>\r
+<h1 class="whs20"><a name=free_faces><img src="../image10.gif" width="23px" height="22px" border="0" class="img_whs21"> Check Free \r
+ Faces</a></h1>\r
+\r
+<p class="whs1">Detects and highlights all free faces of a \r
+ given shape. A free face is a face not shared between two shells of the \r
+ shape. </p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
+<p class="whs1"><b style="font-weight: bold;">Result<span style="font-weight: normal;">: \r
+ </span></b><b><span style="font-weight: normal;">a list of IDs of all \r
+ free faces of the shape</span><span style="font-weight: bold;"><B>. </B></span></b></p>\r
+\r
+<p class="whs1"><b style="font-weight: bold;">TUI Command :</b><i><span \r
+ style="font-style: italic;"> <I></i>GetFreeFacesIDs(Shape)</I></span>, where \r
+ Shape is a shape to be checked.</p>\r
+\r
+<p class="whs22">&nbsp;</p>\r
+\r
+<p class="whs12"><img src="../pics/repair10.png" x-maintain-ratio="TRUE" width="322px" height="163px" border="0" class="img_whs23"></p>\r
+\r
+<p class="whs19">&nbsp;</p>\r
+\r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs7"><a NAME=Bounding_box\r
-       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image74.gif" width="20px" height="20px" border="0" class="img_whs8"><b><font style="font-size: 14pt;"\r
+<p class="whs8"><a NAME=Bounding_box\r
+       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image74.gif" width="20px" height="20px" border="0" class="img_whs9"><b><font style="font-size: 14pt;"\r
                                                                                                                size=4> Bounding \r
  box</font></b></a> </p>\r
 \r
-<p class="whs7">&nbsp;</p>\r
+<p class="whs8">&nbsp;</p>\r
 \r
 <p class="whs1">Returns the dimensions of the bounding box \r
  for the selected geometrical object.</p>\r
@@ -303,46 +373,65 @@ if (window.writeIntopicBar)
  the dimensions of the bounding box of a geometrical object in the form \r
  of Python Tuple (Xmin, Xmax, Ymin, Ymax, Zmin, Zmax).</p>\r
 \r
-<p class="whs15">TUI command: <span style="font-weight: normal; font-style: italic;"><I>geompy.BoundingBox(Shape)</I></span><span \r
+<p class="whs24">TUI command: <span style="font-weight: normal; font-style: italic;"><I>geompy.BoundingBox(Shape)</I></span><span \r
  style="font-weight: normal;">, where Shape is a shape for which a bounding \r
  box is computed.</span></p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs11"><img src="../pics/measures5.png" x-maintain-ratio="TRUE" width="360px" height="328px" border="0" class="img_whs16"></p>\r
+<p class="whs12"><img src="../pics/measures5.png" x-maintain-ratio="TRUE" width="360px" height="328px" border="0" class="img_whs25"></p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs7"><a NAME=Min_distance\r
-       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image75.gif" width="20px" height="20px" border="0" class="img_whs8"><b><font style="font-size: 14pt;"\r
+<p class="whs8"><a NAME=Min_distance\r
+       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image75.gif" width="20px" height="20px" border="0" class="img_whs9"><b><font style="font-size: 14pt;"\r
                                                                                                                size=4> Min. distance</font></b></a></p>\r
 \r
-<p class="whs7">&nbsp;</p>\r
+<p class="whs8">&nbsp;</p>\r
 \r
 <p class="whs1">Returns the minimum distance between two geometrical \r
- objects.</p>\r
+ objects and the components of the vector of minimum distance.</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs15">TUI command: <span style="font-weight: normal; font-style: italic;"><I>geompy.MinDistance(Shape1, \r
+<p class="whs24">TUI command: <span style="font-weight: normal; font-style: italic;"><I>geompy.MinDistance(Shape1, \r
  Shape2)</I></span><span style="font-weight: normal;">, where Shape1 and Shape2 \r
- are shapes between which the minimal distance computed.</span></p>\r
+ are shapes between which the minimal distance is computed.</span></p>\r
 \r
-<p class="whs17">&nbsp;</p>\r
+<p class="whs22">&nbsp;</p>\r
 \r
-<p class="whs11"><img src="../pics/distance.png" x-maintain-ratio="TRUE" width="360px" height="290px" border="0" class="img_whs18"></p>\r
+<p class="whs12"><img src="../pics/distance.png" x-maintain-ratio="TRUE" width="360px" height="370px" border="0" class="img_whs26"></p>\r
+\r
+<p class="whs12">&nbsp;</p>\r
+\r
+<p class="whs12">&nbsp;</p>\r
+\r
+<p class="whs27"><a name=Angle><img src="../image39.gif" width="24px" height="22px" border="0" class="img_whs28"><span style="font-size: 14pt; font-weight: bold;"><font size=4 style="font-size:14pt;"><B>Angle</B></font></span></a></p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
+<p class="whs1">Returns the angle between lines and linear \r
+ edges.</p>\r
+\r
+<p class="whs24">&nbsp;</p>\r
+\r
+<p class="whs24">TUI command: <span style="font-weight: normal; font-style: italic;"><I>geompy.GetAngle(shape1, \r
+ shape2)</I></span><span style="font-weight: normal;">, where Shape1 and Shape2 \r
+ are shapes between which the angle is computed.</span></p>\r
+\r
+<p class="whs24">&nbsp;</p>\r
+\r
+<p class="whs4"><img src="../pics/angle.png" x-maintain-ratio="TRUE" width="360px" height="292px" border="0" class="img_whs29">&nbsp; </p>\r
+\r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs7"><a NAME=Tolerance\r
-       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image76.gif" width="20px" height="20px" border="0" class="img_whs8"><b style="font-size: 14pt;"> \r
+<p class="whs8"><a NAME=Tolerance\r
+       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image76.gif" width="20px" height="20px" border="0" class="img_whs9"><b style="font-size: 14pt;"> \r
  Tolerance</b></a> </p>\r
 \r
-<p class="whs9">&nbsp;</p>\r
+<p class="whs10">&nbsp;</p>\r
 \r
 <p class="whs1">Returns the maximum and the minimum tolerance \r
  for the selected geometrical object.</p>\r
@@ -353,23 +442,23 @@ if (window.writeIntopicBar)
  the tolerance values (FaceMinTol, FaceMaxTol, EgdeMinTol, EgdeMaxTol, \r
  VertexMinTol, VertexMaxTol).</p>\r
 \r
-<p class="whs15">TUI command: <span style="font-weight: normal; font-style: italic;"><I>geompy.Tolerance(Shape)</I></span><span \r
+<p class="whs24">TUI command: <span style="font-weight: normal; font-style: italic;"><I>geompy.Tolerance(Shape)</I></span><span \r
  style="font-weight: normal;">, where Shape is a shape for which minimal \r
  and maximal tolerances are returned.</span></p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs11"><img src="../pics/new-tolerance.png" x-maintain-ratio="TRUE" width="360px" height="328px" border="0" class="img_whs16"></p>\r
+<p class="whs12"><img src="../pics/new-tolerance.png" x-maintain-ratio="TRUE" width="360px" height="328px" border="0" class="img_whs25"></p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs7"><a NAME=Whatis><span \r
- style="font-size: 14pt;"><font size=4 style="font-size:14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image77.gif" width="20px" height="20px" border="0" class="img_whs8"><b style="font-size: 14pt;"> WhatIs</b></a> \r
+<p class="whs8"><a NAME=Whatis><span \r
+ style="font-size: 14pt;"><font size=4 style="font-size:14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image77.gif" width="20px" height="20px" border="0" class="img_whs9"><b style="font-size: 14pt;"> WhatIs</b></a> \r
  </font></span></p>\r
 \r
-<p class="whs9">&nbsp;</p>\r
+<p class="whs10">&nbsp;</p>\r
 \r
 <p class="whs1">Displays types and quantities of all elements \r
  composing the selected geometrical object.</p>\r
@@ -382,18 +471,18 @@ if (window.writeIntopicBar)
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs11"><img src="../pics/measures8.png" x-maintain-ratio="TRUE" width="360px" height="405px" border="0" class="img_whs19"></p>\r
+<p class="whs12"><img src="../pics/measures8.png" x-maintain-ratio="TRUE" width="360px" height="405px" border="0" class="img_whs30"></p>\r
 \r
-<p class="whs11">&nbsp;</p>\r
+<p class="whs12">&nbsp;</p>\r
 \r
-<p class="whs11">&nbsp;</p>\r
+<p class="whs12">&nbsp;</p>\r
 \r
-<p class="whs7"><a NAME=check\r
-       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image78.gif" width="20px" height="20px" border="0" class="img_whs8"><b><font style="font-size: 14pt;"\r
+<p class="whs8"><a NAME=check\r
+       style="font-size: 14pt;"><img src="salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image78.gif" width="20px" height="20px" border="0" class="img_whs9"><b><font style="font-size: 14pt;"\r
                                                                                                                size=4> Check</font></b></a> \r
  </p>\r
 \r
-<p class="whs7">&nbsp;</p>\r
+<p class="whs8">&nbsp;</p>\r
 \r
 <p class="whs1">Checks the topology of the selected geometrical \r
  object and returns True if it is valid. <span style="font-weight: bold;"><B>Check \r
@@ -404,27 +493,27 @@ if (window.writeIntopicBar)
 <p class="whs1"><b style="font-weight: bold;">Result:</b> Boolean.</p>\r
 \r
 <p class="whs1"><b style="font-weight: bold;">TUI Command:</b><i> \r
- </i><span style="font-style: italic;"><I>geompy.(theShape, theIsCheckGeom \r
+ </i><span style="font-style: italic;"><I>geompy.CheckShape(theShape, theIsCheckGeom \r
  = 0)</I></span>, where is shape which is checked for validity.</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs11"><img src="../pics/measures9.png" x-maintain-ratio="TRUE" width="360px" height="337px" border="0" class="img_whs20"></p>\r
+<p class="whs12"><img src="../pics/measures9.png" x-maintain-ratio="TRUE" width="360px" height="337px" border="0" class="img_whs31"></p>\r
 \r
-<p class="whs21">&nbsp;</p>\r
+<p class="whs27">&nbsp;</p>\r
 \r
-<p class="whs21">&nbsp;</p>\r
+<p class="whs27">&nbsp;</p>\r
 \r
-<p class="whs21"><a name=Check_comp_blocks><img src="../image27.gif" width="25px" height="23px" border="0" class="img_whs22"> <span style="font-size: 14pt; font-weight: bold;"><font size=4 style="font-size:14pt;"><B>Check compound \r
+<p class="whs27"><a name=Check_comp_blocks><img src="../image27.gif" width="25px" height="23px" border="0" class="img_whs32"> <span style="font-size: 14pt; font-weight: bold;"><font size=4 style="font-size:14pt;"><B>Check compound \r
  of blocks</B></font></span></a></p>\r
 \r
-<p class="whs21">&nbsp;</p>\r
+<p class="whs27">&nbsp;</p>\r
 \r
 <p class="whs1">Checks whether a shape is a compound of glued \r
  blocks. To be considered as a compound of blocks, the given shape must \r
  satisfy the following conditions:</p>\r
 \r
-<ul type="disc" class="whs23">\r
+<ul type="disc" class="whs33">\r
        \r
        <li class=kadov-p><p class="whs1">&nbsp;Each \r
  element of the compound should be a Block (6 faces and 12 edges);</p></li>\r
@@ -444,7 +533,7 @@ if (window.writeIntopicBar)
 \r
 <p class="whs1">Informs of the following possible errors:</p>\r
 \r
-<ul type="disc" class="whs23">\r
+<ul type="disc" class="whs33">\r
        \r
        <li class=kadov-p><p class="whs1">not a block,</p></li>\r
        \r
@@ -467,11 +556,11 @@ if (window.writeIntopicBar)
  a valid compound of blocks. If it is true, then the validity flag is returned, \r
  and encountered errors are printed in the python console.</p>\r
 \r
-<p class="whs11">&nbsp;</p>\r
+<p class="whs12">&nbsp;</p>\r
 \r
-<p class="whs11"><img src="../pics/measures10.png" x-maintain-ratio="TRUE" width="329px" height="436px" border="0" class="img_whs24"></p>\r
+<p class="whs12"><img src="../pics/measures10.png" x-maintain-ratio="TRUE" width="329px" height="436px" border="0" class="img_whs34"></p>\r
 \r
-<p class="whs11">&nbsp;</p>\r
+<p class="whs12">&nbsp;</p>\r
 \r
 <script type="text/javascript" language="javascript1.2">\r
 <!--\r
index d8eb90cdb55d76c17da4670330117447dea7624b..131931ac47602aaaf24983728ce9d9a909a2024f 100755 (executable)
@@ -17,10 +17,11 @@ if (navigator.appName !="Netscape")
 img_whs1 { width:20px; height:20px; border-style:none; }\r
 p.whs2 { font-size:12pt; }\r
 p.whs3 { font-size:12pt; margin-left:0in; margin-right:0in; margin-top:0px; margin-bottom:0px; }\r
-p.whs4 { font-size:12pt; margin-right:0in; margin-top:0px; margin-bottom:0px; margin-left:40px; }\r
-img_whs5 { border:none; width:312px; height:324px; float:none; border-style:none; }\r
-p.whs6 { list-style:disc; margin-right:0in; margin-top:0px; margin-bottom:0px; margin-left:40px; }\r
-img_whs7 { border:none; float:none; width:252px; height:265px; border-style:none; }\r
+p.whs4 { font-size:12pt; margin-left:0in; margin-right:0in; margin-top:0px; margin-bottom:0px; font-weight:bold; }\r
+p.whs5 { font-size:12pt; margin-right:0in; margin-top:0px; margin-bottom:0px; margin-left:40px; }\r
+img_whs6 { border:none; width:312px; height:324px; float:none; border-style:none; }\r
+p.whs7 { list-style:disc; margin-right:0in; margin-top:0px; margin-bottom:0px; margin-left:40px; }\r
+img_whs8 { border:none; float:none; width:252px; height:265px; border-style:none; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript">\r
 <!--\r
@@ -28,8 +29,9 @@ if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
 {\r
   var strNSS = "<style type='text/css'>";\r
   strNSS += "p.whs3 {margin-left:1pt;margin-right:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
-  strNSS += "p.whs4 {margin-right:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
-  strNSS += "p.whs6 {margin-right:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
+  strNSS += "p.whs4 {margin-left:1pt;margin-right:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
+  strNSS += "p.whs5 {margin-right:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
+  strNSS += "p.whs7 {margin-right:1pt;margin-top:1pt;margin-bottom:1pt; }";\r
   strNSS +="</style>";\r
   document.write(strNSS);\r
 }\r
@@ -107,11 +109,10 @@ if (window.writeIntopicBar)
  style="font-weight: normal;">This operation creates a shape from two</span> \r
  </b>shapes.</font></span></p>\r
 \r
-<p class="whs3">&nbsp;</p>\r
+<p class="whs4">&nbsp;</p>\r
 \r
-<p class="whs3"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b style="font-weight: bold;"><span \r
- style="font-weight: normal;">The</span> Result<span style="font-weight: normal;"> \r
- will be a</span></b> GEOM_Object (COMPOUND).</font></span></p>\r
+<p class="whs3"><b><span style="font-weight: normal;">The</span> \r
+ Result<span style="font-weight: normal;"> will be any</span></b> GEOM_Object.</p>\r
 \r
 <p class="whs3"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b style="font-weight: bold;">Arguments:</b> \r
  Name + 2 shapes.</font></span></p>\r
@@ -124,15 +125,15 @@ if (window.writeIntopicBar)
 \r
 <p class="whs3">&nbsp;</p>\r
 \r
-<p class="whs4"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><img src="pics/bool1.png" x-maintain-ratio="TRUE" width="312px" height="324px" border="0" class="img_whs5"></font></span></p>\r
+<p class="whs5"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><img src="pics/bool1.png" x-maintain-ratio="TRUE" width="312px" height="324px" border="0" class="img_whs6"></font></span></p>\r
 \r
 <p class="whs3">&nbsp;</p>\r
 \r
 <p class="whs3"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b style="font-weight: bold;">Example:</b></font></span></p>\r
 \r
-<p class="whs6">&nbsp;</p>\r
+<p class="whs7">&nbsp;</p>\r
 \r
-<p class="whs6"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><img src="pics/fusesn1.png" x-maintain-ratio="TRUE" width="252px" height="265px" border="0" class="img_whs7"> &nbsp;<img src="pics/fusesn2.png" x-maintain-ratio="TRUE" width="252px" height="265px" border="0" class="img_whs7"></font></span></p>\r
+<p class="whs7"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><img src="pics/fusesn1.png" x-maintain-ratio="TRUE" width="252px" height="265px" border="0" class="img_whs8"> &nbsp;<img src="pics/fusesn2.png" x-maintain-ratio="TRUE" width="252px" height="265px" border="0" class="img_whs8"></font></span></p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
index fadb7357c043d889bac59c5741453568eb07dce7..483d47a53de19a40fc95ecd764183c27cf7074a0 100755 (executable)
@@ -202,319 +202,331 @@ working_with_groups.htm
 ehelp.xml\r
 index.glo\r
 default.css\r
-pics\image86.gif\r
-pics\image103.gif\r
-pics\image97.gif\r
+pics\arc2.png\r
+image26.gif\r
+pics\image102.gif\r
+pics\free_boudaries2.png\r
 pics\chamfer_all.png\r
-pics\edgesn.png\r
-pics\boxes.png\r
-pics\mtrans1.png\r
-pics\transformation3.png\r
+pics\fillet_all.png\r
+pics\mirror_pointsn1.png\r
+pics\multi_transformationsn1d.png\r
+pics\archimedesn3.png\r
+pics\colorsn.png\r
+pics\facesn3.png\r
+pics\arcsn.png\r
+pics\measures8.png\r
+pics\bool1.png\r
+pics\mtransf1.png\r
+pics\fillet1.png\r
+pics\archimede.png\r
+pics\box2.png\r
+image59.gif\r
+image37.gif\r
+files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image74.gif\r
+files\salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image3.gif\r
+pics\transformation4a.png\r
+pics\view_rotation_point.png\r
+image38.gif\r
+pics\clipping.png\r
+pics\image103.gif\r
+pics\image95.gif\r
+pics\mirror_pointsn2.png\r
+pics\solidsn.png\r
+pics\cones.png\r
+pics\measures9.png\r
+pics\bool2.png\r
 pics\mtransf2.png\r
-image15.jpg\r
+pics\fillet2.png\r
+pics\workplane4.png\r
+image27.gif\r
 image204.jpg\r
-image56.gif\r
-files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image73.gif\r
+image49.gif\r
+files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image75.gif\r
 files\salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image4.gif\r
-salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image17.gif\r
-pics\view_rotation_point.png\r
-pics\clipping.png\r
-pics\image98.gif\r
-pics\archimedesn1.png\r
-pics\neo-basicprop.png\r
-pics\mtrans2.png\r
-pics\transformation4.png\r
+files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image29.gif\r
+image39.gif\r
+image1.jpg\r
+pics\image96.gif\r
+image28.gif\r
+pics\multi_translation_initialsn.png\r
+pics\lines.png\r
+pics\neo-localcs1.png\r
+pics\neo-transparency.png\r
+pics\bool3.png\r
 pics\mtransf3.png\r
-pics\plane1.png\r
-image16.jpg\r
-image57.gif\r
-image35.gif\r
-files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image74.gif\r
-salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image18.gif\r
+pics\fillet3.png\r
+pics\workplane5.png\r
+files\salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image128.gif\r
+files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image76.gif\r
+image2.jpg\r
+image18.gif\r
+pics\image86.gif\r
 pics\image105.gif\r
-pics\image99.gif\r
-pics\image88.gif\r
-pics\image77.gif\r
-pics\suppress_faces1.png\r
+pics\image97.gif\r
+pics\geomexport.png\r
 pics\mirror_axissn1.png\r
-pics\archimedesn2.png\r
-pics\revolutionsn.png\r
-pics\ellipsesn.png\r
-pics\transformation10.png\r
-pics\transformation5.png\r
+pics\neo-scetcher1.png\r
+pics\neo-localcs2.png\r
 pics\mtransf4.png\r
-pics\plane2.png\r
+pics\editgroup.png\r
+pics\cone1.png\r
+pics\workplane6.png\r
 image206.jpg\r
-files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image75.gif\r
-files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image30.gif\r
-salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image19.gif\r
-image26.gif\r
-image1.jpg\r
+image29.gif\r
+files\salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image129.gif\r
+files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image77.gif\r
+pics\arcsn1.png\r
 pics\image106.gif\r
-pics\image89.gif\r
-pics\suppress_faces2.png\r
-pics\multi_translation1dsn.png\r
+pics\image98.gif\r
+pics\geomcreategroup.png\r
+pics\fillet_prism.png\r
 pics\mirror_axissn2.png\r
-pics\multi_transformationsn2d.png\r
-pics\archimedesn3.png\r
-pics\wiresn.png\r
-pics\transformation11.png\r
-pics\transformation6.png\r
-pics\block1.png\r
+pics\disp_mode1sn.png\r
+pics\neo-obj1.png\r
+pics\neo-scetcher2.png\r
+pics\neo-localcs3.png\r
+pics\mtrans1.png\r
 pics\pipe.png\r
-pics\torus1.png\r
-pics\plane3.png\r
-image59.gif\r
-image37.gif\r
-files\salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image87.gif\r
-files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image76.gif\r
-files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image31.gif\r
-image38.gif\r
-pics\multi_transformationsn1d.png\r
-pics\fillingsn.png\r
-pics\spheres.png\r
+pics\cone2.png\r
+files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image78.gif\r
+image3.jpg\r
+pics\arcsn2.png\r
+image1.gif\r
+pics\image99.gif\r
+pics\image88.gif\r
+pics\image77.gif\r
+pics\glue_faces1.png\r
+pics\multi_translation2dsn.png\r
+pics\mirror_planesn1.png\r
+pics\block_explodesn.png\r
+pics\disp_mode2sn.png\r
+pics\plane_on_face.png\r
+pics\bezier.png\r
 pics\polyline.png\r
-pics\neo-obj1.png\r
-pics\repair1.png\r
-pics\transformation7.png\r
-pics\block2.png\r
-pics\torus2.png\r
-image27.gif\r
+pics\neo-obj2.png\r
+pics\mtrans2.png\r
+pics\transformation1.png\r
+files\salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image119.gif\r
+files\salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image87.gif\r
+image2.gif\r
+pics\image89.gif\r
+pics\glue_faces2.png\r
+pics\mirror_planesn2.png\r
+pics\cutsn.png\r
+pics\transparencysn.png\r
+pics\edgesn.png\r
+pics\ellipsesn.png\r
+pics\neo-obj3.png\r
+pics\transformation10.png\r
+pics\transformation2.png\r
 image180.jpg\r
-image49.gif\r
 image109.jpg\r
-files\salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image131.gif\r
-files\salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image119.gif\r
 files\salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image88.gif\r
-files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image77.gif\r
-files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image32.gif\r
-image28.gif\r
-selectcolor.png\r
-pics\glue_faces1.png\r
-pics\supp_int_wires1.png\r
-pics\fusesn1.png\r
-pics\transparencysn.png\r
-pics\arcsn.png\r
-pics\points.png\r
-pics\neo-obj2.png\r
-pics\neo-localcs1.png\r
-pics\measures10.png\r
-pics\repair2.png\r
-pics\transformation8.png\r
-pics\block3.png\r
+files\salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image56.gif\r
+pics\glue_faces3.png\r
+pics\neo-isos.png\r
+pics\rotationsn1.png\r
+pics\fillingsn.png\r
+pics\spheres.png\r
+pics\neo-obj4.png\r
+pics\transformation11.png\r
+pics\transformation3.png\r
+image3.gif\r
 image181.jpg\r
-files\salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image132.gif\r
 files\salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image89.gif\r
-files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image78.gif\r
-image3.jpg\r
-files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image33.gif\r
-image18.gif\r
-image1.gif\r
+files\salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image57.gif\r
+pics\set_rotation_point_dialog1.png\r
+image4.gif\r
+pics\chamfer_edge.png\r
+pics\rotationsn2.png\r
+pics\filling_compoundsn.png\r
+pics\neo-basicprop.png\r
+pics\neo-detect2.png\r
+pics\neo-section.png\r
+pics\neo-obj5.png\r
+pics\repair1.png\r
+pics\transformation4.png\r
+pics\chamfer1.png\r
+pics\plane1.png\r
+image61.gif\r
+image193.jpg\r
+image160.jpg\r
+files\salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image58.gif\r
+files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image30.gif\r
+salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image13.gif\r
+pics\set_rotation_point_dialog2.png\r
+image40.gif\r
+image5.gif\r
+pics\suppress_faces1.png\r
+pics\scale_transformsn1.png\r
+pics\fusesn1.png\r
+pics\toruses.png\r
+pics\neo-obj6.png\r
+pics\repair2.png\r
+pics\transformation5.png\r
+pics\chamfer2.png\r
+pics\block1.png\r
+pics\torus1.png\r
+pics\sphere1.png\r
+pics\plane2.png\r
+pics\curve.png\r
+pics\arc.png\r
+image51.gif\r
+files\salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image59.gif\r
+files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image31.gif\r
+salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image14.gif\r
+pics\angle.png\r
+pics\glue1.png\r
 pics\geomimport.png\r
-pics\neo-isos.png\r
-pics\glue_faces2.png\r
-pics\supp_int_wires2.png\r
+image30.gif\r
+pics\isos_u12_v12sn.png\r
+pics\suppress_faces2.png\r
+pics\offsetsn.png\r
+pics\scale_transformsn2.png\r
+pics\partitionsn1.png\r
 pics\sectionsn.png\r
 pics\fusesn2.png\r
-pics\toruses.png\r
+pics\wiresn.png\r
+pics\prisms_basessn.png\r
 pics\circles.png\r
-pics\neo-obj3.png\r
-pics\neo-localcs2.png\r
+pics\neo-obj7.png\r
+pics\measures10.png\r
 pics\measures1.png\r
 pics\repair3.png\r
-pics\transformation9.png\r
-pics\bool1.png\r
+pics\transformation6.png\r
+pics\chamfer3.png\r
+pics\block2.png\r
+pics\torus2.png\r
+pics\sphere2.png\r
+pics\plane3.png\r
+image52.gif\r
+image41.gif\r
+files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image32.gif\r
+salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image15.gif\r
+pics\glue2.png\r
+selectcolor.png\r
+pics\fillet_edge.png\r
+pics\partitionsn2.png\r
+pics\prismssn.png\r
+pics\planes1.png\r
+pics\repair4.png\r
+pics\transformation7.png\r
 pics\partition1.png\r
-pics\block4.png\r
-pics\sphere1.png\r
-image193.jpg\r
-image29.gif\r
-image160.jpg\r
-files\salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image133.gif\r
-files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image34.gif\r
+pics\block3.png\r
+image185.jpg\r
+image53.gif\r
+image42.gif\r
+files\salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image131.gif\r
+files\salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image100.gif\r
+files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image33.gif\r
+salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image16.gif\r
+i_blue.jpg\r
+pics\glue3.png\r
 pics\partition2.png\r
-pics\changeorientation.png\r
-pics\pipesn.png\r
+image43.gif\r
 pics\pipe_wire_edgesn.png\r
-image2.gif\r
-pics\chamfer_faces.png\r
-pics\fillet_prism.png\r
-pics\rotationsn1.png\r
-pics\disp_mode1sn.png\r
-pics\cones.png\r
-pics\planes1.png\r
-pics\lines.png\r
-pics\neo-obj4.png\r
-pics\neo-localcs3.png\r
-pics\repair4.png\r
-pics\bool2.png\r
-pics\block5.png\r
-pics\sphere2.png\r
-pics\point1.png\r
-pics\rotationsn2.png\r
-pics\disp_mode2sn.png\r
-pics\neo-detect2.png\r
-pics\neo-section.png\r
-pics\neo-obj5.png\r
+pics\supp_int_wires1.png\r
+pics\boxes.png\r
+pics\points.png\r
 pics\measures3.png\r
 pics\repair5.png\r
-pics\bool3.png\r
-pics\chamfer1.png\r
+pics\transformation8.png\r
+pics\block4.png\r
 pics\filling.png\r
 pics\revolution.png\r
-pics\arc.png\r
 pics\ellipse.png\r
 pics\circle1.png\r
-image3.gif\r
-files\salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image56.gif\r
-pics\set_rotation_point_dialog1.png\r
+image10.gif\r
+image32.gif\r
+files\salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image132.gif\r
+files\salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image101.gif\r
+files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image34.gif\r
+salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image17.gif\r
+pics\changeorientation.png\r
 pics\extrusion1.png\r
-image4.gif\r
-pics\isos_u12_v12sn.png\r
-pics\free_boudaries1.png\r
-pics\multi_rotation1d1.png\r
-pics\multi_translation2dsn.png\r
-pics\offsetsn.png\r
+image33.gif\r
+pics\free_faces1.png\r
+pics\supp_int_wires2.png\r
+pics\translationsn1.png\r
 pics\compoundsn.png\r
-pics\prisms_basessn.png\r
 pics\cylinders.png\r
-pics\vectors.png\r
-pics\neo-obj6.png\r
 pics\measures4.png\r
 pics\repair6.png\r
-pics\chamfer2.png\r
-pics\cone1.png\r
+pics\transformation9.png\r
+pics\block5.png\r
 pics\circle2.png\r
-pics\point3.png\r
-image185.jpg\r
-files\salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image57.gif\r
-pics\set_rotation_point_dialog2.png\r
+image44.gif\r
+image154.jpg\r
+image110.jpg\r
+files\salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image133.gif\r
+files\salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image121.gif\r
+files\salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image102.gif\r
+salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image18.gif\r
+pics\circle3.png\r
+image34.gif\r
+pics\pipesn.png\r
 pics\extrusion2.png\r
-image5.gif\r
-pics\free_boudaries2.png\r
-pics\multi_rotation2d1.png\r
-pics\multi_rotation1d2.png\r
-pics\mirror_pointsn1.png\r
-pics\new-tolerance.png\r
-pics\neo-obj7.png\r
-pics\neo-point2.png\r
-pics\measures5.png\r
-pics\repair7.png\r
-pics\chamfer3.png\r
-pics\cone2.png\r
-files\salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image58.gif\r
-files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image27.gif\r
 pics\image91.gif\r
-pics\chamfer_edge.png\r
-pics\fillet_edge.png\r
-pics\multi_rotation2d2.png\r
-pics\scale_transformsn1.png\r
-pics\mirror_pointsn2.png\r
-pics\cutsn.png\r
+pics\free_faces2.png\r
+pics\chamfer_faces.png\r
+pics\translationsn2.png\r
 pics\shellsn.png\r
-pics\filling_compoundsn.png\r
-pics\prismssn.png\r
+pics\interpol.png\r
+pics\distance.png\r
 pics\neo-mrot1.png\r
-pics\repair8.png\r
-pics\cylinder1.png\r
+pics\neo-point2.png\r
+pics\measures5.png\r
 pics\vector1.png\r
-image61.gif\r
-image154.jpg\r
-image110.jpg\r
-files\salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image59.gif\r
-image40.gif\r
-pics\scale_transformsn2.png\r
-pics\translationsn1.png\r
+pics\point1.png\r
+image15.jpg\r
+image56.gif\r
+files\salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image122.gif\r
+files\salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image103.gif\r
+files\salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image90.gif\r
+files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image71.gif\r
+salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image19.gif\r
+pics\image100.gif\r
+pics\commonsn.png\r
+pics\multi_rotation2d1.png\r
+pics\multi_rotation1d1.png\r
+pics\archimedesn1.png\r
 pics\facesn1.png\r
 pics\neo-mrot2.png\r
-pics\repair9.png\r
-pics\cylinder2.png\r
+pics\repair8.png\r
+pics\cylinder1.png\r
 pics\vector2.png\r
-image51.gif\r
-files\salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image128.gif\r
-files\salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image121.gif\r
-files\salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image90.gif\r
-files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image29.gif\r
-i_blue.jpg\r
-image30.gif\r
-pics\free_faces1.png\r
-pics\fillet_all.png\r
-pics\translationsn2.png\r
-pics\partitionsn1.png\r
-pics\colorsn.png\r
-pics\facesn2.png\r
-pics\interpol.png\r
-pics\measures8.png\r
-pics\fillet1.png\r
-pics\archimede.png\r
-pics\workplane4.png\r
-image52.gif\r
+image16.jpg\r
+image57.gif\r
 image167.jpg\r
 image156.jpg\r
-image41.gif\r
 image145.jpg\r
+image35.gif\r
 image112.jpg\r
-files\salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image129.gif\r
-files\salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image122.gif\r
-files\salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image100.gif\r
 files\salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image99.gif\r
-salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image13.gif\r
-pics\transformation4a.png\r
-pics\image100.gif\r
-pics\geomcreategroup.png\r
-pics\commonsn.png\r
-pics\free_faces2.png\r
-pics\mirror_planesn1.png\r
-pics\block_explodesn.png\r
-pics\partitionsn2.png\r
-pics\solidsn.png\r
-pics\facesn3.png\r
-pics\distance.png\r
-pics\neo-scetcher1.png\r
-pics\neo-transparency.png\r
-pics\measures9.png\r
-pics\fillet2.png\r
-pics\workplane5.png\r
-image53.gif\r
-image168.jpg\r
-image42.gif\r
-image113.jpg\r
-files\salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image101.gif\r
+files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image72.gif\r
 files\salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image1.gif\r
-salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image14.gif\r
-image43.gif\r
-pics\image95.gif\r
-pics\mirror_planesn2.png\r
-pics\neo-scetcher2.png\r
-pics\transformation1.png\r
-pics\fillet3.png\r
+image47.gif\r
+image36.gif\r
+pics\free_boudaries1.png\r
+pics\multi_rotation2d2.png\r
+pics\multi_rotation1d2.png\r
+pics\multi_translation1dsn.png\r
+pics\multi_transformationsn2d.png\r
+pics\archimedesn2.png\r
+pics\facesn2.png\r
+pics\revolutionsn.png\r
+pics\new-tolerance.png\r
+pics\repair10.png\r
+pics\repair9.png\r
+pics\cylinder2.png\r
 pics\box1.png\r
-pics\workplane6.png\r
-pics\curve.png\r
 pics\line.png\r
-image10.gif\r
-image32.gif\r
-files\salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image102.gif\r
-files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image71.gif\r
+pics\point3.png\r
+image168.jpg\r
+image113.jpg\r
+files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image73.gif\r
 files\salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image2.gif\r
-salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image15.gif\r
-image33.gif\r
-pics\image102.gif\r
-pics\image96.gif\r
-pics\geomexport.png\r
-pics\multi_translation_initialsn.png\r
-pics\plane_on_face.png\r
-pics\bezier.png\r
-pics\repair10.png\r
-pics\transformation2.png\r
-pics\mtransf1.png\r
-pics\editgroup.png\r
-pics\box2.png\r
-image44.gif\r
-files\salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image103.gif\r
-files\salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image72.gif\r
-files\salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image3.gif\r
-salome2_sp3_buildgui_functions_salome2_sp3_buildgui_functions_image16.gif\r
+files\salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image27.gif\r
 ehlpdhtm.js\r
 index.ppf\r
 default_ns.css\r
index 7e26114b9b385762b66e55774337f0bf70381d38..fdf6e63ad223f7d52f3ec761e96049950f2ff455 100755 (executable)
@@ -184,133 +184,184 @@ if (window.writeIntopicBar)
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs1">&nbsp;</p>\r
-\r
 <h3><a name=bookmark1>Creation of a Face</a></h3>\r
 \r
 <p class="whs1"><span style="font-family: 'Lucida Console', monospace;">import \r
geompy</span></p>\r
salome</span></p>\r
 \r
-<p class="whs1">import salome</p>\r
+<p class="whs1">salome.salome_init()</p>\r
 \r
-<p class="whs1">gg = salome.ImportComponentGUI(&quot;GEOM&quot;)</p>\r
+<p class="whs1">&nbsp;</p>\r
+\r
+<p class="whs1">import geompy</p>\r
+\r
+<p class="whs1">geompy.init_geom(salome.myStudy)</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs2"># create vertices</p>\r
+<p class="whs1">Box_1 = geompy.MakeBoxDXDYDZ(200, \r
+ 200, 200)</p>\r
 \r
-<p class="whs1">p0 &nbsp;&nbsp;= \r
- geompy.MakeVertex(0. &nbsp;, \r
- 0. &nbsp;, 0. \r
- &nbsp;)</p>\r
+<p class="whs1">geompy.addToStudy(Box_1, \r
+ &quot;Box_1&quot;)</p>\r
 \r
-<p class="whs1">px &nbsp;&nbsp;= \r
- geompy.MakeVertex(100., 0. &nbsp;, \r
- 0. &nbsp;)</p>\r
+<p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs1">py &nbsp;&nbsp;= \r
- geompy.MakeVertex(0. &nbsp;, \r
- 100., 0. &nbsp;)</p>\r
+<p class="whs1">edges = geompy.SubShapeAllSorted(Box_1, \r
+ geompy.ShapeType[&quot;EDGE&quot;])</p>\r
 \r
-<p class="whs1">pz &nbsp;&nbsp;= \r
- geompy.MakeVertex(0. &nbsp;, \r
- 0. &nbsp;, 100.)</p>\r
+<p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs1">pxyz = geompy.MakeVertex(100., \r
- 100., 100.)</p>\r
+<p class="whs1">Edge_1 = edges[0]</p>\r
+\r
+<p class="whs1">Edge_2 = edges[4]</p>\r
+\r
+<p class="whs1">Edge_3 = edges[5]</p>\r
+\r
+<p class="whs1">Edge_4 = edges[8]</p>\r
+\r
+<p class="whs1">Edge_5 = edges[9]</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs2"># create a vector from \r
two points</p>\r
+<p class="whs1">geompy.addToStudyInFather(Box_1, \r
Edge_1, &quot;Edge_1&quot;)</p>\r
 \r
-<p class="whs1">vxy = geompy.MakeVector(px, \r
- py)</p>\r
+<p class="whs1">geompy.addToStudyInFather(Box_1, \r
+ Edge_2, &quot;Edge_2&quot;)</p>\r
+\r
+<p class="whs1">geompy.addToStudyInFather(Box_1, \r
+ Edge_3, &quot;Edge_3&quot;)</p>\r
+\r
+<p class="whs1">geompy.addToStudyInFather(Box_1, \r
+ Edge_4, &quot;Edge_4&quot;)</p>\r
+\r
+<p class="whs1">geompy.addToStudyInFather(Box_1, \r
+ Edge_5, &quot;Edge_5&quot;)</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs2"># create an arc from \r
three points</p>\r
+<p class="whs1">Wire_1 = geompy.MakeWire([Edge_1, \r
Edge_2])</p>\r
 \r
-<p class="whs1">arc = geompy.MakeArc(py\r
pz, px)</p>\r
+<p class="whs1">geompy.addToStudy(Wire_1\r
&quot;Wire_1&quot;)</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs2"># create a wire</p>\r
+<p class="whs1">Comp_1 = geompy.MakeCompound([Wire_1, \r
+ Edge_3, Edge_4])</p>\r
 \r
-<p class="whs1">wire = geompy.MakeWire([vxy\r
arc])</p>\r
+<p class="whs1">geompy.addToStudy(Comp_1\r
&quot;Compound_1&quot;)</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs2"># create sketchers</p>\r
+<p class="whs1">salome.sg.updateObjBrowser(1)</p>\r
 \r
-<p class="whs1">sketcher1 = geompy.MakeSketcher(&quot;Sketcher:F \r
- -100 -100:TT 250 -100:R 0:C 100 150:R 0:L 300:WW&quot;,</p>\r
+<p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[100,0,0\r
1,1,1, -1,1,0])</p>\r
+<p class="whs1">Face_1 = geompy.MakeFaceWires([Comp_1]\r
True)</p>\r
 \r
-<p class="whs1">sketcher2 = geompy.MakeSketcher(&quot;Sketcher:F \r
0 0:TT 70 0:TT 70 70:TT 0 70:WW&quot;)</p>\r
+<p class="whs1">geompy.addToStudy(Face_1, \r
&quot;Face_1&quot;)</p>\r
 \r
-<p class="whs1">sketcher3 = geompy.MakeSketcher(&quot;Sketcher:F \r
- 20 20:TT 50 20:TT 50 50:TT 20 50:WW&quot;)</p>\r
+<p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs1">isPlanarFace = 1</p>\r
+<p class="whs1">Face_2 = geompy.MakeFaceWires([Wire_1, \r
+ Edge_3, Edge_4], True)</p>\r
+\r
+<p class="whs1">geompy.addToStudy(Face_2, \r
+ &quot;Face_2&quot;)</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs2"># create a face from \r
the wire</p>\r
+<p class="whs1">Vertex_1 = geompy.MakeVertex(0, \r
0, 0)</p>\r
 \r
-<p class="whs1">face1 = geompy.MakeFace(wire, \r
- isPlanarFace)</p>\r
+<p class="whs1">Vertex_2 = geompy.MakeVertex(0, \r
+ 210, 0)</p>\r
+\r
+<p class="whs1">Vertex_3 = geompy.MakeVertex(100, \r
+ 210, 0)</p>\r
+\r
+<p class="whs1">Vertex_4 = geompy.MakeVertex(100, \r
+ 0, 0)</p>\r
+\r
+<p class="whs1">Vertex_5 = geompy.MakeVertex(140, \r
+ 105, 0)</p>\r
+\r
+<p class="whs1">Vertex_6 = geompy.MakeVertex(-190, \r
+ 105, 0)</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs2"># create faces from two \r
- wires</p>\r
+<p class="whs1">geompy.addToStudy(Vertex_1, \r
+ &quot;Vertex_1&quot;)</p>\r
+\r
+<p class="whs1">geompy.addToStudy(Vertex_2, \r
+ &quot;Vertex_2&quot;)</p>\r
+\r
+<p class="whs1">geompy.addToStudy(Vertex_3, \r
+ &quot;Vertex_3&quot;)</p>\r
+\r
+<p class="whs1">geompy.addToStudy(Vertex_4, \r
+ &quot;Vertex_4&quot;)</p>\r
 \r
-<p class="whs1">face2 = geompy.MakeFaceWires([wire\r
sketcher1],isPlanarFace)</p>\r
+<p class="whs1">geompy.addToStudy(Vertex_5\r
&quot;Vertex_5&quot;)</p>\r
 \r
-<p class="whs1">face3 = geompy.MakeFaces([sketcher2\r
sketcher3],isPlanarFace)</p>\r
+<p class="whs1">geompy.addToStudy(Vertex_6\r
&quot;Vertex_6&quot;)</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs2"># add objects in the \r
study</p>\r
+<p class="whs1">Arc_1 = geompy.MakeArc(Vertex_1, \r
Vertex_6, Vertex_2)</p>\r
 \r
-<p class="whs1">id_face1 = geompy.addToStudy(face1,&quot;Face1&quot;)</p>\r
+<p class="whs1">Arc_2 = geompy.MakeArc(Vertex_4, \r
+ Vertex_5, Vertex_3)</p>\r
 \r
-<p class="whs1">id_face2 = geompy.addToStudy(face2,&quot;Face2&quot;)</p>\r
+<p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs1">id_face3 = geompy.addToStudy(face3,&quot;Face3&quot;)</p>\r
+<p class="whs1">geompy.addToStudy(Arc_1, \r
+ &quot;Arc_1&quot;)</p>\r
+\r
+<p class="whs1">geompy.addToStudy(Arc_2, \r
+ &quot;Arc_2&quot;)</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs2"># display the faces</p>\r
+<p class="whs2"># Fails</p>\r
 \r
-<p class="whs1">gg.createAndDisplayGO(id_face1)</p>\r
+<p class="whs1">Face_3 = geompy.MakeFaceWires([Arc_1, \r
+ Arc_2], True)</p>\r
 \r
-<p class="whs1">gg.setDisplayMode(id_face1,1)</p>\r
+<p class="whs1">if Face_3 is not None:</p>\r
 \r
-<p class="whs1">gg.setTransparency(id_face1,0.2)</p>\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
+ &quot;Error. Face must not be built from wire with gaps.&quot;</p>\r
 \r
-<p class="whs1">gg.createAndDisplayGO(id_face2)</p>\r
+<p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs1">gg.setDisplayMode(id_face2,1)</p>\r
+<p class="whs1">Translation_1 = geompy.MakeTranslation(Arc_1, \r
+ 100, 0, 0)</p>\r
 \r
-<p class="whs1">gg.setTransparency(id_face2,0.2)</p>\r
+<p class="whs1">geompy.addToStudy(Translation_1, \r
+ &quot;Translation_1&quot;)</p>\r
 \r
-<p class="whs1">gg.createAndDisplayGO(id_face3)</p>\r
+<p class="whs1">&nbsp;</p>\r
+\r
+<p class="whs1">Face_3 = geompy.MakeFaceWires([Translation_1, \r
+ Arc_2], True)</p>\r
 \r
-<p class="whs1">gg.setDisplayMode(id_face3,1)</p>\r
+<p class="whs1">geompy.addToStudy(Face_3, \r
+ &quot;Face_3&quot;)</p>\r
+\r
+<p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs1">gg.setTransparency(id_face3,0.2\r
+<p class="whs1">salome.sg.updateObjBrowser(1\r
  </p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
diff --git a/doc/salome/gui/GEOM/image39.gif b/doc/salome/gui/GEOM/image39.gif
new file mode 100644 (file)
index 0000000..72d3cdd
Binary files /dev/null and b/doc/salome/gui/GEOM/image39.gif differ
index c3dd6ab37a469aa7319526821bc48c883a506350..0638cdadb9252d5c382fd58bc7be4f1043d689d1 100755 (executable)
@@ -260,6 +260,301 @@ if (window.writeIntopicBar)
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
+<h3>Check Free Boundaries</h3>\r
+\r
+<p class="whs1">import os</p>\r
+\r
+<p class="whs1">import geompy</p>\r
+\r
+<p class="whs1">import salome</p>\r
+\r
+<p class="whs1">gg = salome.ImportComponentGUI(&quot;GEOM&quot;)</p>\r
+\r
+<p class="whs2">&nbsp;</p>\r
+\r
+<p class="whs2"># create boxes</p>\r
+\r
+<p class="whs1">box1 = geompy.MakeBox(0,0,0,100,50,100)</p>\r
+\r
+<p class="whs1">box2 = geompy.MakeBox(100,0,0,250,50,100)</p>\r
+\r
+<p class="whs2">&nbsp;</p>\r
+\r
+<p class="whs2"># make a compound</p>\r
+\r
+<p class="whs1">compound = geompy.MakeCompound([box1, \r
+ box2])</p>\r
+\r
+<p class="whs2">&nbsp;</p>\r
+\r
+<p class="whs2"># import from *.brep</p>\r
+\r
+<p class="whs1">ImportBREP = geompy.ImportBREP(&quot;<span \r
+ style="font-family: 'Lucida Console', monospace;">os.getenv(&quot;DATA_DIR&quot;)+&quot;/Shapes/Brep/flight_solid.brep&quot;)</span></p>\r
+\r
+<p class="whs2">&nbsp;</p>\r
+\r
+<p class="whs2"># get a face</p>\r
+\r
+<p class="whs1">faces = geompy.SubShapeAllSorted(ImportBREP, \r
+ geompy.ShapeType[&quot;FACE&quot;])</p>\r
+\r
+<p class="whs2">&nbsp;</p>\r
+\r
+<p class="whs2"># get the free boundary \r
+ for face 32</p>\r
+\r
+<p class="whs1">Res = geompy.GetFreeBoundary(faces[32])</p>\r
+\r
+<p class="whs1">isSuccess &nbsp;&nbsp;= \r
+ Res[0]</p>\r
+\r
+<p class="whs1">ClosedWires = Res[1]</p>\r
+\r
+<p class="whs1">OpenWires &nbsp;&nbsp;= \r
+ Res[2]</p>\r
+\r
+<p class="whs2">&nbsp;&nbsp;</p>\r
+\r
+<p class="whs2">i<span style="font-family: 'Lucida Console', monospace;">f \r
+ isSuccess == 1 :</span></p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
+ &quot;Checking free boudaries is OK.&quot;</p>\r
+\r
+<p class="whs1">else :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
+ &quot;Checking free boudaries is KO!&quot;</p>\r
+\r
+<p class="whs1">print &quot;len(ClosedWires) \r
+ = &quot;, len(ClosedWires)</p>\r
+\r
+<p class="whs1">i = 0</p>\r
+\r
+<p class="whs1">for wire in ClosedWires \r
+ :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;wire_name \r
+ = &quot;Face 32 -&gt; Close wires : WIRE %d&quot;%(i+1)</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;geompy.addToStudy(ClosedWires[i], \r
+ wire_name)</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;if \r
+ i &lt; len(ClosedWires) :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i \r
+ = i+ 1</p>\r
+\r
+<p class="whs1">print &quot;len(OpenWires) \r
+ = &quot;, len(OpenWires)</p>\r
+\r
+<p class="whs1">i = 0</p>\r
+\r
+<p class="whs1">for wire in OpenWires \r
+ :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;wire_name \r
+ = &quot;Face 32 -&gt; Open wires : WIRE %d&quot;%(i+1)</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;geompy.addToStudy(OpenWires[i], \r
+ wire_name)</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;if \r
+ i &lt; len(OpenWires) :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i \r
+ = i+ 1</p>\r
+\r
+<p class="whs2">&nbsp;</p>\r
+\r
+<p class="whs2"># get the free boundary \r
+ for face 41</p>\r
+\r
+<p class="whs1">Res = geompy.GetFreeBoundary(faces[41])</p>\r
+\r
+<p class="whs1">isSuccess &nbsp;&nbsp;= \r
+ Res[0]</p>\r
+\r
+<p class="whs1">ClosedWires = Res[1]</p>\r
+\r
+<p class="whs1">OpenWires &nbsp;&nbsp;= \r
+ Res[2]</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;</p>\r
+\r
+<p class="whs1">if isSuccess == 1 \r
+ :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
+ &quot;Checking free boudaries is OK.&quot;</p>\r
+\r
+<p class="whs1">else :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
+ &quot;Checking free boudaries is KO!&quot;</p>\r
+\r
+<p class="whs1">print &quot;len(ClosedWires) \r
+ = &quot;, len(ClosedWires)</p>\r
+\r
+<p class="whs1">i = 0</p>\r
+\r
+<p class="whs1">for wire in ClosedWires \r
+ :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;wire_name \r
+ = &quot;Face 41 -&gt; Close wires : WIRE %d&quot;%(i+1)</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;geompy.addToStudy(ClosedWires[i], \r
+ wire_name)</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;if \r
+ i &lt; len(ClosedWires) :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i \r
+ = i+ 1</p>\r
+\r
+<p class="whs1">print &quot;len(OpenWires) \r
+ = &quot;, len(OpenWires)</p>\r
+\r
+<p class="whs1">i = 0</p>\r
+\r
+<p class="whs1">for wire in OpenWires \r
+ :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;wire_name \r
+ = &quot;Face 41 -&gt; Open wires : WIRE %d&quot;%(i+1)</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;geompy.addToStudy(OpenWires[i], \r
+ wire_name)</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;if \r
+ i &lt; len(OpenWires) :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i \r
+ = i+ 1</p>\r
+\r
+<p class="whs2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>\r
+\r
+<p class="whs2"># add the imported object \r
+ to the study</p>\r
+\r
+<p class="whs1">id_ImportBREP = geompy.addToStudy(ImportBREP, \r
+ &quot;ImportBREP&quot;)</p>\r
+\r
+<p class="whs2"><span style="font-family: 'Lucida Console', monospace;">salome.sg.updateObjBrowser(1)</span> \r
+ </p>\r
+\r
+<p class="whs2">&nbsp;</p>\r
+\r
+<h3>Check Free Faces</h3>\r
+\r
+<p class="whs1">import geompy</p>\r
+\r
+<p class="whs1">import salome</p>\r
+\r
+<p class="whs1">gg = salome.ImportComponentGUI(&quot;GEOM&quot;)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># create a vertex and a vector</p>\r
+\r
+<p class="whs1">p1 = geompy.MakeVertex(35, \r
+ 35, 0)</p>\r
+\r
+<p class="whs1">p2 = geompy.MakeVertex(35, \r
+ 35, 50)</p>\r
+\r
+<p class="whs1">v = geompy.MakeVector(p1, \r
+ p2)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># create a cylinder</p>\r
+\r
+<p class="whs1">cylinder = geompy.MakeCone(p1, \r
+ v, 30, 20, 20)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># create a cone</p>\r
+\r
+<p class="whs1">cone = geompy.MakeCone(p1, \r
+ v, 70, 40, 60)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># make cut</p>\r
+\r
+<p class="whs1">cut = geompy.MakeCut(cone, \r
+ cylinder)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># get faces as sub-shapes</p>\r
+\r
+<p class="whs1">faces = []</p>\r
+\r
+<p class="whs1">faces = geompy.SubShapeAllSorted(cut, \r
+ geompy.ShapeType[&quot;FACE&quot;])</p>\r
+\r
+<p class="whs1">f_2 = geompy.GetSubShapeID(cut, \r
+ faces[0])</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># remove one face from the shape</p>\r
+\r
+<p class="whs1">cut_without_f_2 = \r
+ geompy.SuppressFaces(cut, [f_2])</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># suppress the specified wire</p>\r
+\r
+<p class="whs1">result = geompy.GetFreeFacesIDs(cut_without_f_2)</p>\r
+\r
+<p class="whs1">print &quot;A number \r
+ of free faces is &quot;, len(result)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># add objects in the study</p>\r
+\r
+<p class="whs1">all_faces = geompy.SubShapeAllSorted(cut_without_f_2, \r
+ geompy.ShapeType[&quot;FACE&quot;])</p>\r
+\r
+<p class="whs1">for face in all_faces \r
+ :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;sub_shape_id \r
+ = geompy.GetSubShapeID(cut_without_f_2, face)</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;if \r
+ result.count(sub_shape_id) &gt; 0 :</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;face_name \r
+ = &quot;Free face %d&quot;%(sub_shape_id)</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;geompy.addToStudy(face, \r
+ face_name)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># in this example all faces from cut_without_f_2 are free</p>\r
+\r
+<p class="whs1">id_cut_without_f_2 \r
+ = geompy.addToStudy(cut_without_f_2, &quot;Cut without f_2&quot;)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># display the results</p>\r
+\r
+<p class="whs1">gg.createAndDisplayGO(id_cut_without_f_2)</p>\r
+\r
+<p><span style="font-family: 'Lucida Console', monospace;">gg.setDisplayMode(id_cut_without_f_2,1)</span></p>\r
+\r
 <h3>Bounding Box</h3>\r
 \r
 <p class="whs1">import geompy</p>\r
@@ -286,8 +581,6 @@ if (window.writeIntopicBar)
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
-<p class="whs1">&nbsp;</p>\r
-\r
 <h3>Minimal Distance </h3>\r
 \r
 <p class="whs1"><span style="font-family: 'Lucida Console', monospace;">import \r
@@ -306,8 +599,101 @@ if (window.writeIntopicBar)
 <p class="whs1">print &quot;\nMinimal \r
  distance between box1 and box2 = &quot;, min_dist </p>\r
 \r
+<h3>Angle</h3>\r
+\r
+<p class="whs1">import salome</p>\r
+\r
+<p class="whs1">salome.salome_init()</p>\r
+\r
+<p class="whs1">&nbsp;</p>\r
+\r
+<p class="whs1">import math</p>\r
+\r
+<p class="whs1">import geompy</p>\r
+\r
+<p class="whs1">geompy.init_geom(salome.myStudy)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p class="whs1">OX &nbsp;= \r
+ geompy.MakeVectorDXDYDZ(10, 0,0)</p>\r
+\r
+<p class="whs1">OXY = geompy.MakeVectorDXDYDZ(10,10,0)</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># in one plane</p>\r
+\r
+<p class="whs1">Angle = geompy.GetAngle(OX, \r
+ OXY)</p>\r
+\r
 <p class="whs1">&nbsp;</p>\r
 \r
+<p class="whs1">print &quot;\nAngle \r
+ between OX and OXY = &quot;, Angle</p>\r
+\r
+<p class="whs1">if math.fabs(Angle \r
+ - 45.0) &gt; 1e-05:</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
+ &quot; &nbsp;Error: \r
+ returned angle is&quot;, Angle, &quot;while must be 45.0&quot;</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;pass</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># not in one plane</p>\r
+\r
+<p class="whs1">OXY_shift = geompy.MakeTranslation(OXY,10,-10,20)</p>\r
+\r
+<p class="whs1">Angle = geompy.GetAngle(OX, \r
+ OXY_shift)</p>\r
+\r
+<p class="whs1">&nbsp;</p>\r
+\r
+<p class="whs1">print &quot;Angle \r
+ between OX and OXY_shift = &quot;, Angle</p>\r
+\r
+<p class="whs1">if math.fabs(Angle \r
+ - 45.0) &gt; 1e-05:</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
+ &quot; &nbsp;Error: \r
+ returned angle is&quot;, Angle, &quot;while must be 45.0&quot;</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;pass</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p># not linear</p>\r
+\r
+<p class="whs1">pnt1 = geompy.MakeVertex(0, \r
+ 0, 0)</p>\r
+\r
+<p class="whs1">pnt2 = geompy.MakeVertex(10, \r
+ 0, 0)</p>\r
+\r
+<p class="whs1">pnt3 = geompy.MakeVertex(20, \r
+ 10, 0)</p>\r
+\r
+<p class="whs1">arc &nbsp;= \r
+ geompy.MakeArc(pnt1, pnt2, pnt3)</p>\r
+\r
+<p class="whs1">Angle = geompy.GetAngle(OX, \r
+ arc)</p>\r
+\r
+<p class="whs1">&nbsp;</p>\r
+\r
+<p class="whs1">if (math.fabs(Angle \r
+ + 1.0) &gt; 1e-6 or geompy.MeasuOp.IsDone()):</p>\r
+\r
+<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
+ &quot;Error. Angle must not be computed on curvilinear edges&quot;</p>\r
+\r
+<p><span style="font-family: 'Lucida Console', monospace;">&nbsp;&nbsp;&nbsp;&nbsp;pass</span> \r
+ </p>\r
+\r
 <h3>Tolerance</h3>\r
 \r
 <p class="whs1"><span style="font-family: 'Lucida Console', monospace;">import \r
index 34eb31d0eaa3ad2eead2d458eb32dae5f367d8e6..669f24d01559bb621eeed92d876687e174cbb338 100755 (executable)
@@ -123,7 +123,8 @@ if (window.writeIntopicBar)
  Point)</I></span> </p>\r
 \r
 <p class="whs1"><b style="font-weight: bold;">Arguments: <span \r
- style="font-weight: normal;">Name + </span></b>1 shape + 1 vertex.</p>\r
+ style="font-weight: normal;">Name + one or several objects</span></b> \r
+ + 1 vertex.</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
@@ -145,7 +146,8 @@ if (window.writeIntopicBar)
  Axis)</I></span> </p>\r
 \r
 <p class="whs1"><b style="font-weight: bold;">Arguments: <span \r
- style="font-weight: normal;">Name + </span></b>1 shape + 1 vector.</p>\r
+ style="font-weight: normal;">Name + one or several objects</span></b> \r
+ + 1 vector.</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
@@ -166,7 +168,8 @@ if (window.writeIntopicBar)
  Plane)</I></span>, </p>\r
 \r
 <p class="whs1"><b style="font-weight: bold;">Arguments:</b> \r
- <b><span style="font-weight: normal;">Name + </span></b>1 shape + 1 plane</p>\r
+ <b><span style="font-weight: normal;">Name + one or several objects</span></b> \r
+ + 1 plane</p>\r
 \r
 <p class="whs1">&nbsp;</p>\r
 \r
index ceddd9a59e19cdf5179a23a5f1ede23bb21cd3e1..c9d5a6cc1b5a4a7071d8f1f698a10adeaa8b87b7 100755 (executable)
@@ -112,19 +112,20 @@ if (window.writeIntopicBar)
 <p class="whs2">&nbsp;</p>\r
 \r
 <p class="whs2">This operation modifies the <span style="font-weight: bold;"><B>Location</B></span> \r
- of an <span style="font-weight: bold;"><B>Object. </B></span></p>\r
+ of one or several <span style="font-weight: bold;"><B>Objects. </B></span></p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
-<p class="whs2">The first algorithm places the object so that \r
- its center coincides with the center of an End Local Coordinate System.</p>\r
+<p class="whs2">The first algorithm places one or several objects \r
+ so that the center of the group or an object coincides with the origin \r
+ of the Local Coordinate System.</p>\r
 \r
 <p class="whs2"><span style="font-weight: bold;"><B>Create a copy \r
- </B></span>checkbox allows to keep the initial object, otherwise it will be \r
- removed.</p>\r
+ </B></span>checkbox allows to keep the initial objects, otherwise it will \r
be removed.</p>\r
 \r
-<p class="whs2"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><span><b style="font-weight: bold;">A</span>rguments:</b> \r
- Name + 1 Object + End Coordinate System.</font></span></p>\r
+<p class="whs2"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b style="font-weight: bold;">Arguments:</b> \r
+ Name + one or several Objects + End Coordinate System.</font></span></p>\r
 \r
 <p>&nbsp;</p>\r
 \r
@@ -143,19 +144,20 @@ if (window.writeIntopicBar)
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
-<p class="whs2">The second algorithm &nbsp;modifies \r
- the location of an object using Start and End LSC, although the final \r
position of the object will not coincide with the center of &nbsp;either \r
+<p class="whs2">The second algorithm modifies the location \r
+ of an object using Start and End LSC, although the final position of the \r
+ object will not coincide with the center of &nbsp;either \r
  of the two systems. In this method the object is shifted from its initial \r
  position by the value of the remainder after subtraction of the coordinates \r
  of the Start LSC from the coordinates of the End LSC. </p>\r
 \r
 <p class="whs2"><span style="font-weight: bold;"><B>Create a copy \r
- </B></span>checkbox allows to keep the initial object, otherwise it will be \r
- removed.</p>\r
+ </B></span>checkbox allows to keep the initial objects, otherwise they will \r
be removed.</p>\r
 \r
 <p class="whs2"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b style="font-weight: bold;">Arguments:</b> \r
- Name + 1 Object + Start Coordinate System + End Coordinate System.</font></span></p>\r
+ Name + one or several Objects + Start Coordinate System + End Coordinate \r
+ System.</font></span></p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
@@ -204,7 +206,7 @@ if (window.writeIntopicBar)
 \r
 <p class="whs17"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;">Our </font></span><span \r
  style="font-weight: bold;"><B>TUI Scripts</B></span><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> \r
- provide you with useful examples of the use of <a href="transformation_operations.htm#bookmark2">Transformation \r
+ provide you with useful examples of the use of <a href="transformation_operations.htm#bookmark4">Transformation \r
  Operations</a>. </font></span></p>\r
 \r
 <p>&nbsp;</p>\r
index fa8e0ee281da1ffb198f0f6520714d5cd55022e0..951671d069d032deda4484f9fba7e5be48b23ab1 100755 (executable)
@@ -133,6 +133,8 @@ if (window.writeIntopicBar)
 \r
 <p class="whs5"><img src="pics/neo-mrot1.png" x-maintain-ratio="TRUE" width="312px" height="346px" border="0" class="img_whs6"> </p>\r
 \r
+<p class="whs5">&nbsp;</p>\r
+\r
 <p class="whs5"><img src="pics/multi_rotation1d1.png" x-maintain-ratio="TRUE" width="315px" height="260px" border="0" class="img_whs7"> &nbsp;<img src="pics/multi_rotation1d2.png" x-maintain-ratio="TRUE" width="301px" height="260px" border="0" class="img_whs8"></p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
index f4d6e62cdd7aefb9e7dae186e7c8c6be0186390c..35505694cb86e95576b571c72d578bfb5013bad5 100755 (executable)
@@ -95,7 +95,7 @@ if (window.writeIntopicBar)
        writeIntopicBar(4);\r
 //-->\r
 </script>\r
-<h1><span style="font-size: 14pt;"><font size=4 style="font-size:14pt;"><img src="files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image132.gif" width="20px" height="20px" border="0" class="img_whs1"> </font></span>Multi Translation</h1>\r
+<h1><span style="font-size: 14pt;"><font size=4 style="font-size:14pt;">&nbsp;<img src="files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image132.gif" width="20px" height="20px" border="0" class="img_whs1"> </font></span>Multi Translation</h1>\r
 \r
 <p class="whs2"><b style="font-weight: normal;">T</b>o produce \r
  a <span style="font-weight: bold;"><B>Multi Translation</B></span> in the Main \r
@@ -115,8 +115,8 @@ if (window.writeIntopicBar)
 <p class="whs2">&nbsp;</p>\r
 \r
 <p class="whs2">To produce a <span style="font-weight: bold;"><B>Simple \r
- Multi Translation</B></span> (in one direction) you need to indicate a <span \r
- style="font-weight: bold;"><B>Shape</B></span> to be translated, a <span style="font-weight: bold;"><B>Vector</B></span> \r
+ Multi Translation</B></span> (in one direction) you need to indicate an <span \r
+ style="font-weight: bold;"><B>Object</B></span> to be translated, a <span style="font-weight: bold;"><B>Vector</B></span> \r
  of translation, a <span style="font-weight: bold;"><B>Step</B></span> of translation \r
  and a <span style="font-weight: bold;"><B>Number of Times</B></span> the shape \r
  must be moved.</p>\r
@@ -125,10 +125,12 @@ if (window.writeIntopicBar)
  </b><span style="font-style: italic;"><I>geompy.MakeMultiTranslation1D(Shape, \r
  Dir, Step, NbTimes)</I></span></p>\r
 \r
-<p class="whs2"><b>A<span style="font-weight: bold;"><B>rguments: \r
+<p class="whs2"><b style="font-weight: bold;">A<span style="font-weight: bold;"><B>rguments: \r
  </B></span></b>Name + 1 shape + 1 vector (for direction) + 1 step value + \r
  1 value (repetition).</p>\r
 \r
+<p class="whs2">&nbsp;</p>\r
+\r
 <p class="whs3"><img src="pics/mtrans1.png" x-maintain-ratio="TRUE" width="312px" height="398px" border="0" class="img_whs4"></p>\r
 \r
 <p class="whs3">&nbsp;</p>\r
@@ -141,11 +143,11 @@ if (window.writeIntopicBar)
  </font></span><span style="font-size: 12pt; font-weight: bold;"><font size=3 style="font-size:12pt;"><B>Double Multi \r
  Translation</B></font></span><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> (in two directions) \r
  you need to indicate a </font></span><span style="font-size: 12pt; font-weight: bold;"><font size=3 style="font-size:12pt;"><B>Shape</B></font></span><span \r
- style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> to be translated and a </font></span><span style="font-size: 12pt; font-weight: bold;"><font size=3 style="font-size:12pt;"><B>Vector</B></font></span><span \r
- style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> of translation, a </font></span><span style="font-size: 12pt; font-weight: bold;"><font size=3 style="font-size:12pt;"><B>Step</B></font></span><span \r
+ style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> to be translated, and, for both axes, a </font></span><span \r
+ style="font-size: 12pt; font-weight: bold;"><font size=3 style="font-size:12pt;"><B>Vector</B></font></span><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> \r
+ of translation, a </font></span><span style="font-size: 12pt; font-weight: bold;"><font size=3 style="font-size:12pt;"><B>Step</B></font></span><span \r
  style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> of translation and a </font></span><span style="font-size: 12pt; font-weight: bold;"><font size=3 style="font-size:12pt;"><B>Number \r
- of Times</B></font></span><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> the shape must be moved \r
- along each axis.</font></span></p>\r
+ of Times</B></font></span><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> the shape must be moved.</font></span></p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
index bd0b02887d70b05c5f587896ddd0490be13f58c7..d63a6d6a59819576dd929b02e55693cffc815f49 100755 (executable)
@@ -43,17 +43,26 @@ img_whs26 { border:none; width:312px; height:464px; float:none; border-style:non
 td.whs27 { width:49.761%; padding-right:10px; padding-left:10px; border-left-style:none; border-right-style:none; border-bottom-style:none; }\r
 td.whs28 { width:50.239%; padding-right:10px; padding-left:10px; border-right-style:none; border-bottom-style:none; }\r
 p.whs29 { font-size:12pt; font-weight:bold; }\r
-p.whs30 { font-size:12pt; font-weight:bold; margin-left:0px; }\r
-img_whs31 { border:none; width:300px; height:234px; float:none; border-style:none; }\r
-img_whs32 { border:none; width:251px; height:234px; border-style:none; }\r
-p.whs33 { font-size:12pt; margin-left:40px; }\r
+table.whs30 { x-cell-content-align:top; border-spacing:0px; width:63.614%; }\r
+col.whs31 { width:48.756%; }\r
+col.whs32 { width:51.244%; }\r
+td.whs33 { width:48.756%; padding-right:10px; padding-left:10px; border-bottom-style:none; border-right-style:none; border-left-style:none; border-top-style:none; }\r
+img_whs34 { border:none; width:300px; height:234px; float:none; border-style:none; }\r
+td.whs35 { width:51.244%; padding-right:10px; padding-left:10px; border-bottom-style:none; border-top-style:none; border-right-style:none; }\r
+p.whs36 { margin-left:0px; font-size:12pt; font-weight:bold; }\r
+img_whs37 { border:none; width:251px; height:234px; border-style:none; }\r
+td.whs38 { width:48.756%; padding-right:10px; padding-left:10px; border-right-style:none; border-left-style:none; border-bottom-style:none; }\r
+p.whs39 { font-style:italic; }\r
+td.whs40 { width:51.244%; padding-right:10px; padding-left:10px; border-bottom-style:none; border-right-style:none; }\r
+p.whs41 { font-size:12pt; font-weight:bold; margin-left:0px; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript">\r
 <!--\r
 if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
 {\r
   var strNSS = "<style type='text/css'>";\r
-  strNSS += "p.whs30 {margin-left:1pt; }";\r
+  strNSS += "p.whs36 {margin-left:1pt; }";\r
+  strNSS += "p.whs41 {margin-left:1pt; }";\r
   strNSS +="</style>";\r
   document.write(strNSS);\r
 }\r
@@ -320,9 +329,27 @@ if (window.writeIntopicBar)
 \r
 <p class="whs29">&nbsp;</p>\r
 \r
-<p class="whs30"><img src="image180.jpg" x-maintain-ratio="TRUE" width="300px" height="234px" border="0" class="img_whs31"> &nbsp;&nbsp;&nbsp;<img src="image181.jpg" width="251px" height="234px" border="0" class="img_whs32"> &nbsp;</p>\r
+<table x-use-null-cells cellspacing="0" width="63.614%" class="whs30">\r
+<col class="whs31">\r
+<col class="whs32">\r
 \r
-<p class="whs33"><b style="font-weight: bold;">&nbsp;&nbsp;&nbsp;</b>&nbsp;&nbsp;</p>\r
+<tr valign="top" class="whs11">\r
+<td width="48.756%" class="whs33">\r
+<p class="whs29"><img src="image180.jpg" x-maintain-ratio="TRUE" width="300px" height="234px" border="0" class="img_whs34"></td>\r
+<td width="51.244%" class="whs35">\r
+<p class="whs36"><img src="image181.jpg" width="251px" height="234px" border="0" class="img_whs37"></td></tr>\r
+\r
+<tr valign="top" class="whs11">\r
+<td width="48.756%" class="whs38">\r
+<p class="whs39">Hexahedral solid built on the base of six \r
+ faces</td>\r
+<td width="51.244%" class="whs40">\r
+<p class="whs39">Hexahedral solid built on the base of two \r
+ faces</td></tr>\r
+</table>\r
+\r
+<p class="whs41">&nbsp;&nbsp;&nbsp;&nbsp;<span \r
+ style="font-size: 12pt; margin-left: 40px;"><font size=3 style="font-size:12pt;"><b style="font-weight: bold;">&nbsp;&nbsp;</b>&nbsp;&nbsp;</font></span></p>\r
 \r
 <p class="whs5">Our <span style="font-weight: bold;"><B>TUI Scripts</B></span> \r
  provide you with useful examples of <a href="building_by_blocks.htm">Building \r
diff --git a/doc/salome/gui/GEOM/occ_viewer.htm b/doc/salome/gui/GEOM/occ_viewer.htm
new file mode 100755 (executable)
index 0000000..cc1fdb0
--- /dev/null
@@ -0,0 +1,258 @@
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
+\r
+<html>\r
+\r
+<head>\r
+<title>OCC_Viewer</title>\r
+<meta http-equiv="content-type" content="text/html; charset=windows-1252">\r
+<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
+<link rel="stylesheet" href="default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
+<!--\r
+if (navigator.appName !="Netscape")\r
+{   document.write("<link rel='stylesheet' href='default.css'>");}\r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+img_whs1 { border:none; width:313px; height:26px; float:none; border-style:none; }\r
+ul.whs2 { list-style:disc; }\r
+img_whs3 { border:none; width:26px; height:25px; float:none; border-style:none; }\r
+img_whs4 { border:none; width:27px; height:25px; float:none; border-style:none; }\r
+img_whs5 { border:none; width:24px; height:23px; float:none; border-style:none; }\r
+img_whs6 { border:none; width:24px; height:24px; float:none; border-style:none; }\r
+img_whs7 { border:none; width:25px; height:24px; float:none; border-style:none; }\r
+img_whs8 { border:none; width:23px; height:23px; float:none; border-style:none; }\r
+p.whs9 { margin-top:0pt; margin-bottom:0pt; }\r
+img_whs10 { border:none; width:20px; height:20px; float:none; border-style:none; }\r
+p.whs11 { margin-left:80px; }\r
+img_whs12 { border:none; width:410px; height:255px; float:none; border-style:none; }\r
+img_whs13 { border:none; width:26px; height:26px; float:none; border-style:none; }\r
+img_whs14 { border:none; width:78px; height:147px; float:none; border-style:none; }\r
+img_whs15 { border:none; height:26px; float:none; width:29px; border-style:none; }\r
+img_whs16 { border:none; width:26px; height:24px; float:none; border-style:none; }\r
+img_whs17 { border:none; width:28px; height:29px; float:none; border-style:none; }\r
+img_whs18 { border:none; width:29px; height:26px; float:none; border-style:none; }\r
+img_whs19 { border:none; width:395px; height:280px; float:none; border-style:none; }\r
+p.whs20 { margin-left:40px; }\r
+p.whs21 { margin-left:84px; }\r
+-->\r
+</style><script type="text/javascript" language="JavaScript">\r
+<!--\r
+if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
+{\r
+  var strNSS = "<style type='text/css'>";\r
+  strNSS += "p.whs9 {margin-top:1pt;margin-bottom:1pt; }";\r
+  strNSS +="</style>";\r
+  document.write(strNSS);\r
+}\r
+//-->\r
+</script>\r
+<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
+<!--\r
+function reDo() {\r
+  if (innerWidth != origWidth || innerHeight != origHeight)\r
+     location.reload();\r
+}\r
+if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
+       origWidth = innerWidth;\r
+       origHeight = innerHeight;\r
+       onresize = reDo;\r
+}\r
+onerror = null; \r
+//-->\r
+</script>\r
+<style type="text/css">\r
+<!--\r
+div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }\r
+p.WebHelpNavBar { text-align:right; }\r
+-->\r
+</style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>\r
+<script type="text/javascript" language="javascript" src="whver.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>\r
+<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.gbWhTopic)\r
+{\r
+       if (window.setRelStartPage)\r
+       {\r
+       addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");\r
+addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");\r
+\r
+       }\r
+\r
+\r
+       if (window.setRelStartPage)\r
+       {\r
+       setRelStartPage("index.htm");\r
+\r
+               autoSync(1);\r
+               sendSyncInfo();\r
+               sendAveInfoOut();\r
+       }\r
+\r
+}\r
+else\r
+       if (window.gbIE4)\r
+               document.location.reload();\r
+//-->\r
+</script>\r
+</head>\r
+<body><script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+       writeIntopicBar(4);\r
+//-->\r
+</script>\r
+<h1>CC 3D Viewer</h1>\r
+\r
+<p><span style="font-weight: bold;"><B>OCC (Open CasCade) 3D viewer</B></span> \r
+ has been developed on the basis of Open CASCADE Technology. This is the \r
+ default viewer for Geometry Module, providing good representation of construction \r
+ and transformation of geometrical objects. Only this viewer allows to \r
+ work with groups and sub-shapes. This viewer can also work in Mesh module, \r
+ however, it doesn't allow to visualize meshes. </p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p>The functions of OCC viewer are available via its Viewer Toolbar. Buttons \r
+ marked with small downward triangles have extended functionality which \r
+ can be accessed by locking on them with left mouse button. &nbsp;</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p><img src="pics/image95.gif" x-maintain-ratio="TRUE" width="313px" height="26px" border="0" class="img_whs1"></p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<ul type="disc" class="whs2">\r
+       \r
+       <li class=kadov-p><p><img src="pics/image77.gif" x-maintain-ratio="TRUE" width="26px" height="25px" border="0" class="img_whs3"> <span style="font-weight: bold;"><B>Dump \r
+ View</B></span> - exports an object from the viewer in bmp, png, jpg or jpeg \r
+ image format. </p></li>\r
+       \r
+       <li class=kadov-p><p><img src="pics/image88.gif" x-maintain-ratio="TRUE" width="27px" height="25px" border="0" class="img_whs4"> <span style="font-weight: bold;"><B>Show/Hide \r
+ Trihedron</B></span> - shows or hides coordinate axes. </p></li>\r
+       \r
+       <li class=kadov-p><p><img src="pics/image96.gif" x-maintain-ratio="TRUE" width="24px" height="23px" border="0" class="img_whs5"> &nbsp;<span \r
+ style="font-weight: bold;"><B>Fit all - </B></span>allows \r
+ to select a point to be the center of a scene representing all displayed \r
+ objects in the visible area.<span style="font-weight: bold;"> <B></B></span></p></li>\r
+       \r
+       <li class=kadov-p><p>&nbsp;<img src="pics/image97.gif" x-maintain-ratio="TRUE" width="24px" height="24px" border="0" class="img_whs6"> <span style="font-weight: bold;"><B>Fit area</B></span> - resizes \r
+ the view to place in the visible area only the contents of a frame drawn \r
+ with pressed left mouse button.</p></li>\r
+       \r
+       <li class=kadov-p><p><img src="pics/image98.gif" x-maintain-ratio="TRUE" width="25px" height="24px" border="0" class="img_whs7"> <span style="font-weight: bold;"><B>Zoom</B></span> \r
+ - &nbsp;allows \r
+ to zoom in and out. </p></li>\r
+       \r
+       <li class=kadov-p><p><img src="pics/image99.gif" x-maintain-ratio="TRUE" width="23px" height="23px" border="0" class="img_whs8"> <span style="font-weight: bold;"><B>Panning</B></span> \r
+ - if the represented objects are greater that the visible area and you \r
+ don't wish to use <span style="font-weight: bold;"><B>Fit all</B></span> functionality, \r
+ click on this button and you'll be able to drag the scene to see its remote \r
+ parts. </p></li>\r
+       \r
+       <li class=kadov-p><p><img src="pics/image100.gif" x-maintain-ratio="TRUE" width="24px" height="24px" border="0" class="img_whs6"> <span style="font-weight: bold;"><B>Global \r
+ panning</B></span> - represents all displayed objects in the visible area. \r
+ </p></li>\r
+</ul>\r
+\r
+<ul type="disc" class="whs2">\r
+       \r
+       <li class=kadov-p><p class="whs9"><img src="pics/view_rotation_point.png" x-maintain-ratio="TRUE" width="20px" height="20px" border="0" class="img_whs10"> <span style="font-weight: bold;"><B>Change rotation point</B></span> \r
+ - allows to to choose the point around which the rotation is performed. \r
+ </p></li>\r
+</ul>\r
+\r
+<p class="whs11"><img src="pics/set_rotation_point_dialog1.png" x-maintain-ratio="TRUE" width="410px" height="255px" border="0" class="img_whs12"></p>\r
+\r
+<p class="whs11">&nbsp;</p>\r
+\r
+<p class="whs11">By default the rotation point is located \r
+ in the Center of the bounding box of an object. </p>\r
+\r
+<p class="whs11">&nbsp;</p>\r
+\r
+<p class="whs11"><img src="pics/set_rotation_point_dialog2.png" x-maintain-ratio="TRUE" width="410px" height="255px" border="0" class="img_whs12"></p>\r
+\r
+<p class="whs11">&nbsp;</p>\r
+\r
+<p class="whs11">Unchecking <span style="font-weight: bold;"><B>Use \r
+ Bounding Box Center</B></span> box allows you to define the coordinates of \r
+ the rotation point manually. </p>\r
+\r
+<p class="whs11">&nbsp;</p>\r
+\r
+<p class="whs11"><span style="font-weight: bold;"><B>Set to Origin</B></span> \r
+ button restores the default rotation point coordinates.</p>\r
+\r
+<p class="whs11"><span style="font-weight: bold;"><B>Select Point \r
+ from View</B></span> button allows to select the rotation point in the 3D \r
+ Viewer</p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<ul type="disc" class="whs2">\r
+       \r
+       <li class=kadov-p><p><img src="pics/image89.gif" x-maintain-ratio="TRUE" width="26px" height="26px" border="0" class="img_whs13"> <span style="font-weight: bold;"><B>Rotation</B></span> \r
+ - allows to rotate the selected object using the mouse. </p></li>\r
+       \r
+       <li class=kadov-p><p><img src="pics/image102.gif" x-maintain-ratio="TRUE" width="78px" height="147px" border="0" class="img_whs14"> These buttons orientate the scene \r
+ strictly about coordinate axes.</p></li>\r
+       \r
+       <li class=kadov-p><p><img src="pics/image91.gif" x-maintain-ratio="TRUE" height="26px" width="29px" border="0" class="img_whs15"> <span style="font-weight: bold;"><B>Reset</B></span> \r
+ - restores the default position (isometric) of objects in the scene.</p></li>\r
+       \r
+       <li class=kadov-p><p><img src="pics/image103.gif" x-maintain-ratio="TRUE" width="26px" height="24px" border="0" class="img_whs16"> <span style="font-weight: bold;"><B>Memorise \r
+ view</B></span> - saves the current position of objects in the scene</p></li>\r
+       \r
+       <li class=kadov-p><p><img src="pics/image105.gif" x-maintain-ratio="TRUE" width="26px" height="25px" border="0" class="img_whs3"> <span style="font-weight: bold;"><B>Restore \r
+ view - </B></span>restores the<span style="font-weight: bold;"> <B></B></span>saved \r
+ position of objects in the scene</p></li>\r
+       \r
+       <li class=kadov-p><p><img src="pics/image86.gif" x-maintain-ratio="TRUE" width="28px" height="29px" border="0" class="img_whs17"> <span style="font-weight: bold;"><B>Clone \r
+ view</B></span> - opens a new duplicate scene.</p></li>\r
+       \r
+       <li class=kadov-p><p><img src="pics/image106.gif" x-maintain-ratio="TRUE" width="29px" height="26px" border="0" class="img_whs18"> <span style="font-weight: bold;"><B>Clipping \r
+ -</B></span> allows to create cross-section views (clipping planes) of geometrical \r
+ objects.</p></li>\r
+</ul>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p class="whs11"><img src="pics/clipping.png" x-maintain-ratio="TRUE" width="395px" height="280px" border="0" class="img_whs19"></p>\r
+\r
+<p class="whs20">&nbsp;</p>\r
+\r
+<ul type="disc" class="whs2">\r
+       \r
+       <li class=kadov-p><p class="whs20"><span style="font-weight: bold;"><B>Base \r
+ point</B></span> - allows to define the coordinates of the base point for \r
+ the clipping plane. Click </p></li>\r
+       \r
+       <li class=kadov-p><p class="whs21"><span style="font-weight: bold;"><B>Reset</B></span> \r
+ - returns the base point to coordinate origin. </p></li>\r
+       \r
+       <li class=kadov-p><p class="whs20"><span style="font-weight: bold;"><B>Direction</B></span> \r
+ - allows to define the orientation of the clipping plane.</p></li>\r
+       \r
+       <li class=kadov-p><p class="whs21"><span style="font-weight: bold;"><B>Invert</B></span> \r
+ - allows to select which part of the object will be removed and which \r
+ will remain after clipping. </p></li>\r
+       \r
+       <li class=kadov-p><p class="whs20"><span style="font-weight: bold;"><B>Preview</B></span> \r
+ - allows to see the results of clipping in the viewer.</p></li>\r
+</ul>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<script type="text/javascript" language="javascript1.2">\r
+<!--\r
+if (window.writeIntopicBar)\r
+       writeIntopicBar(0);\r
+//-->\r
+</script>\r
+</body>\r
+</html>\r
index a051068ff8a09b052ff854cab070bfbe0d320240..deef03245a0317e86f7b00007df0c3028b08fac0 100755 (executable)
@@ -114,11 +114,11 @@ if (window.writeIntopicBar)
 \r
 <p class="whs2"><b style="font-weight: bold;"><span style="font-weight: bold;"><B>T</B></span>UI \r
  Command: </b><span style="font-style: italic;"><I>geompy.MakeOffset(Shape, \r
- Offset)</I></span>, where Shape is a shape which has to be an offset, Offset \r
+ Offset)</I></span>, where Shape is a shape(s) which has to be an offset, Offset \r
  is a value of the offset.</p>\r
 \r
 <p class="whs2"><b style="font-weight: bold;">Arguments: </b><span \r
- style="font-size: 12pt;"><font size=3 style="font-size:12pt;">Name + Object (face, shell, solid, compound\r
+ style="font-size: 12pt;"><font size=3 style="font-size:12pt;">Name + Object (face(s), shell(s) or solid(s)\r
  + Offset value </font></span></p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
diff --git a/doc/salome/gui/GEOM/pics/angle.png b/doc/salome/gui/GEOM/pics/angle.png
new file mode 100755 (executable)
index 0000000..fbe7538
Binary files /dev/null and b/doc/salome/gui/GEOM/pics/angle.png differ
diff --git a/doc/salome/gui/GEOM/pics/circle3.png b/doc/salome/gui/GEOM/pics/circle3.png
new file mode 100755 (executable)
index 0000000..39aa5b1
Binary files /dev/null and b/doc/salome/gui/GEOM/pics/circle3.png differ
index 7466fc424f50c9678e0c0aaeee180b70e0fe1644..141ec8e5aa6f67876c3912bbb9170f61960113e5 100755 (executable)
Binary files a/doc/salome/gui/GEOM/pics/distance.png and b/doc/salome/gui/GEOM/pics/distance.png differ
index 11b959395fdecce7da5d29c059c76d1abdacb394..8c12380555579eb23ac9ad282f69090ef1c18aef 100755 (executable)
@@ -15,11 +15,18 @@ if (navigator.appName !="Netscape")
 <style type="text/css">\r
 <!--\r
 img_whs1 { width:20px; height:20px; border-style:none; }\r
-p.whs2 { font-size:12pt; }\r
-p.whs3 { font-size:12pt; margin-left:40px; }\r
-img_whs4 { border:none; width:312px; height:324px; float:none; border-style:none; }\r
-img_whs5 { border:none; width:260px; height:200px; float:none; border-style:none; }\r
-img_whs6 { border:none; float:none; width:260px; height:200px; border-style:none; }\r
+p.whs2 { font-size:12pt; margin-left:40px; }\r
+img_whs3 { border:none; width:312px; height:324px; float:none; border-style:none; }\r
+p.whs4 { font-size:12pt; }\r
+table.whs5 { x-cell-content-align:top; width:69.427%; border-spacing:0px; }\r
+col.whs6 { width:38.241%; }\r
+col.whs7 { width:44.919%; }\r
+tr.whs8 { x-cell-content-align:top; }\r
+td.whs9 { width:38.241%; padding-right:10px; padding-left:10px; border-right-style:none; border-left-style:none; border-top-style:none; border-bottom-style:none; }\r
+p.whs10 { margin-right:93px; }\r
+img_whs11 { border:none; width:258px; height:201px; float:none; border-style:none; }\r
+td.whs12 { width:44.919%; padding-right:10px; padding-left:10px; border-top-style:none; border-bottom-style:none; border-right-style:none; }\r
+img_whs13 { border:none; width:271px; height:205px; float:none; border-style:none; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
 <!--\r
@@ -51,7 +58,7 @@ if (window.gbWhTopic)
 {\r
        if (window.setRelStartPage)\r
        {\r
-       addTocInfo("Geometry module\nCreating geometrical objects\nCreating Complex Objects\nPipe");\r
+       addTocInfo("Geometry module\nCreating geometrical objects\nCreating Complex Objects\nExtrusion along a path");\r
 addButton("show",BTN_IMG,"Show","","","","",0,0,"whd_show0.gif","whd_show2.gif","whd_show1.gif");\r
 addButton("hide",BTN_IMG,"Hide","","","","",0,0,"whd_hide0.gif","whd_hide2.gif","whd_hide1.gif");\r
 \r
@@ -80,60 +87,76 @@ if (window.writeIntopicBar)
        writeIntopicBar(4);\r
 //-->\r
 </script>\r
-<h1><span style="font-size: 14pt;"><font size=4 style="font-size:14pt;"><img src="files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image59.gif" width="20px" height="20px" border="0" class="img_whs1"> </font></span>Pipe Construction</h1>\r
+<h1><span style="font-size: 14pt;"><font size=4 style="font-size:14pt;"><img src="files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image59.gif" width="20px" height="20px" border="0" class="img_whs1"> </font></span>Extrusion along \r
+ a path</h1>\r
 \r
 <p><b><span style="font-weight: normal;">T</b>o</span> <span style="font-size: 12pt;"><font size=3 style="font-size:12pt;">generate \r
a </font></span><span style="font-size: 12pt; font-weight: bold;"><font size=3 style="font-size:12pt;"><B>Pipe</B></font></span> \r
</font></span><span style="font-weight: bold;"><B>Extrusion along a path</B></span> \r
  in the <span style="font-weight: bold;"><B>Main Menu</B></span> select <span \r
  style="font-weight: bold;"><B>New Entity - &gt; Generation &nbsp;- \r
- &gt; Extrusion along a path</B></span></p>\r
+ &gt; Extrusion along a path </B></span>or click<span style="font-weight: bold;"> \r
+ <B></B></span><span style="font-size: 14pt;"><font size=4 style="font-size:14pt;"><img src="files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image59.gif" width="20px" height="20px" border="0" class="img_whs1"></font></span>button in the \r
+ toolbar<span style="font-weight: bold;"><B>.</B></span></p>\r
+\r
+<p>&nbsp;</p>\r
+\r
+<p class="whs2"><img src="pics/pipe.png" x-maintain-ratio="TRUE" width="312px" height="324px" border="0" class="img_whs3"></p>\r
 \r
 <p>&nbsp;</p>\r
 \r
 <p>To create an extruded <span style="font-weight: bold;"><B>Pipe</B></span> shape, \r
  you need to define the <span style="font-weight: bold;"><B>Base Object </B></span><span \r
- style="font-size: 12pt;"><font size=3 style="font-size:12pt;">(vertex, edge, wire, face or shell)</font></span><span \r
+ style="font-size: 12pt;"><font size=3 style="font-size:12pt;">(vertex, edge, planar wire, face or shell)</font></span><span \r
  style="font-weight: bold;"><B>,</B></span> which will be extruded and the <span \r
- style="font-weight: bold;"><B>Path Object</B></span> <span style="font-size: 12pt;"><font size=3 style="font-size:12pt;">(edge, \r
face or shell) </font></span>along which the Base Object will be extruded. </p>\r
+ style="font-weight: bold;"><B>Path Object</B></span> <span style="font-size: 12pt;"><font size=3 style="font-size:12pt;">(edge \r
or wire) </font></span>along which the Base Object will be extruded. </p>\r
 \r
-<p class="whs2"><b style="font-weight: bold;"><span style="font-weight: normal;">The</span> \r
+<p class="whs4"><b style="font-weight: bold;"><span style="font-weight: normal;">The</span> \r
  Result <span style="font-weight: normal;">of the operation will be a</span></b> \r
- GEOM_Object (edge, face, solid or compsolid).</p>\r
+ GEOM_Object (edge, face or shell, solid or compsolid).</p>\r
 \r
-<p class="whs2">&nbsp;</p>\r
+<p class="whs4">&nbsp;</p>\r
 \r
-<p class="whs2"><b style="font-weight: bold;">TUI Command:</b><i> \r
+<p class="whs4"><b style="font-weight: bold;">TUI Command:</b><i> \r
  </i><span style="font-style: italic;"><I>geompy.MakePipe(baseShape, pathShape)</I></span> \r
  </p>\r
 \r
-<p class="whs2"><b style="font-weight: bold;">Arguments:</b> \r
- Name + 1 shape (vertex, edge, wire, face or shell) serving as base object \r
+ 1 shape (edge, face or shell) for definition of the path.</p>\r
+<p class="whs4"><b style="font-weight: bold;">Arguments:</b> \r
+ Name + 1 shape (vertex, edge, planar wire, face or shell) serving as base \r
object + 1 shape (edge or wire) for definition of the path.</p>\r
 \r
-<p class="whs2">&nbsp;</p>\r
+<p class="whs4">&nbsp;</p>\r
 \r
-<p class="whs3"><img src="pics/pipe.png" x-maintain-ratio="TRUE" width="312px" height="324px" border="0" class="img_whs4"></p>\r
+<p class="whs4"><b style="font-weight: bold;">Example:</b></p>\r
 \r
-<p class="whs3">&nbsp;</p>\r
+<p class="whs4">&nbsp;</p>\r
 \r
-<p class="whs2"><b style="font-weight: bold;">Example:</b></p>\r
+<table x-use-null-cells cellspacing="0" width="69.427%" class="whs5">\r
+<col class="whs6">\r
+<col class="whs7">\r
 \r
-<p class="whs2">&nbsp;</p>\r
+<tr valign="top" class="whs8">\r
+<td width="38.241%" class="whs9">\r
+<p class="whs10"><img src="pics/pipe_wire_edgesn.png" x-maintain-ratio="TRUE" width="258px" height="201px" border="0" class="img_whs11"></td>\r
+<td width="44.919%" class="whs12">\r
+<p><img src="pics/pipesn.png" x-maintain-ratio="TRUE" width="271px" height="205px" border="0" class="img_whs13"></td></tr>\r
+</table>\r
 \r
-<p class="whs3"><img src="pics/pipe_wire_edgesn.png" x-maintain-ratio="TRUE" width="260px" height="200px" border="0" class="img_whs5"> &nbsp;<img src="pics/pipesn.png" x-maintain-ratio="TRUE" width="260px" height="200px" border="0" class="img_whs6"></p>\r
+<p>&nbsp;</p>\r
+\r
+<p>&nbsp;</p>\r
 \r
-<p class="whs3">&nbsp;</p>\r
+<p class="whs2">&nbsp;</p>\r
 \r
-<p class="whs2">Our TUI Scripts provide you with useful examples \r
+<p class="whs4">Our TUI Scripts provide you with useful examples \r
  of creation of <a href="complex_objects.htm#bookmark3">Complex Geometric \r
  Objects</a>. </p>\r
 \r
 <p>&nbsp;</p>\r
 \r
-<p class="whs3">&nbsp;</p>\r
+<p class="whs2">&nbsp;</p>\r
 \r
-<p class="whs3">&nbsp;</p>\r
+<p class="whs2">&nbsp;</p>\r
 \r
 <script type="text/javascript" language="javascript1.2">\r
 <!--\r
index 60c00d9034323369470ad518ee4a1b7a18b1be97..f97060e7d46f26d9e5c4777de82f6b898100129f 100755 (executable)
@@ -20,17 +20,19 @@ p.whs3 { font-size:12pt; margin-left:40px; }
 img_whs4 { border:none; width:312px; height:346px; float:none; border-style:none; }\r
 p.whs5 { font-size:12pt; font-weight:bold; }\r
 img_whs6 { border:none; width:312px; height:385px; float:none; border-style:none; }\r
-img_whs7 { border:none; width:400px; height:315px; float:none; }\r
-table.whs8 { x-cell-content-align:top; width:72.604%; border-spacing:0px; }\r
-col.whs9 { width:32.089%; }\r
-col.whs10 { width:32.008%; }\r
-col.whs11 { width:35.903%; }\r
-tr.whs12 { x-cell-content-align:top; }\r
-td.whs13 { width:32.089%; padding-right:10px; padding-left:10px; border-right-style:none; border-left-style:none; border-top-style:none; border-bottom-style:none; }\r
-img_whs14 { border:none; width:258px; height:249px; float:none; border-style:none; }\r
-td.whs15 { width:32.008%; padding-right:10px; padding-left:10px; border-right-style:none; border-top-style:none; border-bottom-style:none; }\r
-img_whs16 { border:none; width:291px; height:181px; float:none; border-style:none; }\r
-td.whs17 { width:35.903%; padding-right:10px; padding-left:10px; border-top-style:none; border-bottom-style:none; border-right-style:none; }\r
+img_whs7 { border:none; width:400px; height:315px; float:none; border-style:none; }\r
+table.whs8 { x-cell-content-align:top; border-spacing:0px; width:46.537%; }\r
+col.whs9 { width:50.063%; }\r
+col.whs10 { width:49.937%; }\r
+tr.whs11 { x-cell-content-align:top; }\r
+td.whs12 { padding-right:10px; padding-left:10px; border-right-style:none; border-left-style:none; border-top-style:none; border-bottom-style:none; }\r
+p.whs13 { font-size:12pt; font-style:italic; text-align:center; }\r
+p.whs14 { font-size:12pt; font-weight:bold; text-align:center; }\r
+td.whs15 { padding-right:10px; padding-left:10px; border-right-style:none; border-top-style:none; border-bottom-style:none; }\r
+td.whs16 { padding-right:10px; padding-left:10px; border-left-style:none; border-right-style:none; border-bottom-style:none; }\r
+img_whs17 { border:none; width:258px; height:249px; float:none; border-style:none; }\r
+td.whs18 { padding-right:10px; padding-left:10px; border-right-style:none; border-bottom-style:none; }\r
+img_whs19 { border:none; width:291px; height:181px; float:none; border-style:none; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
 <!--\r
@@ -154,8 +156,8 @@ if (window.writeIntopicBar)
 <p class="whs2"><span style="font-weight: bold;"><B><b style="font-weight: bold;">TUI \r
  Command:</b> </B></span>geompy.MakePlaneFace(Face, TrimSize) </p>\r
 \r
-<p class="whs2"><b>Arguments: </b>Name + 1 face + 1 value (to \r
- define the size of the plane).</p>\r
+<p class="whs2"><b style="font-weight: bold;">Arguments: </b>Name \r
+ 1 face + 1 value (to define the size of the plane).</p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
@@ -163,29 +165,31 @@ if (window.writeIntopicBar)
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
-<p class="whs5">Examples:</p>\r
+<p class="whs5">Examples:<span style="font-size: 12pt; font-weight: bold;"> \r
+ <font size=3 style="font-size:12pt;"><B>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</B></font></span></p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
-<p class="whs5"><span style="font-weight: normal; font-style: italic;"><I>Planes</I></span> \r
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span \r
- style="font-weight: normal; font-style: italic;"><I>A \r
- Plane created on a Plane of another size</I></span></p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<table x-use-null-cells cellspacing="0" width="72.604%" class="whs8">\r
+<table x-use-null-cells width="46.537%" cellspacing="0" class="whs8">\r
 <col class="whs9">\r
 <col class="whs10">\r
-<col class="whs11">\r
-\r
-<tr valign="top" class="whs12">\r
-<td width="32.089%" class="whs13">\r
-<p class="whs2"><img src="pics/planes1.png" x-maintain-ratio="TRUE" width="258px" height="249px" border="0" class="img_whs14"></td>\r
-<td width="32.008%" class="whs15">\r
-<p class="whs2"><img src="pics/plane_on_face.png" x-maintain-ratio="TRUE" width="291px" height="181px" border="0" class="img_whs16"></td>\r
-<td width="35.903%" class="whs17">\r
-<p class="whs2">&nbsp;</td></tr>\r
+\r
+<tr valign="top" class="whs11">\r
+<td colspan="1" rowspan="1" width="50.063%" class="whs12">\r
+<p align="center" class="whs13"><span style="font-size: 12pt;\r
+                                                               font-weight: normal;\r
+                                                               font-style: italic;"><font size=3 style="font-size:12pt;"><I>Planes created on \r
+ the basis</I></font></span></p>\r
+<p align="center" class="whs14"><span style="font-weight: normal; font-style: italic;"><I>of \r
+ the Global Coordinate System</I></span></td>\r
+<td colspan="1" rowspan="1" width="49.937%" class="whs15">\r
+<p align="center" class="whs13">Plane crated on a Face of another Shape</td></tr>\r
+\r
+<tr valign="top" class="whs11">\r
+<td width="50.063%" class="whs16">\r
+<p class="whs2"><img src="pics/planes1.png" x-maintain-ratio="TRUE" width="258px" height="249px" border="0" class="img_whs17"></td>\r
+<td width="49.937%" class="whs18">\r
+<p class="whs2"><img src="pics/plane_on_face.png" x-maintain-ratio="TRUE" width="291px" height="181px" border="0" class="img_whs19"></td></tr>\r
 </table>\r
 \r
 <p class="whs2">&nbsp;</p>\r
index 8207fb641621bb2790a4291d34e107c22221fd1d..334f49da3da3024e8377d63a20f3485ad64533d5 100755 (executable)
@@ -158,8 +158,9 @@ if (window.writeIntopicBar)
 <p class="whs7">Finally, we can define a \r
  point by an <span style="font-weight: bold;"><B>Edge</B></span> and a <span style="font-weight: bold;"><B>Parameter</B></span> \r
  &nbsp;indicating \r
- its position on the Edge. For example, 0.5 means that the point is located \r
- in the middle of the edge.<span style="font-style: italic;"> <I></I></span></p>\r
+ its position on the Edge, ranging from 0.0 to 1.0. For example, 0.5 means \r
+ that the point is located in the middle of the edge.<span style="font-style: italic;"> \r
+ <I></I></span></p>\r
 \r
 <p class="whs8"><span style="font-style: italic;"><I><b style="font-weight: bold; font-style: normal;">TUI \r
  Command :</b> &nbsp;&nbsp;geompy.MakeVertexOnCurve(Edge, \r
index 9f9bfafdc71aa74bba4ff747df93073cd48847ad..511b8abb945bc350541b97b0d735cc510b00ba1b 100755 (executable)
@@ -750,304 +750,8 @@ if (window.writeIntopicBar)
 <p class="whs1">salome.sg.updateObjBrowser(1) \r
  </p>\r
 \r
-<p class="whs2">&nbsp;</p>\r
-\r
-<h3><a name=bookmark8>Check Free Boundaries</a></h3>\r
-\r
-<p class="whs1">import os</p>\r
-\r
-<p class="whs1">import geompy</p>\r
-\r
-<p class="whs1">import salome</p>\r
-\r
-<p class="whs1">gg = salome.ImportComponentGUI(&quot;GEOM&quot;)</p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<p class="whs2"># create boxes</p>\r
-\r
-<p class="whs1">box1 = geompy.MakeBox(0,0,0,100,50,100)</p>\r
-\r
-<p class="whs1">box2 = geompy.MakeBox(100,0,0,250,50,100)</p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<p class="whs2"># make a compound</p>\r
-\r
-<p class="whs1">compound = geompy.MakeCompound([box1, \r
- box2])</p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<p class="whs2"># import from *.brep</p>\r
-\r
-<p class="whs1">ImportBREP = geompy.ImportBREP(&quot;<span \r
- style="font-family: 'Lucida Console', monospace;">os.getenv(&quot;DATA_DIR&quot;)+&quot;/Shapes/Brep/flight_solid.brep&quot;)</span></p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<p class="whs2"># get a face</p>\r
-\r
-<p class="whs1">faces = geompy.SubShapeAllSorted(ImportBREP, \r
- geompy.ShapeType[&quot;FACE&quot;])</p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<p class="whs2"># get the free boundary \r
- for face 32</p>\r
-\r
-<p class="whs1">Res = geompy.GetFreeBoundary(faces[32])</p>\r
-\r
-<p class="whs1">isSuccess &nbsp;&nbsp;= \r
- Res[0]</p>\r
-\r
-<p class="whs1">ClosedWires = Res[1]</p>\r
-\r
-<p class="whs1">OpenWires &nbsp;&nbsp;= \r
- Res[2]</p>\r
-\r
-<p class="whs2">&nbsp;&nbsp;</p>\r
-\r
-<p class="whs2">i<span style="font-family: 'Lucida Console', monospace;">f \r
- isSuccess == 1 :</span></p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
- &quot;Checking free boudaries is OK.&quot;</p>\r
-\r
-<p class="whs1">else :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
- &quot;Checking free boudaries is KO!&quot;</p>\r
-\r
-<p class="whs1">print &quot;len(ClosedWires) \r
- = &quot;, len(ClosedWires)</p>\r
-\r
-<p class="whs1">i = 0</p>\r
-\r
-<p class="whs1">for wire in ClosedWires \r
- :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;wire_name \r
- = &quot;Face 32 -&gt; Close wires : WIRE %d&quot;%(i+1)</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;geompy.addToStudy(ClosedWires[i], \r
- wire_name)</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;if \r
- i &lt; len(ClosedWires) :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i \r
- = i+ 1</p>\r
-\r
-<p class="whs1">print &quot;len(OpenWires) \r
- = &quot;, len(OpenWires)</p>\r
-\r
-<p class="whs1">i = 0</p>\r
-\r
-<p class="whs1">for wire in OpenWires \r
- :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;wire_name \r
- = &quot;Face 32 -&gt; Open wires : WIRE %d&quot;%(i+1)</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;geompy.addToStudy(OpenWires[i], \r
- wire_name)</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;if \r
- i &lt; len(OpenWires) :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i \r
- = i+ 1</p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<p class="whs2"># get the free boundary \r
- for face 41</p>\r
-\r
-<p class="whs1">Res = geompy.GetFreeBoundary(faces[41])</p>\r
-\r
-<p class="whs1">isSuccess &nbsp;&nbsp;= \r
- Res[0]</p>\r
-\r
-<p class="whs1">ClosedWires = Res[1]</p>\r
-\r
-<p class="whs1">OpenWires &nbsp;&nbsp;= \r
- Res[2]</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;</p>\r
-\r
-<p class="whs1">if isSuccess == 1 \r
- :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
- &quot;Checking free boudaries is OK.&quot;</p>\r
-\r
-<p class="whs1">else :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;print \r
- &quot;Checking free boudaries is KO!&quot;</p>\r
-\r
-<p class="whs1">print &quot;len(ClosedWires) \r
- = &quot;, len(ClosedWires)</p>\r
-\r
-<p class="whs1">i = 0</p>\r
-\r
-<p class="whs1">for wire in ClosedWires \r
- :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;wire_name \r
- = &quot;Face 41 -&gt; Close wires : WIRE %d&quot;%(i+1)</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;geompy.addToStudy(ClosedWires[i], \r
- wire_name)</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;if \r
- i &lt; len(ClosedWires) :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i \r
- = i+ 1</p>\r
-\r
-<p class="whs1">print &quot;len(OpenWires) \r
- = &quot;, len(OpenWires)</p>\r
-\r
-<p class="whs1">i = 0</p>\r
-\r
-<p class="whs1">for wire in OpenWires \r
- :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;wire_name \r
- = &quot;Face 41 -&gt; Open wires : WIRE %d&quot;%(i+1)</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;geompy.addToStudy(OpenWires[i], \r
- wire_name)</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;if \r
- i &lt; len(OpenWires) :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i \r
- = i+ 1</p>\r
-\r
-<p class="whs2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>\r
-\r
-<p class="whs2"># add the imported object \r
- to the study</p>\r
-\r
-<p class="whs1">id_ImportBREP = geompy.addToStudy(ImportBREP, \r
- &quot;ImportBREP&quot;)</p>\r
-\r
-<p class="whs2"><span style="font-family: 'Lucida Console', monospace;">salome.sg.updateObjBrowser(1)</span> \r
- </p>\r
-\r
-<p class="whs2">&nbsp;</p>\r
-\r
-<h3><a name=bookmark9>Check Free Faces</a></h3>\r
-\r
-<p class="whs1">import geompy</p>\r
-\r
-<p class="whs1">import salome</p>\r
-\r
-<p class="whs1">gg = salome.ImportComponentGUI(&quot;GEOM&quot;)</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p># create a vertex and a vector</p>\r
-\r
-<p class="whs1">p1 = geompy.MakeVertex(35, \r
- 35, 0)</p>\r
-\r
-<p class="whs1">p2 = geompy.MakeVertex(35, \r
- 35, 50)</p>\r
-\r
-<p class="whs1">v = geompy.MakeVector(p1, \r
- p2)</p>\r
-\r
 <p>&nbsp;</p>\r
 \r
-<p># create a cylinder</p>\r
-\r
-<p class="whs1">cylinder = geompy.MakeCone(p1, \r
- v, 30, 20, 20)</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p># create a cone</p>\r
-\r
-<p class="whs1">cone = geompy.MakeCone(p1, \r
- v, 70, 40, 60)</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p># make cut</p>\r
-\r
-<p class="whs1">cut = geompy.MakeCut(cone, \r
- cylinder)</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p># get faces as sub-shapes</p>\r
-\r
-<p class="whs1">faces = []</p>\r
-\r
-<p class="whs1">faces = geompy.SubShapeAllSorted(cut, \r
- geompy.ShapeType[&quot;FACE&quot;])</p>\r
-\r
-<p class="whs1">f_2 = geompy.GetSubShapeID(cut, \r
- faces[0])</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p># remove one face from the shape</p>\r
-\r
-<p class="whs1">cut_without_f_2 = \r
- geompy.SuppressFaces(cut, [f_2])</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p># suppress the specified wire</p>\r
-\r
-<p class="whs1">result = geompy.GetFreeFacesIDs(cut_without_f_2)</p>\r
-\r
-<p class="whs1">print &quot;A number \r
- of free faces is &quot;, len(result)</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p># add objects in the study</p>\r
-\r
-<p class="whs1">all_faces = geompy.SubShapeAllSorted(cut_without_f_2, \r
- geompy.ShapeType[&quot;FACE&quot;])</p>\r
-\r
-<p class="whs1">for face in all_faces \r
- :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;sub_shape_id \r
- = geompy.GetSubShapeID(cut_without_f_2, face)</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;if \r
- result.count(sub_shape_id) &gt; 0 :</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;face_name \r
- = &quot;Free face %d&quot;%(sub_shape_id)</p>\r
-\r
-<p class="whs1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;geompy.addToStudy(face, \r
- face_name)</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p># in this example all faces from cut_without_f_2 are free</p>\r
-\r
-<p class="whs1">id_cut_without_f_2 \r
- = geompy.addToStudy(cut_without_f_2, &quot;Cut without f_2&quot;)</p>\r
-\r
-<p>&nbsp;</p>\r
-\r
-<p># display the results</p>\r
-\r
-<p class="whs1">gg.createAndDisplayGO(id_cut_without_f_2)</p>\r
-\r
-<p><span style="font-family: 'Lucida Console', monospace;">gg.setDisplayMode(id_cut_without_f_2,1)</span> \r
- </p>\r
-\r
 <script type="text/javascript" language="javascript1.2">\r
 <!--\r
 if (window.writeIntopicBar)\r
index e7b123514fecca0756537d776e80215e491c39cb..0253bd68309d594c29421d72b9f6cd9ddef479fb 100755 (executable)
@@ -98,19 +98,19 @@ if (window.writeIntopicBar)
  has to be rotated around the <span style="font-weight: bold;"><B>Axis</B></span> \r
  (in degrees).</p>\r
 \r
-<p class="whs2"><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b style="font-weight: bold;"><span \r
- style="font-weight: normal;">The</span> Result <span style="font-weight: normal;">of \r
the operation will be a</span></b> GEOM_Object (edge, face, solid or compsolid).</font></span></p>\r
+<p class="whs2">The <span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b style="font-weight: bold;">Result \r
+ </b></font></span>of the operation will be a GEOM_Object (edge, face, shell, \r
solid or compsolid).</p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
 <p class="whs2"><b style="font-weight: bold;">TUI Command:</b><i> \r
- </i><span style="font-style: italic;"><I>geompy.MakeRevolution(Shape, Axis, \r
+ </i><span style="font-style: italic;"><I>geompy.MakeRevolution(Base, Axis, \r
  Angle)</I></span>.</p>\r
 \r
 <p class="whs2"><b style="font-weight: bold;">Arguments:</b> \r
- Name + 1 shape (vertex, edge, wire, face or shell) serving as base object \r
- + 1 vector (for direction) + 1 value (angle).</p>\r
+ Name + 1 shape (vertex, edge, planar wire, face or shell) serving as base \r
object + 1 vector (for direction) + 1 value (angle).</p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
index 056aa8ea52d44aa42cbbc8f182cdd321c71554b3..f860cc72ab97fbadb9bec7972c0747a640c236c2 100755 (executable)
@@ -123,7 +123,8 @@ if (window.writeIntopicBar)
  Angle)</I></span> </p>\r
 \r
 <p class="whs2"><b style="font-weight: bold;">Arguments:</b> \r
- 1 shape + 1 vector for direction of rotation + 1 angle.</p>\r
+ Name + one or several objects + 1 shape + 1 vector for direction of rotation \r
+ + 1 angle.</p>\r
 \r
 <p class="whs3">&nbsp;</p>\r
 \r
index 9e5d4fd0a7892c3278702d45eb262ce13d111e35..a21dbd08e42e7156804597bbd813709871544963 100755 (executable)
@@ -111,7 +111,7 @@ if (window.writeIntopicBar)
 \r
 <p class="whs3"><b style="font-weight: bold;"><span style="font-weight: normal;">The</span> \r
  Result <span style="font-weight: normal;">will be a</span> </b>GEOM_Object \r
- (COMPOUND).</p>\r
+ (EDGE or WIRE).</p>\r
 \r
 <p class="whs3"><span style="font-weight: bold;"><B>TUI Command:</B></span> \r
  &nbsp;<span style="font-style: italic;"><I>geompy.MakeSection(s1, \r
index 1db40edfad5ad802c4ed51d132e4e6ac844545f8..2291257ff5d63149c6405d9bc4682fe2b34535a2 100755 (executable)
@@ -99,25 +99,27 @@ if (window.writeIntopicBar)
 </script>\r
 <h1>Sketcher</h1>\r
 \r
-<p><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b style="font-weight: bold;"><img src="i_blue.jpg" x-maintain-ratio="TRUE" x-save-file="TRUE" x-save-method="compute-relative" width="30px" height="30px" border="0" class="img_whs1"></b></font></span>Sketcher allows to create curves of 2 types: line \r
- segment and arc. &nbsp;The \r
- curve is created from the current point (center of coordinates when the \r
- sketcher is started). &nbsp;The \r
- end of the curve is defined by means of &quot;destination&quot;, which \r
- can be a destination point (for segment only) or destination direction \r
- coupled with length of a segment or angle and radius of an arc.</p>\r
+<p><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b><img src="i_blue.jpg" x-maintain-ratio="TRUE" x-save-file="TRUE" x-save-method="compute-relative" width="30px" height="30px" border="0" class="img_whs1"></b></font></span>Sketcher \r
+ allows to create curves of 2 types: line segment and arc. By default, \r
+ the start point of the curve is located at the point of origin of the \r
+ reference coordinate system and the curve lies in the plane <span style="font-style: italic;"><I>XOY</I></span>. \r
+ &nbsp;The end \r
+ of the curve is defined by means of &quot;destination&quot;, which can \r
+ be a destination point (for segment only) or destination direction coupled \r
+ with length of a segment or angle and radius of an arc.</p>\r
 \r
 <p>&nbsp;</p>\r
 \r
 <p>Sketcher is able to create planar curves only. Therefore, it is necessary \r
- to select a working plane before starting a sketch (by default, XOY plane \r
- is used). Sketcher creates curves lying in the current working plane (New \r
- Entity -&gt; Basic -&gt; Working Plane).</p>\r
+ to select a working plane before starting a sketch (by default, the plane \r
+ <span style="font-style: italic;"><I>XOY</I></span> \r
+ is used). Sketcher creates curves lying in the current working plane (<span \r
+ style="font-style: italic;"><I>New Entity -&gt; Basic -&gt; Working Plane</I></span>).</p>\r
 \r
 <p>&nbsp;</p>\r
 \r
 <p>This functionality is available from the main menu via <span style="font-style: italic;"><I>New \r
- Entity / Sketch.</I></span></p>\r
+ Entity -&gt; Sketch.</I></span></p>\r
 \r
 <p>&nbsp;</p>\r
 \r
@@ -128,7 +130,8 @@ if (window.writeIntopicBar)
 <p>&nbsp;</p>\r
 \r
 <p class="whs2"><b style="font-weight: bold;">TUI Command:</b><i> \r
- </i><span style="font-style: italic;"><I>geompy.MakeSketcher(Command, WorkingPlane)</I></span></p>\r
+ </i><span style="font-style: italic;"><I>geompy.MakeSketcher(Command, \r
+ WorkingPlane)</I></span></p>\r
 \r
 <p class="whs3">This algorithm creates \r
  a sketcher (wire or face), following the textual description, passed through \r
@@ -140,8 +143,9 @@ if (window.writeIntopicBar)
  local working plane.</p>\r
 \r
 <p class="whs3"><span style="font-style: italic;"><I>WorkingPlane</I></span> \r
- is a planar face of the working plane (a list of 9 doubles which are coordinates \r
- of OZ and OX of the local working plane).</p>\r
+ can be a plane or a planar face. The plane is defined by the <span style="font-style: italic;"><I>xyz</I></span> \r
+ coordinates of three non-coincident points. The planar face is an existing \r
+ &nbsp;GEOM_Object.</p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
@@ -160,7 +164,8 @@ if (window.writeIntopicBar)
  X,Y;</p></li>\r
        \r
        <li class=kadov-p><p class="whs2">relative coordinates \r
- DX, DY (with respect to the current point);</p></li>\r
+ DX, DY \r
+ (with respect to the current point);</p></li>\r
        \r
        <li class=kadov-p><p class="whs2">selection of an existing \r
  point.</p></li>\r
index a715f69c4ffa8416a97207be3e6992e08a247dd6..ad9b4f4ee02a77c5f5735bfdd129db09ba3c2f2c 100755 (executable)
@@ -90,7 +90,7 @@ if (window.writeIntopicBar)
 \r
 <p class="whs3"><span style="font-weight: normal;">You \r
  can create a</span> Solid <span style="font-weight: normal;">from a list \r
- of shells.</span></p>\r
+ of closed shells.</span></p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
@@ -105,8 +105,8 @@ if (window.writeIntopicBar)
  </i><span style="font-style: italic;"><I>geompy.MakeSolid(ListOfShape)</I></span>, \r
  where ListOfShape is a list of shells from which the solid is constructed.</p>\r
 \r
-<p class="whs2"><b>Arguments:</b> Name + A closed shell or \r
- a list of shells.</p>\r
+<p class="whs2"><b style="font-weight: bold;">Arguments:</b> \r
Name + A closed shell or a list of shells.</p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
index b3aba4ffb14e65cb0e8679016cc993497124ece1..8c68eb4bd7c24b309a414efdc6b17c0cfbf115b4 100755 (executable)
@@ -183,56 +183,85 @@ if (window.writeIntopicBar)
 \r
 <p># create a vertex and a vector</p>\r
 \r
-<p class="whs1">p1 = geompy.MakeVertex(10, 40, &nbsp;0)</p>\r
-<p class="whs1">p2 = geompy.MakeVertex(&nbsp;0, &nbsp;0, 50)</p>\r
-<p class="whs1">p3 = geompy.MakeVertex(10, 50,-20)</p>\r
-<p class="whs1">p4 = geompy.MakeVertex(10, 50, 60)</p>\r
+<p class="whs1">p1 = geompy.MakeVertex(10, \r
+ 40, 0)</p>\r
+\r
+<p class="whs1">p2 = geompy.MakeVertex( \r
+ 0, &nbsp;0, 50)</p>\r
 \r
-<p class="whs1">v = geompy.MakeVector(p1, p2)</p>\r
-<p class="whs1">vr = geompy.MakeVector(p3, p4)</p>\r
+<p class="whs1">p3 = geompy.MakeVertex(10, \r
+ 50,-20)</p>\r
+\r
+<p class="whs1">p4 = geompy.MakeVertex(10, \r
+ 50, 60)</p>\r
+\r
+<p class="whs1">v = geompy.MakeVector(p1, \r
+ p2)</p>\r
+\r
+<p class="whs1">vr = geompy.MakeVector(p3, \r
+ p4)</p>\r
 \r
 <p>&nbsp;</p>\r
 \r
 <p># create a cylinder</p>\r
 \r
 <p class="whs1">height = 35</p>\r
+\r
 <p class="whs1">radius1 = 20</p>\r
 \r
-<p class="whs1">cylinder = geompy.MakeCylinder(p1, v, radius1, height)</p>\r
+<p class="whs1">cylinder = geompy.MakeCylinder(p1, \r
+ v, radius1, height)</p>\r
 \r
 <p>&nbsp;</p>\r
 \r
 <p># rotate the given object around the given axis by the given angle</p>\r
 \r
-<p class="whs1">rotation1 = geompy.MakeRotation(cylinder, vr, math.pi)</p>\r
-<p class="whs1">rotation2 = geompy.MakeRotationThreePoints(cylinder, p4, p1, p2)</p>\r
+<p class="whs1">rotation1 = geompy.MakeRotation(cylinder, \r
+ vr, math.pi)</p>\r
+\r
+<p class="whs1">rotation2 = geompy.MakeRotationThreePoints(cylinder, \r
+ p4, p1, p2)</p>\r
 \r
 <p>&nbsp;</p>\r
 \r
 <p># add objects in the study</p>\r
 \r
-<p class="whs1">id_vr = geompy.addToStudy(vr, &quot;Rotation 1 axis&quot;)</p>\r
-<p class="whs1">id_p4 = geompy.addToStudy(p4, &quot;Rotation 2 center&quot;)</p>\r
-<p class="whs1">id_p1 = geompy.addToStudy(p1, &quot;Rotation 2 point 1&quot;)</p>\r
-<p class="whs1">id_p2 = geompy.addToStudy(p2, &quot;Rotation 2 point 2&quot;)</p>\r
-<p class="whs1">id_cylinder = geompy.addToStudy(cylinder, &quot;Cylinder&quot;)</p>\r
-<p class="whs1">id_rotation1 = geompy.addToStudy(rotation1, &quot;Rotation 1&quot;)</p>\r
-<p class="whs1">id_rotation2 = geompy.addToStudy(rotation2, &quot;Rotation 2&quot;)</p>\r
+<p class="whs1">id_vr = geompy.addToStudy(vr, \r
+ &quot;Rotation axis&quot;)</p>\r
 \r
-<p>&nbsp;</p>\r
+<p class="whs1">id_p4 = geompy.addToStudy(p4, \r
+ &quot;Rotation 2 center&quot;)</p>\r
+\r
+<p class="whs1">id_p1 = geompy.addToStudy(p1, \r
+ &quot;Rotation 2 point 1&quot;) </p>\r
+\r
+<p class="whs1">id_p2 = geompy.addToStudy(p2, \r
+ &quot;Rotation 2 point 2&quot;)id_cylinder = geompy.addToStudy(cylinder, \r
+ &quot;Cylinder&quot;)</p>\r
+\r
+<p class="whs1">id_rotation1 = geompy.addToStudy(rotation, \r
+ &quot;Rotation 1&quot;)</p>\r
+\r
+<p class="whs1">id_rotation2 = geompy.addToStudy(rotation, \r
+ &quot;Rotation 2&quot;)</p>\r
+\r
+<p class="whs1">&nbsp;</p>\r
 \r
 <p># display the results</p>\r
 \r
 <p class="whs1">gg.createAndDisplayGO(id_vr)</p>\r
-<p class="whs1">gg.createAndDisplayGO(id_p4)</p>\r
-<p class="whs1">gg.createAndDisplayGO(id_p1)</p>\r
-<p class="whs1">gg.createAndDisplayGO(id_p2)</p>\r
-<p class="whs1">gg.createAndDisplayGO(id_cylinder)</p>\r
+\r
+<p class="whs1">gg.createAndDisplayGO(id_p4)gg.createAndDisplayGO(id_p1)gg.createAndDisplayGO(id_p2)gg.createAndDisplayGO(id_cylinder)</p>\r
+\r
 <p class="whs1">gg.setDisplayMode(id_cylinder,1)</p>\r
+\r
 <p class="whs1">gg.createAndDisplayGO(id_rotation1)</p>\r
-<p class="whs1">gg.createAndDisplayGO(id_rotation2)</p>\r
-<p class="whs1">gg.setDisplayMode(id_rotation1,1)</p>\r
-<p class="whs1">gg.setDisplayMode(id_rotation2,1)</p>\r
+\r
+<p><span style="font-family: 'Lucida Console', monospace;">gg.createAndDisplayGO(id_rotation2)gg.setDisplayMode(id_rotation1,1)</span> \r
+ </p>\r
+\r
+<p><span style="font-family: 'Lucida Console', monospace;">gg.setDisplayMode(id_rotation2,1)</span> \r
+ </p>\r
 \r
 <p>&nbsp;</p>\r
 \r
index fcc9e7126c75342c6fcb9dab019e6e3cb4be5910..3612cb78976b0b291c6e17b3eea301ddaef8d4eb 100755 (executable)
@@ -125,7 +125,8 @@ if (window.writeIntopicBar)
  components of translation vector.</p>\r
 \r
 <p class="whs3"><b style="font-weight: bold;">Arguments:</b> \r
- <b><span style="font-weight: normal;">Name + </b>1 shape + 3 values (coordinates).</span></p>\r
+ <b><span style="font-weight: normal;">Name + one or several objects</b> \r
+ + 3 values (coordinates).</span></p>\r
 \r
 <p class="whs3">&nbsp;</p>\r
 \r
@@ -140,8 +141,9 @@ if (window.writeIntopicBar)
  </b><span style="font-style: italic;"><I>geompy.MakeTranslationTwoPoints(Object, \r
  Point1, Point2)</I></span> </p>\r
 \r
-<p class="whs2"><span><font size=3 style="font-size:12pt;"><b style="font-weight: bold;">Arguments</font></span>: \r
- <span style="font-weight: normal;">Name + </span></b>1 shape + 2 vertices</p>\r
+<p class="whs2"><b>Arguments: <span style="font-weight: normal;">Name \r
+ + </span></b><b><span style="font-weight: normal;">one or several objects</span></b> \r
+ + 2 vertices</p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
@@ -155,8 +157,9 @@ if (window.writeIntopicBar)
 <p class="whs2"><b style="font-weight: bold;">TUI Command: \r
  </b>geompy.MakeTranslationVector(Object, Vector)</p>\r
 \r
-<p class="whs2"><span><font size=3 style="font-size:12pt;"><b style="font-weight: bold;">Arguments</font></span>: \r
- <span style="font-weight: normal;">Name + </span></b>1 shape + 1 vector.</p>\r
+<p class="whs2"><b>Arguments: <span style="font-weight: normal;">Name \r
+ + </span></b><b><span style="font-weight: normal;">one or several objects</span></b> \r
+ + 1 vector.</p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
index aa1d2955e6efcfaf9f05755c70316940345c8e54..ed87f8a7c0fb913bb3420470b74a0349751e8440 100755 (executable)
@@ -22,7 +22,7 @@ p.whs5 { font-size:12pt; margin-left:40px; }
 img_whs6 { border:none; width:312px; height:324px; float:none; border-style:none; }\r
 img_whs7 { border:none; width:312px; height:358px; float:none; border-style:none; }\r
 p.whs8 { font-size:12pt; margin-left:40px; font-weight:bold; }\r
-img_whs9 { border:none; width:156px; height:203px; }\r
+img_whs9 { border:none; width:156px; height:203px; border-style:none; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
 <!--\r
@@ -109,7 +109,7 @@ if (window.writeIntopicBar)
 <p class="whs3"><b style="font-style: normal;"><span \r
  style="font-weight: bold;"><B>TUI Command:</b><b> &nbsp;</B></span><span \r
  style="font-weight: normal;">g</b>eompy.MakeVector(Point1, \r
- Point2)</span></p>\r
+ Point2)</span><span style="font-style: normal;">.</span></p>\r
 \r
 <p class="whs4"><b style="font-weight: bold;">Arguments \r
  : </b><span style="font-weight: normal;">Name + 2 vertices.</span></p>\r
@@ -127,7 +127,7 @@ if (window.writeIntopicBar)
 <p class="whs2"><b><span style="font-weight: bold;"><B>TUI Command:</b><b> \r
  </B></span><span style="font-weight: bold; font-style: italic;"><I><B>&nbsp;</B></I></span></b><span \r
  style="font-style: italic;"><I>geompy.MakeVectorDXDYDZ(DX, \r
- DY, DZ)</I></span> </p>\r
+ DY, DZ).</I></span> </p>\r
 \r
 <p class="whs2"><span><font size=3 style="font-size:12pt;"><b style="font-weight: bold;">Arguments \r
  : </b></font></span>Name + 3 values </p>\r
index 6b5a5490222e1c377f20d9c3a6aa0b6e40e96386..98ac4090b1033e1a1d70ea837f4dfa473f5be11a 100755 (executable)
@@ -103,7 +103,7 @@ if (window.writeIntopicBar)
 <ul type="disc" class="whs2">\r
        \r
        <li class=kadov-p><p><span style="font-weight: bold;"><B>Rename - </B></span>allows \r
- to change the name of the geometric object.<span style="font-weight: bold;"> \r
+ to change the name of the geometrical object.<span style="font-weight: bold;"> \r
  <B></B></span></p></li>\r
        \r
        <li class=kadov-p><p class="whs3"><a href="wireframe_and_shading.htm">Display \r
@@ -116,27 +116,27 @@ if (window.writeIntopicBar)
        \r
        <li class=kadov-p><p><span style="font-weight: bold;"><B><a href="transparency.htm">T</B></span><span \r
  style="font-weight: bold;"><B>ransparency</B></span></a> - allows to change the \r
- transparency of mesh elements.</p></li>\r
+ transparency of geometrical objects.</p></li>\r
        \r
        <li class=kadov-p><p><span style="font-weight: bold;"><B><a href="isos.htm">Isos</a></B></span> \r
  - allows to <span style="font-size: 12pt;"><font size=3 style="font-size:12pt;">change the number of isolines \r
  displayed within a shape.</font></span></p></li>\r
        \r
-       <li class=kadov-p><p><span style="font-weight: bold;"><B><img src="image18.gif" width="26px" height="26px" border="0" class="img_whs4"> Erase</B></span> - allows to hide the selected mesh from the \r
- viewer. <b><span style="font-size: 12pt; font-weight: normal;"><font size=3 style="font-size:12pt;">TUI Command</font></span><span \r
- style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> :</b><i> sg.EraseOnly(ID)</i></font></span></p></li>\r
+       <li class=kadov-p><p><span style="font-weight: bold;"><B><img src="image18.gif" width="26px" height="26px" border="0" class="img_whs4"> Erase</B></span> - allows to hide the selected geometrical object \r
+ from the viewer. <b><span style="font-size: 12pt; font-weight: normal;"><font size=3 style="font-size:12pt;">TUI \r
Command</font></span><span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"> :</b><i> sg.EraseOnly(ID)</i></font></span></p></li>\r
        \r
        <li class=kadov-p><p><span style="font-weight: bold;"><B><img src="image26.gif" width="26px" height="26px" border="0" class="img_whs4"> Erase all</B></span> &nbsp;- \r
  allows to hide all objects from the viewer. <span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b \r
  style="font-weight: normal;">TUI Command:</b><i> sg.EraseAll()</i></font></span></p></li>\r
        \r
        <li class=kadov-p><p><span style="font-weight: bold;"><B><img src="image33.gif" width="23px" height="24px" border="0" class="img_whs5"> Display Only</B></span> -allows to display only the selected \r
mesh, hiding all other from the viewer. <span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b \r
geometrical object, hiding all other from the viewer. <span style="font-size: 12pt;"><font size=3 style="font-size:12pt;"><b \r
  style="font-weight: normal;">TUI Command:</b><i> sg.DisplayOnly(ID)</i></font></span></p></li>\r
        \r
        <li class=kadov-p><p><span style="font-weight: bold;"><B>Update</B></span> \r
- - refreshes the presentation of your mesh in the Object Browser, applying \r
- all recent changes.</p></li>\r
+ - refreshes the presentation of your geometrical object in the Object \r
Browser, applying all recent changes.</p></li>\r
        \r
        <li class=kadov-p><p><span style="font-weight: bold;"><B>Dump view</B></span> \r
  - exports an object from the viewer in bmp, \r
index 72e457c70f31efd54c5f88509a9e5ebd3630c87b..c7d4d882058c1131c0c2f577c3dbaff1dfee1252 100755 (executable)
@@ -115,8 +115,8 @@ if (window.writeIntopicBar)
  Face</B></span> or a <span style="font-weight: bold;"><B>Local Coordinate System</B></span> \r
  to be your <span style="font-weight: bold;"><B>Working Plane</B></span></p>\r
 \r
-<p class="whs2"><b style="font-weight: bold;">Arguments:</b> \r
Name + 1 selection (face or planar face), </p>\r
+<p class="whs2"><b>Arguments:</b> Name + 1 selection (plane \r
+ or planar face), </p>\r
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
index bb1db960d5c867664fd32f36617473143838d8d2..be4f437e5db306cc6a07a9d3599e0e032c65e9bc 100755 (executable)
@@ -17,7 +17,7 @@ if (navigator.appName !="Netscape")
 img_whs1 { border:none; width:24px; height:22px; border-style:none; }\r
 p.whs2 { font-size:12pt; }\r
 p.whs3 { font-size:12pt; font-weight:bold; margin-left:40px; }\r
-img_whs4 { border:none; border-style:none; width:312px; height:379px; float:none; }\r
+img_whs4 { border:none; width:312px; height:379px; float:none; border-style:none; }\r
 p.whs5 { font-size:12pt; margin-left:0px; font-weight:normal; }\r
 ul.whs6 { list-style:disc; }\r
 img_whs7 { border:none; width:50px; height:31px; border-style:none; }\r
@@ -28,7 +28,6 @@ p.whs11 { font-size:12pt; margin-left:40px; }
 img_whs12 { border:none; width:250px; height:307px; border-style:none; }\r
 img_whs13 { border:none; width:22px; height:22px; border-style:none; }\r
 p.whs14 { font-size:12pt; margin-left:40px; font-weight:bold; }\r
-img_whs15 { border:none; width:312px; height:379px; float:none; border-style:none; }\r
 -->\r
 </style><script type="text/javascript" language="JavaScript">\r
 <!--\r
@@ -133,8 +132,8 @@ if (window.writeIntopicBar)
 <ul type="disc" class="whs6">\r
        \r
        <li class=kadov-p><p class="whs5"><span style="font-weight: bold;"><B>Shape \r
- Type</B></span> radio button define the type of elements for the group (points, \r
lines, planes or shapes). </p></li>\r
+ Type</B></span> radio button defines the type of elements for the group (points, \r
edges, wires, faces, shells or solids). </p></li>\r
        \r
        <li class=kadov-p><p class="whs5"><span style="font-weight: bold;"><B>Group \r
  Name</B></span> - here you can enter the name of the group, by default, it \r
@@ -249,14 +248,10 @@ if (window.writeIntopicBar)
 \r
 <p class="whs2">&nbsp;</p>\r
 \r
-<p class="whs14"><b style="font-weight: bold;"><img src="pics/editgroup.png" x-maintain-ratio="TRUE" width="312px" height="379px" border="0" class="img_whs15"></b></p>\r
+<p class="whs14"><b style="font-weight: bold;"><img src="pics/editgroup.png" x-maintain-ratio="TRUE" width="312px" height="379px" border="0" class="img_whs4"></b></p>\r
 \r
 <p class="whs14">&nbsp;</p>\r
 \r
-<p class="whs2">Our <span style="font-weight: bold;"><B>TUI Scripts</B></span> \r
- provide you with useful examples of <a href="working_with_groups.htm">Working \r
- with Groups</a>. </p>\r
-\r
 <p>&nbsp;</p>\r
 \r
 <script type="text/javascript" language="javascript1.2">\r