mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2024-11-16 10:38:33 +05:00
343 lines
12 KiB
HTML
Executable File
343 lines
12 KiB
HTML
Executable File
<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
|
|
|
|
<html>
|
|
|
|
<head>
|
|
<title>Sewing meshes</title>
|
|
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
|
|
<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">
|
|
<link rel="stylesheet" href="../default_ns.css"><script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">
|
|
<!--
|
|
if (navigator.appName !="Netscape")
|
|
{ document.write("<link rel='stylesheet' href='../default.css'>");}
|
|
//-->
|
|
</script>
|
|
<style type="text/css">
|
|
<!--
|
|
img_whs1 { border:none; width:30px; height:30px; float:none; border-style:none; }
|
|
ul.whs2 { list-style:disc; }
|
|
p.whs3 { font-weight:bold; }
|
|
p.whs4 { margin-left:40px; }
|
|
img_whs5 { border:none; width:332px; height:548px; border-style:none; float:right; }
|
|
img_whs6 { border:none; width:612px; height:225px; border-style:none; }
|
|
img_whs7 { border:none; width:581px; height:218px; border-style:none; float:left; }
|
|
img_whs8 { border:none; width:600px; height:227px; border-style:none; }
|
|
p.whs9 { margin-left:0px; }
|
|
img_whs10 { border:none; width:620px; height:228px; border-style:none; }
|
|
img_whs11 { border:none; width:304px; height:222px; border-style:none; }
|
|
-->
|
|
</style><script type="text/javascript" language="JavaScript">
|
|
<!--
|
|
if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
|
|
{
|
|
var strNSS = "<style type='text/css'>";
|
|
strNSS += "p.whs9 {margin-left:1pt; }";
|
|
strNSS +="</style>";
|
|
document.write(strNSS);
|
|
}
|
|
//-->
|
|
</script>
|
|
<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
|
|
<!--
|
|
function reDo() {
|
|
if (innerWidth != origWidth || innerHeight != origHeight)
|
|
location.reload();
|
|
}
|
|
if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
|
|
origWidth = innerWidth;
|
|
origHeight = innerHeight;
|
|
onresize = reDo;
|
|
}
|
|
onerror = null;
|
|
//-->
|
|
</script>
|
|
<style type="text/css">
|
|
<!--
|
|
div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
|
|
p.WebHelpNavBar { text-align:right; }
|
|
-->
|
|
</style><script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>
|
|
<script type="text/javascript" language="javascript" src="../whver.js"></script>
|
|
<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>
|
|
<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>
|
|
<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>
|
|
<script type="text/javascript" language="javascript1.2">
|
|
<!--
|
|
if (window.gbWhTopic)
|
|
{
|
|
if (window.setRelStartPage)
|
|
{
|
|
addTocInfo("MESH module\nModifying meshes\nTransforming meshes\nSewing meshes");
|
|
addButton("show",BTN_IMG,"Show","","","","",0,0,"../whd_show0.gif","../whd_show2.gif","../whd_show1.gif");
|
|
addButton("hide",BTN_IMG,"Hide","","","","",0,0,"../whd_hide0.gif","../whd_hide2.gif","../whd_hide1.gif");
|
|
|
|
}
|
|
|
|
|
|
if (window.setRelStartPage)
|
|
{
|
|
setRelStartPage("../index.htm");
|
|
|
|
autoSync(1);
|
|
sendSyncInfo();
|
|
sendAveInfoOut();
|
|
}
|
|
|
|
}
|
|
else
|
|
if (window.gbIE4)
|
|
document.location.reload();
|
|
//-->
|
|
</script>
|
|
</head>
|
|
<body><script type="text/javascript" language="javascript1.2">
|
|
<!--
|
|
if (window.writeIntopicBar)
|
|
writeIntopicBar(4);
|
|
//-->
|
|
</script>
|
|
<h1>Sewing meshes</h1>
|
|
|
|
<p><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs1"> In SMESH you can sew elements of different
|
|
meshes. The current functionality allows you to sew:</p>
|
|
|
|
<p> </p>
|
|
|
|
<ul type="disc" class="whs2">
|
|
|
|
<li class=kadov-p><p class="whs3"><a href="#free bord">Free
|
|
borders </a></p></li>
|
|
|
|
<li class=kadov-p><p class="whs3"><a href="#conform">Conform
|
|
free borders</a></p></li>
|
|
|
|
<li class=kadov-p><p class="whs3"><a href="#border to side">Border
|
|
to side</a></p></li>
|
|
|
|
<li class=kadov-p><p class="whs3"><a href="#side elements">Side
|
|
elements</a></p></li>
|
|
</ul>
|
|
|
|
<p class="whs3"> </p>
|
|
|
|
<p class=TODO>To sew elements of different meshes:</p>
|
|
|
|
<p class=TODO> </p>
|
|
|
|
<p class="whs4">1. From the <span style="font-weight: bold;"><B>Modification
|
|
</B></span>menu choose the <span style="font-weight: bold;"><B>Transformation
|
|
</B></span>item and from
|
|
its sub-menu select the <span style="font-weight: bold;"><B>Sewing </B></span>item.
|
|
</p>
|
|
|
|
<p class="whs4">2. Check in the dialog box one of the radio
|
|
buttons corresponding to the type of sewing operation you would like to
|
|
perform. </p>
|
|
|
|
<p class="whs4">3. Fill the other fields available in the
|
|
dialog box</p>
|
|
|
|
<p class="whs4">4. Click the <span style="font-weight: bold;"><B>OK
|
|
</B></span><span>or </span><span style="font-weight: bold;"><B>Apply </B></span>button
|
|
to perform the operation of sewing. </p>
|
|
|
|
<h3><a name="free bord"></a>Sew free borders<img src="../pics/sewing1.png" x-maintain-ratio="TRUE" width="332px" height="548px" align="right" border="0" class="img_whs5"></h3>
|
|
|
|
<p>This functionality allows you to unite two free borders of a 2D mesh.</p>
|
|
|
|
<p> </p>
|
|
|
|
<p>For sewing free borders you should define three points on each border:
|
|
first, second and the last node: </p>
|
|
|
|
<p> </p>
|
|
|
|
<ul type="disc" class="whs2">
|
|
|
|
<li class=kadov-p><p> the
|
|
first node specifies beginning of the border ;</p></li>
|
|
|
|
<li class=kadov-p><p> the
|
|
second node specifies the part of the border which should be considered
|
|
(as far as the free border usually forms a closed contour);</p></li>
|
|
|
|
<li class=kadov-p><p> the
|
|
last node specifies the end of the border.</p></li>
|
|
</ul>
|
|
|
|
<p> </p>
|
|
|
|
<p>You can select these nodes in the 3D viewer or define by its id.</p>
|
|
|
|
<p> </p>
|
|
|
|
<p>The first and the second nodes should belong to the same link of a face.
|
|
The second and the last nodes of a border can be the same. The first and
|
|
the last nodes of two borders can be the same. The corresponding end nodes
|
|
of two borders will be merged. Intermediate nodes of two borders will
|
|
be either merged or inserted into faces of the opposite border.</p>
|
|
|
|
<p> </p>
|
|
|
|
<p>The sewing algorithm is as follows:</p>
|
|
|
|
<p> </p>
|
|
|
|
<p class="whs4">1. The parameter (U) of each node within
|
|
a border is computed. So that the first node has U=0.0, the last node
|
|
has U=1.0, for the rest nodes 0.0 < U < 1.0;</p>
|
|
|
|
<p class="whs4">2. Compare node parameters of the two borders.
|
|
If two nodes of the opposite borders have close parameters, they are merged,
|
|
i.e. a node of the first border is replaced in all elements by a node
|
|
of the second border. If a node has no node with a close parameter in
|
|
the opposite border, it is inserted into an edge of element of the opposite
|
|
border, an element is split. Two nodes are considered close enough to
|
|
merge, if difference of their parameters is less than one fifth of minimum
|
|
length of adjacent face edges on the borders.</p>
|
|
|
|
<p> </p>
|
|
|
|
<p class="whs4"><img src="../image22.jpg" width="612px" height="225px" border="0" class="img_whs6"></p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p> <span style="font-weight: bold;"><B>See
|
|
Also</B></span> a sample TUI Script of a <a href="../transforming_meshes.htm#bookmark4">Sew
|
|
Free Borders</a> operation. </p>
|
|
|
|
<p> </p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<h3><a name=conform></a>Sew conform free borders<img src="../pics/sewing2.png" x-maintain-ratio="TRUE" width="332px" height="548px" align="right" border="0" class="img_whs5"></h3>
|
|
|
|
<p>This functionality can be used to unite two free borders of a 2D mesh.
|
|
</p>
|
|
|
|
<p> </p>
|
|
|
|
<p>The borders of meshes for sewing are defined as for "Sew free borders"
|
|
except that the second free border is not limited and can be defined by
|
|
the first and the second nodes only. The first nodes of two borders can
|
|
be the same.</p>
|
|
|
|
<p> </p>
|
|
|
|
<p>The algorithm is following: counting nodes starting at the first ones,
|
|
the n-th node of the first border is merged with the n-th node of the
|
|
other border, until the end of either of borders. Nodes of the first border
|
|
are replaced in all elements with corresponding nodes of the second border.</p>
|
|
|
|
<p>For sewing conform free borders you should define three points on the
|
|
first border and two points on the second one. User can select these nodes
|
|
in 3D viewer or define node by its id.<img src="../image23.jpg" width="581px" height="218px" align="left" border="0" class="img_whs7"></p>
|
|
|
|
<p class="whs3"> </p>
|
|
|
|
<p class="whs3"> </p>
|
|
|
|
<h3> </h3>
|
|
|
|
<h3> </h3>
|
|
|
|
<h3> </h3>
|
|
|
|
<h3> </h3>
|
|
|
|
<h3> </h3>
|
|
|
|
<p> <span style="font-weight: bold;"><B>See
|
|
Also</B></span> a sample TUI Script of a <a href="../transforming_meshes.htm#bookmark5">Sew
|
|
Conform Free Borders</a> operation. </p>
|
|
|
|
<h3> </h3>
|
|
|
|
<h3> </h3>
|
|
|
|
<h3><a name="border to side"></a>Sew border to side<img src="../pics/sewing3.png" x-maintain-ratio="TRUE" width="332px" height="548px" align="right" border="0" class="img_whs5"></h3>
|
|
|
|
<p>"Sew border to side" is intended to sew a free border to a
|
|
mesh surface.</p>
|
|
|
|
<p>The free border is defined as for "Sewing of free borders".
|
|
The place where to sew the border is defined by two nodes, between which
|
|
the border faces are placed, so that the first border node is merged with
|
|
the first node on the side and the last node of the border is merged with
|
|
the second specified node on the side.</p>
|
|
|
|
<p> </p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p>The algorithm is following.</p>
|
|
|
|
<p>1. Find a sequence of linked nodes on the side such that the found links
|
|
to be most co-directed with the links of the free border.</p>
|
|
|
|
<p>2. Sew two sequences of nodes using algorithm of "Sewing of free
|
|
berders".</p>
|
|
|
|
<p>For sewing border to side you should define three points on the border
|
|
and two points on the side. User can select these nodes in 3D viewer or
|
|
define node by its id.</p>
|
|
|
|
<p><img src="../image30.jpg" width="600px" height="227px" border="0" class="img_whs8"></p>
|
|
|
|
<p> <span style="font-weight: bold;"><B>See
|
|
Also</B></span> a sample TUI Script of a <a href="../transforming_meshes.htm#bookmark6">Sew
|
|
Border to Side</a> operation. </p>
|
|
|
|
<p> </p>
|
|
|
|
<h3> </h3>
|
|
|
|
<h3><a name="side elements"></a>Sew side elements<img src="../pics/sewing4.png" x-maintain-ratio="TRUE" width="332px" height="548px" align="right" border="0" class="img_whs5"></h3>
|
|
|
|
<p class="whs9">This operation is intended to unite two mesh
|
|
surfaces.</p>
|
|
|
|
<p class="whs9"> </p>
|
|
|
|
<p>Surfaces may be defined by either 2d or 3d elements. The number of given
|
|
elements of the sides must be the same. The sets of given elements must
|
|
be topologically equal, i.e. each node of one element set must have a
|
|
corresponding node in the other element set and corresponding nodes must
|
|
be equally linked. If there are 3d elements in a set, only their free
|
|
faces must obey to that rule.</p>
|
|
|
|
<p>Two corresponding nodes on each side must be specified. They must belong
|
|
to one element and must be located on an element set boundary.</p>
|
|
|
|
<p> </p>
|
|
|
|
<p>Sewing algorithm finds and merges the corresponding nodes starting from
|
|
the specified ones.</p>
|
|
|
|
<p><img src="../image31.jpg" width="620px" height="228px" border="0" class="img_whs10"></p>
|
|
|
|
<p class="whs4"><img src="../image32.jpg" width="304px" height="222px" border="0" class="img_whs11"></p>
|
|
|
|
<p>For sewing side elements you should define elements for sewing and two
|
|
nodes for merging on the each side. User can select these elements and
|
|
nodes in 3D viewer or define them by its id.</p>
|
|
|
|
<p> </p>
|
|
|
|
<p><span style="font-weight: bold;"><B>See Also</B></span> a sample TUI Script
|
|
of a <a href="../transforming_meshes.htm#bookmark7">Sew Side Elements</a>
|
|
operation. </p>
|
|
|
|
<p> </p>
|
|
|
|
<p> </p>
|
|
|
|
<script type="text/javascript" language="javascript1.2">
|
|
<!--
|
|
if (window.writeIntopicBar)
|
|
writeIntopicBar(0);
|
|
//-->
|
|
</script>
|
|
</body>
|
|
</html>
|