[G+smo]边界和角点

来源:互联网 发布:淘宝一心要几个好评 编辑:程序博客网 时间:2024/05/18 01:11

1. 确定多片模型中各个片的顺序

借助Paraview.打开Pipeline brower下方的information选项卡,可以看到Data Hierarchy中的multi-block dataset. 选定其中一个block, 可以查看其几何区域和边界的范围。由这个信息可以确定片的顺序。

打开gsview.pvd -> Properties Apply -> filters Alphabetical Extract block, create ExtractBlock1 并选中它 -> Properties apply -> properties, block indices

通过该信息可以准确确定block的编号;


2. 确定每个片的边界

每个片的边界编号按逆时针编号为 1 3 2 4 ,分别为西南东北。

利用./gsMakeMultipatch 输出的makeMultiPatchOutput.xml, 文件的最后一部分代表其边界拓扑信息。

利用这些信息可以确定边界的编号


例如

 <MultiPatch parDim="2" id="0">
  <patches type="id_range">0 1</patches>
  <interfaces>1 2 0 1 0 1 1 1
</interfaces>
  <boundary>1 4
1 3
0 4
0 3
0 2
1 1
</boundary>
 </MultiPatch>

表示:
[15:17:49] Angelos Mantzaflaris: patch 1 side 2 matches with patch 0 side 1
[15:18:25] Angelos Mantzaflaris: patch 1 side 4(north) is a boundary
[15:20:07] Angelos Mantzaflaris: opposite to the inteface: patch 1 --> side 1(west), 0 -->side 2(east)



   
These definitions are used by, e.g., boxSide, boxCorner, etc.
    The sides are numbered as follows:
    2D CASE                              |    3D CASE
    -------------------------------------|----------------------------------------
    Edge 1, {(u,v) : u = 0} :  \c west   |    Face 1, {(u,v,w) : u = 0}:  \c west
    Edge 2, {(u,v) : u = 1} :  \c east   |    Face 2, {(u,v,w) : u = 1}:  \c east
    Edge 3, {(u,v) : v = 0} :  \c south  |    Face 3, {(u,v,w) : v = 0}:  \c south
    Edge 4, {(u,v) : v = 1} :  \c north  |    Face 4, {(u,v,w) : v = 1}:  \c north
    &nbsp;                |    Face 5, {(u,v,w) : w = 0}:  \c front
    &nbsp;                |    Face 6, {(u,v,w) : w = 1}:  \c back
    \c none is a special compatibility value used to denote that this is not a boundary.
    The corners are numbered as follows:
    2D CASE                                            |    3D CASE
    ---------------------------------------------------|----------------------------------------
    Corner 1, {(u,v) : u = 0, v = 0} :  \c southwest   |    Corner 1, {(u,v,w) : u = 0, v = 0, w = 0}:  \c southwestfront
    Corner 2, {(u,v) : u = 1, v = 0} :  \c southeast   |    Corner 2, {(u,v,w) : u = 1, v = 0, w = 0}:  \c southeastfront
    Corner 3, {(u,v) : u = 0, v = 1} :  \c northwest   |    Corner 3, {(u,v,w) : u = 0, v = 1, w = 0}:  \c northwestfront
    Corner 4, {(u,v) : u = 1, v = 1} :  \c northeast   |    Corner 4, {(u,v,w) : u = 1, v = 1, w = 0}:  \c northeastfront
    &nbsp;                |    Corner 5, {(u,v,w) : u = 0, v = 0, w = 1}:  \c southwestback
    &nbsp;                |    Corner 6, {(u,v,w) : u = 1, v = 0, w = 1}:  \c southeastback
    &nbsp;                |    Corner 7, {(u,v,w) : u = 0, v = 1, w = 1}:  \c northwestback
    &nbsp;                |    Corner 8, {(u,v,w) : u = 1, v = 1, w = 1}:  \c northeastback
0 0