自定义
本章讨论自定义文件如何在启动时加载、如何通过命令行手动打开这些文件、通过编辑 Tecplot 360 配置文件可进行的自定义设置,以及使用菜单可进行的自定义设置。
启动时加载的自定义文件
启动时,Tecplot 360 将加载某些配置文件。这些文件可编辑,并可根据偏好放置在不同位置。不同文件类型如下:
-
tecplot.add (Add-on Loading)
-
tecplot.cfg (Configuration Files)
-
tecplot.fnt (Custom Character and Symbol Definition)
-
tecplot.mcr (Quick Macro Panel)
-
tecplot_latex.mcr (LaTeX Expressions)
-
variable_aliases.txt (Creating and Using a Variable Alias File)
当 Tecplot 360 首次启动时,它会按以下列出的顺序在以下位置查找上述 tecplot* 文件。Tecplot* 指代上述任意文件名。
-
在命令行中指定的 tecplot* 文件。(参见Loading custom files via the Command Line.)
-
当前工作目录中的 tecplot* 文件。
-
使用 -h 标志设置主目录时,主目录中的 tecplot* 文件。
-
用户主目录中的 tecplot* 文件。在 Mac 和 Linux 上,用户主目录中的 tecplot* 文件前必须加句点。例如 .tecplot.add。
-
Tecplot 360 安装目录中的 tecplot* 文件。
使用上述搜索顺序中找到的第一个文件;即使存在其他文件也会被忽略。要查看正在加载的 tecplot* 文件,请在 360 中转到(在 Mac 上为)并在运行时环境中查找这些文件。
通过命令行加载自定义文件
您可以通过在启动 Tecplot 360 时在命令行中自定义文件名前添加选项标志来指定不同的自定义文件。
以下命令启动 Tecplot 360 并安装启动时指定的自定义文件。
tec360 -flag tecplot*
指定-flag是您要加载的特定文件的标志。请参考下表以确定应使用的正确标志。
-addonfile filename |
通过tecplot.add文件提供自定义插件列表。 |
-c cfgfile |
使用cfgfile作为配置文件,而非默认配置文件。tecplot.cfg. |
-f fontfile |
Use fontfile使用该文件替代默认字体文件。tecplot.fnt. |
-p scriptfile |
Use scriptfile例如使用 tecplot_latex.mcr 替代默认文件。tecplot_latex.mcr. |
-qm quickpanelfile |
将宏函数放置在quickpanelfile的快速宏面板中,而非使用默认文件中的宏。tecplot.mcr. |
要查看这些文件的示例,请在您的 Tecplot 360 安装目录中打开相应文件。
配置文件
Tecplot 360 配置文件是一种特殊类型的宏文件,Tecplot 360 在启动时会读取该文件。使用自定义配置文件可以覆盖 Tecplot 360 的部分或全部出厂默认设置。
| 您可以使用任何纯文本编辑器从头创建配置文件,或通过编辑现有配置文件的副本进行创建。 |
| 配置文件中应仅包含您希望覆盖默认设置的那些选项。 |
请参阅Custom Files loaded on Startup了解其加载方式。
编辑配置文件
您不仅限于自定义现有配置文件中显示的设置。大多数可通过$!Field, $!LineMap修改的设置,或$!Interface宏命令$!LIMITS macro command can be used in the configuration
file only.
The simplest way to do this is to create a layout or macro with the settings you want, then copy and paste the appropriate commands into your configuration file. See the Scripting Guide for complete details on macro commands.
SetValue 命令
SetValue 命令是用于指定给定绘图属性值的宏命令。您可以将 SetValue 命令添加到您的tecplot.cfg文件中,以覆盖 Tecplot 360 的任何默认设置。例如,假设您希望二维坐标轴显示为青色。您可以通过以下方式将此偏好添加到配置文件中:[T0006] 使用 Tecplot 360 界面创建一个带有青色坐标轴的二维图,同时将操作步骤录制为宏,或者将生成的绘图保存为 Tecplot 布局。[T0007] 编辑生成的宏或布局,查找设置二维坐标轴颜色的行。以下示例显示了在带有青色坐标轴的二维图布局中指定 X 轴和 Y 轴详细信息的命令:[T0008] 仅保留实际设置颜色的行,丢弃其余内容:[T0009] 将生成的行粘贴到您的配置文件中。[T0010] 绘图默认设置 - FIELDMAP 和 LINEMAP
-
Using the Tecplot 360 interface, create a 2D plot with cyan axes while either recording your steps as a macro, or else save the resulting plot as a Tecplot layout.
-
Edit the resulting macro or layout, scanning for the lines that set the 2D axis colors. The following example shows the commands that specify the X- and Y-axis details in a layout of a 2D plot with cyan axes:
$!TWODAXIS XDETAIL{RANGEMIN = -3} $!TWODAXIS XDETAIL{RANGEMAX = 15} $!TWODAXIS XDETAIL{GRIDLINES{SHOW=YES}} $!TWODAXIS XDETAIL{AUTOGRID=NO} $!TWODAXIS XDETAIL{GRSPACING = 5} $!TWODAXIS XDETAIL{GRIDLINES{COLOR = CYAN}} $!TWODAXIS YDETAIL{GRIDLINES{SHOW = YES}} $!TWODAXIS YDETAIL{GRIDLINES{COLOR = CYAN}} -
Discard everything but the lines that actually set the color:
$!TWODAXIS XDETAIL{GRIDLINES{COLOR = CYAN}} $!TWODAXIS YDETAIL{GRIDLINES{COLOR = CYAN}} -
Paste the resulting lines into your configuration file.
绘图默认设置 - FIELDMAP 和 LINEMAP
可以包含单个$!FIELDMAP命令来设置绘图默认值。在配置文件中无法指定区域,且该命令对 Tecplot 360 动态设置的值(如网格颜色)无效。在以下示例中,默认等值线类型为 Flood,散点符号形状为 Delta,散点大小为 1.8。[T0013] 与上述方式相同,可以添加单个
$!FIELDMAP CONTOUR{CONTOURTYPE = FLOOD}
$!FIELDLAYERS SHOWSCATTER = YES
$!FIELDMAP SCATTER{SYMBOLSHAPE{GEOMSHAPE = DEL}}
$!FIELDMAP SCATTER{FRAMESIZE = 1.8}
In the same way as above, a single $!LINEMAP命令用于线映射默认设置。在以下示例中,XY 和极坐标线映射将使用虚线样式,符号为实心圆。[T0015] 覆盖自动视图→适应
$!LINEMAP LINES{LINEPATTERN = DASHED}
$!LINEPLOTLAYERS SHOWSYMBOLS = YES
$!LINEMAP SYMBOLS{SYMBOLSHAPE{GEOMSHAPE = CIRCLE}}
$!LINEMAP SYMBOLS{FILLMODE = USELINECOLOR}
覆盖自动视图→适应
加载 3D 绘图时,Tecplot 360 会自动将绘图适应到框架。若要恢复旧版 Tecplot 360 使用固定缩放因子的行为,请从 tecplot.cfg 文件中的以下行中移除#:[T0018] 众多
#$!FrameSetup Initial3DScale = 0.7
Interface Configuration
The many members of the $!INTERFACE宏成员可帮助您配置 Tecplot 360 的用户界面和图形绘制功能。尽管其中一些命令可在任何宏中执行,但最佳放置位置是 Tecplot 360 配置文件:[T0020] 以下是一些示例。完整列表请参阅《脚本指南》。[T0021] 通用界面配置选项tecplot.cfg. Below are a few examples.
Refer to the Scripting Guide for a complete listing.
通用界面配置选项
$!INTERFACE后跟:
- MOUSEACTIONS {MIDDLEBUTTON {SIMPLEDRAG=ZOOMDATA}}
-
指定鼠标中键单击并拖动的操作。鼠标中键和右键的其他选项列在《脚本指南》中。这些命令只能在 Tecplot 360 配置文件中执行。
- USESTROKEFONTSONSCREEN = (YES, NO)
-
若设置为
YES,工作区中所有文本将使用 Tecplot 360 内部笔画字体绘制。若设置为NO,则将改用原生 TrueType 字体。 - USESTROKEFONTSFOR3DTEXT = (YES, NO)
-
If set to
YES,工作区中所有 3D 文本将使用 Tecplot 360 内部笔画字体绘制。3D 文本包括:当活动绘图类型为 3D 笛卡尔坐标系时的 ASCII 散点符号、节点标签和单元标签。对于 3D 文本,此设置会覆盖USESTROKEFONTSONSCREEN的设置。若设置为NO,则将改用 TrueType 字体。
Vulkan 专用配置选项
提供若干选项,可进一步调整 Tecplot 360 以适配您平台的 Vulkan 能力。要为这些参数赋值,必须使用$!INTERFACE VULKANCONFIG命令。这些选项的完整列表请参见《脚本指南》。
$!INTERFACE VULKANCONFIG followed by:
- {GPUNUMBER = <整数>}<integer>}
-
选择要使用的 GPU 设备。如果存在多个 GPU 设备,可通过指定 -1 或 GPU 偏移量来选择所需的 GPU 设备。默认设置为 -1,表示由 Tecplot 360 自行选择。GPU 编号范围为 0 到 <设备数>-1。关闭 Tecplot 360 欢迎屏幕后,请在 Tecplot 360 的"帮助"→"关于 Tecplot 360 EX"对话框的"运行时"部分中查找"Vulkan 信息",以获取可供选择的 GPU 列表。
- {MAXIMAGEFILTERMAGNIFICATION = <实数>}<double>}
-
设置在使用纹理之前,非纹理调整滤镜的最大放大倍数。这可以防止 Tecplot 360 创建过大的纹理。不建议将此值设置为 3 以上。若设置为低于 1.0,则将使用更快的纹理算法。
- {ONSCREENDEVICE {MAXMULTISAMPLES = <整数>}}<integer>}}
-
设置用于屏幕渲染的所需多重采样数。取值范围为 0 到 64 之间的 2 的幂次方。若设置为 0 或 1,则不执行多重采样。较大的多重采样值可产生更平滑的线条,但需要更多 GPU 内存。默认值为 4。并非所有 GPU 都支持所请求的数量。如果请求的数量不可用或不是 2 的幂次方,Tecplot 将选择可用的、最接近的较小 2 的幂次方值。
- {ONSCREENDEVICE {DELIVERNORMALSFORPANELSHADING = (YES, NO)}}<integer>}}
-
指示 Tecplot 360 在屏幕渲染或离屏渲染中使用平面着色时,计算并传递面法线。默认情况下,此值设置为 Yes,指示 Tecplot 360 始终传递面法线。将此值设置为 No 可减少 GPU 内存消耗并提高渲染速度,但在非常靠近模型缩放时可能会产生伪影。
- {ONSCREENDEVICE {OITSETTINGS {FRAGMENTBUFFERSIZE = <整数>}}}<integer>}}}
-
设置在 GPU 上为屏幕渲染透明图分配的片段缓冲区最大大小(以兆字节为单位)。较大的值可生成更精确的透明图,特别是当存在许多重叠的透明图层且覆盖整个视图区域时。取值范围为 1 到 4096(含)。默认值在 macOS 上为 2048,在 Windows 和 Linux 上为 512。
- {ONSCREENDEVICE {OITSETTINGS {MINSORTEDFRAGMENTCOUNT = <整数>}}}<integer>}}}
- {ONSCREENDEVICE {OITSETTINGS {MAXSORTEDFRAGMENTCOUNT = <整数>}}}<integer>}}}
-
设置屏幕渲染透明图时,每个像素排序的片段最小和最大数量。取值范围为 1 到 1024(含)。最小值用于执行交互式视图更改,最大值用于交互式视图更改完成后的最后一帧渲染。这可在交互式视图更改期间提供更好的性能,并在静态图像中提供更高质量,特别是当存在许多重叠的透明图层时。最小值和最大值的默认值分别为 128 和 1024。
- {OFFSCREENDEVICE {MAXMULTISAMPLES = <整数>}}
- {OFFSCREENDEVICE {DELIVERNORMALSFORPANELSHADING = <boolean>}}
- {OFFSCREENDEVICE {OITSETTINGS {FRAGMENTBUFFERSIZE = <integer>}}}
- {OFFSCREENDEVICE {OITSETTINGS {MINSORTEDFRAGMENTCOUNT = <integer>}}}
- {OFFSCREENDEVICE {OITSETTINGS {MAXSORTEDFRAGMENTCOUNT = <integer>}}}
-
除离屏渲染中无意义的 MinSortedFragmentCount 外,其余选项的默认值和行为与屏幕渲染对应项一致,但适用于离屏图像渲染。
性能对话框
该对话框中的出厂设置针对中等规模数据设计,有时可能需要调整以优化 Tecplot 360 的渲染性能。对话框
该对话框包含以下选项:
渲染
- 自动重绘
-
选中后,Tecplot 360 会在样式或数据发生变化时自动重绘图。部分用户偏好关闭此选项以调整多项样式设置,然后手动点击绘图侧边栏上的 [Redraw] 按钮查看完整图形。
| 自动重绘可通过鼠标点击或按键中断。 |
- 启用统计信息叠加
-
选中后,Tecplot 360 将以赫兹(Hz)显示帧率(FPS)、以毫秒显示帧渲染时间,并显示 GPU 名称。注意:FPS 上限为 60。
按需加载
启用按需加载后,Tecplot 360 仅加载绘图所需数据,从而更快生成图形并减少内存占用。若绘图样式变更需加载额外变量,Tecplot 360 将自动加载,并在必要时卸载不再使用的变量。Tecplot 360 按需自动加载/卸载变量的能力,使您能够分析远超计算机物理或虚拟内存容量的数据。
| 此设置不影响读取 Tecplot Subzone(.szplt)格式(即 SZL)的数据。SZL 数据始终按需加载,且加载量尽可能小,可能少于单个区域中某个变量的完整数据量。 |
对于大型数据集,仅加载当前使用的区域和变量。但对于小型数据集,系统可能根据内存阈值自动加载部分其他区域和变量。
- 卸载策略
-
指定如何管理变量及其他按需加载资源的卸载操作。
- 自动卸载
-
此策略尝试将 Tecplot 360 的内存使用控制在定义的最小和最大内存阈值范围内。Tecplot 360 使用这些值来确定何时卸载以及卸载多少。This is the best option for exploring data当 Tecplot 360only unloads if and when the memory threshold has been exceeded未超出阈值时,按需加载的数据将保留在内存中,以便您再次需要时使用。
- 最小化内存使用
-
当需要对变量及其他按需加载资源进行更积极的卸载时,使用此策略。This option is best suited for animating through a very large number of time steps, where each time step consumes a significant part of the computer’s available physical and virtual memory.
- 从不卸载
-
此策略禁用按需加载的卸载功能,同时保留按需加载变量的能力。
大多数用户应选择"自动卸载"或"最小化内存使用"选项。 - 内存阈值(%)[仅限自动卸载]
-
当 Tecplot 360 使用的物理和虚拟内存达到最大百分比时,它将尝试卸载变量及其他按需加载资源,直到可用物理和虚拟内存低于或等于指定的最小百分比。
自定义字符与符号定义
通常,您会使用 TrueType 字体在屏幕上显示文本或进行打印。但您也可以通过向配置文件中添加USESTROKEFONTSONSCREEN和USESTROKEFONTSFOR3DTETXT宏命令来配置 Tecplot 360 使用笔画字体(参见Interface Configuration)。
笔画字体的绘制速度比 TrueType 字体更快,这在创建包含大量复杂文本的图形时尤为重要。笔画字体的另一个优势是您可以重新定义或修改构成字符的笔画,因为它们存储在一个名为tecplot.fnt的纯文本文件中,可通过编辑器修改。关于如何加载自定义字体文件的信息,请参见Custom Files loaded on Startup.
字体文件的结构如下:
#!FF 4
CharCellHeight
Stroke command set for Helvetica Font
Stroke command set for Greek Font
Stroke command set for Math Font
Stroke command set for User-Defined Font
Stroke command set for Times Font
Stroke command set for Times Italic Font
Stroke command set for Courier Font
文件类型和版本位于第一行("FF" 指代字体文件)。CharCellHeight 是行间距(大写字母 M 的高度加上垂直间距),其单位是用于定义笔画字体字符的二维坐标系单位。字符的基线位于零。在 Tecplot 360 使用字符定义之前,它们会按字符单元高度进行归一化。
在字符单元高度之后,有七组笔画命令,如上所示,每组对应一种字体。每组笔画命令包含该字体中字符的定义。每种字体有一个包含 96 个字符的基础字符集(字符索引 32 到 127)。部分字体还包含扩展字符集(字符索引 160 到 255)。扩展字符用于补全大多数常见欧洲语言的字符集。
所有七组笔画命令集必须存在,且每组至少定义一个字符。每组笔画命令集以空格字符(字符索引 32)的定义开始。之后,笔画命令集中的字符可以按任意顺序定义。如果字体文件中未定义某个字符,则该字符将显示为空白。
笔画命令集中的每个字符定义如下:
CharIndex NumCommands CharWidth
Command1
Command2
Command3
.
.
.
CommandNumCommands
CharIndex 是字符索引,每种字体范围为 32 到 127 以及 160 到 255(参见Character Indices in Tecplot 360了解字符索引与英语、希腊语、数学和标准用户定义字体字符的对应关系)。NumCommands 是定义该字符的笔画命令数量。CharWidth 是字符宽度,决定字符间距。
命令可以是以下形式之一:
-
x y
-
x y
-
dx dy
-
dx dy
其中:
-
以
m开头的命令是移动命令。 -
以
d是一个绘图命令。 -
命令
mranddr是相对移动和相对绘图命令。 -
The x and y是字符单元格内的绝对坐标。
-
The dx and dy是相对于前一个位置的相对坐标(从前一个命令所到达的位置开始的增量)。
-
所有坐标均以整数形式指定。
Figure 1展示了一个字符单元格的示例,以及用于定义小写字母"y"的命令。该字符单元格的高度为48。
Figure 2展示了一个正在定义的符号。符号通常应居中于(0, 0)点,以便它们绘制时能居中于所标记的点(箭头符号或类似符号可能例外,此时需要箭头尖端指向标记点)。Tecplot 360附带的字体文件包含许多用户自定义字体笔画命令。其中大部分用于创建额外的绘图符号,当您使用符号类型"Other"、输入ASCII字符并指定用户自定义字体时即可调用这些符号。