例子 3

目录前一页后一页

/********************************************************************* 
 *
 *  Gmsh tutorial 3
 *
 *  网格推移、选项 
 *
 *********************************************************************/

// 我们还是先将例子 1 包含进来:

Include "t1.geo" ;

// 和 't2.geo' 中一样,我们也做一个沿着 z 骤的推移:

h = 0.1 ;

// 和 't2.geo' 中不同的是,我们不仅仅推移了几何体,而且推移了二维的
// 网格。命令还是相同的 Extrude,但是通过设置层数(这里,我们有四层,
// 分别是 8, 4, 2, 1 个单元深度),立体数(从 9000 到 9003)以及相应
// 的高度为 h/4 来实现了网格的推移:

Extrude Surface { 6, {0,0,h} } { 
  Layers { {8,4,2,1}, {9000:9003}, {0.25,0.5,0.75,1} } ; 
} ;

// 和用平移进行推移一样,我们也可以使用一个旋转来进行推移,这样
// 得到的网格能够重组为三棱柱(如果曲面上的网格是三角形)或者
// 是六面体(如果曲面上的网格是四边形)。每个旋转通过一个轴向
// ({0,1,0})、一个轴心点({-0.1,0,0.1})以及一个角度(-Pi/2)来指定:

Extrude Surface { 122, {0,1,0} , {-0.1,0,0.1} , -Pi/2 } { 
  Recombine ; Layers { 7, 9004, 1 } ; 
};

// 一个平移 ({-2*h,0,0}) 和一个旋转 ({1,0,0}, {0,0.15,0.25}, Pi/2) 能
// 够组合起来使用:

Extrude Surface {news-1, {-2*h,0,0}, {1,0,0} , {0,0.15,0.25} , Pi/2}{ 
  Layers {10,9004,1}; Recombine; 
};

Physical Volume(101) = {9000:9004};

// 所有交互方式输入的选项都能够直接在输入文件中指定。比如下面
// 我们指定了一个全局的特征长度因子,重新设定了一些背景颜色,
// 并设定不显示坐标轴,选择了一个初始给定的视图,禁止掉了交互
// 式的旋转选择视图:

Mesh.CharacteristicLengthFactor = 4;
General.Color.Background = {120,120,120};
General.Color.Foreground = {255,255,255};
General.Color.Text = White;
Geometry.Color.Points = Orange;
General.Axes = 0;
General.Trackball = 0;
General.RotationX = 10;
General.RotationY = 70;
General.TranslationX = -0.2;

// 颜色可以通过文字方式或者 RGB 方式给定,比如 'General.Color.Background 
// = Red' 与 'General.Color.Background = {255,0,0}' 是完全一样的。
// 这些选项就和用户定义的变量一样,能够用作任何的左值和右值,
// 比如

Geometry.Color.Surfaces = Geometry.Color.Points;

// 将会把曲面的颜色设置得和点的颜色一样。

// 点击状态条上的问号 '?' 会将当前的左右选项打印在终端上,使用
// 菜单 File->Save as->Geometry->Gmsh current options 会将这些选项存
// 储到文件中。菜单 Options->Save options now 会将当前选项存储起
// 来作为将来的缺省选项。

目录前一页后一页