HowTo How To Chinese
: Ensight Howto Chinese HowTo_Chinese docs China
Open the PDF directly: View PDF .
Page Count: 436
Download | |
Open PDF In Browser | View PDF |
HOW TO TABLE OF CONTENTS 简介 使用在线文档 操作指南使用方法 EnSight 综述 连接 EnSight 客户端和服务器 Command Line Start-up Options Use Environment Variables 读取和载入数据 读取数据 Use ens_checker 载入多组数据 (案例) 加载瞬态数据 Use Server of Servers Load Spatially Decomposed Case Files 用户自定义程序 (reader) 提取结构化部件 Use Block Continuation Use Resource Management 保存和输出 保存 / 恢复归档文件 记录 / 运行命令文件 打印 / 保存图片 保存几何实体 保存 / 恢复上下文环境文件 保存场景文件 保存 / 恢复会话文件 输出 POVRAY 文件 操纵视图参数 旋转、缩放、平移、伸缩 设置绘图模式 设置全局视图参数 设置 Z 切面 设置观测点 / 注视点 设置辅助切面 定义和更改视口 设置光源属性 远程显示 保存 & 恢复视图参数 创建和操纵坐标系 复位工具和视口 使用颜色选择器 启用立体显示 拾取变换中心 设置模型轴线 / 限位框 视口追踪 通过照相机观察视口 管理视图 操纵工具 使用光标 (点)工具 使用直线工具 使用平面工具 使用方框工具 使用圆柱工具 使用圆球工具 使用圆锥工具 使用回转曲面工具 使用选择工具 使用样条曲线工具 可视化数据 创建部件入门 创建等值线 创建等值面 创建粒子追踪 创建剪切 创建剪切直线 创建剪切平面 创建方框剪切 创建二次曲面剪切 创建 IJK 剪切 创建 XYZ 剪切 创建 RTZ 剪切 创建回转工具剪切 创建旋转一维部件剪切 创建一般二次曲面剪切 创建样条曲线剪切 创建矢量箭头 创建提升面 拉伸部件 创建剖面图 创建展开面 创建子集部件 创建张量场标记 显示位移 显示离散或实验数据 更改时间步 提取涡核 提取分离 / 再附线 提取激波面 创建材料部件 移除失效单元 单元消隐 使用点部件 创建和操纵变量 激活变量 创建新变量 提取边界层变量 编辑调色板 使用体渲染 查询、探针和绘图 获取点、节点、单元及部件信息 探针交互 查询 / 绘制 更改曲线图属性 查询数据集 操纵部件 更改颜色 复制部件 部件分组 合并部件 提取部件显示方式 剪切部件 删除部件 更改显示方式 设置属性 显示编号 设置透明度 选择部件 Page 1 HOW TO TABLE OF CONTENTS 设置对称 纹理映射 动画 动画瞬态数据 创建动画书 创建关键帧动画 粒子追踪动画 文字注释 创建文字注释 创建线 创建二维图形 创建三维箭头 创建表盘 创建量表 载入自定义 logo 创建颜色图例 操纵字体 EnSight 配置 自定义图标栏和面板 自定义鼠标按钮 保存 GUI 设置 定义和使用宏 设置或修改首选项 启用用户自定义的输入设备 自定义弹出式菜单 自定义工具 & 特征 Setup For Parallel Computation 并行渲染设置 其他各项 选择文件 Page 2 操作指南:使用在线文档 Introduction 使用在线文档 简介 EnSight 在线文档由下列几部分组成 : 安装指南 安装指南位于 doc 目录下 (为方便阅读,也可在网站的安装页面下获取),同时也被 硬拷贝至 EnSight 发行光盘。 入门指南 入门指南包括基本图形用户界面综述以及一些学习指南。该手册与其他手册无交叉 引用。 操作指南 操作指南的各章节相对比较简短,描述了如何执行 EnSight 中的特定操作 (如:改变 对象颜色或创建等值面),还包括每一步的使用说明以及操作图解。此外,操作指南 中的每一章均包含很多超链接 (以蓝色显示)以链接至相关的章节 (以及用户手册中 的相关部分)。 操作指南:操作指南使用方法 操作指南:目录 用户手册 用户手册为 EnSight 的使用提供了详细的参考。用户手册中也包含蓝色的超链接,其 目录即为各章节的超链接,其内容也包含很多与其他文件的交叉引用 (一般开头为 "See Section ..." 或 "See How To ...") 用户手册目录 接口手册 接口手册包含实现下述功能所需的信息,创建用户自定义数据读取程序 (reader)、 创建用户自定义写出程序 (writer)、创建用户自定义属性函数、通过外部命令驱动与 EnSight 实现交互以及如何使用 EnSight python 编译器。 如何起步 ENSIGHT? 若您是 EnSight 的初学者,建议首先阅读 EnSight 综述,另外,用户手册的 第 1 章和 第 5 章也提供了综述信息, 部件创建入门一章中讲述了 EnSight 中最基本的部件的概念。 PDF 阅读器 EnSight 的在线文档均为 pdf 格式,可使用如 Adobe 公司的 Acrobat Reader 软件、 Xpdf、苹果的 Preview 等 pdf 阅 读器来查看。为了更好的理解该文档,我们对 Acrobat Reader 进行了详细描述。 pdf 阅读器与万维网浏览器提供了几 乎相同的功能,同时能更好地控制文档质量。若要使用不同 (默认)的阅读器,只需简单的将环境变量 CEI_PDFREADER 更改为其他的阅读器应用程序。 See How To Use the How To Manual for more information on using a pdf reader. Page 3 操作指南:使用在线文档 如何打印文档 从 PDF 阅读器中打印章节 (topic) 可以很轻松地打印操作指南中的各章节 (topic)或 pdf 阅读器中其他文档的任何页面。虽然文档已基于屏幕大小做了 优化处理,但是仍然可以进行合理的打印输出。 1. 选择所需打印的章节 (topic) 2. 在文件菜单下选择 " 打印 …" 3. 确认打印机命令设置正确,点击确定。文档应该在选定的 (或默认的)打印机中打印。若您所在网络没有有效的 打印机,或者您想将 PostScript 文件存盘,可以执行这样的操作:点击文件按钮,输入文件名,点击确定。 打印 EnSight 手册 可直接打印已有的 EnSight 手册 (全部或部分),这些文件已进行了打印优化,能够产生合理的高质量拷贝。这些文 件位于 EnSight 安装目录的 doc/Manuals 目录下。 $CEI_HOME/ensight100/doc/Manuals/GettingStarted.pdf $CEI_HOME/ensight100/doc/Manuals/HowTo.pdf $CEI_HOME/ensight100/doc/Manuals/UserManual.pdf $CEI_HOME/ensight100/doc/Manuals/InterfaceManual.pdf 可以在 pdf 阅读器中打开这些手册,打印任意或全部页面,或者发送至外部资源打印,或者在我们的网站上在线 打印。 联系 CEI 若有问题,请联系 CEI: Computational Engineering International, Inc. 2166 N. Salem Street, Suite 101 Apex, NC 27523 USA Email:support@ceisoftware.com Hotline:800-551-4448 (U.S.) 919-363-0883 (Non-U.S.) Phone:919-363-0883 FAX:919-363-0833 WWW:http://www.ceisoftware.com Page 4 操作指南:操作指南使用方法 操作指南使用方法 简介 通过 " 操作指南 " 的目录可快速访问各章节 (topic)。这些章节 (topic)提供 EnSight 特定工具或功能的基本信息和 高级应用信息,还提供链接至 EnSight 用户手册中的对应章节以及操作指南中的其他相关章节。在 EnSight 的各个操 作对话框中点击帮助按钮,会自动打开 " 操作指南 " 中的相关章节 (topic)。 各章节 (topic)一般包含以下部分: 简介 本章节 (topic)简介 基本操作 简单的使用步骤 高级应用 本章节 (topic)详细信息 其他说明 其他常规的应用 另请参见 链接至相关章节 (topic)和文档 (见下文中,如何使用文档导航快速跳至特定部分) 每个页面的页眉和页脚提供了简单的导航控制: 返回至操作 指南目录 当前章节 (topic) 的第一页 当前章节 (topic) 的最后一页 下一页 访问该页 上一页 此外,至其他文档的链接均以加亮的文字显示,注:所有链接和导航控制均以蓝色显示。 在以前版本中,文档是提供索引的。然而,为了能够在线使用该文档,索引已被删除以便更有效地使用 pdf 阅读器中 的 " 搜索 " 功能。 PDF 阅读器 EnSight 的在线文档均为 pdf 格式,可使用如 Adobe 公司的 Acrobat Reader 软件、 Xpdf、苹果的 Preview 等 pdf 阅 读器来查看。为了更好的理解该文档,我们对 Acrobat Reader 进行了详细描述。 pdf 阅读器与万维网浏览器提供了几 乎相同的功能,同时能更好地控制文档质量。要想使用不同 (默认)的阅读器,只需简单的将环境变量 CEI_PDFREADER 更改为其他的阅读器应用程序。 各种 pdf 阅读器的用户界面均非常简单且有直观的导航控制。记住:页面是按照 100% 比例设计的,虽然也可设置为 其他比例,但可能会降低图片质量。 Page 5 操作指南:操作指南使用方法 因此,除了上述文档本身的导航控制之外, pdf 阅读器 (如:Acrobat)也提供了各种快速访问以及导航控制。下面介 绍了 Acrobat Reader 中的一些按钮,请使用阅读器的帮助选项以获取针对该选项的更多描述。 选择工具 抓取并移动页面 打印 点击放大 (按住 Ctl 键, 点击缩小) 标准页面比例控制 获取帮助 返回至上一视图 标准页面导航 转至下一视图 每个标题均列于标题书签上,可使用该书签列表快速导航至各章节 (topic)。 " 向后 / 向前 " 按钮 -- 与网页浏览器上的 " 后退 " 和 " 前进 " 按钮功能类似。若先前的浏览页位于不同的文档中, pdf 阅读器将自动重新加载之前的文件,并跳至之前的页面。注:大多数 pdf 阅读器还考虑视图的变化 (如:滚屏)或比 例,并记录于后退 / 前进列表中。 操作指南使用方法 Page 6 操作指南:操作指南使用方法 打印 从 PDF 阅读器上打印章节 (topic) 可以很容易地打印操作指南的各章节 (topic)或 pdf 阅读器中其他文档的任何页面。文档将自动生成合适比例的打印 输出。打印章节 (topic)的步骤: 1、选择所需打印的章节 (topic)。 2、在文件菜单下选择 " 打印 …" (或点击打印机按钮)。 3、确认打印机命令设置正确,点击确定。文档应该在选定的 (或默认的)打印机上打印。若您所在网络没有有效的 打印机,或者您想将 PostScript 文件存盘,则可以执行这样的操作:点击文件按钮,输入文件名,点击确定。 打印 EnSight 手册 可直接打印已有的 EnSight 手册 (全部或部分),这些文件已进行了打印优化,能够产生合理的高质量拷贝。这些文 件位于 EnSight 安装目录的 doc/Manuals 目录下。 $CEI_HOME/ensight100/doc/Manuals/Installation.pdf $CEI_HOME/ensight100/doc/Manuals/GettingStarted.pdf $CEI_HOME/ensight100/doc/Manuals/HowTo.pdf $CEI_HOME/ensight100/doc/Manuals/UserManual.pdf $CEI_HOME/ensight100/doc/Manuals/InterfaceManual.pdf 可以在 pdf 阅读器中打开这些手册,打印任意或全部页面,或者发送至外部资源打印。 Page 7 操作指南:ENSIGHT 综述 EnSight 综述 ENSIGHT 综述 EnSight 是一个强大的软件包,包括后处理、可视化以及复杂数据动画。尽管开发人员的设计初衷是针对数值计算用 户,但随着软件的逐渐成熟,也可用来处理其他数据。注:EnSight CFD 为单独的产品。 本文提供了非常简短的 EnSight 概述,详见用户手册的第一章,本文分为以下几个部分来介绍。 图形用户界面 客户端 / 服务器架构 EnSight 部件的概念 在线文档 图形用户界面 EnSight 的图形用户界面 (GUI)包含下述主要组成部分: 注:整个 GUI 被称为 " 桌面 " 快速图标栏 (Quick Action Icon Bar) 与所选对象相关的特征和行为 主菜单 功能图标栏 (Feature Icon Bar) 点击打开属性面板 (Feature Panel) 部件列表 模型中的所有部件以及子部件 (如: 剪切、等值面)均列于此。点击任一 项以选择部件来执行操作。 信息反馈区 图形窗口显示曲线图以及视口 信息按钮 点击查看 " 信息 " 对话框。 位置变换控制区 对应于图形窗口中鼠标操作的各种位置变换 (如:旋转或 平移)。 用户手册的第一章提供了更多的用户界面综述信息。 Page 8 操作指南:ENSIGHT 综述 客户端 / 服务器架构 为了便于处理大型数据并且有效地使用网络资源, EnSight 可实现并行处理。数据 I/O 以及所有的计算密集型功能均 通过服务器进程执行。服务器向图形工作站上运行的客户端传输三维几何信息 (以及其他信息),客户端使用工作站 内置显卡处理所有用户界面交互以及图形渲染。 主机 1 主机 2 器 服务器 三维对象 请求 客户端 Stand-alone Operation 单机 主机 1 客户端 Distributed Operation 分布式 客户端和服务器在一台或多台机器上运行各自独立的进程。在计算服务器和图形工作站之间进行分布式操作时, EnSight 将综合两台机器的强项;在同一台机器上运行两个任务时,将发挥单机的最大性能。 EnSight 的客户端 - 服务 器架构能够合理分配资源,甚至运行于不同地域的计算机系统上。 在使用 EnSight 之前,客户端和服务器必须连接。对于单机操作,只需简单地运行 "ensight100" 命令,客户端和服务 器则自动启动并连接;对于分布式操作 (以及需要实现多种控制的单机操作),有两种获取连接的方法:手动连接 (参见入门指南)和自动连接 (参见操作指南:连接 EnSight 客户端和服务器) EnSight 的 案例功能允许对多组数据同时进行后处理。通过单个客户端与运行于同一台机器或不同机器上的多个服务 器连接来执行案例操作。 EnSight 部件的概念 部件是 EnSight 的核心概念之一,是单元及相关节点的总称。可以在部件的节点上定义零个或多个变量 (如:压强或 应力)。部件的所有组分共享同一组属性 (如:颜色或线宽)。 部件可以在加载过程中创建 (基于计算网格及关联表面),也可以在 EnSight 会话期间创建,在加载数据过程中创建 的部件被称为模型部件。 所有的其他部件均在 EnSight 会话期间创建,称之为子部件或派生部件。子部件通过一个或多个母部件创建,它依赖 于母部件,若一个或多个母部件改变,所有依赖于这些母部件的子部件将自动重新计算并重新显示。例如:在某案例 中,基于三维计算域创建一个切面,再基于该切面创建等值线,则等值线的母部件为切面,切面的母部件为三维域。 若三维域改变 (如:时间步改变),切面将首先重新计算,随后等值线重新计算,这样就维持了部件的一致性。 部件操作为 EnSight 中的基本操作,所有了解不同的操作方式十分重要,参见 操作指南:选择部件。 详见部件创建简介 在线文档 EnSight 文档均可在线浏览,详见 操作指南:使用在线文档 及其超链接的文档。在线文档可在用户界面主菜单的帮助 菜单下访问。此外,各对话框窗口中均有帮助按钮,点击可直接打开 " 操作指南 " 中的相关章节。 Page 9 操作指南:连接 ENSIGHT 客户端和服务器 连接 EnSight 客户端和服务器 简介 EnSight 是一款分布式应用程序,其客户端管理用户界面和图形,服务器端读取数据和执行大规模计算。每个客户端 和服务器端在一台或多台计算机上都作为一个独立的进程。在 EnSight 运行之前,客户端进程必须连接到服务器端进 程。 对于在同一台机器 (单机)上的简单操作,客户端和服务器端进程将自动实现连接。若想进一步控制单机操作,或执 行分布式操作,可按以下描述进行。 必要条件 EnSight 必须已安装,并正确地设定 CEI_HOME 和命令搜索路径。若您已根据安装指南中的说明成功安装软件,这些 设置应该是正确的。 (若需帮助,详见 $CEI_HOME/ensight100/doc/Manuals/Installation.pdf。) 简单的单机操作 (自发连接) 若想在同一台机器 (单机)上运行 EnSight 客户端和服务器端 (或 SOS),且没有在别处更改默认的自动连接,则 可以非常简单地执行以下操作:: 启动 Ensight: 非 Windows: Windows: 在桌面上双击 EnSight10.0 图标 或 点击 开始 >CEI>EnSight10.0 在 shell 窗口提示中,键入:ensight100 以 SOS 模式启动 EnSight:(需要 gold 版授权) 非 Windows:: Windows: 开始 >CEI>EnSight10.0 SOS 在 shell 提示窗口,键入:ensight100 -sos 注:添加另一个数据集或替换现有数据集 (EnSight 称其为另一个案例),见下文 新增案例 Page 10 操作指南:连接 ENSIGHT 客户端和服务器 自动连接 自动连接是按默认连接设置的,存储在 " 启动运行设置 " 对话框中。启动时根据对话框中保存的设置 (及相关文件) 进行连接。注:启动设置对话框和底层代码在 EnSight10.0 中已停用。对于较复杂的计算环境,用户应转而使用 ceishell。 . 通过主菜单上 " 案例 " 进 入 " 启动设置 " 对话框。 对于每个连接,其所需信息均在相应输入框中 设置。 T 默认连接即选用 " 默认配置 "。如果 EnSight 基于已有的配置连接启动,即使用该配置中的 设置。例如, ensight100 -c remote_conn 将基于指定配置启动。若没有找到配置文件, EnSight 将根据默认配置启动,并使用主机名 作为 "-c" 的命令行选项。 更改任何输入框均会激活保存按钮,点击可保 存更改的设置。 若要添加一组新配置,在左侧列表中点击右 键,选择 " 复制 "。这样就复制了一个配置,在 进行适当的编辑后,保存更改。 首次启动服务器,打开 " 浏览 " 对话框时 (如 添加或替换案例),使用远程目录。若没有设 置工作目录, EnSight 将使用预设目录,若未 设置预设目录,当前工作目录将取决于软件版 本、操作系统和用户设置。 若数字输入框的值为 -1 或字符串输入框的值为空,则该输 入框将使用默认设置。 Page 11 操作指南:连接 ENSIGHT 客户端和服务器 手动连接 ensight100.client -cm 将采用手动连接启动客户端,并提示用户手动启动服务器或 SOS。可按如下的方式进行:: 注:正在运行的客户端机器被称为 CLIENT_HOST. 将要运行的服务器端的机器被称为 CLIENT_HOST 在另一个窗口,采用 telnet (或 ssh 或等同方式)登录 SERVER_HOST 机器。 SERVER_HOST 和 CLIENT_HOST 不必是同样的操作系统。 从 linux 系统远程登录到 unix 系统 的示例。 从 windows 系统远程登录到 windows 系统的示例。 在 SERVER_HOST 上使用适当的脚本和 -c 选项,启动 ensight 服务器。 ensight100.server -c CLIENT_HOST 对于 SOS ensight100.sos -c CLIENT_HOST The -c CLIENT_HOST 选项告知 EnSight 服务器连接至 EnSight 客户端以监听 CLIENT_HOST。 Windows 系统下远程登 录到 SERVER_HOST which 的示例。 Linux 系统下远程登录到 SERVER_HOST 的示例。 Page 12 操作指南:连接 ENSIGHT 客户端和服务器 服务器现在应为已连接状态。点击窗口工具栏的信息按钮查看连接是否成功,若连接成功,将会在 EnSight 弹出的消 息窗口中看到 "Connection accepted",也可在 " 案例 " 菜单中查看连接细节;若连接失败,请首先查阅下面的手动连 接故障排除和安装指南中的连接故障排除,若还是不能解决问题,请联系 CEI 技术支持。 手动连接故障排除 手动连接失败的原因很多。鉴于网络和计算环境的复杂性,如果下列补救措施未能解决问题,建议咨询本地系统管理 员或 CEI 技术支持。 问题 可能原因 解决方法 对于 Unix 系统: 不能远程登录 SERVER_HOST 主机。 在 SERVER_HOST 机器上远程 获得系统管理员权限,执行该操作。根据所处网 登录服务被禁止或没有运行。. 络,可能需要使用 ssh 或其他类似方式。 SERVER_HOST 主机上 Ensight 服务器没有启动。 SERVER_HOST 主机上 Ensight 没有安装成功。 根据安装指南中的描述,验证 SERVER_HOST 上 软件的安装过程。确保环境变量和命令路径设置 正确。 高级用法 命令行选项 命令行选项可以简化许多连接过程 . 启动命令 ensight100 ensight100.client -c 描述 ensight100 -sos ensight100.client -c -sos 启动客户端,并根据默认配置自动连接到 sos,这需要 gold 版授权。 ensight100.client 仅启动客户端。 ensight100.client -c connname 启动客户端,并自动连接至启动设置中指定的主机。若找不到 connname,则使 用默认配置。 ensight100.client -c connname -sos 启动客户端,并自动连接 sos 至启动设置中指定的主机。 ensight100.client -cm 启动客户端,并提示手动连接。 启动客户端,并根据默认配置自动连接。 * 注:如果从 PC 的命令窗口启动,需将点改为下划线,即 ensight100.client 变成 ensight100_client。如果在启 动时指定一个源文件,其优先级高于连接设置。 . 连接细节 通过 " 案例 " 菜单的 " 连接细节 " 对话框,可以随时查看当前的连接状况。 " 连接细节 " 对话框只提供信息,用 户不能修改。 当有变动发生时,可点击对话框中的 " 更新 " 按钮刷新信息。 Page 13 操作指南:连接 ENSIGHT 客户端和服务器 新增案例 可以在 Ensight 会话中添加数据集 (称为 " 案例 "),这常用于对比两组数据或组合不同求解器中计算的数据。也可执 行下面的步骤来替换当前案例,无需重启 EnSight。 . 可直接在 " 案例 " 菜单下添加或 替换案例, 无论是添加案例还是替换案例,均会出现 该对话框。 若保留当前案例,则对话框中的可选设置 均可编辑,并且将应用到新的案例中。 创建视口 - 如果勾选该选项,新增的案例 将显示在一个新视口中。 应用上下文环境 - 新增的案例将执行案例 1 中的上下文环境。 复制当前连接 - 新增的案例将使用与案例 1 相同的服务器连接。 手动连接 - 尽管第一个连接是自动连接, 但新增的案例将采用手动连接。 反射模式 - 使用指定原点,关于轴线映射 模型。 详见 操作指南:加载多组数据集。 Page 14 操作指南:连接 ENSIGHT 客户端和服务器 其他自动连接条件 在不同计算机上运行 EnSight 服务器或 SOS 进程时,自动连接机制要求计算环境满足一定条件。通常, EnSight 依赖 于正常工作的 "ssh" 命令,不需要密码。下面的注释假定采用默认的 "ssh" 命令。 另外,也可以使用其他命令替换默认的 "ssh" 命令,只要替换命令满足 "ssh" 语法或 "rsh" 语法。 (即:rsh [-l username] hostname 命令) 若使用替代的 "ssh" 命令,可以在 " 启动运行设置 " 对话框中指定该命令或在 EnSight 命令行中带上 "-rsh alternative_command_name" 命令行选项,此处的 "alternative_command_name" 为替代命令。通常,其中一个机制 将用于采用 "ssh" 或 "k5rsh" 的计算环境中。 在 Unix 系统上: 1、在 EnSight 服务器主机的根目录下有一个 .cshrc 文件 (即使正在运行一些其他命令,例如 /bin/sh),该文件包含 有效的 CEI_HOME 设置,并且路径变量包括 CEI_HOME 的 bin 目录。例如,如果 EnSight 安装在 /usr/local/ CEI,并且正在 Linux 或 Unix 系统上运行 EnSight (其他操作系统使用不同的库路径变量), .cshrc 应包含: setenv CEI_HOME /usr/local/CEI set path = ( $path $CEI_HOME/bin ) 若检验这些设置,只需试着启动服务器便可。 2、.cshrc 文件 (或由该文件衍生出的文件)中没有触发输出的命令 (例如日期或密码),因为任何输出均会干扰 EnSight 服务器启动。 3、可以成功的执行从客户端主机系统到服务器主机系统的远程 shell 命令。远程 shell 命令因系统不同而不同。登录客 户端主机系统时,执行下列命令之一 (serverhost 是服务器主机名): ssh serverhost date 如果执行成功,该命令应打印当前日期。 如果这些条件不满足,将无法建立自动连接,必须采用手动连接机制。注:系统管理员出于安全考虑会禁用远程命 令。请咨询本地计算机管理员寻求更多帮助。 注:如果想用 "rsh" 取代 "ssh",需要在运行 EnSight 服务器系统的根目录下存在一个有效的 .rhosts 文件。该文件的 权限必须是,只有所有者 (你)拥有写权限 (例如, chmod 600 ~/.rhosts)。在含有 .rhosts 文件的系统上执行由远 程主机发起的特定命令 (例如 rsh 或 rlogin)。例如,下面的命令行允许在含有 .rhosts 文件的系统上执行来自客户端 主机 clienthost 的远程命令。 clienthost username 应该有一行命令来体现每一个客户端主机系统均可执行远程命令。有时有必要为每个 clienthost.domain.com username (此处 domain.com 应改为客户端主机的完整网络域名)格式的客户端主机添加附加命令行。需验证时, 只需简单地尝试 rsh 至远程主机。 在 Windows 系统上: 1、将 EnSight 服务器 (ensight100_server)和 EnSight 客户端安装在同一个系统 (若想连接到同一系统)。 ---- 或 ---- Page 15 操作指南:连接 ENSIGHT 客户端和服务器 2、从客户端主机系统到服务器主机系统,成功执行一条远程 shell 命令。 注:默认情况下 EnSight 将使用 "ssh" 命令。 ssh 不是 Windows 工作站的默认组件,必须通过第三方来安装。然 而, Windows 包含一个 EnSight 可随意使用的 rsh 命令。注 : 仅仅运行 Windows 服务器的系统才有 RSH 服务,并 且可被运行中的 EnSight 服务器响应。 远程 shell 命令的名称因系统不同而不同。登录客户端主机系统时,执行下列之一 (serverhost 是服务器 主机名): ssh serverhost date rsh serverhost date 如果执行成功,该命令应打印当前日期。 如果条件 1 或 2 不满足,将无法建立自动连接,必须采用手动连接机制。注:系统管理员出于安全考虑一般会禁用远 程命令。请咨询本地计算机管理员寻求更多帮助。 手动连接故障排除 手动连接失败的原因有多种。鉴于网络的复杂性和自定义的计算环境,如果下列补救措施仍未能解决问题,建议咨询 本地系统管理员或 CEI 技术支持。 . 问题 可能原因 解决方法 对于 Unix 系统: 自动连接失败或遭拒绝 服务器 (远程)主机名因为某 检查主机名输入框中的服务器主机输入是否正 些原因不正确。 确?尝试在客户端运行 telnet serverhost。 在服务器主机的根目录下, .rhosts 文件不正确或缺失。 遵照 .rhosts 文件 (如上文中基本操作部分的 第 一步 所描述)的说明。如果不能从客户端主机到 服务器主机成功地执行远程命令 (例如 rlogin 或 rsh),将不能实现自动连接。 服务器主机上不存在客户端主 机的用户账号 (即,登录 名)。 在服务器主机的登录名输入框输入登录名。 服务器系统上找不到服务器可 执行文件。 检查执行文件名 [path /] 输入框中的输入是否正 确,如果服务器执行文件不在服务器的默认命令 搜索路径下,必须输入可执行文件的路径全名。 例如,/usr/local/CEI/ensight100/bin/ ensight100.server. .cshrc 不包含有效的 CEI_HOME 设置。 添加适当的命令行,如上文中基本操作部分的 第 二步 所描述。 .cshrc 文件 (或由它调用的文 删除 .cshrc 文件中的非法命令。作为测试,执行 件)触发写输出。这可理解为 以下 服务器启动错误。 命令: % cd % mv .cshrc .cshrc-SAVE 创建一个新的 .cshrc 文件,该文件只包含上文基 本操作部分的 第二步 所描述的设置 CEI_HOME 和路径的命令行,如果测试能运行,则需要检查 .cshrc 文件,找出并删除非法命令行。 对于 Windows 系统: 自动连接失败或遭拒绝 (试图连接同一主机) ) 服务器未安装或不可执行。 使用 Windows 资源管理器定位服务器可执行文件 (ensight100_server)。双击它,看是否弹出 " 这 是 EnSight Server 10.0" 等的控制台窗口,若未 出现,请参阅入门手册中的 " 安装故障排除 "。 Page 16 操作指南:连接 ENSIGHT 客户端和服务器 问题 可能原因 解决方法 服务器路径不正确。 如果使用 EnSight 连接对话框,请核查 " 可执行 文件 " 输入框中的路径是否正确。 若使用 ensight100 命令运行,首先确保 PATH 环 境变量包含 ensight100"client" 和 "server" 的路 径,可在开始 > 控制面板 > 系统环境对话框中检 查和更正路径值。 在 " 连接设置 " 对话框的 " 主 机名 " 输入框中输入的主机名 不正确。 确保主机名正确,包括所有字母。唯一准确的查 看主机名的方式 (在正确的情况下)是打开 Windows 命令窗口并输入: > ipconfig /all 主机名将首先被列出。 自动连接失败或遭拒绝 (试图连接远程服务器)。 和 Unix 系统一样的原因。 见表格上方的 " 对于 Unix 系统 " 部分。 其他说明 连接名称 - 主机灵活性 在命令行上指定 "-c name" 时, EnSight 会将指定的 "name" 与启动配置的名称进行匹配。如果找到匹配,那么配置的 主机名 (非配置名称)会作为 EnSight 服务器或 EnSight SOS 的计算机名;若未找到匹配, EnSight 会使用默认设 置,但是会将 "-c name" 中指定的名称替换为主机名。 " 启动设置 " 对话框中列出的 " 配置名称 ",可以不同于 " 主机名 "。主机名必须是一个正确的可路由的 Intranet/ Internet 主机名或 TCP/IP 地址,而配置可以是任何名称,只要不含空格或特殊字符即可。配置名称和主机名也可以相 同。 注:" 启动设置 " 对话框在 EnSight 10.0 中不推荐使用,在以后的版本中将删除该功能。对于计算环境比较复杂的用 户推荐使用 ceishell。 EnSight 和 SLiM 使用的网络端口 客户端 / 服务器模式 EnSight 客户端通常通过 TCP 端口 7790 连接到 slimd8 许可证管理器,该端口定义于 $CEI_HOME/license8/ slim8.key 中,显示于 "slimd" 行, "slimd" 后面的数字。 客户端在 TCP 端口 1106 监听 EnSight 服务器的连接消息,它同时与协同中心的 TCP 端口 1107 通信。如果客户 端监听外部命令,它将采用 TCP 端口 1104 如果端口 1106 被其他进程占用, EnSight 将给出 " 地址已被使用 " 的提示,有两种可能的解决方法: 1:采用其他端口,在客户端和服务器同时设置命令行选项 "-ports ####" (该方法不方便) 2:杀死 (或取得系统管理员权限后杀死)占用端口的进程。 例如,确定进程: /sbin/fuser 1106/tcp 返回结果 … 1106/tcp: 314159o 在这种情况下,(取得系统管理员权限)将杀死该进程 … kill -9 314159 注:使用的详细命令因操作系统的不同而不同。 Page 17 操作指南:连接 ENSIGHT 客户端和服务器 SOS 模式 运行 SOS 模式时,若 SOS 是单线程的,将并行启动服务器进程 (受制于 CPU 使用率和许可限制),使用 1110~1117 端口。可将环境变量 ENSIGHT10_MAX_SOSTHREADS 设置为最大进程数 (最大为 8)来限制进程 数量。 分布式渲染 - 用于并行 在 EnSight DR 中运行并行渲染时,必须预留端口 8739 到 8789 为 EnSight 内部 TCP/IP 连接所使用。 另请参见 入门手册的第二章 操作指南:载入多组数据 (案例) Page 18 HOW TO COMMAND LINE START-UP OPTIONS Command Line Start-up Options INTRODUCTION There are a number of options that can be included on the command line when starting EnSight. The following tables indicate the commands that can be issued for the EnSight script (ensight100), the EnSight client (ensight100.client), the EnSight server (ensight100.server), or the EnSight server-of-servers (ensight100.sos). To see the most current listing for any of these, issue one or more of the following: Linux/Unix/Mac ensight100 -help ensight100.client -help ensight100.server -help ensight100.sos -help Windows ensight100_client -help ensight100_server -help ensight100_sos -help BASIC USAGE ensight100 [options] or ensight100.client [options] Section 1. EnSight Startup/Client-Server Options -arRestore from specified archive file “f” -c [ [: ]] Do an auto connection, with optional “host” machine and executable. If only -c is used, the auto connection will be according to the values set in your ensight_conn_settings file (which is created in your EnSight Defaults directory (located at %HOMEDRIVE%%HOMEPATH%\(username)\.ensight100 commonly located at C:\Users\username\ on Vista and Win7, C:\Documents and Settings\yourusername\ on older Windows, ~/.ensight100 on Linux, and in ~/Library/Application Support/EnSight100 on the Mac) if you connect via the Connect dialog). EnSight server will run on “host” if you include it -case -cierr -cip -cm -collab_port <#> -ctx -custom -cwd -d # -display # -delay_refresh -extcfd -externalcmdport -externalcmds -gold -hide_console -homecwd -lite -localhostname
-no_delay_refresh -p after the -c. And you can also optionally specify the server executable to run on said “host”. Read EnSight casefile name ”f” and display part loader Connect auto and ignore errors Send client’s IP address to the server for auto connect. The IP address will be used instead of the internet hostname. This can be useful for clients which use dynamic IP address assignment (i.e. dhcp). (However, it may not send the correct address if the client computer has multiple network interfaces (e.g. WiFi and wired ethernet).) Do a manual connection of server Specify the port for collaboration socket communication. Applies context file “f” as soon as connection is made Force the license manager to look for a custom token Sets the client working directory to the path specified by ‘p’ Command line display? Graphics window is not updated during command file playback, until finished Extended CFD variables automatically placed in variable list Specify the port on which to receive external commands. See -externalcmds. Has EnSight start listening for a connection on port 1104 (or the port specified with the -externalcmdport) for an external command stream. Once connected, all commands must then come from the external source - as the GUI commands will be ignored. Force the license manager to look for a gold token (Windows only) hides console on startup (Windows only) Sets the client working directory to HOME Start EnSight in Lite mode Host name to force server(s) to use to connect to client Graphics window is updated during command file playback, until finished Plays playfile “f” as soon as connection is made Page 19 HOW TO COMMAND LINE START-UP OPTIONS -part_loader If a file is specified on the command line, this command will bring up the part loader to allow for part selection. If a file is specified on the command line without this command, all parts will be loaded. -ports # Allows user specification of socket communication port. (passed on to server or sos) -prdist # Specify a parallel rendering distribution config file. -pyargv . . . [-endpyargv] Anything on the command line between these two options will appear as ‘sys.argv’ in Python. sys.argv[0] = “ensight” except if a python startup file is specified via -qtguipy, in which case, that filename becomes sys.argv[0]. Note, -pyargv will swallow arguments up to the end of the argument list or -endpyargv, whichever comes first. -rsh Remote shell program to use for automatic connection. (passed on to server or sos) -security [#] Forces a handshake between the client and server using the # provided or a random number -sos Set up to connect to the Server-of-Servers (ensight100.sos) instead of normal server. -soshostname Host name to force server(s) to use to connect to Server-of-Servers -standard Force the license manager to look for a standard token -timeout <#> Number of seconds to wait for server connection; default = 60, infinite = -1 -token_try_again <#> If can’t obtain a license token, try again in # minutes. where # is a float value. If neither -token_wait_for nor -token_wait_until is specified, will try for 1 hour. -token_wait_for # If can’t obtain a license token, try again for # minutes, where # is a float value. If -token_try_again is not specified, sets -token_try_again to 10. Supersedes -token_wait_until. -token_wait_until # If can’t obtain a license token, try again until the time is hour:minute. If -token_try_again is not specified, sets -token_try_again to 10. -v # Output verbosity 0 to 10 -version Prints out EnSight’s version number. (Does not start EnSight) Section 2. EnSight Client GUI Options -E Call a method on a registered user-defined extension (see EnSight extension mechanism and How to Produce Customized Access to Tools & Features) using the name of the extension. There must be no space between the -E and the extension name and the option can be used repeatedly in the same command line (the order of execution matches the order on the command line). These calls are made just prior to playing command files or python files after EnSight starts up. By default, the method ‘cmdLine()’ is invoked, but options exist to specify the method as well as parameters to the method. The whole option may need to be enclosed in quotes if some of these latter features are used. For example, suppose you have a registered extension named ‘foo’. The following usages are permitted. ‘-Efoo’ will call foo.cmdLine(). ‘-Efoo.run()’ will call foo.run(), a specific object method. ‘-Efoo=10.0’ will call foo.cmdLine(10.0), the default method with a parameter. ‘-Efoo.bar(10.0,”hello”)’ will call foo.bar(10.0, “hello”), a specific object method with multiple parameters. -iconlblf <#> Icon label font size -ignorexerr Ignore X window errors -jumboicons Adds support for high resolution displays such as IBM Big Bertha (linux/unix) (see -mag) -largeicons Uses larger feature icons in EnSight (non-Windows only) -mag # Magnification factor of menus, titlebars, icons using a float number that is greater than 1.0 on high resolution displays or power wall (Windows only). -menuf # Menu font size (4 to 50) -ni Will use text in place of icons -smallscreen Sets window attributes based on the screen size of 1024x768 (non-Windows only) -smallicons Uses smaller feature icons in EnSight (default) Section 3. EnSight Server Specific Options -buffer_size <#> Set element buffer size for Unstructured Auto Distribute (passed from client down) Page 20 HOW TO COMMAND LINE START-UP OPTIONS -gdbg -iwd -maxoff -no_ghosts -no_metric -readerdbg -scaleg <#> -scalev <#> -swd -time -writerdbg Print some debugging info for EnSight format geometries (passed from client to server) Ignore the working directory in the ensight.connect.default file Turns off maxsize checking (passed from client to server) Don’t produce ghosts in Unstructured Auto Distribute (passed from client down) Don’t print metric for Unstructured Auto Distribute (passed from client down) Prints user-defined-reader library loading information in shell window upon startup of server (passed from client to server) Provide scale factor to scale geometry by (passed from client to server) Provide scale factor to scale all vectors by (passed from client to server) Set the server working directory Prints out timing information (passed from client to server) Prints user-defined-writer library loading information in shell window upon startup of server (passed from client to server) Section 4. Miscellaneous Options -h, -help, -Z Prints the usage list -inputdbg Prints user-defined input device information -nb No automatic backup recording -no_file_locking Turns off file locking (lock()). Some systems don’t support this properly -no_prefs Do not load saved user preferences (uses all original defaults) -pal_tex Use 1D textures for color palettes. -pal_rgb Use rgb colors for color palettes -range10 Use palette ranges which are 10% in from the extremes -silent Causes all stdout and stderr messages to be thrown away -slimtimeout # Allow slimd token to expire if idle. -stderr Cause all stderr messages to be written to the file. -stdout Causes all stdout messages to be written to the file. Section 5. Rendering Options -batch < height> Batch mode with optional width and height. -bbox Render only bounding boxes in the GUI window (useful for detached displays with -prsd2 option). (See How To Setup For Parallel Rendering) -box_resolution <#> Resolution of bounding boxes for part culling (max 9). Implies -no_display_list -ctarget <#> Set the number of chunks per server for parallel rendering (passed from client to server(s)). -dconfig Specify a display configuration file -display_list Use OpenGL display lists -frustrum_cull Use frustrum culling where possible -glconfig Prints current OpenGL configuration parameter defaults to screen -glsw Forces use of software implementation of OpenGL, bypassing the hardware graphics card (same as -X) -gl Sets line drawing mode to draw polygons -ogl Sets line drawing mode to draw lines -no_display_list Force EnSight to use immediate mode graphics -no_frustrum_cull Do not use frustrum culling -norm_per_vert Use one normal per vertex for flat-shading -norm_per_poly Use one normal per polygon for flat-shading -multi_sampling Turns MultiSampling on -multi_sampling_sw Use software MultiSampling -no_multi_sampling Do not use MultiSampling -no_start_screen Ignore the start screen image (Good for HP using TGS OpenGL) -num_samples <#> Specify number of samples for software multi-sampling -num_samples_st <#> Specify number of samples for hardware stereo multi-sampling -occlusion_test Use the HP occlusion extension if available -no_occlusion_test Do not use the HP occlusion extension Page 21 HOW TO COMMAND LINE START-UP OPTIONS -stencil_buff -no_stencil_buff -double_buffer -single_buffer -sort_first -sort_last -unmapdd -vcount <#> -X Use the OpenGL stencil buffer (even if not enabled by default) Assumes there is not a working stencil buffer (some Windows video cards) Use double-buffering for the graphics window (default) Do not use double-buffering Sets the default parallel rendering sorting method to be the sort first method Sets the default parallel rendering sorting method to be the sort last method Don’t map the detached display on startup Specifies the maximum number of vertices between begin/end pairs in a OpenGL display list object. This option is useful for certain graphics cards (most modern Nvidia based) when dealing with large display objects - it will usually impact the performance of creating the display list objects. Every graphics card/driver will be optimal at a different vcount value so testing is necessary to achieve maximum performance. Starts the X version of EnSight (uses Mesa OpenGL instead of native OpenGL, bypassing the hardware graphics card. This is the same as -glsw) Section 6. Resource Options -chres Collab hub resource filename -res Resource filename -sosres SOS resource filename -use_lsf_for_renderers Evaluate environmental variable LSB_MCPU_HOSTS for renderer resources (See Client Resources in How To Use Resource Management) -use_lsf_for_servers Evaluate environmental variable LSB_MCPU_HOSTS for server resources (See Client Resources in How To Use Resource Management) -use_pbs_for_renderers Evaluate environmental variable PBS_NODEFILE for renderer resources (See Client Resources in How To Use Resource Management) -use_pbs_for_servers Evaluate environmental variable PBS_NODEFILE for server resources (See Client Resources in How To Use Resource Management) Section 7. Distributed Rendering (DR) Specific Options -cr Chromium mode -offscreen Batch offscreen rendering -onscreen Batch onscreen rendering -pc Compositing mode -pr_out File name for parallel rendering worker output Client Examples: ensight100 -cm -p myplayfile This will allow the user to do a manual connection, after which the “myplayfile” will be run. ensight100 -c -gold -ports 1310 -case myfile.case This will do an automatic connection (according to information in the user’s ensight.connect.default file) on port 1310, using a gold seat. After the connection is made, the “myfile.case” casefile will be run. ensight100 -rsh ssh (or ensight100.client -c -rsh ssh ) This will use ssh as the remote shell for an automatic connection. ensight100.server [options] -buffer_size <#> -c -ctarget <#> -ctries <#> -ether -gdbg -h, -help Set element buffer size for Unstructured Auto Distribute “host” indicates where the client is running Set the number of chunks per server for parallel rendering. The number of times (1 second per try) to try to connect client and server. Ethernet device name such as ln0 Print some debugging info for EnSight format geometries Prints the usage list Page 22 HOW TO COMMAND LINE START-UP OPTIONS -maxoff -no_ghosts -no_metric -pipe -ports <#> -readerdbg -scaleg <#> -scalev <#> -security <#> -sock -soshostname -time -writerdbg Turns off maxsize checking Don’t produce ghosts in Unstructured Auto Distribute Don’t print metric for Unstructured Auto Distribute Forces the server to use a named pipe connection (must be on same machine) Allows user specification of socket communication port. Prints user-defined-reader lib loading information in shell window upon startup of server Provide scale factor to scale geometry by Provide scale factor to scale all vectors by Provide number for client to server security check or else random token is generated Forces the server to use a socket connection Allows different name for servers to connect back to Server-of-Servers with Prints out timing information Prints user-defined-reader lib loading information in shell window upon startup of server Server Examples (when started manually): ensight100.server -c clientmachine -readerdbg Specifies “clientmachine” as the machine on which the client is running, and that information on user-defined-reader library loading should be printed out. ensight100.server -ports 1310 -scaleg 10.0 -scalev 10.0 Specifies that communication is to occur on port 1310, and that the geometry and all vectors are to be scaled by a factor of 10. ensight100.sos [options] -buffer_size <#> -c -cports -ctarget <#> -ctries <#> -ether -gdbg -h, -help -maxoff -no_ghosts -no_metric -pipe -ports <#> -readerdbg -rsh -scaleg <#> -scalev <#> -security <#> -slog -sock -soshostname -sports -time Set element buffer size for Unstructured Auto Distribute (passes on to servers) “host” indicates where the client is running Allows specification of socket communication port to the client. See also -ports, -sports. Set the number of chunks per server for parallel rendering (passes on to servers). The number of times (1 second per try) to try to connect client and server. Ethernet device name such as ln0 Print some debugging info for EnSight format geometries (passes on to servers) Prints the usage list Turns off maxsize checking (passes on to servers) Don’t produce ghosts in Unstructured Auto Distribute (passes on to servers) Don’t print metric for Unstructured Auto Distribute (passes on to servers) Forces the server to use a named pipe connection (must be on same machine) (passes on to servers) Allows user specification of socket communication port. (passes on to servers) Has the effect of setting -cports and -sports to be the same. Prints user-defined-reader library loading information in shell window upon startup of server (passes on to servers) Remote shell program to use for automatic connection of servers. (passes on to servers) Provide scale factor to scale geometry by (passes on to servers) Provide scale factor to scale all vectors by (passes on to server) Provide number for client to server security check (passes on to servers) Create SOS log file ‘f’ Forces the server to use a socket connection Allows different name for servers to connect back to Server-of-Servers with (passes on to servers) Allows specification of socket communication port to the servers. See also -ports, -cports. Prints out timing information (passes on to servers) Page 23 HOW TO COMMAND LINE START-UP OPTIONS -writerdbg Prints user-defined-reader library loading information in shell window upon startup of server (passes on to servers) SOS (Server-of-Servers) Examples (when started manually): ensight100.sos -c clientmachinename -soshostname sosmachinename Specifies “clientmachinename” as the machine on which the client is running, and that the individual servers should connect back to “sosmachinename”. ensight100.sos -readerdbg -gdbg Specifies that the sos and any servers print out user-defined-reader library loading information, and that the servers print out EnSight data format geometry loading information. Page 24 HOW TO USE ENVIRONMENT VARIABLES Use Environment Variables INTRODUCTION There are a number of environment variables that can be set to control and modify aspects of EnSight. These are generally described in sections of the documentation where they apply. However, for convenience, a summary of them is indicated below. All, except those indicated otherwise, are optional. Note: None of the environment variables associated with specific user defined readers and writers are included here. See the appropriate README files or other documentation for each reader/writer. BASIC USAGE List sorted by Category: Name Locatio Category n Description ENSIGHT10_COLLABHUB_SPAWNDELAY Collab DR ENSIGHT10_HUB_APP Collab DR ENSIGHT10_HUB_ARGS Collab DR ENSIGHT10_HUB_CONNBACKHOST Collab DR ENSIGHT10_HUB_HOST Client DR ENSIGHT10_HUB_OUTPUTFILE Collab DR ENSIGHT10_RENDERER_HOSTS Client/ Collab DR ENSIGHT10_WORKER_APP Collab DR ENSIGHT10_WORKER_ARGS Collab DR ENSIGHT10_WORKER_CONNBACKHOST Collab DR Delay time (in seconds) between spawning distributed rendering clients the executable name for the collabhub when used with distributed rendering a string of arguments passed to the collabhub executable when used with distributed rendering the hostname that the collabhub should use for the computer where the main client executes the hostname that the client should use for the collabhub if not specified by other means. a file name containing the output from the collabhub when used with distributed rendering a space delimited string consisting of the hostnames to use for distributed rendering clients. See current client documentation as well. Also see the Resources documentation for additional information the executable name for the client when used with distributed rendering a string of arguments passed to the distributed rendering client executable the collabhub executable hostname (used by distributed rendering clients) CEI_FONT_GLYPHCACHESIZE Client Font CEI_FONT_NOSYSTEMFONTS Client Font CEI_FONTPATH Client Font ENSIGHT_FONT_DEFAULT_ANNOT ENSIGHT_FONT_DEFAULT_ANNOT_STYLE ENSIGHT_FONT_DEFAULT_OUTLINE ENSIGHT_FONT_DEFAULT_OUTLINE_SCALE Client Client Client Client Font Font Font Font ENSIGHT_FONT_DEFAULT_OUTLINE_STYLE ENSIGHT_FONT_DEFAULT_SYMBOL ENSIGHT_FONT_DEFAULT_SYMBOL_STYLE ENSIGHT10_FIXED_FONT_SIZE Client Client Client Client Font Font Font Font CEI_ENABLE_PBUF CEI_ENABLE_PMAP CEI_PIXELFORMAT CEI_PIXELFORMAT_ST CVF_NO_WM_OVERRIDE Client Client Client Client Client Graphics Graphics Graphics Graphics Graphics ENSIGHT_PICK_SCALE Client Graphics Number of font characters to keep in memory at a given time (default 500). Increasing this number will use more memory but may increase rendering speed if many different characters are in use. Disable the loading of fonts from the system directories, and use only the fonts provided by CEI. A list of ":" separated directories (";" on Windows) where EnSight looks for .ttf and .ttc font files. Specify family to be used for annotation defaults Specify style to be used for annotation defaults Specify family to be used for ID and axis defaults Specify the relative scale for the outline font. (The value 100.0 is the default, 200.0 is 2x larger, 50.0 is 1/2 size). Specify style to be used for ID and axis defaults Specify family to be used instead of the symbol font Specify style to be used with the symbol font defines font size - expecting range between 10 and 100 (old) Enable/disable the use of pbuffers for off-screen rendering Enable/disable the use of pixmaps for off-screen rendering Specify pixel format for mono rendering Specify pixel format for stereo rendering Change the behavior of detached displays so that the 'OverrideRedirect' attribute is not used on the Windows. If > 1, modifies the scaling of the GL viewport Page 25 HOW TO USE ENVIRONMENT VARIABLES Name Locatio Category n Description CEI_RSH Client/ SoS Client/ Server Client/ SoS/ Server Networking Alternative to default ssh command Networking Enable Nagle (RFC896) network feature (on by default). Networking Sets socket buffer size (can be different between client and server) DISPLAY Client Other Do not remote the display from a different machine as this is inefficient and prone to problems. Run the client on your local machine and the server remotely and connect them as EnSight is optimized for this configuration. ENSIGHT10_MAX_CTHREADS Client Parallel ENSIGHT10_MAX_SOSTHREADS SoS Parallel ENSIGHT10_MAX_THREADS Server Parallel The maximum number of threads to use for each EnSight client. Threads in the client are used to accelerate sorting of transparent surfaces. If not defined, then the EnSight client chooses the number of threads based on the number of processors available and license limitations. The maximum number of threads to use on the server of server in order to start up server processes in parallel rather than serially. If not defined, then EnSight chooses the number of threads based on the number of processors available and license limitations. The maximum number of threads to use for each EnSight server. Threads are used to accelerate the computation of streamlines, clips, isosurfaces, and other compute-intensive operations. If not defined, then the EnSight server chooses the number of threads based on the number of processors available and license limitations. ENSIGHT10_RES Client/ SoS/ Collab Client/ SoS Resources Specify a resource file name that the client reads Resources LSB_MCPU_HOSTS Client/ SoS Resources Specify quoted strings of space delimited host names (e.g. “host1 host2 host1 host3”) to be used for EnSight servers. The host names are used in the order they occur. A host name may occur multiple times If either the ‘-use_lsf_for_servers’ or ‘use_lsf_for_renderers’ command line options are specified, then the client will evaluate this environment variable for resources. The environment variable specifies a quoted string such as “host1 5 host2 4 host3 1” which indicates 5 CPUs should be used on host1, 4 CPUs should be used on host2, and 1 CPU should be used on host3. The hosts will be used in a round-robin fashion. CEI_ARCH All Path CEI_HOME All Path Description of hardware & OS (set automatically on EnSight startup) Location of EnSight installation (required) CEI_PDFREADER Client Path Application for reading EnSight .pdf help files CEI_PYTHONHOME Client Path CEI_UDILPATH Client Path ENSIGHT_PATHREPLACE Client Path PATH Path TMPDIR Client Server Point to a different Python runtime library. Default is CEI_HOME/apex12/machines/CEI_ARCH/Python242 A list of ":" separated directories (";" on Windows) where EnSight looks for user-defined image libraries. Replaces the data path with the path found in this environment variable Must include $CEI_HOME/bin Path Location for temporary files. Default is usually /tmp or /usr/ tmp CEI_CONTROLLER_KEY Client Tracking See CEI_INPUT CVF_COMM2_NAGLE ENSIGHT10_SOCKBUF ENSIGHT10_SERVER_HOSTS Page 26 HOW TO USE ENVIRONMENT VARIABLES Name Locatio Category n Description CEI_INPUT Client Tracking CEI_TRACKD_DEBUG Client Tracking CEI_TRACKER_KEY Client Tracking To specify the tracking library. To select trackd, use: setenv CEI_INPUT trackd (for csh or equivalent users) The value of CEI_INPUT can either be a fully-qualified path and filename or simply the name of the driver, in which case EnSight will load the library libuserd_input.so from directory: $CEI_HOME/apex30/machines/$CEI_ARCH/udi/ $CEI_INPUT/ For the trackd interface you will also need to set: CEI_TRACKER_KEY CEI_CONTROLLER_KEY Turn on debug information from the trackD user defined input library. See CEI_INPUT ENSIGHT10_INPUT Client Tracking Input device to use for EnSight (same as CEI_INPUT) ENSIGHT10_READER Server User Path to the location of additional user-defined readers ENSIGHT10_READER_GUI Server User ENSIGHT10_UDMF Server User ENSIGHT10_UDW Server User Set to 0 in order to not load user-defined extra GUI. Any other setting (or unset) loads extra GUI. Sets directory location of user defined math functions to be loaded by EnSight at startup Sets directory location of user defined writers to be loaded by Ensight at startup Page 27 操作指南:读取数据 Read and Load Data 读取数据 简介 EnSight 支持数值模拟中的多种文件格式。另外, CEI 定义了可用于结构和非结构化数据的通用数据格式 (ASCII 和 二进制),许多数值模拟软件均可直接输出该格式的数据 (即 FLUENT、 STAR-CD、 KIVA 等等)。 若数据格式可识别变量关系,且希望载入所有部件,则 可通过 " 简易界面 " 完成数据读取。 否则,需通过更为通用的 " 高级界面 " 来完成数据载入。 它为数据文件读取以及部件创建过程提供更多的设置。 第一步:选择合适的文件,第二步:载入部件。无论何 种数据格式,这两步均类似。下文中有该两个基本步骤 的详细介绍。各选项的含义将在用户手册的第二章 (Reader Basics) 中讲到。简易界面与高级界面均通过 文件 -> 打开 … 进入 基本操作 简易界面 绝大多数数据格式均可在简易界面下读取,它需要一个与数据读取文件 (reader)扩展名相对应的映射文件 (ensight_reader_extension.map)。该文件存储在 site_preferences 目录下,用户也可将其存储于 EnSight 默认目录下 (位于 %HOMEDRIVE%%HOMEPATH%\(username)\.ensight100,在 Vista 和 Win7 中一般位于 C:\Users\username\.ensight100,在早期版本的 Windows 中,一般位于 C:\Documents and Settings\yourusername\.ensight100,在 Linux 下,位于 ~/.ensight100,在 Mac 下,位于 ~/Library/Application Support/EnSight100),在下文中将会展示该文件的示例。映射文件将文件扩展名关联至数据读取程序,若该文件 未提供或关联信息未知,再或者格式本身不支持 (如: Plot3D 格式),此时简易界面不可用, " 确定 " 按钮呈现灰 色状态,在这种情况下,需使用高级界面模式。 1、点击文件 > 打开 … 2、选择简易界面。 3、使用标准的浏览方法,导 引至所需目录。 4、可使用文件类型滤取所需 列表。 5、选择所需文件。 该文件的扩展名将映射 ensight_reader_extension. map 中的读取程序 (reader)。 6、点击 " 确定 " (也可双击步骤 4 中的 文件) Page 28 操作指南:读取数据 此时 (假设关联成功且数据可读),模型的所有部件将被载入,且均显示于图形窗口及部件列表中。若关联未成功, 将会弹出错误消息框。 注:此时数据的变量也被列出,但它们处于未激活状态。执行该过程将在操作指南:激活变量中详细讨论。 Ensight_reader_extension.map 文件示例: 下面是一个示例,其中包含 EnSight Case、 EnSight5、 STL 以及 MSC/Dytran 的关联信息: EnSight file extension to format association file Version 1.0 # # Comment lines start with a # # # # The format of this file is as follows: # # READER_NAME: reader name as it appears in the Format chooser in the EnSight Data Reader dialog # NUM_FILE_1: the number of file_1_ext lines to follow # FILE_1_EXT: the extension that follows a file name minus the “.”, i.e., “geo”, “case”, etc. # There should be one definition after the :. Multiple FILE_1_EXT lines may exist # NUM_FILE_2: the number of file_2_ext lines to follow # FILE_2_EXT: the extension of a second file that will act as the result file. This is only used # for formats that require two file names. As with FILE_1_EXT, there may be multiple # FILE_2_EXT lines. # ELEMENT_REP: A key word that describes how the parts will be loaded (all parts will be loaded the # same way). One of the following: # “3D border, 2D full” # “3D feature, 2D full” # “3D nonvisual, 2D full” # “Border” # “Feature angle” # “Bounding Box” # “Full” # “Non Visual” # If option is not set then 3D border, 2D full is used # READ_BEFORE: (optional) The name of a command file to play before reading the file(s) # READ_AFTER: (optional) The name of a command file to read after loading the parts # Definition for Case files Page 29 操作指南:读取数据 READER_NAME: Case NUM_FILE_1: 2 FILE_1_EXT: case FILE_1_EXT: encas ELEMENT_REP: 3D feature, 2D full # Definition for EnSight5 files READER_NAME: EnSight 5 NUM_FILE_1: 2 FILE_1_EXT: geo FILE_1_EXT: GEOM NUM_FILE_2: 2 FILE_2_EXT: res FILE_2_EXT: RESULTS ELEMENT_REP: 3D feature, 2D full # Definition for STL files READER_NAME: STL NUM_FILE_1: 4 FILE_1_EXT: stl FILE_1_EXT: STL FILE_1_EXT: xct FILE_1_EXT: XCT ELEMENT_REP: 3D feature, 2D full # Definition for Dytran files READER_NAME: MSC/Dytran NUM_FILE_1: 2 FILE_1_EXT: dat FILE_1_EXT: ARC ELEMENT_REP: 3D border, 2D full READ_AFTER: read_after_dytran.enc Page 30 操作指南:读取数据 高级界面 当使用高级界面模式时,用户同样可以指定文件格式,以及其他格式和时间选项。还可选择是否载入所有部件,或告 知 EnSight 仅载入部分部件。 1、点击文件 > 打开 … 2、选择高级界面。 3、使用标准的浏览方法,导 引至所需目录。 4、可使用文件类型过滤所需 列表。 5、选择所需文件。 该文件的扩展名将映射 ensight_reader_extension.map 中的读取程序 (reader)。 6、点击设置按钮 (该案例 中,为 "set d3plot" 按钮) 若映射已知,将自动选择正确的 格式。 7、若无法自动映射,则手动 选择正确的格式。 该列表所显示内容由软件内置的 和用户自定义的数据读取程序 (reader)以及首选项设置确 定。若想了解更多可用的数据 读取程序 (reader)信息,请 参见用户手册:Native EnSight Format Readers 或 Other Readers. 8、其他可选格式选项。 注:该选项会因数据格式的不同 而不同。有且仅有 Case 文件格 式可设置测量数据,参见用户手 册: EnSight5 Measured/ Particle File Format。 Plot3d、 Case 以及特殊的 HDF5 结构化 格式将会提供输入边界文件的输 入框。参见用户手册:EnSight Boundary File Format (Continued on next page) Page 31 操作指南:读取数据 9、设置时间选项。 10、点击 " 选择载入部件 …" 若想只选择其中某些部件加载。 或点击 " 载入所有部件 " 若想载入全部的部件。 模型部件将显示于 EnSight 的部件列表中。若加载所有部件,所有部件将被载入并激活,且显示于图形窗口中。 Page 32 操作指南:读取数据 若点击 " 选择载入部件 ",部件将显示于部件列表中,但为 " 未加载 " 状态,如图所示: 若将鼠标置于某部件上,将显示如图: 若在某部件上点击右键,将显示如图: Page 33 操作指南:读取数据 若为非结构化数据,点击加载部件时,将看到如右图所示 的对话框,可做如下设置: 1、使用初始的 单元显示方式 2、输入非默认的描述。 点击作为新部件载入以创建部件。 若为结构化数据,将看到如右图所示 的对话框,可做如下设置: 1、为所选部件设置 " 从 "、 " 至 " 以 及 " 步长 " 的 IJK 值。 " 从 " 和 " 至 " 值可调。 " 从 " 和 " 至 " 输入框中的有效值为 从 1 (各部件的最小值)开始增大 或从 0 (各部件的最大值)开始减 小的整数: 1,2,3,... ---> <---...-3,-2,-1,0 |---------------------------------------| 最小值 最大值 (总为 1) (各部件不同) 若指定值为单个部件范围外的值,则将自动使用指定部件的最小或 最大值。 最小值和最大值输入框内的值仅供参考。 2、若所选部件包含消隐单元,可基于值 (Iblank=1 表示选择内部 单元, Iblank=0 表示选择外部单元,全部选择表示忽略消隐) 建立。 3、使用初始的 单元显示方式 4、输入非默认的描述。 若保持描述输入框空白,将以默认的方式显示于部件列表中。 A 点击作为新部件载入以创建部件。 注:案例中的所有部件均可通过右键点击 Case 1 加载,而无需逐个加载。 若在此过程中出现例外情况,请参见用户手册第二章 (Other Readers)对于特殊数据读取的详细介绍。 Page 34 操作指南:读取数据 另请参见 操作指南:使用 ens_checker 用户手册: Reader Basics EnSight Case Reader EnSight5 Reader Other Readers Page 35 HOW TO USE ENS_CHECKER Use ens_checker INTRODUCTION This program attempts to check the integrity of the EnSight Gold (or EnSight6) file formats. Most files that pass this check will be able to be read by EnSight (see Other Notes below). If EnSight Gold (or EnSight6) data fails to read into Ensight, one should run it through this checker to see if any problems are found. Ens_checker makes no attempt to check the validity of floating point values, such as coordinates, results, etc. It is just checking the existence and format of such. BASIC OPERATION Program invocation: If you invoke the program without any arguments, it will prompt you for the casefile to read. For example: > ens_checker ***************************************************************** * EnSight Data Format Checker * * =========================== * * Currently, * * 1. Must be run from directory in which casefile is located. * * 2. Handles EnSight6 and EnSight Gold formats only. * * 3. Does not process SOS casefiles. * ***************************************************************** mydata.case You can alternatively invoke the program with the casefile on the command line. > ens_checker mydata.case Sample runs: As ens_checker works it will be providing feedback. This feedback is important in interpreting what is wrong in the files. Here is a sample run, which was successful: > ens_checker 3by3.case ***************************************************************** * EnSight Data Format Checker * * =========================== * * Currently, * * 1. Must be run from directory in which casefile is located. * * 2. Handles EnSight6 and EnSight Gold formats only. * * 3. Does not process SOS casefiles. * ***************************************************************** 3by3.case Casefile to Process: -------------------3by3.case (Opened successfully) --------------------Major Sections Found: --------------------Required FORMAT section Required GEOMETRY section Optional VARIABLE section Optional TIME section --------------FORMAT Section: --------------EnSight 6 Format (at (at (at (at line line line line 1) 4) 7) 11) (set at line 2) Page 36 HOW TO USE ENS_CHECKER ------------TIME section: ------------Info for timeset number: 1 ---------------------------Time set: 1 (at line 12) No description provided Number of steps: 1 (at line 13) Time values: (starting on line 14) time values[1] = 0 >-------------------< > TIME section OKAY < >-------------------< ----------------GEOMETRY Section: -----------------------Model filename is: 3by3.geo (at line 5) Static geometry -------Opened 3by3.geo successfully File type is: Description 1: Description 2: node ids: element ids: ASCII EnSight test geometry file ========================== assign assign Global section: Number of nodes: 64 Coordinates for (64) nodes found Part 1: Description is: 3 x 3 xy Unstructured Part Number of quad4 elements is: 9 Connectivities for (9) quad4 elements found Part 2: Description is: 3 x 3 yz Unstructured Part Number of quad4 elements is: 9 Connectivities for (9) quad4 elements found Part 3: Description is: 3 x 3 xz Unstructured Part Number of quad4 elements is: 9 Connectivities for (9) quad4 elements found Part 4: Description is: 3 x 3 45 Unstructured Part Number of quad4 elements is: 9 Connectivities for (9) quad4 elements found >-----------------------< > GEOMETRY section OKAY < >-----------------------< ----------------VARIABLE Section: ----------------scalar per node: scalar Filename is: 3by3.scl Non transient variable (at line 8) Page 37 HOW TO USE ENS_CHECKER -------Opened 3by3.scl successfully Description: 3by3 scalar variable Global section: (64) Nodal scalar values for unstructured nodes found vector per node: vector Filename is: 3by3.vct Non transient variable (at line 9) -------Opened 3by3.vct successfully Description: 3by3 vector variable Global section: (192) Nodal vector values for unstructured nodes found >-----------------------< > VARIABLE section OKAY < >-----------------------< >----------- Hooray! ----------< > < > Data verification SUCCESSFUL < > < > with No Warnings < > < >------------------------------< And here is a sample run, with a problem, namely a ‘block’ line is missing: > ens_checker 3by3s.case ***************************************************************** * EnSight Data Format Checker * * =========================== * * Currently, * * 1. Must be run from directory in which casefile is located. * * 2. Handles EnSight6 and EnSight Gold formats only. * * 3. Does not process SOS casefiles. * ***************************************************************** Casefile to Process: -------------------3by3s.case (Opened successfully) --------------------Major Sections Found: --------------------Required FORMAT section Required GEOMETRY section Optional VARIABLE section Optional TIME section --------------FORMAT Section: --------------EnSight 6 Format (at (at (at (at line line line line 1) 4) 7) 11) (set at line 2) ------------TIME section: ------------Info for timeset number: 1 ---------------------------- Page 38 HOW TO USE ENS_CHECKER Time set: 1 (at line 12) No description provided Number of steps: 1 (at line 13) Time values: (starting on line 14) time values[1] = 0 >-------------------< > TIME section OKAY < >-------------------< ----------------GEOMETRY Section: -----------------------Model filename is: 3by3s.geo (at line 5) Static geometry -------Opened 3by3s.geo successfully File type is: Description 1: Description 2: node ids: element ids: ASCII EnSight test geometry file ========================== assign assign Global section: Number of nodes: 0 Part 1: Description is: 3 x 3 xy block Structured Part Not iblanked i j k = 4 4 1 Number of nodes: 16 Number of cells: 9 Block X coordinates for (16) nodes found Block Y coordinates for (16) nodes found Block Z coordinates for (16) nodes found Part 2: Description is: 3 x 3 yz block ===> Problem: ------------Looking for one of the following valid line types: element type (unstructured types, any of the following: point tria6 tetra10 penta15 bar2 quad4 pyramid5 hexa8 bar3 quad8 pyramid13 hexa20 tria3 tetra4 penta6 block (structured block) part (the next part) but found the following: 4 4 1 >-------------------------< > GEOMETRY section FAILED < >-------------------------< >-*-*-*-*-*-* bummer! *-*-*-*-*-*-< > < > Verification of the data FAILED < > < >-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-< Page 39 HOW TO USE ENS_CHECKER After fixing the ‘block’ line and running the program again, another problem is encountered - namely, an extra space at the end of the second line of x coordinates for the block that is part 2. > ens_checker 3by3s.case ***************************************************************** * EnSight Data Format Checker * * =========================== * * Currently, * * 1. Must be run from directory in which casefile is located. * * 2. Handles EnSight6 and EnSight Gold formats only. * * 3. Does not process SOS casefiles. * ***************************************************************** Casefile to Process: -------------------3by3s.case (Opened successfully) --------------------Major Sections Found: --------------------Required FORMAT section Required GEOMETRY section Optional VARIABLE section Optional TIME section --------------FORMAT Section: --------------EnSight 6 Format (at (at (at (at line line line line 1) 4) 7) 11) (set at line 2) ------------TIME section: ------------Info for timeset number: 1 ---------------------------Time set: 1 (at line 12) No description provided Number of steps: 1 (at line 13) Time values: (starting on line 14) time values[1] = 0 >-------------------< > TIME section OKAY < >-------------------< ----------------GEOMETRY Section: -----------------------Model filename is: 3by3s.geo (at line 5) Static geometry -------Opened 3by3s.geo successfully File type is: Description 1: Description 2: node ids: element ids: ASCII EnSight test geometry file ========================== assign assign Global section: Number of nodes: 0 Part 1: Description is: 3 x 3 xy block Structured Part Not iblanked i j k = 4 4 1 Page 40 HOW TO USE ENS_CHECKER Number of nodes: 16 Number of cells: 9 Block X coordinates for (16) nodes found Block Y coordinates for (16) nodes found Block Z coordinates for (16) nodes found Part 2: Description is: 3 x 3 yz block Structured Part Not iblanked i j k = 4 4 1 Number of nodes: 16 Number of cells: 9 ===> Problem: ------------Previous lines end with 1 extra chars on the line, but line 2 has 2 extra chars. The lines must be consistent or EnSight will have trouble reading it. ===> Problem: ------------Not successful reading 16 X block coordinates >-------------------------< > GEOMETRY section FAILED < >-------------------------< >-*-*-*-*-*-* bummer! *-*-*-*-*-*-< > < > Verification of the data FAILED < > < >-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-< After eliminating the extra space, the file then checked out fine. ADVANCED USAGE Redirecting Output to a File: ens_checker is writing to stderr, so if you want to redirect output to a file, you need to use “>&”. For example, the following will place the output of the run into a file called output.file: > ens_checker 3by3.case >& output.file OTHER NOTES The word “most” is used above because one of the things that could pass the checker, but fail in EnSight is element connectivity of EnSight6 files with node ids. The ens_checker checks that node ids used in the element connectivities lie within the min and max range of the node ids, but does not verify that there is actually a node with each individual id. The validity of model extents, presence of nan’s, etc. are currently checked to some degree in ens_checker, but again, this is a format checker - not a model integrity checker. SEE ALSO User Manual: EnSight Gold Casefile Format EnSight6 Casefile Format Page 41 操作指南:载入多组数据 (案例) 载入多组数据 (案例) 简介 通常情况下, EnSight 后处理数据牵涉到一个客户端进程 (图形和 GUI)及与其相接的服务器进程 (数据 I / O 和计 算)。然而,也有若干其他可能的配置,其中之一就是单一的客户端可同时连接至多个服务器,每个服务器分管一组 单独的数据集,这些服务器可以运行于不同的机器。 服务器 客户端 正常情况 服务器 服务器 客户端 两个案例 该功能的主要用途是可同时显示多组数据。每组数据集被加载至一个独立的案例,并可使用同一视口或不同的视口查 看。该功能可对同一问题在执行前后进行对比或者将实验与模拟结果进行对比。可同时在两个案例中执行相同的操作 (如剪切或粒子追踪)。子部件与其母部件同属一个案例,因此,不可选择不同案例中的部件来执行组合操作 (如合并)。 当 EnSight 读取一个新案例时,会搜索与新案例中的变量列表相匹配的当前变量列表,若找到匹配的 (基于变量名完 全匹配),便不会在列表中加入新的变量,当然,匹配的名称将同时用于这两个案例。该行为基于了以下假设:相同 的变量名代表相同的物理量,且应同等对待。如果新的变量名不匹配任何现有的变量名,那么将会在变量列表中添加 新变量。 同时可载入多达 16 个案例。若加载所有部件,且不需在加载时设置其他选项,使用 " 文件 -> 打开 ..." ;若需设置更 多选项,使用 " 案例 -> 添加 ...",在会话中添加新案例或替换现有案例。添加案例将启动新的服务器进程,然后连接 至客户端,接着加载所有部件 (若使用打开 ...),或指定数据格式、文件、加载的部件以及其他设置。 " 替换案例 " 可使得加载新数据时无需重启客户端。当然也可删除不再使用的案例。 Page 42 操作指南:载入多组数据 (案例) 基本操作 一旦现有案例以正常形式载入,便可通过如下方式执行更多的案例操作: 文件 - > 打开 ... 或通过: 案例 > 添加 ...,替换 ...,删除 ... 添加案例 添加案例至正在运行的 EnSight 会话 点击文件 - > 打开,或案例 - > 添加 ... 1、选择保留当前载入的数据。 此举将添加,而非替换案例。 2、输入案例名称 (非默认的)。 该名称将显示于案例菜单中。 3、设置其他可选设置。 若有预定义的配置,可选择服务器启动配 置。 为该案例创建新视口,将新建一个视口, 并将该案例置于该新视口。 应用案例 1 的上下文环境,将使得新案例 继承案例 1 中的位置状态等。 复制当前连接将采用与当前案例相同的连 接方法。 手动连接将使用手动连接 - 即使当前连接 为自动连接。 关于轴映射模型允许读入新模型时反射该模型,选取轴并指定原点 位置。 4. 点击确定。 Page 43 操作指南:载入多组数据 (案例) 此时将弹出 " 打开 …" 对话框, 浏览并选择所需数据,使用简 易界面加载所有部件。 (注:此文件类型必须适配这 种接口方法。) 或者,使用高级界面,设置格 式及其他选项,同时还可选择 加载部分部件。 EnSight 客户端现将开启新的服务器连接进程。根据所选的启动或连接设置,将自动启动或者手动启动另一服务器。 若之前为自动连接,将默认自动启动新服务器;若之前为手动连接,则需要手动启动另一服务器。可随时关注消息窗 口以查看连接过程。详见 EnSight 入门手册或操作指南:连接 EnSight 客户端和服务器。如果采用此方法,一旦连 接, EnSight 将加载该新案例中的所有部件。 Page 44 操作指南:载入多组数据 (案例) 替换案例 可以替换现有案例。若想加载一个新的数据集,可又不愿重启客户端,此时可使用替换案例。替换案例的步骤: 点击文件 - > 打开 ... 选择 " 替换当前载入的数据 " 或点击案例 > 替换 ... 将打开如图所示的对话框,设置案例名称,选择预定义的启动 配置,或者直接使用默认配置。 点击确定 与上文中添加案例一样,此时将弹出 " 打开 …" 对话框。可使用简易界面加载所有部件,也可使用高级界面来设置某 些选项以及加载部分部件。与所选案例相关联的服务器进程将终止,且 EnSight 客服端此时将开启与新服务器的连接 进程。此外,根据所选的启动配置,将自动启动或手动启动新的服务器。默认情况是,若之前为自动连接,将自动启 动一个新服务器;者若之前为手动连接,则需手动启动新服务器。可随时关注消息窗口以查看连接过程。详见 操作指南:连接 EnSight 客户端和服务器。 删除案例 删除案例的步骤: 1、在案例菜单中选择想要删除的案例 (案例 > 案例名)。 2、点击案例 > 删除 ... 将会询问是否确认删除。如果确认, 与所选案例相关联的服务器将终 止。 Page 45 操作指南:载入多组数据 (案例) 通过案例显示部件 默认情况下,所有案例的所有部件均显示于主部件列表中且根据案例分级显示。详见 操作指南:部件创建入门。 . 视口中案例的可见性 案例功能的主要优点之一就是可轻松实现不同数据的比较,为此,一般需要将各个案例显示于单独的视口中,步骤 如下: 1、创建足够多的视口以显示案例。详 见操作指南: 定义和更改视口 。 2、在案例菜单下选择仅需显示于某特 定视口的案例。(案例 > casename) 3、点击案例 > 视口可见性 ... 4、点击所需视口,开启或关闭选定的 案例在该视口中的可见性。黑色表 示选定的案例在该视口中隐藏,绿 色表示在视口中显示。 Page 46 操作指南:载入多组数据 (案例) 高级应用 EnSight 的案例功能,通过分块网格,并将各网格块读至不同的案例,来实现大数据的并行处理。每个案例可运行于 不同的主机或多核主机的不同 CPU 上。由于 EnSight 客户端将不同案例的几何模型均置于同一坐标系中,这些网格 块可有效地 " 装订 " 到一起以供观看。如剪切和等值面操作,将自动实现并行。然而,由于服务器之间无通信 (当前 版本),所以不可追踪发射于块中的粒子因其无法穿越块边界到达另一个块。(注:EnSight 的 SOS 的功能是一种替 补功能,通常用于模型的并行操作) 其他说明 执行归档操作时,会为每个激活状态的服务器 (案例)创建一个二进制转储文件,该归档信息文件包含了案例的详细 信息,可用来重启 EnSight 客户端和所有激活状态的服务器。详见操作指南: 保存和恢复归档文件。 另请参见 用户手册: Case Menu Functions Page 47 操作指南:加载瞬态数据 加载瞬态数据 简介 迄今为止, EnSight 已广泛应用于后处理时变数据或瞬态数据。在许多情况下,动态的现象都需要用动画将其过程显 示出来才能加深理解。 EnSight 可处理所有类型的瞬态数据,数据中的所有变量以及模型的网格坐标和组成单元的节 点 (connectivity)均可随时间变化,各变量 (或网格)的变化率也可以不同 (仅支持 EnSight Gold 和 EnSight6 case 数据格式)。 EnSight 后处理瞬态数据的方式有很多种。在播放器 ( 分析时间)区域可轻松地设置当前时间步、播放时间步 (手 动或自动)、还可将时间限制于所需的范围内; EnSight 可通过 查询操作来提取变量随时间变化的信息;可使用 动画 书功能来创建瞬态数据动画,并在播放过程中实现交互; EnSight 还可使用 关键帧动画 功能来创建包含瞬态数据的 高质量的视频动画。 本文讲述了 EnSight 如何读取瞬态数据。 基本操作 读取瞬态数据本质上与读取稳态数据相同 (详见 操作指南:读取数据),默认情况下,使用结束时间步作为当前时间 步。该行为基于了这样的假设:结束步将包含变量数据的最大动态范围,从而能够正确地初始化变量调色板。 . 然而,也在 " 文件 > 打开 " 对话 框中的时间选项下,勾选指定 起始步按钮,并输入合适的时 间步来重置时间信息。 Page 48 操作指南:加载瞬态数据 对于许多数据格式,一些结果文件类型提供了必要的时间信息,包含总步数、每一步的实际分析时间、以及如何访问 动态变量和几何文件。然而, EnSight 也支持另外一些格式,将这些信息均存储在同一文件中,该文件同时还包含几 何体或变量数据。 EnSight6 和 EnSight Gold 格式的 case 文件包含分析时间信息以及如何将其连接至每一个变量与几 何体。每种格式可以有很大的不同,建议参看 User Manual 2.1 Reader Basics, User Manual 2.1 Native EnSight Format Readers,,以及 User Manual 2.1 Other Readers 另请参见 操作指南:更改时间步 操作指南:瞬态数据动画 操作指南:查询 / 绘制 用户手册 : Flipbook Animation, Query/Plotter Page 49 HOW TO USE SERVER OF SERVERS Use Server of Servers INTRODUCTION EnSight100 (with gold license key) has the capability of dealing with partitioned data in an efficient distributed manner by utilizing what we call a server-of-servers (SOS for short). An SOS server resides between a normal client and a number of normal servers. Thus, it appears as a normal server to the client, and as a normal client to the various normal servers. This arrangement allows for distributed parallel processing of the various portions of a model, and has been shown to scale quite well. Currently, EnSight SOS capability is only available for EnSight5, EnSight6, EnSight Gold, Plot3d, and any EnSight User-Defined Reader data. Please recognize that your data must be partitioned in some manner (hopefully in a way that will be reasonably loadbalanced) in order for this approach to be useful. This partitioning can be done externally, be done by a reader internally, or be auto_distributed by the EnSight servers. Each of these options will now be discussed, because they have limitations. External partitioning This method requires that each portion of the model be prepared as a stand-alone dataset, that can be read as such by an EnSight server. For example, if it were EnSight gold format, there will be a casefile and associated gold geometry and variable results file(s) for each dataset. There will also need to be an sos casefile, which is a simple ascii file which informs the SOS about pertinent information needed to run a server on each of the machines that will compute the various portions. The SOS will read the sos casefile, and each server will read one of these partition datasets. The SOS will conglomerate things together so that the client sees the whole model. The EnSight formats, plot3d, and any user-defined readers using our 1.0 or 2.0 API’s can be used Note: If you do your own partitioning please be aware that there is a requirement that each dataset contain all the same parts. However, the contents of a given part is allowed to be different (even empty) in any given dataset. Thus one can fairly easily partition as desired, whether that be with partial parts across several datasets, or with parts empty in all but one of the datasets, etc. (Note that in EnSight formats, an empty part need only have the “part” line, the part number, and the “description” line.) The advantage of external partitioning is that once the data has been prepared, the partitioning is done. EnSight’s SOS and servers can then operate without expending any effort on partitioning. The disadvantage is that it is not easily changed. And traditionally the number of servers required had to be the same as the number of partitioned datasets. However, for EnSight Gold format, EnSight now has the capability of running more than one of these Page 50 HOW TO USE SERVER OF SERVERS datasets on a given server - so it is possible to run the model on fewer servers than the number of partitioned datasets. And the number of those fewer servers is easily changed. See How To Load Spatially Decomposed Case Files. (Included in the EnSight distribution is an unsupported utility that will take most EnSight Gold binary unstructured datasets and partition it externally for you. The source for this utility (called “chopper”) can be found in the $CEI_HOME/ensight100/unsupported/partitioner directory.) You should place each partitioned portion of the model on the machine that will compute that portion. On the machine where the EnSight SOS will be run, you will need to place the sos casefile. Partitioning done by a reader This method requires that the reader be based on our 2.0 User-defined reader API, which is “server-aware”, and that it does its own determination of what data goes to each server. Some “multiblock” formats for example, can easily distribute certain blocks to certain servers. And they can do so based on the number of servers that are being used at the time. There is still the requirement that each server be informed of the same number of total parts. But the reader can return different portions of a given part based on which server is querying. And yes, a given part can be empty for some servers. This type of partitioning reader has the advantage of being adaptable to the number of servers used. It does require the development of such a reader. Examples of such, amongst the readers which are distributed by EnSight, are the Abaqus, Fluent, cth, xdmf2, Exodus, and Silo readers. Auto_distributed by EnSight Servers Some formats and readers allow for an auto-distribute capability that occurs within each server. This does not require pre-partitioning of the data. Each server will determine its portion, and read and act just on that portion. Note, however, that in order for each server to use an amount of memory commensurate with its portion of the data, the reader must be able to do some things which are not required when the whole model is being read. These include being able to read unstructured data in partial buffers, and being able to read structured data in partial cinched regions. It also require that all servers have access to the same data. If you use “resources”, a SOS casefile is not even required. Currently this capability is limited to: Unstructured Data: EnSight Gold format 2.0 API User-defined readers (at level 2.08 or greater), which have implemented the “*_in_buffers” routines. Structured Data: EnSight Gold format Plot3d format 2.0 API User-defined readers (at level 2.06 or greater), which have implemented structured reader cinching. So, the internal EnSight Gold andPlot3d readers can be used with auto_distribute, but other than example readers, none of the user-defined readers distributed by EnSight have currently implemented the needed *_in_buffer routines or structured reader cinching capability to take advantage of this option. Format of the SOS casefile: The format for this file is as follows: (Note that [ ] indicates optional information, and a blank line or a line with # in the first column are comments.) FORMAT type: master_server datatype (Required) (Required) where: datatype is required and is one of the formats of EnSight’s internal readers (which use the Part builder), namely: gold ensight6 ensight5 plot3d or it can be the string used to name any of the user-defined readers. Note: For user-defined readers, the string must be exactly that which is defined in the USERD_get_name_of_reader routine of the reader (which is what is presented in the Format pulldown of the Data Reader dialog). If datatype is blank, it will default to EnSight6 data type. Page 51 HOW TO USE SERVER OF SERVERS [auto_distribute: on/off] (Optional for structured or unstructured data) EnSight will automatically distribute data to the servers specified below if this option is present and set to “on”. This will require that each of the servers have access to the same data (or identical copies of it). For structured data: use only if the datatype is gold, plot3d or a 2.06 or greater user-defined reader (which has implemented structured cinching). For unstructured data: use only if the datatype is gold, or a 2.08 (or greater) user-defined reader. Additionally, be aware that 2.* user-defined readers should implement the special functions defined in README_USERD_IN_BUFFERS file if memory is to be used efficiently in the unstructured auto-distribute process. [use_resources: on/off] (Optional, to allow specification of server machines to come from the “resource file”) [plot3d_iblanked: true/false] (Required only if doing auto_distribute and datatype is plot3d) [plot3d_multi_zone: true/false] (Required only if doing auto_distribute and datatype is plot3d) [plot3d_dimension: 1d/2d/3d] (Required only if doing auto_distribute and datatype is plot3d) [plot3d_source: ascii/cbin/fortranbin](Required only if doing auto_distribute and datatype is plot3d) [plot3d_grid_double: true/false] (Required only if doing auto_distribute and datatype is plot3d) [plot3d_results_double: true/false] (Required only if doing auto_distribute and datatype is plot3d) where: iblanking, multi_zone, dimension, source type, grid file double precision, and results file double precision information should be provided. If it is not provided, it will default to the following (which is likely not to be correct): plot3d_iblanked: plot3d_muti_zone: plot3d_dimension: plot3d_source: plot3d_grid_double: plot3d_results_double: false false 3d cbin false false [do_ghosts: on/off] (Optional for unstructured auto_distribute - default is on) Allows user to control whether ghost cells will be produced between the distributed portions. [buffer_size: n] (Optional for unstructured auto_distribute and do_ghosts - default is 100000) Allows user to modify the default buffer size that is used when reading node and element information of the model when producing ghost cells. [want_metric: on/off] (Optional for unstructured auto_distribute and do_ghosts - default is on) If set on, a simple metric will be printed in the shell window that can indicate the quality of the auto_distribution. The unstructured auto_distribute method relies on some coherence in the element connectivity - namely, that elements that lie next to each other are generally listed close to each other in the data format. The metric is simply the (#total_nodes / #nodes_needed_if_no_ghosts). When no ghosts, the value will be 1.0. The more ghosts you must have, the higher this metric will be. If the number gets much more than 2.0, you may want to consider partitioning yourself. NETWORK_INTERFACES (Note: This whole section is optional. It is needed only when more than one network interface to the sos host is available and it is desired to use them. Thus, distributing the servers to sos communication over more than one network interface) number of network interfaces: num(Required - if section used) where: num is the number of network interfaces to be used for the sos host. network interface: sos_network_interface_name_1(Required - if section used) network interface: sos_network_interface_name_2(Required - if section used) . . network interface: sos_network_interface_name_num(Required - if section used) SERVERS (Required) number of servers: num [repeat](Required) where: num is the number of servers that will be started and run concurrently. repeat indicates that the first server specification should be repeated num times for use with resources. Other server specifications will be ignored. #Server 1 machine id: mid (Comment only) (Required) where: mid is the machine id of the server. Page 52 HOW TO USE SERVER OF SERVERS executable: /.../ensight92.server(Linux/Unix/Apple Required, must use full path) or ensight92_server.bat (Windows only Required, must use .bat extension) [directory: wd] (Optional) where: wd is the working directory from which ensight92.server will be run [login id: id] (Optional) where: id is the login id. Only needed if it is different on this machine. [data_path: /.../dd] (Optional) where: dd is the directory where the data resides. (Full path must be provided if you use this). casefile: yourfile.case (Required, but depending on format, may vary as to whether it is a casefile, geometry file, neutral file, universal file, etc. Relates to the first data field of the Data Reader Dialog.) [resfile: yourfile.res] (Depends on format as to whether required or not. Relates to the second data field of the Data Reader Dialog.) [measfile: yourfile.mea] (Depends on format as to whether required or not. Relates to the third data field of the Data Reader Dialog.) [bndfile: yourfile.bnd] (Depends on format as to whether required or not. Relates to the fourth data field of the Data Reader Dialog.) --- Repeat pertinent lines for as many servers as declared to be in this file --- BASIC OPERATION To use Server of Servers, depending on the method of partitioning described above, you do the following: External partitioning 1. Partition your data, and distribute it (or make it available) to the various machines on which you will run servers. 2. Create the sos casefile, which defines the data format to use, the server machines, the location of server executables on those machines, and the name and location of the [partitioned] data for the servers. Each server in the casefile will reference different data. Examples will be shown below. 3. Run EnSight with the -sos command line option(or use ensight100.sos in place of ensight100.server if connecting manually) and provide it with the sos casefile. You can run EnSight like: ensight100 -sos Then under File->Open, set the sos casefile under the data tab, with a format of Case SOS. Page 53 HOW TO USE SERVER OF SERVERS Under the SOS options tab, you can verify that Auto distribute is set to Don’t decompose (because the data is already decomposed). Using the command in this way runs the SOS on the same machine as the client. If you want to control where the SOS runs, connect manually instead (a manual example will be shown later in this article). Also note that if you want to load all parts, you could have simply included the sos casefile on the command line, like: ensight100 -sos /home/bjn/dat/sos/cube_10.sos Additionally, you can use resources in combination with a sos casefile if desired. See How To Use Resource Management for an example. Partitioning done by a reader If you use a reader that can do its own partitioning, you can use an sos casefile in which each server references the same data, or take advantage of a resource file and not have to create an sos casefile. Note that for this method, under the SOS options tab in the File->Open dialog, you will see that Auto distribute is set to Reader Decompose. It is probably easiest to describe the usage based on an example. So using the Exodus reader, lets run an Exodus model on two servers (computer1 and computer2). The files we will reference are: sample.exo (the Exodus data file) two_portions.sos (the SOS casefile) FORMAT type: master_server MultiExodusIIng SERVERS number of servers: 2 #Server 1 #-----------machine_id: computer1 executable: ensight100.server data_path: /home/user/exodus casefile: sample.exo #Server 2 #-----------machine_id: computer1 executable: ensight100.server data_path: /home/user/exodus casefile: sample.exo Page 54 HOW TO USE SERVER OF SERVERS two_servers.res (the resource file, see How To Use Resource Management for more details) #!CEIResourceFile 1.0 SOS host: localhost SERVER host: computer1 host: computer2 1. Make sure your sample.exo data file is available to the various machines on which you will run servers. 2. Create the two_portions.sos sos casefile, or the two_servers.res resource file 3. Run EnSight like: ensight100 -sos Then set the two_partitions.sos file in the File->Open dialog (format Case SOS). This will let you load all parts, or select the ones to be loaded. Or use ensight100 -sos two_portions.sos on the command line if you want to load all parts. -- or -Open the sample.exo file in the File->Open dialog (format MultExodusII), and place two_servers.res in the Set resource file field under the SOS options tab. This will let you then load all parts, or select the ones to be loaded. Or use ensight100 -sos -res two_servers.res on the command line and set sample.exo file in the File->Open dialog (format MultExodusII). Or use ensight100 -sos -res two_servers.res sample.exo on the command line if you want to load all parts. There are several other variations that could be used, including the use of a manual connection with the SOS. They all have similar corresponding options. Auto_distributed by EnSight Servers If you use EnSight Gold, Plot3d, or a User-defined reader that is capable (as described above), you can let EnSight do the partitioning. You can use an sos casefile in which each server references the same data, or take advantage of a resource file and not have to create an sos casefile. Note that for this method, under the SOS options tab in the File->Open dialog, you will see that Auto distribute is set to Server Decompose. It is probably easiest to describe the usage based on an example. So using the EnSight Gold format, lets run a simple model on two servers (computer1 and computer2). The files we will reference are: cube.case (the EnSight Gold data file) two_partitions.sos (the SOS casefile) FORMAT type: master_server gold auto_distribute: on do_ghosts: on SERVERS number of servers: 2 #Server 1 #-----------machine_id: computer1 executable: ensight100.server data_path: /home/user/exodus casefile: cube.case #Server 2 Page 55 HOW TO USE SERVER OF SERVERS #-----------machine_id: computer1 executable: ensight100.server data_path: /home/user/exodus casefile: cube.case two_servers.res (the resource file, see How To Use Resource Management for more details) #!CEIResourceFile 1.0 SOS host: localhost SERVER host: computer1 host: computer2 1. Make sure your cube.case data is available to the various machines on which you will run servers. 2. Create the two_partitions.sos sos casefile, or the two_servers.res resource file 3. Run EnSight like: ensight100 -sos Then set the two_partitions.sos file in the File->Open dialog (format Case SOS). This will let you load all parts, or select the ones to be loaded. Or use ensight100 -sos two_partitions.sos on the command line if you want to load all parts. -- or -Open the cube.case file in the File->Open dialog (format Case), and place two_servers.res in the Set resource file field under the SOS options tab. This will let you then load all parts, or select the ones to be loaded. Or use ensight100 -sos -res two_servers.res on the command line and set cube.case file in the File->Open dialog (format Case). Or use ensight100 -sos -res two_servers.res cube.case on the command line if you want to load all parts. There are several other variations that could be used, including the use of a manual connection with the SOS. They all have similar corresponding options. Example SOS Casefile This example deals with a EnSight Gold dataset that has been partitioned into 3 portions, each running on a different machine. The machines are named joe, sally, and bill. The data is not in the same location on all machines. Note that the optional data_path line is used on two of the servers, but not the third. FORMAT type: master_server gold SERVERS number of servers: 3 #Server 1 machine id: joe executable: ensight100.server data_path: /usr/people/john/data casefile: portion_1.case #Server 2 is a Windows machine (notice .bat extension) machine id: sally executable: ensight100_server.bat data_path: D:\john\data casefile: portion_2.case #Server 3 machine id: bill executable: ensight100.server casefile: /scratch/temp/john/portion_3.case Page 56 HOW TO USE SERVER OF SERVERS If we name this example sos casefile - “all.sos”, and we run it on yet another machine - one named george, you would want the data distributed as follows: On george: On joe (in /usr/people/john/data): On sally (in /scratch/sally/john/data): On bill (in /scratch/temp/john): all.sos portion_1.case, and all files referenced by it. portion_2.case, and all files referenced by it. portion_3.case, and all file referenced by it. By starting EnSight with the -sos command line option (which will autoconnect using ensight100.sos instead of ensight100.server), or by manually running ensight100.sos in place of ensight100.server, and providing all.sos as the casefile to read in the Data Reader dialog - EnSight will actually start three servers and compute the respective portions on them in parallel. So, one could do the following (after preparing the all.sos file): On “george”, run the client and the sos by invoking the ensight100 script in a shell window (non-windows) or Command Prompt window (windows), like: george>> ensight100 -sos Or one could run the client on the “myclient” machine, telnet (or equivalent) into the “george” machine and run the sos there, by using the following commands: If “myclient” is a non-windows machine: In a window on “myclient”: In a window that is telneted into the “george” machine: myclient>> ensight100.client -cm If “george: is a non-windows machine: george>> ensight100.sos -c myclient If “george is a windows machine: george>> ensight100_sos -c myclient : If “myclient” is a windows machine: In a Command Prompt window on “myclient”: myclient>> ensight100_client -cm In a Command Prompt window that is telneted into the “george” machine: If “george: is a non-windows machine: george>> ensight100.sos -c myclient If “george is a windows machine: george>> ensight100_sos -c myclient In either case, you would enter the all.sos command as the file to read in the Data Reader dialog once EnSight is up and connected. And the servers on “joe”, “sally”, and “bill” would be started and used automatically. ENVIRONMENT Variables The following Environment variables will directly affect the SOS performance, see How To Setup for Parallel Computation. ENSIGHT10_MAX_THREADS ENSIGHT10_MAX_SOSTHREADS Optional NETWORK_INTERFACES section notes If the machine named george had more than one network interface (say it had its main one named george, but also had one named george2), we could add the section shown below to our casefile example: NETWORK_INTERFACES number of network interfaces: 2 network interface: george network interface: george2 This would cause machine joe to connect back to george, machine sally to connect back to george2, and machine bill to connect back to george. This is because the sos will cycle through its available network interfaces as it connects the servers. Remember that this is an optional section, and most users will probably not use it. Also, the contents of this section will be ignored if the -soshostname command line option is used. Page 57 HOW TO USE SERVER OF SERVERS Example SOS Casefile for PLOT3D, Using structured auto_distribute This example shows a plot3d dataset (post.x and post.q) that has not been partitioned, but is on an nfs mounted disk available to each server machine. EnSight will distribute the data to the 3 servers defined. IO will not necessarily be great since each server will be reading from the same file, but execution will be enhanced by the partitioning. We will use the same machines used in the previous example. FORMAT type: master_server plot3d auto_distribute: on plot3d_iblanked: true plot3d_multi_zone: false plot3d_dimension: 3d plot3d_source: cbin plot3d_grid_double: false plot3d_results_double: false SERVERS number of servers: 3 #Server 1 machine id: joe executable: ensight100.server data_path: /scratch/data casefile: post.x resfile: post.q #Server 2 machine id: sally executable: ensight100.server data_path: /scratch/data casefile: post.x resfile: post.q #Server 3 machine id: bill executable: ensight100.server data_path: /scratch/data casefile: post.x resfile: post.q Page 58 HOW TO USE SERVER OF SERVERS Example SOS Casefile for EnSight Gold, Using unstructured auto_distribute This example shows an EnSight Gold dataset (trial.case) that has not been partitioned, but is on an nfs mounted disk available to each server machine. EnSight will distribute the data to the 3 servers defined. IO will not necessarily be great since each server will be reading from the same file, but execution will be enhanced by the partitioning. We will use the same machines used in the previous examples. FORMAT type: master_server gold auto_distribute: on do_ghosts: on buffer_size: 10000 want_metric: on SERVERS number of servers: 3 #Server 1 machine id: joe executable: ensight100.server data_path: /scratch/data/gold casefile: trial.case #Server 2 machine id: sally executable: ensight100.server data_path: /scratch/data/gold casefile: trial.case #Server 3 machine id: bill executable: ensight100.server data_path: /scratch/data/gold casefile: trial.case Special Case: If using auto_distribute (and thus each server will be accessing the same data files), and the servers will all be run on the same machine, then one can add the word “repeat” to the end of the “number of servers: num” line and then only define one set of Server info. For example: FORMAT type: master_server gold auto_distribute: on SERVERS number of servers: 3 repeat #Server 1 machine id: joe executable: ensight100.server data_path: /scratch/data/gold casefile: trial.case Structured Auto Distribute Note: If using structured auto_distribute, the default decomposition scheme is to do so in the i, j, or k direction that has the largest dimension. This may not always be the best direction for a given analysis. Thus, through the use of an environment variable, the user can set the axis to use. The chosen axis will be used unless the dimension in that direction will not allow for all servers to contain data (namely, as long as the dimension in the chosen direction is greater than the total number of servers used). To use the this option, set the following to 0, 1, 2, or -1: setenv SAD_DECOMPOSE_AXIS 0 1 2 -1 (for the i axis) (for the j axis) (for the k axis) (to use the default largest dimension scheme, same as not setting the variable) Page 59 HOW TO USE SERVER OF SERVERS SEE ALSO How To Read Data How To Read User Defined How To Setup for Parallel Computation How To Use Resource Managament User Manual: Server-of-Server Casefile Format Page 60 HOW TO LOAD SPATIALLY DECOMPOSED CASE FILES Load Spatially Decomposed Case Files INTRODUCTION If one has multiple EnSight gold casefiles (each of which contain a spatially decomposed portion of the same model), they can be read using one or more servers (as long as the number of servers is less than or equal to the number of casefiles). In other words, when it is desired to read N casefiles with M servers (M<=N), an additional section can be added to the SOS casefile to accomplish this. Note that the following important restrictions/limitations will apply: 1. M (number of servers) must be less than or equal to N (number of casefiles). 2. Unstructured data only. (Note: a similar capability exists for structured data. See How to Use Block Continuation) 3. Auto distribute may not be specified in the SOS casefile. 4. None of the following can be specified in the partition casefiles: GEOMETRY measured: match: boundary: rigid_body: Vector_glyphs: BLOCK_CONTINUATION MATERIAL Note: that some of the restrictions (such as measured) may eventually be lifted. But currently all of the above are in effect. 5. All of the normal SOS requirements still apply. a) All parts must be present in all cases. (Empty parts are allowed) b) The same variables must exist in all cases. c) The same timesets must be used in all cases. Note: If the desired number of servers is equal to the number of casefiles, one can either use the procedure described in this How To, or could use the normal SOS procedures (see How To Use Server of Servers). BASIC OPERATION To postprocess your partitioned EnSight Gold unstructured data on fewer servers than casefiles, run SOS using an SOS casefile that has a MULTIPLE_CASEFILES section. Three possible methods are available for your convenience . They all accomplish the same thing in slightly different ways. So use whichever is easiest for your situation. Note: in using one of the 3 the methods below, one should determine something about how the data resides, or is available to EnSight. Namely, how will one need to specify the path to the data. Since the whole idea is that the number of servers may vary, and Ensight will determine which casefiles go to which servers, there are really only two possibilities for paths. A) There is a global path for all of the data. And thus each server needs to know this global path (which it will prepend to each casefile). B) Each casefile has its own path. And each server needs to know the path for each. Page 61 HOW TO LOAD SPATIALLY DECOMPOSED CASE FILES Available Section lines: Comments MULTIPLE_CASEFILES Required for all methods total number of cfiles: n Used for method 1 and 2 cfiles global path: global_path Optional, used for methods 1 and 2 cfiles: partition_1.case Used for method 1 partition_2.case . . partition_n.case cfiles pattern: partition_*.case Used for method 2 cfiles start number: # Used for method 2 cfiles increment: # Used for method 2 cfiles file: filename Used for method 3 Example Method 1 Specify the number of and the actual files in the sos casefile A) Using global path: MULTIPLE_CASEFILES total number of cfiles: 3 cfiles global path: /home/bjn/data cfiles: file1.case file_b.case bruce.case B) Using path per casefile: MULTIPLE_CASEFILES total number of cfiles: 3 cfiles: /home/bjn/data1/file1.case /home/bjn/data2/file_b.case /home/bjn/data3/bruce.case Method 2 Specify the number of, the pattern, and the start and increment A) Using global path: MULTIPLE_CASEFILES total number of cfiles: 3 cfiles global path: /home/bjn/data cfiles pattern: file**.case cfiles start number: 0 cfiles increment: 1 OR MULTIPLE_CASEFILES total number of cfiles: 3 cfiles pattern: /home/bjn/data/file**.case cfiles start number: 0 cfiles increment: 1 Page 62 HOW TO LOAD SPATIALLY DECOMPOSED CASE FILES B) Using path per casefile: Note: method 2 does not have a way to have a separate path for each casefile. Method 3 Similar to 1., but place the info in a separate file A) Using global path: MULTIPLE_CASEFILES cfiles file: all_together_cfiles.txt and in all_together_cfiles.txt, (first line contains number of, second line contains the optional global path, then filenames come 1 per line on the following lines). Like: 3 /home/bjn/data file1.case file_b.case bruce.case B) Using path per casefile: MULTIPLE_CASEFILES cfiles file: separated_cfiles.txt and in separated_cfiles.txt, (first line contains number of, second line must be the word “none” - indicating no global path specified, then filenames come 1 per line on the following lines). Like: 3 none /home/bjn/data1/file1.case /home/bjn/data2/file_b.case /home/bjn/data3/bruce.case Another Example An EnSight Gold unstructured transient geometry model with a couple of variables, in 4 partitions, like: bjn1.case bjn1.geo0000 bjn1.geo0001 bjn1.scalar0000 bjn1.scalar0001 bjn1.evector0000 bjn1.evector0001 bjn2.case bjn2.geo0000 bjn2.geo0001 bjn2.scalar0000 bjn2.scalar0001 bjn2.evector0000 bjn2.evector0001 bjn3.case bjn3.geo0000 bjn3.geo0001 bjn3.scalar0000 bjn3.scalar0001 bjn3.evector0000 bjn3.evector0001 bjn4.case bjn4.geo0000 bjn4.geo0001 bjn4.scalar0000 bjn4.scalar0001 bjn4.evector0000 bjn4.evector0001 Using Method 1: If they all reside in the same directory (/home/bjn), a method 1 SOS casefile that will use just 2 servers (perhaps named bjn_4x2.sos) should look like: FORMAT type: master_server gold MULTIPLE_CASEFILES total number of cfiles: 4 cfiles global path: /home/bjn cfiles: bjn1.case bjn2.case bjn3.case bjn4.case SERVERS number of servers: 2 repeat Page 63 HOW TO LOAD SPATIALLY DECOMPOSED CASE FILES machine id: executable: gun ensight100.server Using Method 2: If they all reside in the same directory (/home/bjn), a method 2 SOS casefile that will use just 2 servers should look like: FORMAT type: master_server gold MULTIPLE_CASEFILES total number of cfiles: 4 cfiles global path: /home/bjn cfiles pattern: bjn*.case cfiles start number: 1 cfiles increment: 1 SERVERS number of servers: 2 repeat machine id: gun executable: ensight100.server Using Method 3: For this one, lets change things and say that they reside in separate directories, like: /scratch/portion1 bjn1.case bjn1.geo0000 bjn1.geo0001 bjn1.scalar0000 bjn1.scalar0001 bjn1.evector0000 bjn1.evector0001 /scratch/portion2 bjn2.case bjn2.geo0000 bjn2.geo0001 bjn2.scalar0000 bjn2.scalar0001 bjn2.evector0000 bjn2.evector0001 /scratch/portion3 bjn3.case bjn3.geo0000 bjn3.geo0001 bjn3.scalar0000 bjn3.scalar0001 bjn3.evector0000 bjn3.evector0001 /scratch/portion4 bjn4.case bjn4.geo0000 bjn4.geo0001 bjn4.scalar0000 bjn4.scalar0001 bjn4.evector0000 bjn4.evector0001 the SOS casefile could look like: FORMAT type: master_server gold MULTIPLE_CASEFILES cfiles file: /scratch/bjn.txt SERVERS number of servers: 2 repeat machine id: gun executable: ensight100.server and the /scratch/bjn.txt file could look like: 4 none /scratch/portion1/bjn1.case /scratch/portion2/bjn2.case /scratch/portion3/bjn3.case /scratch/portion4/bjn4.case or could look like: (See the Other Notes below) 4 /scratch portion1/bjn1.case portion2/bjn2.case portion3/bjn3.case portion4/bjn4.case Page 64 HOW TO LOAD SPATIALLY DECOMPOSED CASE FILES OTHER NOTES: When your casefile data resides in separate directories below a parent, such as: /home/bjn /home/bjn/data1 /home/bjn/data2 /home/bjn/data3 it is valid to use the global path to specify the parent directory, and the individual files to give the path on down. Such as: cfiles global path: /home/bjn cfiles: data1/file1.case data2/file_b.case data3/bruce.case This will result internally as the same thing as if you had done: cfiles: /home/bjn/data1/file1.case /home/bjn/data2/file_b.case /home/bjn/data3/bruce.case APPENDED_CASEFILES Variation: If you desire to use all casefiles on one server, you can obviously do so with the above option by using the SOS with one server. However, there is a variation on this option that can be used without using the SOS. It can be used with a client and server alone. It is very similar to the MULTIPLE_CASEFILES option in an SOS casefile, except that it is placed in the first regular casefile of the series - the one that you will read. It uses APPENDED_CASEFILES as the section header, and lists just the additional casefiles (not the one that this is placed in). So instead of using the SOS with an SOS casefile like: FORMAT type: master_server gold MULTIPLE_CASEFILES total number of cfiles: 4 cfiles global path: /home/bjn cfiles: bjn1.case bjn2.case bjn3.case bjn4.case SERVERS number of servers: 1 machine id: gun executable: ensight100.server You could place the following in bjn1.case: FORMAT type: ensight gold GEOMETRY model: bjn1.geo VARIABLE scalar per node: scalar bjn1.scl APPENDED_CASEFILES total number of cfiles: 3 cfiles global path: /home/bjn cfiles: bjn2.case bjn3.case bjn4.case Note that all current limitations for the MULTIPLE_CASEFILES option (which were enumerated above) also apply to the APPENDED_CASEFILES option. The two options cannot be used in combination. It is an either or situation. Page 65 HOW TO LOAD SPATIALLY DECOMPOSED CASE FILES SEE ALSO How To Read Data How To Setup for Parallel Computation How To Use Resource Management User Manual: Server-of-Server Casefile Format Page 66 操作指南:用户自定义程序 (READER) 用户自定义程序 (reader) 简介 EnSight 提供了一种机制,用户可自行编写数据读取程序 (reader),在运行时实现代码自动链接并执行 (使用共享 库)。具体功能在 EnSight 接口手册上有详细介绍。接口手册中的各程序示例以及若干数据读取程序 (reader)的代 码储存于 $CEI_HOME/ensight100/src/readers/ 目录下,在各子目录中,有许多 README 文件,其中包含了 用户自定义数据读取程序 (reader)的更多信息。 另外,正如接口手册上介绍,在 $CEI_HOME/ensight100/src/readers/checker 目录下有一个 udr_checker.c 文件,在连接自定义的数据读取程序 (reader)与 EnSight 软件之前,可用该文件来进行调试。 其他说明 启动 EnSight 时 (ensight100 或 ensight100.server),可使用命令行选项 "-readerdbg" 来反馈用户自定义数据读取 程序 (reader)的载入状态,同时可查看当前正在载入的读取程序 (reader)。 设置指向用户自定义数据读取程序 (reader)存储路径的环境变量 ENSIGHT10_READER,然后使用上述 readerdbg 选项启动,以确认当前载入的为所需的读取程序 (reader)。 另请参见 EnSight 接口手册,以及: 操作指南:读取数据 Page 67 操作指南:提取结构化部件 提取结构化部件 简介 加载结构化部件时 (一般在部件列表中尚未加载的部件上点击右键),对于实际提取部分有一定的灵活性。如果模型 包含消隐部分,那么必须选择消隐域,即内部、外部 (消隐掉的)或全部 (忽略消隐);如果模型不含消隐部分, 域将保持默认设置。可基于原有的或粗距的网格分辨率提取全部或部分域,也可在单个或多个域上执行提取操作。 基本操作 提取域部件时,无论是否含消隐,均存在以下几种可能 (非所有的可能): 基于原网格分辨率提取完整域 , 1、在所需编辑的域上点击右键,选择加载 部件。 更改消隐域,选择单元显示方式,输入部 件描述。 2、点击 " 作为新部件载入 " 按钮。 部件将被创建,并显示于图形窗口中。在 下面的例子中,部件的显示方式为 " 显示 边界 "。 Page 68 操作指南:提取结构化部件 基于粗距网格分辨率提取完整域 , 1、在所需编辑的域上点击右键,选择加载 部件。 更改消隐域,选择单元显示方式,输入部件 描述。 2、修改 " 步长 " 值。 需为正整数。步长为 2 意为每隔一个单元处 理一次、步长为 4 意为每隔四个单元,等等。 3、点击 " 作为新部件载入 " 按钮。 部件将被创建,并显示于图形窗口中。在下 面的例子中,部件的显示方式为 " 显示边界 "。注意到这里的网格较前面的更为粗糙,因 为步长一栏下 ijk 方向分别使用了 2、 4 和 5。 Page 69 操作指南:提取结构化部件 提取部分域 , 1、在所需编辑的域上点击右键,选择加载 部件。 更改消隐域,选择单元显示方式,输入部件 描述。 2、修改 " 从 " 和 " 至 " 的值。 它可以是最小值与最大值间的任意范围。默 认为全部范围,但可以手动修改 3、点击 " 作为新部件载入 " 按钮。 部件将被创建,并显示于图形窗口中。在下 面的例子中,部件的显示方式为 " 显示边界 ",注意现在获取的是整个域的一部分。还需 注意获取的是原始网格分辨率,因为我们再 次将步长值设为了 1。当然,步长值也可以不 为 1,只是创建出的部件会显示为粗距的网格 分辨率。 Page 70 操作指南:提取结构化部件 提取多个部件上相同的部分 , 1、选择所需编辑的结构化区域。 更改域。 2、修改 " 从 " 和 " 至 " 的值。 可以是最小值与最大值间的任意范围 (目前为所有已选部件的 最小和最大值)。默认为全部范围,但可以手动修改。另外, "-1" 为有效输入,表示为最后一个单元。负数表示从最大值往 最小值,因而 -2 代表倒数第二个单元。(注意:0 当做 -1 处理) 3、点击 " 作为新部件载入 " 按钮。 在该例子中,将创建 4 个部件,四个域均使用 J=1 栏, IK 平面内的全部单元。注:各部件的 IK 范围不同,但 是每个域都必须小于最大值。 在该例子中,我们将 J 方向的 " 从 " 和 " 至 " 的值均改为 0, 因而将提取每个域中的最后一个单元,如下图所示,其中右 侧的图片为完整域,因其以特征角作为显示方式,所以直 观上看不出来。 Page 71 操作指南:提取结构化部件 注:在 EnSight10 之前的版本中,载入部件时可通过列增量提取单个域中的多个边界面。该功能现已停用,但也可以 在 ijk 剪切中使用间隔域来获得同样的效果。 另请参见 操作指南:读取数据 用户手册:Using Node Ranges: Page 72 HOW TO USE BLOCK CONTINUATION Use Block Continuation INTRODUCTION Given a situation where structured data blocks have been partitioned for analysis on multiple compute nodes, and the data can be saved in EnSight Gold format, such that a set of cases exists which are contiguous from one set to another - the data can be read into Ensight using the casefile Block Continuation capability. This allows any number of these contiguous sets to be clustered and visualized together in an EnSight server. Furthermore, by using this capability combined with Ensight’s Server of Servers, one can visualize M number of sets with N number of EnSight Servers. Where m is greater than n. Please note that each set must be a standalone EnSight case containing a portion of all the parts. The block parts in each of the sets must consist of a valid subset range of each complete block part. This will require, for example, that a given 3D block part will vary in only one dimension throughout the sets. Also, each set must be the neighboring portion or “slice” in the set of cases. Note the following simple example: i dir Block Part 1 advances in the i direction. Block Part 2 advances in the j direction. j dir Each Case (or set) consists of portions of both parts, which are specified using EnSight’s block range capability. Thus, the first case has the red portions. The second case has the yellow portions, etc. Each block part can be “sliced up” in a different direction, but that direction must continue for all sets for that part. And the sets must be the contiguous natural neighbors of each other. Note that the block dimensions must remain the same in the non-advancing directions, but they can vary per set in the advancing direction (even though in this simple example they are quite consistent). With data set up like the above, we might then decide that we will visualize the model with only two servers. We could combine (using Block_Continuation) the first two sets onto the first server and the last 3 sets onto the second server. Portion of Block Part 1 on server 1 (consists of original sets 1 and 2) Portion of Block Part 2 on server 1 (consists of original sets 1 and 2) Portion of Block Part 1 on server 2 (consists of original sets 3, 4, and 5) Portion of Block Part 2 on server 2 (consists of original sets 3, 4, and 5) Page 73 HOW TO USE BLOCK CONTINUATION BASIC OPERATION To combine more than one of the sets for a given server (what we may call a “cluster” of sets), one must create a casefile which contains a Block_Continuation section (as described in Chapter 11 of the User Manual). In our example on the previous page, there were five case files (with their associated geo and scl files). set_1.case set_2.case set_3.case set_4.case set_5.case set_1.geo set_2.geo set_3.geo set_4.geo set_5.geo set_1.scl set_2.scl set_3.scl set_4.scl set_5.scl and the contents of the first of these casefiles (set_1.case) would look something like: FORMAT type: ensight gold GEOMETRY model: set_1.geo VARIABLE scalar per node: set_1.scl With the contents of each of the other casefiles differing only in the digit following the underscore. To “cluster” these as described (two sets in the first case and 3 sets in the second case), we would need to create the following two casefiles. cluster_1.case, would contain: FORMAT type: ensight gold GEOMETRY model: set_%.geo VARIABLE scalar per node: set_%.scl BLOCK_CONTINUATION number of sets: 2 filename start number: 1 filename increment: 1 Note the use of % as the wildcard for block continuation sets. cluster_2.case, would contain: FORMAT type: ensight gold GEOMETRY model: set_%.geo VARIABLE scalar per node: set_%.scl BLOCK_CONTINUATION number of sets: 3 filename start number: 3 filename increment: 1 And we could then easily use an SOS casefile (perhaps named, two_blocks.sos) that would use these two cluster files: FORMAT type: master_server gold SERVERS number of servers: 2 #Server 1 machine id: node1 executable: ensight100.server casefile: cluster_1.case #Server 2 machine id: node2 executable: ensight100.server casefile: cluster_2.case Page 74 HOW TO USE BLOCK CONTINUATION If you now run EnSight using this SOS casefile, the two block parts should appear as you would expect. Of course, to avoid any visual (or computational) effects from the partitioning, you would need to be using ghost cells between the original partitions (sets). See EnSight Gold Geometry File Format and the example file below. For a description of block range usage, which the original partition (sets) use in describing the block geometry, See EnSight Gold Geometry File Format An example of such is the third set geometry file (set_3.geo), which is using uniform blocks with ranges: Uniform Block Continuation Test - set 3 ======================================= node id assign element id assign extents 0.00000e+00 1.00000e+00 -5.00000e+00 1.00000e+00 0.00000e+00 5.00000e+00 part 1 horizontal block uniform range 2 2 6 1 2 1 2 0.00000e+00 0.00000e+00 2.00000e+00 1.00000e+00 1.00000e+00 1.00000e+00 part 2 vertical block uniform range 2 11 2 1 2 5 7 0.00000e+00 -2.00000e+00 0.00000e+00 1.00000e+00 -0.50000e+00 1.00000e+00 3 4 1 2 Curvilinear and rectilinear descriptions for block parts are of course also valid. This same file using ghost cells is: Uniform Block Continuation Test - set 3 ======================================= node id assign element id assign extents 0.00000e+00 1.00000e+00 -5.00000e+00 1.00000e+00 0.00000e+00 5.00000e+00 part 1 horizontal block uniform with_ghost range 2 2 6 1 2 1 2 0.00000e+00 0.00000e+00 1.00000e+00 1.00000e+00 1.00000e+00 1.00000e+00 ghost_flags 1 0 1 part 2 2 5 Page 75 HOW TO USE BLOCK CONTINUATION vertical block uniform with_ghost range 2 11 2 1 2 4 0.00000e+00 -1.50000e+00 0.00000e+00 1.00000e+00 -0.50000e+00 1.00000e+00 ghost_flags 1 0 0 1 8 1 2 Transient Example If we change our example to be a simple transient model, using the same sets, but now with two time steps: set_1_00.case set_2_00.case set_3_00.case set_4_00.case set_5_00.case set_1_00.geo set_2_00.geo set_3_00.geo set_4_00.geo set_5_00.geo set_1_00.scl set_2_00.scl set_3_00.scl set_4_00.scl set_5_00.scl set_1_01.case set_1_01.geo set_1_01.scl set_2_01.case set_2_01.geo set_2_01.scl set_3_01.case set_3_01.geo set_3_01.scl set_4_01.case set_4_01.geo set_4_01.scl set_5_01.case set_5_01.geo set_5_01.scl The contents of the first of these casefiles (set_1_00.case) would now look something like: FORMAT type: ensight gold GEOMETRY model: 1 set_1_**.geo VARIABLE scalar per node: 1 set_1_**.scl TIME time set: 1 number of steps: 2 filename start number: 0 filename increment: 1 time values: 0.0 1.0 changing_coords_only With the contents of each of the other casefiles differing only in the digit following the first underscore. To “cluster” these as described (two sets in the first case and 3 sets in the second case), we would need to create the following two casefiles. cluster_1.case, would contain: FORMAT type: ensight gold GEOMETRY model: 1 set_%_**.geo VARIABLE scalar per node: 1 set_%_**.scl TIME time set: number of steps: filename start number: filename increment: time values: BLOCK_CONTINUATION number of sets: filename start number: filename increment: changing_coords_only 1 2 0 1 0.0 1.0 2 1 1 cluster_2.case, would contain: Page 76 HOW TO USE BLOCK CONTINUATION FORMAT type: ensight gold GEOMETRY model: 1 set_%_**.geo VARIABLE scalar per node: 1 set_%_**.scl TIME time set: number of steps: filename start number: filename increment: time values: changing_coords_only 1 2 0 1 0.0 1.0 BLOCK_CONTINUATION number of sets: filename start number: filename increment: 3 3 1 And we could then use the same SOS casefile that we showed in the static example. SEE ALSO How To Use Server of Servers How To Read Data User Manual: EnSight Gold Geometry File Format Page 77 HOW TO USE RESOURCE MANAGEMENT Use Resource Management INTRODUCTION Resources are used to specify which computers are used for running the various EnSight components, specifically the Server (ensight100.server), the SOS (ensight100.sos), the CollabHub (ensight100.collabhub), and the distributed renderers (ensight100.client). If you are running a single client and server on a single computer, you may skip this document. Resources are an alternative way to specify these computers compared to SOS case files, PRDIST files, Connection Settings, and command line options. While these other ways are still valid and take precedence for backwards compatibility, resources greatly simplify specifying computers in a dynamic network environment. For example, SOS Case files and PRDIST files no longer need to be edited to reflect the current node allocation from cluster batch schedulers. Resources coupled with native reader support in the SOS even make SOS Case files unnecessary. Resources can be specified via command line arguments and environment variables. Resources can be specified multiple times; precedence rules determine which resources ultimately get used. This allows sites to specify defaults while allowing those to be overridden. NOTE: While resources can still be specified according to this document, the entire resource management support is moving to the newer technology called “cei-shell”. BASIC OPERATION Resource Files Resources can be specified via a resource file. Here is an example of a resource file: #!CEIResourceFile 1.0 SOS: host: localhost SERVER: prologue: “setup_job” epilogue: “cleanup_job” host: server1 host: server2 host: server3 host: server4 COLLABHUB: host: pc0 RENDERER: prologue: “setenv DISPLAY :0.0” # epilogue: host: pc1 host: pc2 host: pc2 Resource files must begin with the ‘#!CEIResourceFile 1.0’ line. Afterwards, they may have up to four optional sections: SOS, SERVER, COLLABHUB, and RENDERER. Each of the four sections contains one or more ‘host: hostname’ lines. These lines specify which computers to use for the corresponding section. ‘hostname’ must be an Internet/intranet routable host name or IP address. A given host name may appear on multiple lines within a section or in different sections. If it appears multiple times within a section, then that host will run multiple instances of the corresponding EnSight component if needed. Additionally, each section may have an optional ‘prologue: cmd’ line and/or an optional ‘epilogue: cmd’ line. These specify a command to execute on each host before and after the corresponding EnSight component. Note that the cmd string must be quoted, and may include appropriate job backgrounding symbols (e.g. ‘&’). At version 2.0, the resource file can accept an optional ‘shell:’ line, like: #!CEIResourceFile 2.0 SOS: host: bunker shell: "/usr/local/bin/ssh" Page 78 HOW TO USE RESOURCE MANAGEMENT Note the new version number (2.0) and that the shell line string must be double quoted. How to specify resources Resources can be specified via resource files, environment variables, and command line options. Precedence rules determine which resources will be used. Basically, the last occurrence of a resource section (e.g. SERVER) will be used in its entirety. For example, if multiple SERVER resource sections are found, only one will be used as determined by the precedence rules. Since the EnSight Client, SOS, and CollabHub start other EnSight processes, they can use resources. The EnSight Server and distributed renderers do not start other EnSight processes that require resources. While many ways exist to specify resources, in practice only one or two will be used given the particular user’s computational environment. Client Resources The EnSight client supports the following ways for specifying resources: 1. the ENSIGHT10_RES environment variable; 2. the ENSIGHT10_SERVER_HOSTS environment variable; 3. the ENSIGHT10_RENDERER_HOSTS environment variable; 4. the ‘-use_lsf_for_servers’ command line option; 5. the ‘-use_lsf_for_renderers’ command line option; 6. the ‘-use_pbs_for_servers’ command line option; 7. the ‘-use_pbs_for_renderers’ command line option; 8. the ‘-sosres file_name’ command line option; 9. the ‘-chres file_name’ command line option; and 10.the ‘-res file_name’ command line option. If multiple resources are specified to the client, then they will be evaluated in the order indicated above with the later methods taking higher precedence for a given section. The ENSIGHT10_RES environment variable specifies a resource file name that the client reads. ENSIGHT10_SERVER_HOSTS and ENSIGHT10_RENDERER_HOSTS specify quoted strings of space delimited host names (e.g. “host1 host2 host1 host3”) to be used for EnSight servers and distributed renderers, respectively. The host names are used in the order they occur. A host name may occur multiple times. If either the ‘-use_lsf_for_servers’ or ‘-use_lsf_for_renderers’ command line options are specified, then the client will evaluate the environment variable LSB_MCPU_HOSTS for the resources. The environment variable specifies a quoted string such as “host1 5 host2 4 host3 1” which indicates 5 CPUs should be used on host1, 4 CPUs should be used on host2, and 1 CPU should be used on host3. The hosts will be used in a round-robin fashion. If either of the ‘-use_pbs_for_servers’ or ‘-use_pbs_for_renderers’ command line options are specified, then the client will evaluate the environment variable PBS_NODEFILE for the resources. The environment variable specifies a filename in which the file contains list of line delimited host names that were allocated by the PBS scheduler. The ‘-sosres file_name’ command line option specifies the pathname to a resource file. This file name is passed to the SOS and processed by it; thus the file name must be accessible and readable by the ensight100.sos process. If multiple ‘-sosres’ options are specified, only the last will be used. The ‘-chres file_name’ command line option specifies the pathname to a resource file. This file name is passed to the CollabHub and processed by it; thus the file name must be accessible and readable by the ensight100.collabhub process. If multiple ‘-chres’ options are specified, only the last will be used. The ‘-res file_name’ command line option specifies the pathname to a resource file. This command line option can be specified multiple times. This might be useful when generating resource files dynamically: a single file might specify only a particular type of resource (e.g. SERVER or RENDERER). The last occurrence of a particular section takes precedence when multiple ‘-res’ options are given. Finally, a resource file may be selected in the File->Open dialog for the SOS to use. Page 79 HOW TO USE RESOURCE MANAGEMENT SOS Resources The EnSight SOS supports the following ways for specifying resources: 1. 2. 3. 4. 5. 6. 7. 8. resources gathered and sent from the client; the ‘-sosres file_name’ command line option; the ENSIGHT10_RES environment variable; the ENSIGHT10_SERVER_HOSTS environment variable; the ‘-use_lsf_for_servers’ command line option; the ‘-use_pbs_for_servers’ command line option; the ‘-res file_name’ command line option; and, a resource file specified via the File->Open dialog. If multiple resources are specified to the SOS, then they will be evaluated in the order indicated above with the later methods taking higher precedence for a given section. However, the SOS only uses SERVER section resources; the other sections are ignored. The ‘-sosres file_name’ command line option specifies the pathname to a resource file. If multiple ‘-sosres’ options are specified, only the last will be used. The ENSIGHT10_RES environment variable specifies a resource file name that the SOS reads. ENSIGHT10_SERVER_HOSTS specifies a quoted string of space delimited host names (e.g. “host1 host2 host1 host3”) to be used for EnSight servers. If the ‘-use_lsf_for_servers’ command line option is specified, then the SOS will evaluate the environment variable LSB_MCPU_HOSTS for the resources. The environment variable specifies a quoted string such as “host1 5 host2 4 host3 1” which indicates 5 CPUs should be used on host1, 4 CPUs should be used on host2, and 1 CPU should be used on host3. The hosts will be used in a round-robin fashion. If the ‘-use_pbs_for_servers’ command line option is specified, then the SOS will evaluate the environment variable PBS_NODEFILE for the resources. The environment variable specifies a filename in which the file contains list of line delimited host names that were allocated by the PBS scheduler. The ‘-res file_name’ command line option specifies the pathname to a resource file. This command line option can be specified multiple times. The last occurrence of a particular section takes precedence when multiple ‘-res’ options are given. Finally, a resource file may be selected in the File->Open dialog for the SOS to use. CollabHub Resources The EnSight CollabHub supports the following ways for specifying resources: 1. 2. 3. 4. 5. 6. 7. resources gathered and sent from the client; the ‘-chres file_name’ command line option; the ENSIGHT10_RES environment variable; the ENSIGHT10_RENDERER_HOSTS environment variable; the ‘-use_lsf_for_renderers‘ command line option; the ‘-use_pbs_for_renderers’ command line option; and, the ‘-res file_name’ command line option. If multiple resources are specified to the CollabHub, then they will be evaluated in the order indicated above with the later methods taking higher precedence for a given section. However, the CollabHub only uses RENDERER section resources; the other sections are ignored. The ‘-chres file_name’ command line option specifies the pathname to a resource file. If multiple ‘-chres’ options are specified, only the last will be used. The ENSIGHT10_RES environment variable specifies a resource file name that the CollabHub reads. ENSIGHT10_RENDERER_HOSTS specifies a quoted string of space delimited host names (e.g. “host1 host2 host1 host3”) to be used for EnSight distributed renderers. If the ‘-use_lsf_for_renderers‘ command line option is specified, then the CollabHub will evaluate the environment variable LSB_MCPU_HOSTS for the resources. The environment variable specifies a quoted string such Page 80 HOW TO USE RESOURCE MANAGEMENT as “host1 5 host2 4 host3 1” which indicates 5 CPUs should be used on host1, 4 CPUs should be used on host2, and 1 CPU should be used on host3. The hosts will be used in a round-robin fashion. If the ‘-use_pbs_for_renderers’ command line option is specified, then the CollabHub will evaluate the environment variable PBS_NODEFILE for the resources. The environment variable specifies a filename in which the file contains list of line delimited host names that were allocated by the PBS scheduler. The ‘-res file_name’ command line option specifies the pathname to a resource file. This command line option can be specified multiple times. The last occurrence of a particular section takes precedence when multiple ‘-res’ options are given. When using distributed rendering, any hosts specified via a prdist file are used instead of those given by RENDERER resources. Additionally, any prdist file specified directly to the collabhub, will override one specified to the client. A Client/Server Example Resources are not used to specify where a server runs when it is part of a normal client/server session. The default server connection in the Connection Setting dialog determines on which computer the server runs unless the Client command line option ‘-c connection_name’ is specified. A Simple SOS Example The SOS can read any of the supported file formats in addition to the SOS Case file format. When a SOS Case file is not used, then the number of EnSight Servers used is equal to the number of hosts specified in the SERVER resource section. 1. The following resource file ‘my_hosts.res’ is created: #!CEIResourceFile 1.0 SOS: host: borg SERVER: host: drone1 host: drone2 host: drone3 host: drone1 2. EnSight is started with this command line: ensight100 -res my_hosts.res -sos The EnSight Client will automatically check out a gold key and will run on the local workstation, the SOS (ensight100.sos) will be automatically started on computer ‘borg’ and will connect back to the client. Borg will need to recognize the name of the computer that the client is running on. 3. In the File->Open dialog the LS-Dyna file ‘d3plot’ is selected and the ‘Load All’ button is clicked. The SOS will start four EnSight Servers on computers ‘drone1’, ‘drone2’, ‘drone3’, and ‘drone1’ (presumably, ‘drone1’ might be a SMP). The ‘drone’ computers need to recognize the hostname borg in order to connect back to the sos running on this computer. Each of the servers will read 1/4 of the data set since the ‘Auto Distribute’ flag (on the SOS tab of the File->Open dialog) is on by default for the LS-Dyna reader. Another SOS Example 1. EnSight is started with this command line: ensight100 2. The Case->Connection Settings dialog is opened. On the ‘SOS’ tab, an entry for host ‘borg’ is created. For that entry, ‘Executable:’ is set to the name of command file ‘my_sos’, ‘Use default rsh cmd’ is deselected, and ‘Alt rsh cmd:’ is set to ‘ssh’. The entry is saved and EnSight is terminated. 3. The following resource file ‘my_hosts.res’ is created: Page 81 HOW TO USE RESOURCE MANAGEMENT #!CEIResourceFile 1.0 SOS: host: borg SERVER: host: drone1 host: drone2 host: drone3 host: drone1 4. On computer borg (assuming it’s running Unix or Linux), the file ‘my_sos’ is created: #!/bin/csh setenv ENSIGHT10_SERVER_HOSTS ‘cat $PBS_NODEFILE‘ ensight100.sos $* The file must be in the user’s default path and must be executable. 5. EnSight is started with this command line: ensight100 -res my_hosts.res -sos The EnSight Client will check out a gold license key and run on the local workstation, the command file ‘my_sos’ will run on computer ‘borg’ which must be able to connect back to the local workstation by hostname. The client will start up ‘my_sos’ via ssh. ‘my_sos’ sets the environment variable ENSIGHT10_SERVER_HOSTS to be the contents of the file specified by the environment variable PBS_NODEFILE (OpenPBS’ dynamic list of allocated nodes). 6. In the File->Open dialog the LS-Dyna file ‘d3plot’ is selected and the ‘Load All’ button is clicked. The SOS will start EnSight Servers on computers specified in file $PBS_NODEFILE. Hosts specified in the SERVER section of my_hosts.res are ignored since ENSIGHT10_SERVER_HOSTS takes precedence. Each of the servers will read 1/N of the data set since the ‘Auto Distribute’ flag (on the SOS tab of the File>Open dialog) is on by default for the LS-Dyna reader. A SOS Case File Example When a SOS Case file is used with resources, it needs to be modified otherwise the resources will be ignored for the EnSight Servers. This is done for backwards compatibility. 1. The file SOS case file ‘big_data.sos’ is modified. Two lines are added to the FORMAT section: ‘use_resources: on’ and ‘auto_distribute: on’. The ‘casefile: ‘ line for each server is brought to the beginning of each subsection. FORMAT type: master_server LS-DYNA3D use_resources: on auto_distribute: on SERVERS number of servers: 2 #Server 1 #--------casefile: d3plot machine id: executable: ensight100.server directory: /tmp login id: data_path: /tmp #Server 2 #--------casefile: d3plot machine id: executable: ensight100.server directory: /tmp login id: data_path: /tmp Page 82 HOW TO USE RESOURCE MANAGEMENT Note that the ‘casefile:’ line must appear before the other lines for that server when using resources. 2. The following resource file ‘my_hosts.res’ is created: #!CEIResourceFile 1.0 SOS: host: borg SERVER: host: drone1 host: drone2 host: drone3 host: drone1 2. EnSight is started with this command line: ensight100 -res my_hosts.res -sos The EnSight Client will run on the local workstation, the SOS (ensight100.sos) will run on computer ‘borg’. 3. In the File->Open dialog the SOS Case file ‘big_data.sos’ is selected and the ‘Load All’ button is clicked. The SOS will start two EnSight Servers on computers ‘drone1’ and ‘drone2’. Only two servers are used since two ‘casefile: ‘ lines occur in the SOS Case file. The ‘number of servers: 2’ line is ignored as are the ‘machine id:’ lines. Each of the servers will read half of the data set due to the line ‘auto_distribute: on’ in ‘big_data.sos’. Another SOS Case File Example 1. The file SOS case file ‘big_data.sos’ is modified. Two lines are added to the FORMAT section: ‘use_resources: on’ and ‘auto_distribute: on’. The ‘number of servers:’ line is modified. One server subsection is specified. FORMAT type: master_server LS-DYNA3D use_resources: on auto_distribute: on SERVERS number of servers: #Server 1 #--------casefile: machine id: executable: directory: login id: data_path: 4 repeat d3plot ensight100.server /tmp /tmp 2. The following resource file ‘my_hosts.res’ is created: #!CEIResourceFile 1.0 SOS: host: borg SERVER: host: drone1 host: drone2 host: drone3 host: drone1 2. EnSight is started with this command line: Page 83 HOW TO USE RESOURCE MANAGEMENT ensight100 -res my_hosts.res -sos The EnSight Client will run on the local workstation, the SOS (ensight100.sos) will run on computer ‘borg’. 3. In the File->Open dialog the SOS Case file ‘big_data.sos’ is selected and the ‘Load All’ button is clicked. The SOS will start four EnSight Servers on computers ‘drone1’, ‘drone2’, ‘drone3’, and ‘drone1’. Since the ‘number of servers:’ line has the word ‘repeat’, the servers specified in the SERVERS resource is used to determine the number of servers used and their host names. All server subsections after the first in ‘big_data.sos’ are ignored due to ‘number of servers: 4 repeat’. Each of the servers will read 1/4 of the data set since the ‘Auto Distribute’ flag (on the SOS tab of the File>Open dialog) is on by default for the LS-Dyna reader. A PRDIST Example 1. The following resource file ‘my_hosts.res’ is created: #!CEIResourceFile 1.0 SOS: host: borg SERVER: host: drone1 host: drone2 host: drone3 host: drone1 COLLABHUB: host: curly RENDERER: prologue: “xhost +” host: larry host: moe 2. The following prdist resource file ‘my_conf_with_res.prdist’ is also created: #ParallelRender EnSight 1.0 router pc client 3. EnSight is started with this command line: ensight100 -res my_hosts.res -prdist my_config_with_res.prdist The EnSight Client will run on the local workstation, the SOS (ensight100.sos) will run on computer ‘borg’. The EnSight CollabHub will run on computer ‘curly’. Two distributed renderers will start on hosts ‘larry’ and ‘moe’. The my_conf_with_res.prdist file here specifies both "router" and "client" followed by blank names which indicate to use the 'my_hosts.res' file. The "pc" option indicates to use parallel compositing which removes the GUI from the composited display NOTE: if "pc" is not specified, then a GUI will wrap the composited display - which is a testing and debug mode. In addition, no display sync will be used during interactive transformations, producing a lag effect which is quite annoying. 4. In the File->Open dialog the LS-Dyna file ‘d3plot’ is selected and the ‘Load All’ button is clicked. The SOS will start four EnSight Servers on computers ‘drone1’, ‘drone2’, ‘drone3’, and ‘drone1’ (presumably, ‘drone1’ might be a SMP). Each of the servers will read 1/4 of the data set since the ‘Auto Distribute’ flag (on the SOS tab of the File>Open dialog) is on by default for the LS-Dyna reader. Page 84 HOW TO USE RESOURCE MANAGEMENT Note that a prdist file can be specified as an option to the ‘-prdist’ command line option. However, if the defaults are adequate or overridden with command line options, then a prdist file is no longer needed. Furthermore, specifying the command line option ‘-prdist’ automatically implies the command line option ‘-sos’; previous versions required the user to specify it. Chapter 11 Distributed Memory Parallel Rendering of the User Manual for prdist file documentation, including default values and manual connect support. OTHER NOTES Chapter 8 Resource File Format of the User Manual for details on the resource file syntax. See the EnSight User’s Guide for details on relevant SOS Case file modifications as they pertain to resources. Also, see that section regarding details on which file formats support auto distribution. Note that not all Case files (i.e. nongold) can be auto distributed. The default SOS and server entries in the Connections Setting dialog will be used as the template for SOS and server computers not specifically listed in the dialog. This is useful for specifying defaults such as to use ‘ssh’ in place of ‘rsh’ or to specify a default path. SEE ALSO How To Read Data How To Read User Defined How To Setup for Parallel Computation User Manual: Resource File Format Shared-memory parallel rendering Distributed Memory Parallel Rendering Page 85 操作指南:保存 / 恢复归档文件 Save or Output 保存 / 恢复归档文件 简介 EnSight 命令文件用于将系统恢复至先前的会话状态。然而,若要恢复一段很长的会话,则会因处理大量文件而很费 时。为此, EnSight 提供了一种归档机制,仅需保存系统的当前状态,而非整个会话过程。 该功能不仅对含有多个激活变量的大数据文件有益,而且有助于保存标准的会话起点。在初始会话中,加载几何体、 激活变量、选择视口、写归档文件,而最终会话状态仅需通过加载归档文件来获取 (可在使用命令行启动 EnSight 时 执行)。 客户端和服务器端都分别写二进制文件,该文件包含各自进程的完整当前状态。因为这些文件为二进制的,所以可以 被快速地写入和恢复。注保存 / 恢复归档文件:归档文件仅包含驻留在客户端或服务器存储器内的信息,获取不到未 激活的变量或非当前时间步的信息。鉴于此,永远不可删除原始数据。 基本操作 EnSight 归档文件由三个文件组成: 1. 归档信息文件。该文件为客户端和服务器归档文件提供指针,还提供加载归档文件所需的附加信息。下面的高级应 用中有具体示例。 2. 客户端归档文件。客户端的二进制转储文件。 3. 服务器归档文件。服务器的二进制转储文件。 (注:SOS 模式下,会有一个 SOS 归档文件,并且每个服务器都有各自的服务器归档文件) 尽管各文件均有默认位置,但在归档过程中,均可被覆盖。 保存归档文件 1、关闭所有打开的 EnSight 窗口,仅留下主窗口。 2、在主菜单中点击文件 > 保存 > Full Backup... 打开 " 保存归档文件 " 对话框。 2、输入新的归档信息文件名,点击右侧的 " 选择文件名 …" 按钮打开 " 文件选择 " 对话框,为归档 信息文件设置存储目录。 3、选择客户端二进制转储文件的存储目录,在 " 客户端保存目录 " 输入框内手动键入存储目录,或 点击右侧的 " 选择目录 …" 按钮打开 " 文件选择 " 对话框。 4、选择服务器二进制转储文件的存储目录,在 " 服务器保存目录 " 输入框内手动键入存储目录,或 点击右侧的 " 选择目录 …" 按钮打开 " 文件选择 " 对话框。 5、点击确定。 Page 86 操作指南:保存 / 恢复归档文件 也可在退出 EnSight 时保存归档文件。 1、点击文件 > 退出 … 打开 " 确认退出 " 对话框。 2、勾选 " 保存归档文件至:",直接键入归档文件名,或 点击 " 浏览:" 按钮选择所需存储的目录。 3、若浏览文件,在选择目录并键入合适的文件名后点击 保存。 此时,文件名将呈现于 " 确认退出 " 对话框中。 3、点击确定将保存归档文件,并退出。 Page 87 操作指南:保存 / 恢复归档文件 恢复归档文件 归档文件可随 EnSight 启动一同恢复,也可在会话中恢复。在 EnSight 启动时恢复: 1、在启动 EnSight 时使用 "-ar archive_info_file" 选项。如: % ensight100 -ar load.ar 此处的 load.ar 为先前会话中保存的归档信息文件。 在会话中恢复: 1、点击文件 > 恢复 > Full Backup... 打开 " 文件选择 " 对话框。 2、选择所需恢复的归档文件,点击打开。 3、若初始 (归档文件保存时)为手动连接,将需要手动重启服务器。 高级应用 若想在不同的机器上使用归档文件或更改二进制转储文件的位置,此时,需要修改归档文件的内容,可以使用文本编 辑器来对其进行编辑。下面的例子显示了具体内容: 保存日期 客户端二进制文件路径 注释 案例内部编号 案例名称 连接类型 (自动或手动) 服务器主机 服务器可执行文件 服务器数据目录 备选服务器登录 ID 服务器二进制文件路径 Wed Apr 2 15:31:51 1997 client ./ensight0402_153151.clientbkup # server for Case ‘Case 1’. **Warning Don’t Modify The Internal Number**. case_internal_number 0 case_name Case 1 case_connect_type auto case_connect_machine indigo2 case_connect_executable /usr/local/bin/ensight/server/ensight.server case_connect_directory /usr/people/joe/data case_connect_login_id server ./ensight_c1_0402_153151.serverbkup 注:对于 EnSight 会话中当前的每个案例,会有一节专门介绍所有的案例变量。详见 操作指南:加载多组数据集 。 其他说明 重要说明!归档文件通常不能向上兼容 EnSight 新版本以及一些低版本。为此,完整的命令文件也作为客户端二进制 转储文件的一部分被保存。恢复归档文件时,若 EnSight 确定该归档文件与当前版本不兼容,则命令文件将被恢复至 默认位置,通过执行该命令文件来重新获取会话状态。 另请参见 用户手册:Saving and Restoring a Full backup Page 88 操作指南:记录 / 运行命令文件 记录 / 运行命令文件 简介 绝大多数功能强大的软件系统都有内置语言,用来补充和增强图形用户界面的功能。 EnSight 也不例外,任何鼠标或 键盘执行的操作均在 EnSight 命令语言中生成副本。可在会话期间保存命令,使得重复或繁琐的任务实现自动化。命 令文件可在启动 EnSight 时自动执行将系统初始化至所需状态,也可绑定到键盘上用户自定义的宏键来执行。 基本操作 在 EnSight 会话期间,所有操作均记录并保存至默认的命令文件中。该文件名一般以 "ensight_" 开头,在 UNIX 系统 下保存至 /usr/tmp,在 Windows 系统下保存至 C:\Documents and Settings\ \Local Settings\temp (除非 TMPDIR 环境变量被重新定义)。命令文件也可在退出 EnSight 时保存 (并重命名)。 记录命令 记录命令的步骤: 1、点击 " 文件 > 命令 …" 打开 命令对话框。 2、勾选 " 记录 " 按钮。 3、弹出 " 文件选择 " 对话框。 选择或键入用以保存命令的 文件,点击保存。 4、若想停止记录,关闭记录按 钮。 注:只要记录的文件名保持相同,记录按钮可随 时开关,向文件中添加更多的命令。 选择新的记录文件时,该文件中的已有命令将被 覆盖。 Page 89 操作指南:记录 / 运行命令文件 运行命令文件 运行命令文件的步骤: 1、点击 " 文件 > 命令 …" 打开命令对话框。 2、点击 " 加载 " 输入框后面 的 " 浏览 " 按钮。 3、弹出 " 文件选择 " 对话 框,选择所需载入的命令 文件,点击打开。 将载入命令文件,命令以黑 体显示,位于历史窗口中绿 色当前行指示器的下方。 4、点击运行按钮。 执行后的命令将显示为灰 体,位于当前行指示器的 上方。 可通过 VCR 样式的按钮来控 制命令的执行: 停止, 开始, 单步运行 一旦运行中止,可使 用 " 跳过 " 按钮来跳 过该行命令。 运行速度可使用 " 速 率 " 滑块来控制。 Page 90 操作指南:记录 / 运行命令文件 启动时运行命令文件 可以将命令文件作为 EnSight 启动时的一部分来执行,当启动 EnSight 时,使用 "-p command_file" 选项,例如: % ensight100 -p redo.enc 其中 redo.enc 为先前的会话中保存的命令文件。 高级应用 命令文件为简单的 ASCII 文本,可使用文本编辑器来编辑。每执行一种操作,均会在命令对话框中当前行的上方新增 一行命令,据此,可以很容易地确定指定操作所对应的命令。记住:命令执行的成功与否,取决于执行时的恰当状 态。例如,在母部件 (参考部件编号)不存在时创建部件将会导致错误。 命令文件可嵌套:若某文件执行一个特定任务,可通过 "play:filename" 命令来 " 调用 " 该命令文件,当执行 play: 命令 时,正在运行的命令文件将以不同的颜色在历史窗口中展开,位于当前命令行指示器的下方。勾选 " 展开所有执行文 件 " 将展开所有执行文件。当有执行文件嵌套时,命令将分别显示为红、黄、绿、蓝和黑色。 "exit:" 命令表示退出 EnSight。 "interrupt:" 命令表示暂停执行命令文件,并打开命令对话框。 可在退出 EnSight 时,保存当前会话的命令文件,也可使用文件 > 保存 > Command from this session... 来保存截止 点之前的命令。 命令语言可用来生成宏。参见操作指南:定义和使用宏。 除了命令文件和宏之外,也可通过该对话框访问 python 界面,这在接口指南中有详细介绍。 (see Chapter 6.1, Python EnSight module interface) 其他说明 在 EnSight 使用过程中 , 命令文件是用来反馈问题或 Bug 的好方法。可将命令文件发送至 CEI 以帮助确定问题所在。 另请参阅 操作指南:定义和使用宏 用户手册: Command Files 接口手册: Python EnSight module interface Page 91 操作指南:打印 / 保存图片 打印 / 保存图片 简介 图形窗口中显示的图片可以多种格式保存或打印,如 JPEG、 TIFF、 RGB (SGI)、 XPM、 PNG、 PPM 等图片格式。 格式:Apple QuickTime、 EnVideo、 MPEG1、 MPEG2、 MPEG4、 AVI、 Macromedia Flash Video、 Macromedia Flash、 Animated GIF 均支持流媒体。 PostScript 格式支持图片、动态图像 (move-draw)以及 EPSF。 POVRAY 格 式将场景中的几何体保存为可用 POVRAY 离线渲染包读取的格式。 以下为 保存动画的步骤 基本操作 静止图像基本操作 1、点击文件 > 输出 > 图像 … 2、点击 " 设置格式 …" 选择所需输出的格式,并设 置格式选项。 (参见下文中的 更改保存文件的格式 ) 3、设置文件名以保存图片。 点击 " 路径选择 …",打开 " 文件保存 " 对话框。 4、设置各种选项: " 转换为默认打印色 " 选项将屏幕反色。例如:背景将 由黑色变为白色。 " 仅显示曲线图 " 选项将只打印窗口中的曲线图。 5、点击展开高级选项。 " 高级 " 部分包含以下选项: 分辨率:" 当前窗口 " 选项表示选取与当前窗口同 等大小的窗口。 " 全屏 " 表示整个屏幕大小,其他选项选择不同 的 NTSC 和 DVD 标准。 " 用户自定义 " 选项允许用户设置任意大小。 注:渲染的图片没有大小限制,但有些格式不 能处理非常大的图片。当尺寸很大时, EnSight 可能需要在多通道中渲染场景,这将降低渲染 速度。 渲染至屏幕外缓冲区:EnSight 支持 " 双缓冲 " 技术,可以使用屏幕外的 OpenGL" 缓冲区 "。 保存多个图片:该选项表示 EnSight 基于分离显示保存 MTM 文件。 渲染次数:设置多通道反锯齿的次数:值越大,质量越高。 立体:当前场景可在立体中呈现,尽管当前硬件没有立体功能。 " 当前 " 为默认设置,至于是立体还是平面显示,取 决于当前显示模式。平面表示单张图片,立体则表示左右眼图片立体。其他选项用于保存双色立体图片 (用红 / 青或其他眼镜观看)。 屏幕拼接:若此处的值不为 1,图片将存为 MTM 文件,其值表示保存的图片将被分为 X 和 Y 方向的数量。 6、点击确定 (或打印)将保存或打印图片。 Page 92 操作指南:打印 / 保存图片 保存动画 当前的关键帧、动画书、粒子追踪或瞬态数据动 画可通过下列步骤存盘: 1、使用 " 录制 " 按钮打开 " 保存动画 " 对话框 2、选择保存的文件格式 (参见下文的 更改保存文件的格式 ) 3、为该动画设置文件名。 点击 " 路径选择 …",打开 " 文件保存 " 对话 框。 4、对于各种类型的动画 (动画书、 瞬态数据、粒子追踪),设置在 保存过程中是否播放动画;在保 存操作执行前是否复位至初始状态。 5、设置动画的帧数。 6、设置高级选项。 " 高级 " 部分包含以下选项,这在上文的保存 图片部分有详细介绍。 7、点击 " 确定 " 开始录制动画。 在主窗口的信息区会显示录制进度。在录制过 程中,可敲击键盘上的 "A" 键来终止录制。 详见 EnSight 的关键帧动画和 动画书 功能。 Page 93 操作指南:打印 / 保存图片 更改保存文件的格式 点击 " 设置格式 …" 按钮,打开 " 格式选择 " 对话框,根据特定文件 格式设置选项,随后的操作都将使 用该格式。这里展示的是基本对话 框,所选格式的特定选项显示在对 话框的右侧,点击 " 确定 " 按钮选 择新格式。 文件格式实际上由 UDIL 插件提供。 用户也可以设置自己的格式,但是 EnSight 可用的格式均列于此。 常规选项 多种 (非所有)格式使用一系列常规选项。以下这些都显示在对话框右侧的顶部,包括: · 彩色 / 黑白:选择输出黑白图像或彩色图像。 · 饱和因子:设置彩色图片的饱和因子,完全饱和为 1.0,完全不饱和 (即:白色)为 0.0。 · 帧率:绝大多数动画格式需要设置帧率 (每秒播放帧数, fps)。通常,默认为 30 帧 / 秒。 PostScript 格式 ostScript 格式处理图元时,要么通过精确的绘图指令 (如:移动、画线、填充区域),要么通过采样的图片 (像素数 据),两种方法各有利弊。 移动 / 绘制输出与分辨率无关,将只复制细线和文字。即使是低分辨率的打印机,其分辨率也会是图形工作站 (点阵 / 英寸)的 3-4 倍。移动 / 绘制 PostScript 通常会产生更高质量的输出。然而,对于大模型,输出文件肯定会非常大 (即使打开可见性筛选),打印速度也会变慢。 相反,图片或像素 PostScript 保存图形窗口中图片的像素。这样的图片分辨率是固定的。当打印时,像素将自动缩放 以适应页面。由于打印机的分辨率高于屏幕分辨率,所以每个打印的像素均大于其在屏幕上显示的,从而导致像素可 见和边缘锯齿。要改善 PostScript 输出的图片质量, EnSight 将仅以像素打印三维几何体 -- 其余对象 (注释文字、颜 Page 94 操作指南:打印 / 保存图片 色图例、曲线图)将作为移动 - 绘制指令输出,并与图片叠加。 对于 EPS 格式的 Postscript,以及嵌入的窗口预览图片 (仅用于导入到 Windows 应用程序 - 参见下文中的 其他说 明 ),还存在其他选项。 单元可见性可用来减少 Postscript 输出中图元的数量。 细分选项用来细分几何以输出平滑的颜色和底纹。 输出方向可选择纵向或横向。 通过页面比例因子来缩放页面。 POVRAY 几何格式 POVRAY 文件格式无任何选项。 AVI 格式 注:AVI 文件为电影、音频、影像及其他数据类型的微软标准格式,是基于 "RIFF" 核心的文件格式。 该格式的选项在 Unix 和 32 位 Windows 系统中有所不同。对于 Unix 和 Windows 64,压缩选项仅为 "MJPEG"、 "RAW" 和 "MPEG4",其他唯一选项即给 MJPEG4 压缩方法设置最大比特率。而在 Win32 下,系统安装的 AVI 解码 器将被列为压缩选项,随同选项一起来指定关键帧速率、通用质量因子 (0-100)以及以特定比特率 (单位:千比特 / 秒)。 哪怕再小的动画,未经压缩的 AVI 文件都很大。可使用 EnVe 4.0 实用工具在将这些文件进行压缩。 EnVe 可读取 AVI 文件 (或 EnSight 输出的任何动画文件),并将其转换为其他格式,包括重压缩任何 AVI 文件。 在平台移植时, AVI 文件格式可能存在问题,因为压缩方法并不支持所有系统。 MJPEG 方法支持的相当不错 (Windows 用户需要安装最新的 DirectX 运行库), RAW 格式在某些系统上限制大小为 640x480。总之, Indeo Video 格式 (例如:IV41)和 CVID 兼容性相当好,可以在苹果机的 QuickTime 播放器上运行。 Windows BMP 格式 这种格式无其他特殊选项 (除了 常规选项)。 Page 95 操作指南:打印 / 保存图片 EnVideo 格式 这种格式的优点是可以无缝地支持立体图像流。它有一个无损压缩选项,对于归档动画 (archival)和原始动画 (original), CEI 推荐使用该格式输出。可使用 EnVe 工具将 EVO 文件转化为其他格式,且不会降低图像质量。其他 格式不具备该功能。 有四种压缩选项: RAW- 无损的,无压缩,生成的文件非常大。 RLE - 无损的,游程编码图像。 GZ - 无损的,使用 "zlib" 压缩方法,能较好的平衡处理器。 JPEG - 使用 " 质量 " 选项 (0-100)的有损压缩。拥有最佳的压缩率,但牺牲了画面质量。 GIF 格式 这种格式适用于简单的、低质量的网页输出。绝大多数浏览器无需任何插件便可自动播放 .gif 动画。这种格式仅限 256 种颜色,所以图片质量较差,尤其对于平滑阴影图片。可使用较高的压缩率。 选项包括: 循环次数:设置动画循环的次数。 交错视频:网络连接速度较慢时,优化逐帧显示。 透明值:将图片中特定 R、 G、 B 值 (0-255)的像素设为 " 透明 "。例如:设置为 (0,0,0)将导致动画中所有黑 色的像素均透明,均设为 -1 表示无像素透明。 Page 96 操作指南:打印 / 保存图片 JPEG 格式 这是一种兼容性很好,但失真的压缩格式。仅有一个抽象的 " 质量 " 设置选项,用来控制压缩率 (0-100)。 . MPEG1/MPEG2/MPEG4 格式 MPEG 是一个兼容性非常好的标准动画格式。 MPEG1 文件兼容性最好,MPEG2 本质上是基于 DVD 的,它需要播放 器解码器的授权才能播放 (尽管绝大多数 DVD 播放器均包含必要的授权解码器)。 MPEG4 基于 QuickTime 和 WMV 格式,到目前为止它的兼容性还不是非常好,但是在同一带宽下,它提供的质量较 MPEG1 和 MPEG2 要高。 MPEG 有两个选项,可设置特定的 MPEG (1/2/4)子型,以及目标比特率 (单位:千比特 / 秒)。 Page 97 操作指南:打印 / 保存图片 PNG 格式 PNG 格式是一种许多操作系统和大多数网页浏览器均支持的无损图像格式。 它仅有一个压缩方法选项,整体压缩率越高,计算复杂性越大。 PPM 格式 PPM 格式是一种常见的 Unix 无损图片格式,包含全彩像素图 (PPM)、灰度图 (PGM)以及位图 (PBM) … 允许文件格式为二进制或 ASCII。 Page 98 操作指南:打印 / 保存图片 QuickTime 格式 这是苹果 Mac 系统和 Windows 系统上流行的一种动画格式。该播放器可作为 iTunes 包的一部分从 www.quicktime.com 上下载。 EnSight 并不支持 QuickTime 的所有解码器,仅支持基于 MPEG4 的压缩方法。 . 比特率选项设置目标流率 (单位:千比特 / 秒)。存在一个压缩方法选项,但此时只能选择 MPEG4。 SGI RGB 格式 这种格式无特殊选项 (除了 常规选项)。 LLNL SM 格式 这种格式由劳伦斯 . 利弗莫尔国家实验室发明,专门支持具有动态平移 / 缩放功能的大拼接显示。该格式的播放器包 括 xmovie 和 blockbuster (blockbuster.sourceforge.net)。 该格式为内部拼接,在同一文件中包含多种分辨率的动画。 . 选项包括: 压缩:Raw、 GZ、 JPEG 和 RLE,与 CEI EVO 格式类似。 质量:JPEG 质量设置。 拼接尺寸 (Tilesize):一个拼接的边缘尺寸。 256 使用 256x256 拼接,而 0 说明没有拼接 分解度 (Resolutions):含有的较低分辨率的动画数量。若原始动画为 640x480,且分解度为 2,则文件将包含的 动画为:640x480、 320x240 以及 140x120。 Page 99 操作指南:打印 / 保存图片 TIFF 格式 Tiff 格式兼容性很好,且不失真。 这种格式有一个选项,即压缩方法。所有支持的方法均无损耗。 XPM 格式 这是 Unix 系统下流行的一种格式,通常用于图标,也可用于其他任何图像。 在透明选项中,指定 R、 G、 B 值 (0-255),将图片中对应该值的像素设为 " 透明 "。例如:设置为 (0,0,0)将导致 动画中所有黑色的像素均透明,均设为 -1 表示没有像素透明。 高级应用 有一些优秀的免费的图像处理工具,如:ImageMagick,它可在各种平台上编辑图片和动画 (载入图片序列),详情 请访问 http://www.wizards.dupont.com/cristy/ImageMagick.html for more information. GIMP 是最为流行的交叉平台工具之一,该工具拥有几乎 Photoshop 的全部功能,且可以读写所有 EnSight 可以读写 的图像格式,在 Linux 系统下通常默认安装,但也支持 OSX、 Windows 和其他操作系统。 Page 100 操作指南:打印 / 保存图片 其他说明 几乎所有桌面出版、页面布局或文字信息处理器均允许输入封装的 PostScript 文件。 Mac 包基于四字节编码的显式文 件类型识别文件 (与 UNIX 不同,不含内部文件类型)。此编码并非存储于文件本身,而是在一个 " 信息文件 " 中, Finder (Mac 系统)用它来处理文件。 EPS 文件通过 "EPSF" 编码识别,设置此编码的方法有多种,诸如 "fetch" 这 样的文件传输工具可以在传输过程中设置编码。 "FileTyper" 工具可直接用来编辑 Finder 信息文件。这些文件类型必 须设置正确,否则应用程序将拒绝识别 EPS。发送邮件至 fetch@dartmouth.edu 以获取更多关于 fetch 的信息。 EPS 文件通常包含 " 预览图像 ",允许输入的应用程序显示实际图形的副本,以便实现定位、缩放或剪切的交互。指 定该图像有不同的方法 (如:Mac 系统下 PICT 资源或 Windows 系统下的 TIFF 文件)。但是若通过 Windows 系统 下的 TIFF 文件指定预览图像,则 EnSight 将无法将其导入 Mac 应用程序。导入 EPS 文件时,大多数 Mac 应用程序 将显示为灰色框。然而,仍然可以调整和定位图像,且打印功能正常。 EnSight 还可以附加 Windows 应用程序能够使 用的预览图像。启用 " 图片格式选项 " 对话框中的 "Windows 预览功能 ",结果文件将以 ".EPS" 作为后缀。 不要尝试向打印机发送包含图像预览的 PostScript 文件。 附加说明: 1、文件保存或打印均在客户端机器执行 -- 而非服务器端。 2、打印机命令不应该包含文件名。例如:若正常打印 "lpr-Plaser1 file.ps" 文件,在 " 输出至打印机的命令 " 输入框内 键入 "lpr -Plaser1" 即可。 3、若勾选 " 转换至默认打印色 ",所有视口的背景色均改为白色,其他任何当前为纯白色 (RGB=1,1,1)的对象 (部 件、视口边界、注释等)均将改为黑色。 打印质量控制 -- 仅用于 Windows 版本的打印对话框 注:下拉菜单允许更改打印质量。越往 下,打印的图片质量越高,但会导致打 印速度变慢。 另请参见 用户手册: Saving Graphic Images Page 101 操作指南:保存几何实体 保存几何实体 简介 EnSight 可以不同的格式输出几何数据和变量值, EnSight 自带一些格式 (如:Brick of Values、 Case (EnSight Gold)、 VRML、 Flatfile 等),也允许用户编写自己的写出程序作为动态共享库,在运行时载入。 基本操作 将部件保存为 EnSight Gold 或 VRML 格式 1、点击文件 > 输出 > 几何实体 … 2、选择所需输出格式 3、根据提示操作。 4、键入文件根名。 5、若为瞬态数据,请指定 开始时间步、结束时间 步和步长。 仅适用于 EnSight Gold: 6、选择是否另存为二进制文件。 7、若为瞬态数据,可选择在单个文件 (一个变量对应一个文件)中保存多个时间步。若勾 选该选项,可指定最大文件的大小。 8、点击确定。 写出程序仅访问所选部件的几何以及每个激活状态的变量。对于除了 VRML 之外的所有写出程序,只可保存位于服务 器上的部件,这包含了所有模型部件,以及许多子部件 (如:二维剪切、提升面、展开面、等值面)。 VRML 写出程序保存所有客户端的可见部件 (除了边值处理为透明的部件)。 VRML 文件将保存于客户端。 EnSight 格式输出的目的是提供一种保存模型部件和子部件 (含有激活状态的变量)的方法,以便以后再用。 VRML 输出的目的是输出至其他系统。 绝大多数网页浏览器均可查看 VRML 文件。 EnSight 基于不同的格式保存部件有一定的差异 . Case (EnSight Gold) VRML 保存哪些部件? 主部件列表中当前选中的所有部件 (除了下文中所提到的那些) 所有可见的部件 从何处保存? EnSight 服务器 EnSight 客户端 哪些部件不可保存? 基于客户端的部件:等值线、矢量箭头、粒子追踪、剖面图 Page 102 操作指南:保存几何实体 数据存为 Brick of Values 格式 1、点击文件 > 输出 > 几何实体 … 2、选择 Brick of Values 格式。 3、根据提示操作。 4、选择所需保存的变量。 5、若变量为矢量,选择所 需分量。 6、设置采样分辨率。 7、选择采样格式 (字节程 序块或浮点程序块)。 8、键入文件根名。 9、点击确定。 字节程序块和浮点程序块为体渲染代码提供接口。 点击确定按钮时,所选部件将使用方框工具的边界和方向离散成所设置的分辨率 (x/y/z 分辨率分别为方框工具的 x/y/ z 方向)。 对于字节程序块 (BoB)格式, 0 值表示未定义 (即:离散点上没有任何变量信息), 1 值表示所选变量的值小于等 于调色板的最小值, 255 值表示大于等于调色板的最大值。 对于浮点程序块 (BoF)格式,未定义的值可在对话框中指定。 BoB 和 BoF 文件没有任何元数据写出 -- 仅写出离散点的值。数据命令遵照下列伪代码: num_values = 0 for(z=0; z 输出 > 几何实体 … 2、选择所需输出格式。 3、根据提示操作。 4、若写出程序接受参数, 在参数输入框内键入所 需参数。 5、键入文件根名。 6、选择是否另存为二进制 文件。 7、若为瞬态数据,请指定 开始时间步、结束时间 步及步长。 仅适用于 EnSight Gold? 6、选择是否另存为二进制文件。 7、若为瞬态数据,可以选择在单个文件 (一个变量对应一个文件) 中保存多个时间步。若勾选该选项,可指定最大文件的大小。 8、点击确定。 用户自定义写入程序 (writer)可调用 EnSight API 进行检索,例如:通过给部件窗口中所选部件的节点坐标、节点 编号和单元编号赋值,可将其以任何格式写出。 " 用户自定义写入程序 " 对话框包含一个参数输入框,允许从 GUI 写 入文本信息。该文本可以包含编程者获悉的额外命令选项。 在 C:\Program Files\CEI\ensight100\src\writers 目录下有几个示例程序 (包含源代码头文件、生成文件及相应的共享 库)用以证明该功能。 其中的 Case (Gold)精简版写入程序 (writer)用来演示如何操作绝大多数的 API 并且输出 Case (Gold)格式子 集。该写出程序不支持复数和自定义 Gold 格式。 Case (Gold)程序忽略参数输入框。虽然程序未编译,但包含该程 序的源代码、所需的头文件以及生成文件。 Flatfile 用户自定义写出程序 (writer)旨在显示所选部件的各种输出,包括节点数据 (坐标 & 编号)的输出,以及使 用较易导入其他应用程序的以逗号分隔符隔开的激活状态变量 (标量或矢量)的输出。若在参数输入框内键入关键词 "ANSYS" 或 "force" 或 "body", Flatfile 将输出一个 ANSYS body force 文件。 STL 用户自定义写出程序 (writer)旨在在开始时间步以所选部件的平面三角形单元形式写出边界几何,忽略结束时 间以及时间步长。 STL 格式不支持在单个二进制文件中含有多个部件,但是支持在单个 ASCII 文件中包含多个部件。 因此,若有多个部件被选中,并且选择 ASCII, STL 程序将输出一个含有各部件边界的 ASCII 文件;若多个部件被选 中,但是选择了二进制, STL 程序将输出一个包含多部件的单个边界的二进制文件。 STL 程序仅保存开始时间步,忽 略结束时间步和步长间隔输入框。 STL 程序忽略参数输入框。 Page 104 操作指南:保存几何实体 EnSight 基于不同的格式保存部件有一定的差异。 用户自定义写出程序 (UDW) 在用户自定义写出程序 (writer)中,哪些部 主部件列表中当前选中的所有部件 (除了下文中提到的那些) 件有效? 有效部件位于何处? EnSight 服务器 在用户自定义写出程序 (UDW)中,哪些部 基于客户端的部件:等值线、矢量箭头、粒子追踪、剖面图 件无效? 将来 EnSight 可实现绝大多数用户自定义写出程序 (writer)的并行。 高级应用 子部件 子部件存储为连接性 (connectivity)变化的几何体。若将一些非常大的静态模型部件,以及一些连接性不断变化的 子部件一起保存至 case gold 文件,则所有部件均将存为连接性变化的几何体 (因为变化的几何属性是全局的)。因 而,尽管大的静态模型部件没有变化,但是所有部件的整体几何文件在每个时间步均会被保存。此外,当该文件再次 被加载时,每个模型部件在每个时间步均被重构,这大大增加了磁盘占用空间、 I/O 以及更多的限制 (如:无法在时 间步间插值)。该情形的一个较好的解决方法为,单独将连接性变化的子部件保存为一个 case gold 文件,模型部件 存为一个单独的 case gold 文件,然后将其作为两个独立的案例加载至 EnSight。 刚体变换 当有刚体信息读入时 (通过 case 文件中的刚体选项、或带有刚体读取功能的用户自定义读取程序 (reader)), EnSight 会基于模型时间集执行一些特殊的操作,因此需要注意一些重要问题。 EnSight 假设刚体时间集包含正常的 几何时间集,且以刚体时间集取代正常的几何时间集。使用这些选项时,将会发生以下情形。 1、若存储任何子部件, EnSight 都会将其存为真实的变化坐标,即每一时刻都将保存一个包含各部件坐标的几何文 件。重新读取该模型时,虽可复制所有的操作,但是会将其作为真实的变化坐标的模型部件来执行。换句话说,原始 刚体文件属性不被复制。 2、若原始模型拥有静态几何以及刚体文件信息,且不需要保存任何子部件,则将会保存模型的单个静态几何体以及 刚体文件。然而,若原始模型拥有变化的几何,或变量已被激活,则若干几何 / 变量文件将根据刚体时间保存。刚体 时间中的时间步往往多于原始时间,所以需要注意输入的步数。通常也需要使用 " 步长间隔 " 选项来加以控制。 3、鉴于上述 1 和 2 中所提到的问题,若需要使用 EnSight 中的几何实体选项来将刚体模型从一个不同的格式 " 转化 " 为 EnSight 格式,建议执行以下步骤:第一,读入不含刚体变换的模型,激活所需变量,保存模型;第二,读入含有 刚体变换的模型,不激活任何变量,保存模型 (以不同的名称)。使用文本编辑器编辑第一个模型的 Case 文件,用 第二个 case 文件中的 model: 和 rigid_body: 命令行替代第一个 case 文件对应的命令行。 另请参见 用户手册: Saving Geometric Entities Readme 文件:$CEI_HOME/ensight100/src/writers/README.txt Page 105 操作指南:保存 / 恢复上下文环境文件 保存 / 恢复上下文环境文件 简介 nSight 上下文环境文件可用来复制当前 EnSight 状态至相同或相近的数据集。环境文件最好用在包含相同变量名和部 件的数据集中,当然也可用于其他情况。 基本操作 EnSight 上下文环境包含一系列文件:环境文件本身、相关的调色板文件、视图文件、关键帧动画文件。所有相关文 件的名称均相同,只是扩展名不同。 保存上下文 1、点击文件 > 保存 > Context... 打开 " 保存当前上下文 " 对话框。 2、选择 " 仅保存当 前案例 " 或 " 保 存所有案例 "。 3、键入文件名。 也可点击后面的 " 选择文件 …" 按钮 打开 " 文件选择 " 对话框,从而设 置上下文文件的 存储目录。 4、点击确定。 恢复上下文 三种方式: 1、启动 EnSight 并恢复环境文件,这将再现原始数据集的部件并恢复至保存时的状态。 2、启动 EnSight,读取新的数据集,取消部件载入,恢复环境文件,这将为新数据 (直接映射)创建部件并恢复原 始数据的上下文环境。 3、启动 EnSight,读取新的数据集,创建部件,恢复环境文件,这将执行部件映射 (直接的)并恢复原始数据的上 下文环境。 1、点击文件 > 恢复 > Context... 2、选择案例,将上下文环境 恢复至该案例。 注:若上下文环境文件包含 多个案例信息,则忽略该选 择。 3、键入或选择所需上下文 文件。 4、点击确定。 Page 106 操作指南:保存 / 恢复上下文环境文件 其他说明 新案例不需要与环境文件有相同的部件名 (及变量名),若该情况发生,将会弹出对话框,询问是否匹配新案例中的 部件名 (或变量名)与上下文环境文件中的部件名 (或变量名)。该对话框并不在批处理模式下显示,因此,不可在 批处理模式下使用需要匹配的上下文环境文件。若两个数据集中有多个部件匹配,部件将不再映射,并最终会重命名 以匹配原始案例。 当恢复含有多个案例的上下文环境文件时,将会根据 EnSight 当前运行的连接配置,启动其他所需案例。 动画书无法使用上下文环境文件恢复,因为在创建上下文环境文件时,并不知晓动画书是在何种状态存在时保存的。 若在恢复上下文环境文件之前没有数据读入,将会直接导入上下文文件保存时所用的数据。 上下文文件使用 EnSight 的命令语言和其他状态文件 (如调色板、视图及关键帧动画)来重建部件、变量和视图 状态。 另请参阅 用户手册: File Menu Functions Page 107 操作指南:保存场景文件 保存场景文件 简介 场景文件使用 CEI 的浏览器打开,可浏览 EnSight 显示的各种几何结构 (如:部件、注释、曲线图等),还可浏览动 画书、关键帧以及粒子追踪动画。 " 场景 " 定义了所有希望通过 EnLiten 或 Reveal 浏览的可见实体,还包括协助观测者加深理解的视图和注释。 基本操作 1、创建您想要与 EnLiten 或 Reveal 用户共享 的场景。 2、点击文件 > 输出 > 场景 … 打开 " 保存场景 " 对话框。 3、选择 " 单个文件 " 将仅保存场景 文件,选择 " 场景工程 " 将保存 场景、jpg 图像文件以及 EnSight 上下文文件。 4、选择 EnLiten (.els)或 Reveal (.csf)格式。 5、输入场景文件存储的名称 / 目录名。 点击 " 浏览 …" 按钮打开 " 文件 选择 " 对话框。 6、选择需要保存的部件,全部、可 见的或已选的。 7、点击瞬态 / 动画选项卡 选择动画书、关键帧、瞬态动画 或粒子追踪动画。 可选的选项取决于所选的文件输 出格式。 8、保存场景。 Page 108 操作指南:保存场景文件 高级应用 场景保存后,可额外添加视图及注释。 9、若要保存视图,点击视图选项卡。 10、变换至所需的视图位置。 11、命名该视图。 12、点击 " 保存当前视图 " 按钮。 也可重复第 10 步至第 12 步,保存多个视图。 13、若要保存注释,点击注释选项卡。 14、输入注释主题。 15、在文本框内键入注释内容。 16、点击 " 保存注释 " 按钮。 可重复第 14 步至第 16 步,保存多组注释。 Page 109 操作指南:保存场景文件 17、若格式选为 Reveal,则变量选项卡下的各 变量可存进场景文件。 18、若需将软件与场景文件打包,请选择输出 的操作系统,注:该列表仅反应当前运行 EnSight 的电脑上所安装的操作系统。 19、点击 " 保存场景为可执行文件 …" 打开存 储对话框,命名该文件,从而创建一个打 包软件的 .exe 文件。 其他说明 EnLiten 和 Reveal 仅为几何浏览器,如此一来,便不能创建或修改任何新的 / 已有的信息,如:变量信息、部件信息 或时间步变化信息 (仅对于 EnLiten)。 EnLiten 仅为几何浏览器,在保存场景文件时仅保存了关键帧信息,即:瞬态数据动画未保存 (需加载为动画书才可 保存)。 打包软件为其他用户简化了场景文件查看流程,他们不需要在自己的电脑上安装 Reveal 软件。打包文件为可执行文 件,它基于用户指定的计算机平台 (如:MS Windows, Linux 2.6),将 Reveal 软件包与场景文件封装到一起,用户 可简单地在自己的电脑上执行该文件,将会自动运行 Reveal 软件并打开内置的场景文件。注:一个特定的打包软件 文件,仅支持单一的计算机平台,而场景文件可被分配至任意版本的 Reveal 软件。 另请参见 用户手册: File Menu Functions Page 110 操作指南:保存 / 恢复会话文件 保存 / 恢复会话文件 简介 EnSight 会话文件是一个单一文件,用于恢复 EnSight 的状态,恢复会话文件时,当前案例被删除,会话文件中的新 案例被载入,并且恢复至保存时的状态。 基本操作 保存会话 1、点击文件 > 保存 > Session... 打开 " 保存会话 " 对话框。 2、若想在会话文件中包含下面文件目录中的内容 (即, 包含数据文件),勾选 " 打包数据 " (目的是实现 任意移植)。 3、点击 " 保存 " 按钮打开文件保存浏览窗口,命名会话文件 (使用 .ens 为后缀),点击 " 保存 "。 恢复会话 三种方式: 1、在 EnSight 启动时的欢迎界面上显示了近期打开的会话,双击某个会话将加载数据并恢复。 2、 Mac 和 Windows 用户可以直接双击 EnSight 会话文件 (以 .ens 为后缀),文件将被恢复。 3、在 EnSight 会话期间,可从 EnSight 主菜单下:文件 > 恢复 > Session... 浏览会话文件。 其他说明 若在已经载入数据时恢复会话, EnSight 将删除当前所有案例,启动一个新案例来恢复会话。 若恢复的会话文件包含多个案例信息,所有的案例都将恢复。 当恢复包含多个案例的会话文件时,将会根据 EnSight 当前运行的连接配置,启动其他所需案例。 动画书无法使用会话文件恢复,因为在会话文件创建时,并不知晓动画书是在何种状态存在时保存的。 所有的会话文件均不依赖机器和操作系统。然而,在未打包数据的会话文件中使用的数据文件必须保持相同的路径, 以便查找数据文件。相反,打包数据的会话文件包含了数据文件,因此可被移至不同的目录。但是打包数据的会话文 件会非常大。 会话文件不依赖机器和操作系统,然而,恢复平台必须包含所有必要的数据读取程序 (reader),以读取会话中包含 的数据格式。 另请参见 用户手册: File Menu Functions Page 111 操作指南:输出 POVRAY 文件 输出 POVRAY 文件 简介 EnSight 能输出 POVRAY 的文件格式 (光线追踪视觉暂留),这使得 EnSight 的图像可以有光线追踪提供的阴影和反 射。 POVRAY 软件必须单独从 (www.povray.org) 下载安装。 注:需要有 EnSight Gold 的授权,同时只适用于节点变量数据。 基本操作 其过程是: 1. 运行 ensight,在图形窗口生成所需图像。 2. 点击文件 > 输出 > 图像,将格式设置为 POVRAY Geometry,然后保存。 这样会生成以下文件 (在下面的其他数据一节中会给出例子): filename.pov filename.inc ensight_to_pov_globals.inc 3. 编辑 ensight_to_pov_globals.inc 来控制全局信息,也可编辑 filename.inc,该文件包含了各部件的信息。 4. 运行 POVRAY povray width=800 height=600 filename.pov 生成文件: filename.png 5. 运行 envideo100,使用文件 : envideo100 filename.png EnSight 图片 - 无 POVRAY EnSight 图片 - 经过 POVRAY 处理过 Page 112 操作指南:输出 POVRAY 文件 其他数据 ensight_to_pov_globals.inc 该文件为可编辑文件,用来定义相机和光源信息,以及部件的颜色和材料属性 (自然光、漫射光、反射光、粗糙度和 反射度)。该文件包含于 filename.inc 文件中,并且文件中的参数会替代 filename.inc 中的默认值。 ////////////////sample ensight_to_pov_globals.inc ////////////////////// // // This file is useful in controlling multiple file outputs // (i.e., output from the keyframe animator). Uncomment/edit items // and they will be used instead of the settings in the .inc file // // Uncomment this next line if you uncomment anything //#declare display_warning = 1; //#declare camera_location = <-0 0 8366.19>; //#declare camera_look_at = <-0 0 -16.7612>; //#declare camera_angle = 28.000000; //#declare light_location //#declare light_color = <-15241.7 15241.7 76191.9>; = rgb <1 1 1>; // This will set reflective value for all parts //#declare reflect_value = .1; // If you want to set the color for a part you would do this // (useful if you have many .pov files since all the .inc files // include this file) //#declare Part_1_material = texture { // pigment { color rgbt <1. 0. 0. 0.> } // finish { // ambient 0.3 // diffuse 1.0 // specular 0.0 // roughness 0.2 //#ifdef (reflect_value) // reflection reflect_value //#else // reflection .1 //#end // } //} #declare Part_495_material = texture { pigment { color rgbt <0.600000 0.600000 0.600000 0.000000> } finish { ambient 0.300000 diffuse 1.0 specular 0.000000 roughness 0.027778 #ifdef (reflect_value) reflection .2 #else reflection .2 #end } } Page 113 操作指南:输出 POVRAY 文件 filename.inc 该文本文件包含了对 ensight_to_pov_globals.inc 文件的声明、全局相机和光源信息、以及部件的颜色和材料属性的 默认值。 ///////////////////////sample filename.inc ///////////////////////////// #include “ensight_to_pov_globals.inc” #ifdef #debug #debug #debug #debug #debug #end (display_warning) “\n*********************************************************\n” “ \n” “ Have applied settings for ensight_to_pov_globals.inc!! \n” “ \n” “\n*********************************************************\n” camera { #ifdef (camera_location) location camera_location #else location <-0 0 8837.74> #end #ifdef (camera_look_at) look_at camera_look_at #else look_at <-0 0 0> #end #ifdef (camera_angle) angle camera_angle #else angle 28.000000 #end } light_source { #ifdef (light_location) light_location #else <-14334 10667.6 78331> #end #ifdef (light_color) color light_color #else color red 1 green 1 blue 1 #end } #ifndef (Part_1_material) #declare Part_1_material = texture { pigment { color rgbt <1.000000 0.000000 0.000000 0.000000> } finish { ambient 0.300000 diffuse 1.0 specular 0.300000 roughness 0.027778 #ifdef (reflect_value) reflection reflect_value #else reflection .1 #end } } #end #ifndef (Part_2_material) #declare Part_2_material = texture { pigment { color rgbt <1.000000 0.000000 0.000000 0.000000> } finish { ambient 0.300000 diffuse 1.0 specular 0.300000 roughness 0.027778 #ifdef (reflect_value) Page 114 操作指南:输出 POVRAY 文件 reflection reflect_value #else reflection .1 #end } } #end filename.pov 该文本文件包含了对 filename.inc 文件的声明,用以定义相机、光源和部件属性。文件的其他部分包含 Povray 表面 三角形单元的顶点坐标和组成单元的节点编号。用户不可编辑该文件。 //////////////////////sample filename.pov //////////////////////////// #version 3.5; #include “carapov00.inc” #declare Part_1= mesh2 { vertex_vectors { 297 <-243.353, -1002.62, 3.4535>, <723.621, -213.728, -129.889>, <731.815, -205.655, -144.313>, <740.01, -197.583, -158.737>, <748.204, -189.51, -173.161>, <722.484, -203.276, -123.341>, <730.534, -195.257, -137.655>, <738.584, -187.239, -151.97>, .... } face_indices { 490, <1,2,6>, <1,6,5>, <2,3,7>, <2,7,6>, <3,4,8>, ... } } #declare Part_2= mesh2 { vertex_vectors { 2001 <-243.353, -1002.62, 3.4535>, <788.215, -136.402, -241.148>, <781.139, -143.803, -228.672>, ... } face_indices { 490, <1,2,6>, <1,6,5>, <2,3,7>, <2,7,6>, <3,4,8>, ... } } object { Part_1 texture {Part_1_material} scale <-1 1 1> } ... object { Part_495 texture {Part_495_material} scale <-1 1 1> } Page 115 操作指南:旋转、缩放、平移、伸缩 Manipulate Viewing Parameters 旋转、缩放、平移、伸缩 简介 EnSight 提供了全局位置变换 (旋转、平移、缩放)允许用户在图形窗口中操纵对象。变换可通过鼠标交互执行,也 可通过输入值实现精确变换。用户可自行定义各鼠标按钮来执行不同变换。 基本操作 工具图标栏上的图形窗口变换按钮控制 鼠标左键 (默认)在图形窗口中的操作: 旋转: 1、点击旋转图标。 2、移动鼠标指针至图形窗口。 使几何体适合视口 大小 3、点击并按住鼠标左键: • 左右移动将绕屏幕 Y 轴 (竖直)旋转 • 上下移动将绕屏幕 X 轴 (水平)旋转 • 按住 crtl 键,左右移动鼠标将绕屏幕 Z 轴 旋转。 4、按下 F1、F2、F3 键将分别绕 X、Y、Z 轴旋转 45 度;按住 ctrl 键,将旋转 -45 度。(注:运 行 F 键时,光标必须位于 EnSight 窗口中) 缩放: 平移: 4、向下拖放大,向上拖缩小。 1、点击平移图标 (或使用鼠标中键执行步骤 2 和 3 (默认))。 5、按住 ctrl 键并移动鼠标将平移。 2、移动鼠标指针至图形窗口。 3、点击并按住鼠标左键: • 左右移动将沿屏幕 X 轴方向 (水平)平移 • 上下移动将沿屏幕 Y 轴方向 (竖直)平移 • 按住 crtl 键,左右移动鼠标将沿屏幕 Z 轴方 向平移。 1、点击缩放图标 (或使用鼠标中键执行步骤 2 至 5 (默认)) 2、将鼠标指针移至图形窗口。 3、点击并按住鼠标左键。 局部缩放: 1、点击局部缩放图标。 2、将鼠标指针移至图形窗口,将其置于所需查看区域的 一角。 3、点击并按住鼠标左键。 4、拖动选择所需区域,拖动过程中会出现矩形选择框。 使用选择工具实现局部缩放: 1、点击选择工具局部定位图标。 注:可打开位置变换编辑器以及 复位工具和视口对话框。 2、移动鼠标指针至图形窗口,并将其大约置于所需查看 区域的一角。 3、点击并按住鼠标左键。 4、拖动选择所需区域,拖动过程中会出现矩形选择框。 5、点击并拖动工具中心至新位置,或点击工具的任一角 来重新调整大小。(注:长宽比如工具内部的虚线所 示) 6、点击工具左上角的缩放指示器 (放大镜) Page 116 操作指南:旋转、缩放、平移、伸缩 图形窗口中的视图定向图标 可用来快速从全局坐标轴方向浏览场景。 按下 +X,将从 X 轴正方向浏览场景 (朝原点 方向看)。 +Y, +Z, -X, -Y, -Z 按钮类似。 此处还提供了打开视图管理器的快捷方式,允 许用户保存和恢复自定义视图。 注:视图管理器中也有上述 +/- 轴向按钮。 保存自定义视图: 1、确定所需的场景方位。 2、点击 " 新建 "。 将显示视图。 3、重复步骤 1 和 2,直到完成所有所需视图 的创建。 4、点击 " 保存视图 …" 按钮,在弹出的对话 框中指定文件夹。 此举将保存所有用户定义的视图。 恢复用户定义视图: 1、点击 " 恢复视图 …" 按钮,指定包含所需 视图的文件夹。 将视图恢复至对话框。 若要应用对话框中的任一视图,只需简单的单击该视图即可。 注:缩放实际上改变的是 EnSight 虚拟 " 照相机 " 或 " 观测点 " 的位置。将照相机靠近物体即放大;远离物体即缩小。 也可精确编辑 观测点 / 注视点 。 若有多个 视口可见,可单独操纵每个视口。若要在不同的视口中变换,需要首先将鼠标指针移至该视口的边框内并点 击鼠标左键。 可点击 " 复位 …" 来复位变换参数 (以及工具和坐标系变换)。详见 操作指南:复位工具和视口。 点击 " 适合视口大小 " 按钮,将使得视口以当前可见部件为中心,并且将当前可见部件缩放至适合视口大小。 Page 117 操作指南:旋转、缩放、平移、伸缩 高级应用 EnSight 的所有变换均可在 " 变换编辑器 " 对话框中精确指定。点击工具图标栏上的 " 图形窗口变换 " 图标,选择 " 位 置变换编辑器 …" 打开该对话框,使用滑块执行所选视口中的变换 (基于所选的变换类型)。 . 选择变换类型。 指定变换的参考轴线。 滑块用于指定变换。 选择 (在所需区域内部单 击)应用变换的视口。 若要在多个视口上执行变 换,在这些视口上使用 ctrl 键 + 单击,然后勾选该 选项。 增量为滑块箭矢的步长。 在增量输入框内输入精确 值 (并按下回车键)将 基于一个精确数值变换。 限值为滑块滑动的最大 限值。 若定义了照相机,可将所选 视口绑定至特定的照相机。 也可在任一或全部维度上执行伸缩。伸缩操作只可在 " 变换编辑器 " 对话框进行,不能使用鼠标执行。点击 " 变换类 型 " 区域的伸缩图标,如上所述定义伸缩。 可复制一个视口中的变换至另一个视口。首先选择被复制的视口,然后选择编辑器功能 -> 复制变换状态,接着选择目 标视口,再选择编辑器功能 -> 粘贴变换状态。 其他说明 默认情况下, EnSight 使用鼠标左键执行所选的变换。然而,也可自定义各鼠标按钮的变换行为。详见 自定义鼠标按 钮行为 。 这里描述的变换操作同样适用于坐标系变换。若创建了额外的坐标系,并且操作该坐标系,则所有的变换均应用于当 前选定的坐标系。详见操作指南:创建和操纵坐标系 。 当鼠标指针位于图形窗口时,按下 F5、 F6、 F7 键分别将场景显示为标准的右视图、顶视图、前视图;按下 F8 键将 场景返回至按下 F5、 F6、 F7 键之前的状态。更进一步,在按下 F5、 F6、 F7 键的同时按住 ctrl 键将保存当前视图至 对应的 Fx 按钮。 Page 118 操作指南:旋转、缩放、平移、伸缩 当鼠标指针位于图形窗口时,按下 F9 将全屏显示。 另请参见 其他视图操作: 操作指南:设置观测点 / 注视点 操作指南:设置 Z 切面 操作指南:创建和操纵坐标系 操作指南:复位工具和视口 操作指南:使用选择工具 Page 119 操作指南:设置绘图模式 设置绘图模式 简介 EnSight 为图形对象提供了两种基本的绘图样式:线或面。线模式仅绘制对象的线段 -- 无论是否为多边形边缘。面模 式将由多边形 (如:单元面)组成的所有对象显示为带光源阴影的填充区域。 这些绘制样式可通过启用 " 隐藏线 " 模式来叠加。假设对象为实体表面,若当前模式为线,将清除所有不可见的线; 若当前模式为面,将绘制覆盖于表面的线。在面模式下,隐藏线覆盖对于显示计算网格尤为有用。 线或面模式的设置为全局开关,也可基于各部件设置该模式,使得某些部件显示为线,而其他的则显示为面。各 视口 中还提供了单独的控制按钮,使得绘制模式在各视口中可以不同。 线模式 面模式 隐藏线模式 隐藏线覆盖模式 基本操作 : 工具图标栏中,实体表面和隐藏线模式为全局开关。 也可在主菜单的视图 > 实体表面或视图 > 隐藏线下启用 该模式。 Page 120 操作指南:设置绘图模式 使用全局工具图标栏切换 1、点击实体表面按钮,由线切换至面模式 (反之亦然)。 线 面 非隐藏 隐藏 2、点击隐藏线按钮,启用或禁用隐藏线模式。 若打开隐藏线时的当前模式为面,将弹出 " 隐藏线覆 盖 " 对话框,在该对话框中指定覆盖的颜色。若未勾 选 " 指定颜色 ",则覆盖的颜色将设置为各部件的原 色;若勾选该选项,则可通过输入 R、 G、 B 颜色值 来设定颜色,也可通过点击 " 选择颜色 …" 按钮并在 颜色选择 对话框中选取颜色来设定。 当部件列表中有部件被选中时,可在快速图标栏 (Quick Action Icon Bar)中对各部件的实体表面和隐藏线模 式进行切换。 1、在部件列表中选择部件。 Line Shaded 2、点击实体表面图标,由线切换至面 (反之亦然)。 3、点击隐藏线按钮,启用或禁用隐藏线模式。 Unhidden Hidden 注:一定要在全局实体表面开关 (工具图标栏上或视图菜单下)打开的状态下,才可启用部件实体面模式。隐藏线也 是如此:除非打开全局隐藏线开关,否则部件将无法绘制为隐藏线。 Page 121 操作指南:设置绘图模式 高级应用 绘制模式也可在各视口中设置。与各部件设置相同,这些切换均需要全局开关处于开启状态才能生效。 . 1、在视口列表面板中双击所需视口 (或右击 -> 编辑 …) 打开视口属性面板 (Viewport Feature Panel)。 2、点击视图属性折叠按钮。 3、取消勾选 " 实体面 " 按钮,将禁用当前视口 下的实体表面显示。 4、取消勾选 " 隐藏线 " 按钮,将禁用当前视口 下的隐藏线显示。 Page 122 操作指南:设置绘图模式 其他说明 当部件以实体表面模式绘制时 (有无隐藏线覆盖均可),表面将带光源。 EnSight 使用两种预定义的光源:一个位于 观测点 (照相机),另一个位于模型的反面 (背光)。可更改光源的位置,参见操作指南:设置光源属性。操作指 南:设置光源属性。 在计算机图形学中,实体表面的外观受光源支配,光源由各种参数控制。在 EnSight 中,这些参数作为部件属性的一 部分,可基于各部件更改。详见 操作指南:设置属性 。 另请参见 操作指南:设置光源属性 用户手册: Global Shaded, Global Hidden Line Page 123 操作指南:设置全局视图参数 设置全局视图参数 简介 EnSight 提供了多种控制全局视图的模式。本文讨论了三种模式:透视图 / 直角视图、限位框显示模式、静止光源。 EnSight 可将视口显示为透视图或直角视图。透视图为我们通常观看自然的视图:物体离的越远,看起来越小。直角 视图没有这样的效果:无论物体距离多远,看起来均为同一尺寸。各视口中的设置可以不同。 默认情况下,每当图形窗口更新时, EnSight 均绘制每个可见部件的点、线以及多边形。对于较大模型 (或较差的显 卡),会因更新落后于相应的鼠标运动,而导致操纵延迟。为此, EnSight 提供了一种快速显示模式,可改善响应速 度。快速显示模式在交互操纵期间使所有的可见部件以一种简化的形式显示,可以是模型限位框、点云、多边形、隐 藏、或稀疏模型。松开鼠标按钮时,部件将恢复正常显示。快速显示模式还可设置为一直显示简化形式的模型,甚至 松开鼠标也是如此 (编辑 -> 首选项 … 性能 - 静态快速显示)。 大模型中的实体表面操作将很费资源。由于阴影取决于模型的方位和光源,每次移动模型其表面颜色都必须重新计 算。静止光源模式为每个给定方位均事先计算好了表面颜色,在随后的变换过程中均使用这些颜色,这将提高交互响 应速度。 基本操作 透视图 / 直角视图投影 投影模式可通过菜单 (视图 > 透视图)或视口编辑器切换。在视口编辑器中设置投影的步骤:: 1、在视口列表面板中双击所需视口 (或点击右键 -> 编辑 …) 打开视口属性面板 (Viewport Feature Panel)。 2、点击 " 视图属性 " 折叠按钮。 3、勾选或取消勾选 " 透视图 " 以切换当前视口的 投影类型。 注:只有全局开关 (视图 > 透视图)为开启状态, 视口才显示透视图。 Page 124 操作指南:设置全局视图参数 部件模式 全局快速显示模式可通过主菜单 (视图 > 快速显示)或工具图标栏上的快速显示 图标设置。 在编辑 -> 首选项 … 的性能下切换该模式的动态或静态操作。 更改快速显示模式下部件显示方式的步骤: 1、在部件列表中选择部件。 2、点击快速显示方式下拉图标。 3、选择所需的快速显示模式。 选择 " 关 " 返回至标准显示模式。 注:也可在部件属性面板 (Part Feature Panel)中的 " 常规 " 属性部分执行该操作。 注:若未使用即时模式 (immediate mode),则此处的稀疏模型选项将不可 用。 Page 125 操作指南:设置全局视图参数 高级应用 若使用即时模式,并且使用稀疏模型作为快速显示方式,则可控制模型显示的百分比。 See 部件模式,该模式适用于 大模型,一般不应用于小模型 (也没必要)。 另请参见 用户手册: 部件模式 Page 126 操作指南:设置 Z 切面 设置 Z 切面 简介 在 EnSight 中执行缩放操作时,会发现随着模型移动的越来越近,模型开始逐渐消失,这种情况发生在可见部件与前 Z 平面相交时。 Z 切面 (通常与视线垂直)为离观测点 (照相机位置)的距离。用户可设置 Z 切面位置, Z 切面可用 来从显示器上删除不需要的几何体。各视口均有自己的 Z 切面。默认情况下, Z 切面随着模型不断调整 (浮动)。 基本操作 Z 切面的初始位置基于可见几何体的 Z (纵深)坐标设置 -- 加上给位置变换留出了相当大的空间。平面位置仅可通过 " 变换编辑器 " 对话框设置。 1、点击工具图标栏上的 " 图形窗口变换 ",选择 " 位置变换编辑器 …" 2、点击 " 编辑器功能 -> Z-clip 图形显示了前后切面 (左右两侧的竖直红线)的 相对位置,以及所有当前可见部件 (白色方框) 的 Z 范围。 若勾选 " 锁定 Z-clip 基准面 ",可指定前切面可浮动的最小 Z 值。 2、勾选 " 锁定 Z-clip 基准面 ",自动调整 Z- 切面。 或 取消勾选该选项,手动调整 Z- 切面位置。 若取消勾选 " 锁定 Z-clip 基准面 ",可拖拉红线 或在前和后输入框内输入精确值来编辑平面位 置,该值代表观测点至平面的距离。 3、将鼠标指针置于所需的平面处,点击鼠标 左键。 4、左右拖动平面至所需位置,图形窗口将随着 平面的移动而更新。 –或– 3、在前 / 后输入框内输入精确值,按下回车键。 若随着变换的进行,平面标记线变得难以操作, 点击 " 重绘 Z-Clip 区域 " 按钮来重新调整标记线。 Page 127 操作指南:设置 Z 切面 每个视口均有各自独立的 Z 切面,上述操作将改变当前视口 (在图形窗口中所需的视口上单击)中的平面。 . 注:在工具图标栏上点击 " 重新初始化变换 " 图标将基于当前视口中所有可见部件的 Z 范 围复位该视口的 Z 切面。 也可点击 " 图形窗口变换 " 图标,选择 " 复位 …",打开 " 复位工具和视口 " 对话框,然后点击 " 重新初始化 " 按钮。 其他说明 EnSight 使用工作站的图形硬件来执行 Z 剪切和 Z 缓冲 -- 基于 Z (纵深)值确定哪些部件可见。 Z 缓冲通常提供 24 位分辨率。 EnSight 试图通过合理地减小前后切面间的距离来使得有限的分辨率最大化利用。若平面离的太远,则相 对 Z 分辨率减小,硬件可能不能精确地确定表面可见性。若这种情况发生,将两切面距离移动得靠近点。 EnSight 还提供了另外一种辅助切面,与垂直于视线的 Z 切面不同,辅助切面可位于任何方位,使用平面工具来指定 辅助切面的位置。默认情况下,平面工具上的 Z 轴负方向的所有几何体均被移除掉。然而,也可基于各部件指定辅助 切面 -- 某些部件被剪切,而其他的则不被。详见操作指南:设置辅助切面。 另请参见 操作指南:定义和更改视口、操作指南:设置辅助切面 Page 128 操作指南:设置观测点 / 注视点 设置观测点 / 注视点 简介 除了控制模型操作之外, EnSight 还控制全局变换模式下用于在图形窗口中查看场景的虚拟相机。若视口绑定了照相 机,该部分将不适用。观测点 (照相机位置)和注视点 (照相机视线向量上的点)为其中的两个控制参数。全局坐 标轴位于注视点,且位于图形窗口的中心。 最初, " 注视点 " 为所有可见部件的几何中心, " 观测点 " 为 Z 轴正方向上的一点,以便所有可见部件均适合图形窗口 大小 (如下图中上面的一幅图所示)。白色的轴线为全局坐标轴,可通过 " 视图 > 坐标轴线可见性 > 全局的 " 来切换 其可见性。下图中下面的一幅图显示了观测点位于 X 和 Z 轴之间的视图。各图右侧分别为各自的示意图 . x z x z 基本操作 观测点和注视点均在 " 变换编辑器 " 对话框中设置。 1、点击工具图标栏上的 " 图形窗口变换 " 按钮,选择 " 位置变换编辑器 …" 2、点击编辑器功能 > 注视点 / 观测点 . 交互操作区 观测平面 切换 坐标值输入框 设置观测点的精确移 动距离 Page 129 操作指南:设置观测点 / 注视点 " 变换编辑器 " 对话框提供了两种设置注视点和观测点的方法:1、在观测点、注视点输入框内直接输入 X、 Y、 Z 坐 标值 (记得按下回车键); 1、在距离输入框内输入观测点与注视点之间的精确距离 另外,可在浏览区域交互操纵两点,浏览区域呈现的内容取决于所选的平面:X-Y (从 Z 轴正方向观测)、 Y-Z (从 X 轴正方向观测)、 X-Z (从 Y 轴正方向观测 - 默认)。每个案例中,灰色盒子代表所有可见部件,两条红色线的相交 点为观测点,较长的红线的另一端为注视点 (其初始位于灰色盒子中心附近)。下面的例子显示了 X-Z 平面呈现的情 形,其他类似。 . 更改观测点的操作步骤: 1、将鼠标指针置于两条红线的交点。 2、点击并拖至所需位置。注:图形窗口随 着观测点位置的变化不断更新。 更改注视点的步骤: 1、将鼠标指针置于较长红线的 自由端。 2、点击并拖至所需位置。 注:图形窗口随着注视点位置的变化不断 更新。 操纵期间,若浏览区域内的显示点变得难以控制,点击 " 重绘观测区 " 按钮来重新调节显示。 锁定观测区下拉菜单控制如下的交互操纵: 无 观测点或注视点的运动均无约束。 两点间距离 观测点 (注视点)的运动受限于半径为当前距离的圆,其圆心为注视点 (观测点) 两点同时移动 观测点与注视点均锁定,其中一点的运动状态也应用于另一点。 可复位观测点和注视点,以便显示所有当前可见部件。点击 " 图形窗口变换 " 按钮,选择 " 复位 …" 打开 " 复位工具和 视口 " 对话框。点击 " 重新初始化 " 按钮以复位当前选定视口。 其他说明 也可使用鼠标在图形窗口中拾取对象来设置注视点: 1、在 " 复位工具和视口 " 对话框中点击 " 重新初始化 ",以 清除所有全局变换。 2、在工具图标栏中点击 " 于图形窗口中拾取 " 图标。 3、在拾取下拉菜单中选择 " 选取注视点 "。 4、移动鼠标至图形窗口,将鼠标指针置于所需的注视点, 按下 "p" 键 (或编辑 > 首选项 > 鼠标和键盘下设置为 " 选 定的拾取操作 " 的鼠标按钮)。 Page 130 操作指南:设置观测点 / 注视点 其他照相机参数,如相机顶部向量、视角方向可在 " 变换编辑器 " 对话框中的 " 编辑器功能 > 照相机 " 下设置。 另请参见 操作指南:定义和更改视口 操作指南:通过照相机观察视口 Page 131 操作指南:设置辅助切面 设置辅助切面 简介 与前后平面均垂直于视线的标准 Z 切面不同,辅助切面可在任意方位剪切部件。此外,辅助切面属性,各部件可以不 同,允许有选择性的剪切对象。 使用 EnSight 的平面工具定位辅助切面,图形窗口中所显示的内容会随着平面工具位置的变化实时更新。 基本操作 在视图菜单下,选择辅助切面, 以启用全局辅助剪切: 此时平面工具将开启,所有平面工具上的 Z 轴负方向的对象均被剪切掉 (假设当前平面与某些可见部件相交)。操作 平面工具以达到想要的显示效果 (详见 操作指南:使用平面工具)。注:没有任何方式可将辅助切面限制于平面工具 的矩形边界内,所以通常使用无限域。 设置各部件是否被辅助切面剪切。操作如下:: 1、选择所需部件 (参见 操作指南:选择部件) 2、点击辅助切面图标。 Off On (该属性也可在部件属性面板 (Feature Panel) 中设置。详见 操作指南:设置属性 ) Page 132 操作指南:设置辅助切面 另请参见 操作指南:使用平面工具、 操作指南:设置 Z 切面 用户手册: Part Auxiliary Clipping, Global Auxiliary Clipping Page 133 操作指南:定义和更改视口 定义和更改视口 简介 EnSight 的图形窗口可显示多达 16 个用户自定义视口。每个视口均以矩形区域显示于屏幕上 (显示或不显示矩形边 框均可),可显示当前可见部件中的部分或全部,可独立在每个视口中进行变换 (如:旋转或缩放),也可分别调整 各视口的大小和位置。视口含有包括背景和边框颜色在内的多种显示属性,视口为数据显示提供了非常灵活的环境。 本文分为以下几个部分讲述: 新建视口 选择视口 平移和调整视口尺寸 设置视口背景色或背景图片 设置视口属性 在视口中显示所选部件 设置各视口中案例的可见性 在视口中执行变换操作 复位视口变换 删除视口 基本操作 界面上跟视口有关的区域 视口快速图标 (Quick Action Icons) 视口面板 Page 134 操作指南:定义和更改视口 新建视口 启动 EnSight 时,将创建单个视口充满整个图形窗口。若要新建视口:: 1、点击视口选项卡,在视口列表中选择一个视口,从而启用 视口快速图标栏 (Quick Action Icons Bar)。 也可在任一视口背景上单击。 2、点击 " 新建视口 " 图标。 或 2、点击 " 视口布局 " 下拉图标,选择任一标准视口 布局。 注:也可在视口列表上点击右键,选择新建。 选择视口 创建新视口时,该新建的视口将自动成为当前选定视口,任何更改视口属性的行为均对当前选定视口进行操作。选择 视口的步骤: 1、点击视口选项卡,在视口列表中选择所需视口。 也可在所需视口背景上单击。 注:可使用通用的多选操作来选择多个视口。 Ctrl+ 单击添加视口, shift+ 单击选择一 系列视口。 注:在视口中执行某些操作时 (如:旋转), 所选视口会以其他模式更改 (如:视图)。然而,除非视口列表为可见状态,否则看不到任何变化。 平移和调整视口尺寸 可移动视口并调整其尺寸。可在图形窗口中使用鼠标调整视口位置,也可输入值来精确定位。移动和调整视口的 Page 135 操作指南:定义和更改视口 步骤:: 1、点击视口背景或将鼠标指针置于视口的边框上,将呈现出可移动和 调整大小的关键点。 2、点击并按住 " 移动关键点 " 拖至所需位置,来移动视口。 3、点击并按住 " 调整关键点 ",拖动视口角点 至所需位置,来调整视口大小。 精确定位视口的步骤: 1、点击 " 视口位置 " 图标,打开 " 创建 / 编辑视 口 " 对话框。 或者,双击列表中的视口 (也可点击右键选择编 辑 …),然后点击 " 位置属性 " 折叠按钮。 4、在位置点 X、 Y、宽度、高度输入框内输入精 确值 (按下回车键) 也可使用滑块来更改视口的宽度和高度。 点 (0,0)表示图形窗口的左下角。注:宽度和 高度均基于默认视口 (即,图形窗口)的宽度和 高度做了归一化换算。 EnSight 允许视口重叠,可控制重叠顺序 (从最上面至最下面): 点击 " 置顶视口 " 图标,使所选视口显示在最上层。 点击 " 置底视口 " 图标,使所选视口显示在最底层。 注:视口 0 不参与置顶或置底操作。 Page 136 操作指南:定义和更改视口 设置视口背景色或背景图片 视口背景色可以是纯色、渐变色或继承默认视口的颜色。 : 1、点击视口选项卡,在列表中选择视口,打开视口 快速图标栏 (Quick Action Icons Bar)。 也可在任一视口背景上单击。 2、选择所需视口。 3、点击 " 视口背景色 " 打开 " 创建 / 编辑视口 " 对话 框中的 " 视口背景 " 部分。 " 类型 " 下拉菜单显示了所有可用的背景色,包括四 种:纯色、渐变色、继承色、图像。 纯色 整个背景使用同种色,将背景设置为纯色的步骤: 4、从 " 类型 " 下拉菜单中选择 " 纯色 "。 5、在 RGB 输入框内输入值 (按下回车键),或者点 击 " 选择颜色 …" 按钮打开 颜色选择 对话框。 6、视口一般会自动刷新,若未刷新,可手动点击 " 刷新视口 "。 Page 137 操作指南:定义和更改视口 渐变色 可使用多达 5 种平行色进行插值。设置渐变色背景的 步骤: 1、在 " 类型 " 下拉菜单中选择 " 渐变色 "。 2、在 " 色阶数量 " 输入框内输入所需的色阶数 (按 下回车键)。最多支持 5 个色阶。 3、若要编辑颜色,需首先在视口颜色窗口中点击标 签号,如图所示,色阶 1 被选中。也可以在 " 编 辑色阶 " 输入框内输入值,或使用向上 / 向下 箭头。 4、若要更改所选颜色,可在 RGB 输入框内输入值 (按下回车键),也可点击 " 选择颜色 …" 按钮打 开 颜色选择 对话框。 5、有两种方式更改各色阶的相对竖直位置:(1)使 用鼠标左键点击色阶数上下拖动; (2)在位置 输入框内输入值 (按下回车键)。 6、点击 " 刷新视口 "。 继承色 所选视口继承默认视口的背景类型和颜色。设置继承 色背景的步骤 1、从类型下拉菜单中选择 " 继承色 "。 2、点击 " 刷新视口 "。 图片 使用图片作为所选视口的背景。设置图片背景的 步骤: 1、在 " 类型 " 下拉菜单中选择 " 图像 "。 2、输入所需背景图片的文件名,或点击 " 选择 …" 按钮并定位至所需图片。 注:图片格式必须是 EnSight 可识别的格式,当 然绝大部分常见的图片格式都可识别。 2、点击 " 刷新视口 " Page 138 操作指南:定义和更改视口 设置视口属性 视口可显示各种属性: 1、点击视口选项卡,在列表中选择视口,打开视口快速 图标栏 (Quick Action Icons Bar)。 也可在任一视口背景上单击。 2、选择所需视口。 3、设置所需属性: On " 视口可见性 " 图标,切换所选视口的可见性。 Off 点击 " 视口边框 " 图标,打开 " 创建 / 编辑视口 " 对话框 中的 " 视口边框 " 部分。 勾选或取消勾选 " 显示 ",切换边框的可见性。 在 RGB 输入框内输入值 (按下回车键),或点击 " 选择 颜色 …" 按钮,打开 颜色选择 对话框。 点击 " 视口附加属性 " 图标,打开 " 创建 / 编辑视口 " 对 话框中的 " 视图属性 " 部分。 每个视口都有各自的透视图、隐藏面、隐藏线切换按钮。 详见操作指南:设置绘图样式 和 操作指南:设置全局视 图。 此外,视口可以是三维或二维。若视口设置为二维,则视 口中将仅显示平面部件,且变换操作也会限制于二维。 可设置视口跟踪某节点编号、某部件中心、某部件最小或 最大值。这样对于随时间变化的模型,视口将一直保持以 该指定位置为中心。详见 操作指南:视口追踪。 Page 139 操作指南:定义和更改视口 在视口中显示所选部件 部件可见性可在各视口中分开设置,使得部件在某些视口中可见,而在别的视口中不可见。设置各视口中部件可见性 的步骤: 1、在主部件列表中选择所 需部件。 2、点击 " 各视口的可见性 " 图标。 " 部件在视口中的可见性 " 对话框显示了当前视口的示意图。绿色 视口表示部件在该视口中可见,而黑色视口表示部件在该视口中 不可见。 3、点击绿色视口,使得所选部件在该视口中不显示;点击黑色视 口,使得所选部件在该视口中显示。 注:在 " 创建 / 编辑部件 " 对话框的常规属性中也可设置该属性。 设置各视口中案例的可见性 若 EnSight 会话中存在多个 案例,可设置各案例中的所有部件在视口中的可见性。此举可以轻松实现一个视口显示一 个案例。设置各视口中案例可见性的步骤:: 1、在 " 案例 " 菜单下选择所需案例 (案例 > 案例名)。 2、点击案例 > 视口可见性 …,打开 " 案例在视口中显示? " 对话框。 3、点击绿色视口,使得所选案例在该视口中不显示;点击黑色视口, 使得所选案例在该视口中显示。 Page 140 操作指南:定义和更改视口 在视口中执行变换操作 与默认视口一样,也可在用户新建的视口中执行变换操作 (详见操作指南:旋转、缩放、平移、伸缩)。可使用基于 各视口的变换编辑器,实现精确的视口变换 1、点击 " 图形窗口变换 " 图标,选择 " 位置变换编 辑器 …" 2、在 " 选择视口 " 区域选择所需视口,然后执行 变换。 可在选择视口的同时按住 ctrl 键,添加多个 视口。 注:该操作将更改当前选定视口。 Page 141 操作指南:定义和更改视口 复位视口变换 可在 " 复位工具和视口 " 对话框中复位一个或多个视口的变换。 1、点击 " 图形窗口变换 " 图标,选择 " 复位 …" 2、选择所需复位的视口。 3、点击相应按钮,执行所需的复位操作。 可以仅复位选定的变换,也可同时复位旋转、平移和缩放, 还可重新初始化视口。 Page 142 操作指南:定义和更改视口 设置 / 更改视口部件的限位框 可在视口中显示部件的限位框,这有助于理解模型域的尺寸。 1、在 " 视图 " 菜单下点击 " 模型限位框可见性 ",打开 全局部件限位框。 这将在视口中显示部件的限位框。 2、点击 " 视口中部件的界限属性 " 图标,设置限位 框的属性。 打开视口属性面板 (Viewport Feature Panel)(见下 页)中的 " 限位方框 " 部分。 Page 143 操作指南:定义和更改视口 3、点击常规或高级选项卡。 4、修改所需属性。 若在选定的视口中不需要显示模型限 位框,可取消勾选 " 显示 " 按钮。 删除视口 可随时删除视口: 1、在视口列表面板中右击所需视口,选择删除。 若要删除多个视口: 1、通过各种常规方法在列表中选择所需视口。(按住 ctrl 键 选择多个视口)。 3、点击右键,选择删除。 Page 144 操作指南:定义和更改视口 其他说明 视口边框可见性、颜色、光源属性均可在 " 创建 / 编辑视口 " 对话框中进行设置 可在 " 变换编辑器 " 对话框中选择需要链接到一起的视口,并勾选 " 链接多视口同步变换 ",使得多个视口同时进行相 同的变换。此时,以绿色框显示的视口将同时执行在变换对话框中执行的变换。链接并不适用于在图形窗口中鼠标操 作的变换。 可复制一个视口中的变换至另一个视口。首先,选择所需复制的视口,然后选择编辑器功能 -> 复制变换状态,接着选 择所需粘贴的视口,再选择编辑器功能 -> 粘贴变换状态。 另请参见 操作指南:旋转、缩放、平移、伸缩、 操作指南:设置光源属性 用户手册: VPort Mode Page 145 操作指南:设置光源属性 设置光源属性 简介 EnSight 可以为每个视口设置光源位置。根据相对于视口的方位角和高度来确定光源位置,或根据相对于模型坐标系 的 " 绝对位置 " 来确定。也可设置第二光源的强度,它的位置一般与观测者 (照相机)的位置相同。 基本操作 在 EnSight 中设置光源属性:: 1、点击视口选项卡,打开视口列表面板。 2、选择需要修改光源属性的视口。 3、点击 " 视口光源 " 图标。 打开视口属性面板 (Viewport Feature Panel),并展开光 源属性。 4、选择光源相对于视口 (相对位置),还是相对于模型坐标系 (绝对位置)。 5、在方位角和高度输入框内输入值或使 用滑块,来编辑光源 1 的位置。 6、也可修改光源 2 (位于观测者)的 强度。 若之前选择的是相对位置模式,可点击此 处换转为绝对位置。 注:可点击此处将光源恢复至 默认设置。 使用相对位置的效果是,当模型旋转时,光源并不旋转,所以模型上的灯光效果会发生 变化。 使用绝对位置的效果是,当模型旋转时,光源跟模型一起旋转,所以模型上的灯光效果 不变。 另请参见 用户手册: Lighting Attributes Page 146 操作指南:远程显示 远程显示 简介 EnSight 不支持运行着的客户端配置另一主机的系统显示环境。不是所有操作系统均支持 OpenGL 的全部功能,会与 EnSight 显卡冲突。其目的是,通过客户端控制远程主机上的客户端。 若在远程主机上运行客户端,并显示在本地控制主机上,将会在控制主机上显示如下警告信息: -------------------------------------------------------------------------Warning: EnSight has detected indirect OpenGL rendering. This could be caused by remote display using X11, by an incorrect setting of the DISPLAY environment variable, or by a bad driver installation. When running using indirect OpenGL, you will notice a performance degradation and loss of some rendering features. If you are running over a network we strongly recommend that you install EnSight directly on the client machine. EnSight is a client/server application, and you can run the EnSight server on your remote machine. -------------------------------------------------------------------------一种方式为:在本地主机上手动连接运行客户端 ensight100.client -cm (Linux) ensight100_client -cm (Windows) 在远程主机上: ensight100.server -c clienthostname ensight100_server -c clienthostname (Linux) (Windows) 另一种方式为:运行客户端,并且打开与远程主机 (默认为 ssh)的连接 ensight100.client -c remotehostname (Linux) ensight100_client -c remotehostname (Windows) 远程运行一个或多个服务器,不会引发其他问题,只是需要 EnSight 客户端拥有授权许可。 当然,各种 VR 组合显示均有效。 另请参见 操作指南:使用 SOS 操作指南:并行渲染设置 Page 147 操作指南:保存 & 恢复视图参数 保存 & 恢复视图参数 简介 EnSight 的视口功能对于如何在图形窗口中显示对象表现出了很大的灵活性。对于复杂的变换,用户能够保存和恢复 累积的视口变换至关重要。 基本操作 从一个视口中复制视图参数至另一个视口。 可通过右键操作轻松实现。 . 1、在视口列表面板中右键点击所需 视口。 2、选择 " 复制变换 "。 3、再在视口列表中右键点击需要接受视 图的视口。 4、选择 " 粘贴变换 "。 Page 148 操作指南:保存 & 恢复视图参数 将视图参数存至文件 点击工具图标栏上变换控制区的 " 图形窗口 变换 " 按钮,选择 " 位置变换编辑器 …",打 开变换对话框。 1、选择所需保存的视口,在视口中点击以 选中该视口,按住 ctrl 键可进行多选。 也可在视口列表中选择。 2、在 " 文件 " 菜单下选择 " 保存视图 "。 3、在文件浏览窗口中选择目录并输入文件 名,点击确定。 EnSight 可同时显示多达 16 个视口:主视口 (不可更改)和 15 个附加视口。当 EnSight 保存一个或多个视口时,每 个视口后面都会带上视口编号 (即视口创建顺序)作为标签。当需要恢复一个或多个视口时, EnSight 搜索存储文 件,查找与当前所选视口相对应的标签编号,若找到相匹配的,将恢复该视口;若未找到与所选视口相匹配的,则保 持不变。 恢复视图参数 点击工具图标栏上变换控制区的 " 图形窗口变换 " 按钮,选择 " 位置变换编辑器 …",打开变换对话框。 1、选择需要恢复的视口。 2、在 " 文件 " 菜单下选择 " 恢复视图 ",在 " 文件浏览 " 对话框中选择文件,点击确定。 What is Saved 仅全局和局部 (坐标系)变换会保存于视图参数文件,并不保存视口属性、观测点 / 注视点、 Z 切面信息。 其他说明 默认情况下, F5、 F6、 F7 按钮分别恢复选定视口的右视图、顶视图、前视图。然而,当按这些键时按住 ctrl 键,当 前视图将被保存至该按键,再次按下这些键时,将恢复保存的视图。仅全局变换可通过该操作来完成保存 / 恢复,坐 标系变换则不行。 另请参见 操作指南:定义和更改视口, 操作指南:创建和操纵坐标系 . Page 149 操作指南:创建和操纵坐标系 创建和操纵坐标系 简介 默认情况下,所有部件均指定给同一参考系。然而,可新建坐标系,并将部件指定给这些坐标系。这些坐标系 (连同 指定给它们的部件)可独立于其他坐标系操纵 (旋转、平移、缩放)。以下是坐标系用法的例子: 1、创建部件副本,并将副本着色为另一个变量。创建副本时,将自动创建一个新坐标系,并将该副本指定给该坐标 系。新坐标系可从原位置平移,以同时显示两个变量。 2、创建部件移动动画 (如:分解视图或 " 打开 " 封闭物体)。每个动态部件均指定给一个新的坐标系。在关键帧动画 期间,分别操纵各坐标系以获取所需动画。 3、存在一组含有周期性旋转的数据,但是对称轴与主轴不对齐,此时需要创建一个新坐标系,使新坐标系的某轴线与 对称轴对齐。 4、很难正确定位 EnSight 工具,如:与主轴不对齐的管道。创建一个新坐标系,使该坐标系的一个轴与管道对齐。因 为工具位置一般基于当前坐标系指定,可使用变换编辑器沿着管道轴线精确定位工具。 除了位置和方向,坐标系还有很多显示属性,如:可见性、线宽、颜色。还可分别指定轴线长度,并显示一系列等间 隔的标签,用作三维测量工具。 EnSight 的坐标系功能强大但很复杂。为了恰当的使用坐标系功能,理解其基本知识相当必要。本文分为以下几个部 分介绍: 基本操作 新建坐标系 选择坐标系 指定部件给坐标系 平移和旋转坐标系 复位坐标系变换 设置坐标系属性 查看部件所指定的坐标系 删除坐标系 Page 150 操作指南:创建和操纵坐标系 基本操作 基本操作 启动 EnSight 时,将创建一个默认坐标系 -frame 0- 位于模型坐标系的 0,0,0 处,并与 X,Y,Z 轴对齐,所有部件 (模型 部件和子部件)的初始状态均指定给 frame 0。 Frame 0 比较特殊,它不能编辑或删除。 . 注:坐标系操作是为高级 用户准备的。默认情况 下,坐标系功能并未启 用,需要在主菜单的 " 窗 口 -> 工具栏 / 面板 " 下 开启。 也可以在列表面板的标题框上点击右键, 开启 " 坐标系 " 功能。 打开坐标系面板,默认列出坐标系 frame 0,接着可进行下述操作。 在图形窗口中点击坐标轴线来选择坐标系 (必须保证坐标轴为可见状态),或在坐标系列表中选择坐标系。任何操作 (如:设置属性)均针对当前选定的坐标系。 Page 151 操作指南:创建和操纵坐标系 EnSight 定位工具 (光标、直线、平面、二次曲面工具)一般均基于当前选定的坐标系。若有多个坐标系被选中,则 工具会选择 frame 0 作为参考系。若工具可见,会发现其位置会随着所选坐标系位置的变化而变化。 EnSight 将计算周期性 (如:旋转对称)作为坐标系的一个属性。若坐标系已启用对称功能,则所有指定给该坐标系 的部件均按照指定的对称类型复制。 坐标轴由三条分别代表 X、 Y、 Z 方向向量的直线以及标签组成。选中的坐标系高亮显示于坐标系列表中。 EnSight 不支持层级坐标系:不可指定一个坐标系至另一个坐标系以实现嵌套变换。所有坐标系均嵌套在同一全局坐 标系下 (即, frame 0)。 新建坐标系 一般情况下,需要人为新建坐标系。然而在创建部件副本时, EnSight 将自动创建一个新坐标系,并将该副本指定给 该坐标系。 创建坐标系的步骤:: 1、确定是否将新坐标系的原点设置在 0,0,0 (与模型坐标系相同),还是 将其设置在某些部件的中心。若为前者,请确认部件列表中未选中任何 部件;若为后者,请在部件列表中选择所需部件。 2、在坐标系面板下选择已有坐标系,点击 " 新建坐标系 " 图标。 或 在坐标系面板下右键点击已有坐标系, 选择 " 新建 "。 此时,新建的坐标系将成为当前选定的 坐标系。 Page 152 操作指南:创建和操纵坐标系 选择坐标系 有两种方式选择坐标系:1、在坐标系面板中选择; 2、在图形窗口中点击坐标轴 (轴线必须可见)。 使用坐标系列表选择坐标系:: 1、若坐标系不可见,点击坐标系选项卡,显示坐标系面板。 2、在列表中选择所需坐标系。 可使用常用多选方法:shift+ 单击以连续选 择,或 ctrl+ 单击以添加选择 (或取消 选择)。 在图形窗口中选择坐标系: 注:这里需要坐标轴为可见状态。若不可见,则 首先使用如上文所述的坐标系列表来选择坐标系, 然后按下 " 轴线可见性 " 按钮使得坐标系轴线可 见。 然后执行以下操作: 1、将鼠标指针置于坐标轴上 (轴线上 -- 并非 XYZ 标签),点击鼠标左键。 可在点击坐标系时按住 ctrl 键实现多选。 指定部件给坐标系 将部件指定给坐标系的步骤: 1、在主部件列表中选择所需部件。 2、选择所需坐标系 (如上文所述)。 4、点击 " 将所选部件指定给所选坐标系 " 图标,从而将部 件指定给坐标系。 或 在所需坐标系上点击右键,选择 " 指定给 ",再选择 " 选定 的部件 "。 注:可使用后种方法,轻松地将所有部件均指定给同一个坐 标系。 在 EnSight 的消息窗口 (消息显示图标)中会有该确认指 定的反馈信息。 Page 153 操作指南:创建和操纵坐标系 平移和旋转坐标系 在坐标系变换模式下,执行变换时,将变换坐标系 (以及所有指定给该坐标系的部件)。默认为 " 坐标系变换模式 "。 使用快速图标栏 (Quick Action Icon Bar)上的 " 变换 / 定义坐标系 " 图标来切换坐标系的变换模式 与定义模式。 定义 模式 变换 模式 创建 / 编辑坐标系对话框。 重要说明:一般在指定部件给坐标系之前,需要首先使用定义模式创建并定位坐标系;而后,使用变换模式。按 照此步骤执行,才能避免在使用坐标系过程中发生错误。 Page 154 操作指南:创建和操纵坐标系 执行坐标系变换的步骤:: 1、选择所需坐标系。 2、将 " 变换 / 定义坐标系 " 图标设置为变换模式。 此操作也可在 " 创建 / 编辑坐标系 " 对话框中进行, 其中的单选按钮显示了当前的模式状态。 3、可通过两种方式执行所需变换操作:(1)在图形窗 口中使用变换控制按钮和鼠标; (2)使用 " 创建 / 编辑坐标系 " 对话框中常规属性下的变换类型进行。 详见 操作指南:旋转、缩放、平移、伸缩 。 坐标系变换指坐标系的位置和方向的变换。若只需要修改坐标系的位置和方向,而不影响指定给它的部件,需要在坐 标系定义模式下进行。上文已讲到如何进入坐标系定义模式。 重要说明!任意坐标系变换并不会改变坐标系定义 (若试图改变,将会出现错误提示对话框)。任意坐标系定义需要 在坐标系变换之前进行。若已经执行了某些坐标系变换,必须返回至坐标系变换模式,使用 " 复位工具和视口 " 对话 框 (点击 " 复位 …" 打开该对话框)来清除变换,之后才能重新定义坐标系。 Page 155 操作指南:创建和操纵坐标系 定义坐标系的步骤: 1、选择所需坐标系。 2、将变换 / 定义坐标系图标设置为定义模式。 此操作也可在 " 创建 / 编辑坐标系 " 对话框中进行, 其中的单选按钮显示了当前的模式状态。 3、可通过两种方式执行所需操作:(1)在图形窗口 中使用鼠标; (2)使用 " 创建 / 编辑坐标系 " 对话 框中常规属性下的变换类型进行。 要实时平移坐标系:将鼠标指针移至图形窗口中, 点击并拖动鼠标中键;要实时旋转坐标系:将鼠标 指针移至坐标系的一个坐标轴上,点击并按住鼠标 左键,拖动鼠标,点击 X 轴,将坐标系绕 Y 轴旋 转;点击 Y 轴,坐标系将绕 X 轴旋转;点击 Z 轴, 将绕 X 和 Y 轴旋转。 (可使用 " 常规 " 属性下的 " 变换类型 " 来使坐标 系绕 Z 轴旋转。) Page 156 操作指南:创建和操纵坐标系 使用 " 变换编辑器 " 对话框来精确定义坐标系: 1、点击坐标系 " 位置属性 " 图标。 打开坐标系定义模式的 " 创建 / 编辑坐标系 " 对话框。 2、选择所需坐标系。 4、在 XYZ 输入框内输入值以更改坐标系原 点 (记得按下回车键)。 ). 5、在方向向量输入框内输入值 (记得按下回 车键)。 注:按下回车键时,方向向量将重新归一化。 复位坐标系变换 使用 " 复位工具和视口 " 对话框,可将坐标系变换复位至默认位置和方向。清除坐标系变换的步骤: 1、选择所需坐标系。 2、确认 " 变换 / 定义坐标系 " 图标设置为变换模式。 3、点击变换控制区的 " 复位 …" 按钮,打开 " 复位工具和视口 " 对话框。 4、在 " 复位工具和视口 " 对话框中,点击相应按钮: 仅复位所选变换:仅清除变换控制区当前选定的 (如:旋转或平移)变换分量 复位旋转 / 平移 / 缩放:清除所有变换分量 详见 操作指南:复位工具和视口。 Page 157 操作指南:创建和操纵坐标系 设置坐标系属性 坐标系可显示为各种属性: 1、选择所需坐标系。 2、设置所需属性: Off 点击 " 轴线可见性 " 按钮,切换所选坐标系的坐标轴的 可见性。 On 点击 (打开颜色选择器)设置所选坐标系的坐标轴的 颜色。 点击 " 轴线线宽 " 下拉菜单,设置所选坐标系的坐标轴 线的线宽。 点击 " 轴线属性 " 图标,设置轴线属性 (如下文 所述)。 点击 " 计算对称 " 图标,设置平移、旋转或镜像对称 (如下文所述) 调整坐标轴线的长度。在 X、 Y、 Z 长度输入框 内输入值,并按下回车键。 在轴线上显示一系列等间距的标记 (显示距原 点的距离)。勾选各 " 轴线刻度 ",并在 " 数量 " 输入框内输入所需的标记数量,按下回车键。 点此选择计算对称的类型 (平移、旋转、 镜像)。 一旦类型选定,将打开相应的设置面板。 也可使用周期文件。 Page 158 操作指南:创建和操纵坐标系 查看部件所指定的坐标系 打开部件编辑器,可确定部件指定给了哪个坐标系 (也可更改)。 : 1、双击所需部件打开 " 创建 / 编辑部件 " 对话 框。 或 在部件列表中的部件上点击右键,选择 " 编 辑 …" 3、打开 " 常规 " 折叠按钮。 部件的当前坐标系编号显示在 " 参考坐标系 " 输入框内。可在该输入框内输入新的坐标系编 号并按下回车键,来将该部件重新指定给一个 不同的坐标系。 删除坐标系 坐标系可被删除。注:若当前有部件指定给某坐标系,则不可删除该坐标系。在删除之前,必须将指定给该坐标系的 所有部件指定给其他坐标系。 . 1、选择所需坐标系。 2、点击右键,选择删除。 另请参见 操作指南:设置对称, 操作指南:旋转、缩放、平移、伸缩, 操作指南:复位工具和视口 用户手册: Frame Mode Page 159 操作指南:复位工具和视口 复位工具和视口 简介 EnSight 支持不同实体的复合变换 (如:场景、工具、坐标系),通常需要清除全部或部分与实体有关的变换, " 复位 工具和视口 " 对话框提供了这项功能。 基本操作 清除全局变换或工具位置的步骤: 1、在工具图标栏的变换控制区,点击 " 图形窗口变换 " 图标,选择 " 复位 …",打开 " 复位工具和视口 " 对话框。 2、执行所需的操作。 3、点击关闭。 此操作仅会复位当前视口中的变换。在视 口上单击以选中该视口 (该视口变为绿 色),按住 ctrl 键 + 单击进行多选或取消 已选。 点击各按钮以复位相应的工具。 选择基于全局 XYZ 空间,还是 基于当前选定视口来复位 工具。 点此仅清除当前变换控制区中所选的变换 分量 (如:旋转或平移)。 点此清除所选视口中的所有变 换。注:缩放并非场景变换, 所以并不被清除。缩放通过移 动观测点 (照相机位置)来实 现。要清除缩放,点击 " 重新 初始化 "。 点此清除所有的变换以及复位照相机的观 测点 / 注视点,所有当前可见部件居中于 选定视口。此举还将变换中心重置为可见 部件的几何中心。 Page 160 操作指南:复位工具和视口 高级应用 " 复位工具和视口 " 对话框也可用于清除坐标系变换,详见 操作指南:创建和操纵坐标系中关于坐标系变换的部分。 清除坐标系变换的步骤:: 1、在坐标系列表中 Select 所需坐标系。 2、在变换控制区,点击 " 图形窗口变换 " 图标,选择 " 复位 …",打开 " 复位工具和视口 " 对话框。 3、执行所需操作。 4、点击关闭。 仅会复位当前视口中的坐标系变换。在 视口上点击以选中该视口。按住 ctrl 键 + 单击可多选或取消已选。 点此仅清除当前所选视口中选定的坐标 系在变换控制区中所选的变换分量 (如:旋转或平移)。 点此清除所选视口中选定坐 标系的所有变换。 另请参见 操作指南:旋转、缩放、平移、伸缩 , 操作指南:定义和更改视口 , 操作指南:创建和操纵坐标系 Page 161 操作指南:使用颜色选择器 使用颜色选择器 简介 EnSight 中的很多操作都需要用户选择颜色。 " 颜色选择 " 对话框始终贯穿用户界面,提供了功能强大且易用的颜色选 择机制。 基本操作 选择器使用了两种常用的颜色模式:RGB 和 HSV。 RGB 颜色模式与计算机处理颜色的模式一样,通过红、绿、蓝三 种颜色的比例来定义颜色。 HSV 颜色模式通过色相 (实际颜色中,红色等于 0.0 和 1.0,绿色等于 0.33,蓝色等于 0.66)、饱和度 (0.0 为白色, 1.0 为完全饱和)、亮度 (0.0 表示黑色, 1.0 表示最亮)的比例来定义颜色。 HSV 模 式常用于自定义混合色。 对话框中提供了三种选择颜色的方式: 1、在颜色单元格中选择预定义 的颜色。 2、使用鼠标在颜色盒子中移动 标记。 3、直接在 HSV (或 RGB,取 决于所选模式)输入框中输 入值,并按回车键。 该颜色方框中通常会显示出当前 选中的颜色。 一旦选定某个颜色,点击确定按钮,会将所选的颜色应用至当前编辑的对象 (如:部件、色阶、文字等)。 自定义颜色 若您经常使用到的颜色不存在于颜色单元格中,可点击 " 添加至自定义颜色 " 按钮将其存为一种自定义颜色。自定义 颜色将自动保存至后续的会话中。设置自定义颜色: %HOMEDRIVE%%HOMEPATH%\(username)\.ensight100,在 Vista 和 Win7 中,通常位于 C:\Users\username\.ensight100 ;早期版本的 Windows 下,通常位于 C:\Documents and Settings\yourusername\.ensight100 ; Linux 系统下,通常位于 ~/.ensight100 ; Mac 系统下,通常位于 ~/Library/ Application Support/EnSight100),其文件名为: ensight.colpal.default. 另请参见 用户手册 : Color Selector Page 162 操作指南:启用立体显示 启用立体显示 简介 EnSight 不仅支持被动立体显示 (参见操作指南:并行渲染设置),还支持主动立体显示,但工作站显卡必须具备四 缓冲 OpenGL 功能。主动立体能够在屏幕上快速显示左右眼交替视图,发射器向观察者所戴眼镜发射红外信号,含有 液晶装置的眼镜可交替开启和关闭左右眼透镜以响应发射器与显示器的同步信号,不断更新的频率使得观察者能够有 效地将左右眼视图融合为单个立体图像。 对于复杂几何体的显示,立体功能非常有用,尤其是显示诸如粒子追踪、轨迹带或离散粒子之类的非晶物体。值得一 提的是,企业的管理部门和客户通常对立体显示印象更深刻。 基本操作 在 EnSight 中,按下键盘上的 F12 键即启用立体显示,再次按下 F12 键返回至正常显示。眼距可通过 F10 和 F11 键 来控制, F10 增大眼距, F11 减小眼距。当 EnSight 使用了分离显示时 (参见操作指南:并行渲染设置 ),这些命令 将只影响分离显示屏,而 GUI 窗口则保持单场平面显示状态。 EnSight 用来运行立体图像的立体模式是两个物理相机取之一。这两个相机距离屏幕有一定距离,他们之间也有分开 的距离。我们用这两个相机给予左右眼视图。如果你的眼睛在这两个相机的位置,那么你看到的图像是完全正确的。 不过,在桌面立体显示下,我们没有头部追踪,要完全一致是非常困难的。幸运的是,大脑非常擅长于投影的差异补 偿,并且对投影的不准确有惊人的容忍度 (可以在当地的 3D 影院固定投影中见证)。 然而,当几何体越来越近,更靠近眼睛时,大脑的这种补偿功能往往会失效。当接近屏幕边界的几何体被裁剪时,也 会失效。在那些情况下,大脑拒绝把图像 " 融合 " 成一个单一的三维图像。为了弥补这个缺陷, EnSight 允许你改变 眼睛的分离。你可以使用功能键 (F10 和 F11)调整立体分离,或者,你可以直接调整数字命令: ensight.objs.core.STEREO_SEPARATION = 5.0 无论是在 Python 命令窗口或命令语言的命令窗口 (" 文件 ">" 命令),甚至在命令文件 (ENC 档案)或 Python 文件 (.py 文件)调整当前值。这些数字是没有任何特定的相隔单位的 (我们需要知道该屏幕的 DPI),眼睛距离越近,数 字越大;数字越小,则眼睛越分开。在眼间距离固定的情况下,把它看作一个观众离屏幕的距离。因此,头的位置已 不言而喻。它直接在图像中心,在与屏幕有着一段距离的地方。 配置显示器 在绝大多数操作系统下,显示器的立体显示功能默认均未初始化。一般而言,四缓冲立体要求显示器的刷新频率在 96Hz 以上。对于一些显示器,有必要降低屏幕分辨率以适应较高的刷新率。在更改刷新率之前,请查看显示器 说明书。 这里介绍了一种确定显示器是否具备立体功能的方法。使用命令行运行 "cei_apex30_glinfo",在 OpenGL 图形部分查 找有 y 值的行,其中列为 'st' 或 'stro',若没有,则当前显示参数不支持立体显示。 以下是针对不同操作系统配置文件的说明,均已在 EnSight 中测试通过。如果有疑问,请参考 OpenGL 以及 X 服务 器 (Unix)或视频适配器驱动 (Windows)的系统说明书。 Linux 在 Linux 下,专业显卡一般均支持立体 OpenGL,驱动说明书可在显卡供应商的网站上下载。 MS Windows Windows 系统下的立体配置文件取决于安装的显卡驱动。在桌面背景上点击右键,选择 " 属性 " 打开 " 显示属性 " 对话框。查找 "OpenGL 属性 " 或 " 高级 " 选项卡,找出立体选项。通常会有一个启用立体显示的按钮,一般都需要 重启电脑才能生效。若立体仍不能正常运行,尝试改变显示器分辨率,因为在高分辨率下立体可能不可用。 Page 163 操作指南:拾取变换中心 拾取变换中心 简介 EnSight 允许用户选取模型变换的中心。 基本操作 1、在工具图标栏上点击 " 拾取 " 按钮。 2、选择 " 拾取变换中心 "。 3、将鼠标指针置于模型上所需作为变换中心的位置。 4、按下 "p" 键 (或编辑 > 首选项 > 鼠标和键盘下设置为 " 选定的拾取操作 " 的鼠标按钮)。 模型将会绕着刚刚选取的位置旋转。 也可使用变换编辑器,设置变换中心的精确位置。 . 1、点击 " 图形窗口变换 " 按钮,选择 " 位置变换 编辑器 …" 2、在 " 编辑器功能 " 下,选择 " 变换中心 "。 3、在弹出的对话框中输入精确的变换中心位置的 X、 Y、 Z 坐标值。 注:点击 " 适合视口大小 " 或 " 重新初始化变换 " 图标将复位变换中心 为可见部件的几何中心。 另请参见 Page 164 操作指南:设置模型轴线 / 限位框 设置模型轴线 / 限位框 简介 EnSight 提供了模型轴线和限位框以帮助定位模型。 . 基本操作 模型定向轴线 模型轴线有助于用户了解模型参照系的主方向,这在模型变换过程中尤为有用。默认情况下为开启状态,也可通过以 下方式切换开 / 关: 视图 > 坐标轴可见性 > 模型 Page 165 操作指南:设置模型轴线 / 限位框 模型限位框 模型限位框同样有助于维护模型的三维空间信息。 . 点击 " 视图 > 模型限位框可见性 ",显示模型范围 设置与模型限位框相关的各种属性: 1、在视口列表面板中双击所需视口。 2、打开 " 限位方框 " 折叠按钮。 3、修改各种常规或高级属性。 另请参见 用户手册: Part Bounds Attributes Page 166 操作指南:视口追踪 视口追踪 简介 EnSight 可以 " 追踪 " 视口中显示的模型部件上的特定位置。追踪意味着随着时间的变化,视口将一直保持以所选位 置为中心。这对于几何体变化或有位移的模型非常有用,它允许在动画过程中聚焦运动的几何体。 基本操作 视口有各种显示属性: 1、双击所需视口,(或在所需视口上点击右键,选 择编辑 …) 2、打开 " 视图属性 "。 3、选择 " 跟踪 " 类型。 5、输入恰当的节点或部件编号。 6、改变时间步,加载瞬态动画书。 注:视口会一直保持以所选位置为中心。 另请参见 操作指南:定义和更改视口 用户手册: VPort Mode Page 167 操作指南:通过照相机观察视口 通过照相机观察视口 简介 全局变换模式定义了视图位置,可以变换 (平移和旋转)场景,照相机模式与之有所不同,该模式下的场景保持不 动,取而代之的是,通过照相机来观察场景,照相机可被定位于任意位置和方向,还可以有特定的 " 倾斜角 "。 视口可以是全局变换模式 (默认),也可绑定照相机;局部变换在这两种模式下均有效。通过照相机观察视口:(a) 必须定义照相机的位置和方向,(b)视口必须绑定照相机。 基本操作 任一视口均可通过照相机来观察 1、点击工具图标栏的变换图标,选择 " 位置变换 编辑器 …" 2、在弹出的 " 变换编辑器 (全局变换) " 对话框中选 择需要通过照相机观察的 视口 3、在 " 绑定视口至照相机 " 的下拉菜单中选择照相机。 设置为 " 无 " 时,将使用全局变换模式。 若通过照相机观察视口,则交互的变换 (在视口中点击并拖动鼠标按钮)将只影响照相机的位置和方向。默认情况 下,照相机为隐藏状态。 共有 8 个可操纵的照相机。默认情况下,它们的位置为 +/- XYZ 轴以及 -1 -1 -1 和 1 -1 -1 处。 定位照相机: 1、在绑定照相机的视口中点击并拖动,照相机的位置将发生变化。 或 1、在未绑定照相机的视口中,会看到照相机图标 (照相机必须为显示状态)。可点击照相机的中心点将其拖至新的 位置。点击并拖动照相机的轴将旋转照相机。 OR 1. You can set the Pick option on the tool ribbon to position/orient the camera 2. Place the mouse pointer over the desired location on a part in any of the viewports in the graphics window and press the 'p' key (or whatever mouse button you have set for the "Selected Pick Action" in Edit->Preferences->Mouse and Keyboard). Depending on which pick action was chosen the camera will be positioned or oriented according to the pick. 可选取样条曲线控制点作为照相机位置点,此时,照相机将基于样条曲线定位。 Page 168 操作指南:通过照相机观察视口 显示照相机图标: 1、打开位置变换编辑器。 2、选择编辑器功能 > 照相机 3、选择所需照相机。 4、勾选 " 显示 "。 在照相机变换编辑器中定位照相机 1、若原点设置为 XYZ,则定位照相机的 X、 Y、 Z 坐标将显 示于此。 若原点设置为样条曲线,则照相机将位于样条曲线上。 若原点设置为节点,则照相机将位于指定的节点上。 2、照相机的方位由相机的视角方向和顶部向量控制。若聚 焦点设置为节点或 XYZ,则视角向量由节点 /XYZ 位置 定义。 设置照相机的其他属性: 1、视角控制了照相机的视野。较小值模拟长焦镜头,而较 大值模拟广角镜头。 2、尺寸用来设置照相机图标的大小。使用向上 / 向下箭头将 以 2 为倍数来增大 / 减小图标尺寸。 高级应用 1、若照相机原点为样条曲线,则移动照相机将使得照相机沿着样条曲线移动。 2、若照相机的 " 原点 " 或 " 聚焦 " 设置为节点,则照相机将随着节点位置的变化而变化。 另请参见 操作指南:使用样条曲线工具 Page 169 操作指南:管理视图 管理视图 简介 EnSight 的数据模型和所有视口的视图参数均可保存并恢复。视图以缩略图的形式来描绘,该缩略图包含了当前显示 数据的所有视图参数信息。 有了视图管理器,用户可使用简单的点选式来实现创建、保存、恢复及应用视图参数 基本操作 在 EnSight 图形窗口背景上点击右键,选择视图 > 创建新视 图,从而打开视图管理器对话框 或在工具图标栏上点击 " 图形窗口视图定向 " 图标,选择 " 视图 …" 或在主菜单上点击 " 窗口 > 视图管理器 …" 对话框如下图所示。 (初始状态,视图管理器不含任何视图的缩略图) 点击 " 新建 " 按钮 (或在 " 用户定义视图 " 的任意空 白区域点击右键,选择 " 新建 ")将使用图形窗口下 的当前方位和视图参数创建新视图。 点击 " 保存视图 " 将打开 " 文件浏览 " 对话框,用户 可选择存放目录。管理器分别将各视图写入不同的 EnSight 视图文件 (命名顺序为 "view0"、 "view1"、 "view2"…),最多可创建 16 个视图。 点击 " 恢复视图 " 将打开 " 文件浏览 " 对话框,选择 包含 EnSight 视图文件的目录,点击 " 选择 "。该目 录下的所有视图均将载入并以当前载入数据的缩略 图显示。注:" 恢复视图 " 仅查找由 EnSight8.2.1(e) 或较新版本的 EnSight 创建的视图。由早期的软件 版本创建的视图需通过右击菜单单独载入,我们后 面再做解释。 注:恢复视图时,文件浏览窗口存在 " 缩略图显示为存储 的图像 " 选项,若勾选该选项,则在缩略图中显示当初存 储的图像,而非当前载入的图像。若当前图像需要很长 时间来渲染,则此举十分有效。 Page 170 操作指南:管理视图 点击任一 " 标准视图 " 将使图形窗口显示为相应视 图,并不会在 " 用户定义视图 " 区域创建视图。 使用鼠标左键点击缩略图按钮,将在 EnSight 图形 窗口中应用该视图。 点击鼠标右键,将显示两种弹出菜单。 若在缩略图上点击右键, 弹出菜单如右图所示。 若在缩略图绘制区域的背景 上点击右键,将显示该菜单。 各菜单项详解如下:: 应用 与在选定的缩略图按钮上点击鼠标左键执行相同的操作。 添加为关键帧 (20) 使用该视图添加一个关键帧,子帧数为 20。 编辑关键帧帧数 弹出输入子帧数的窗口,输入帧数,然后再在该视图处添加一个关键帧。 替换 以 EnSight 图形窗口中的当前显示状态替换缩略图按钮的视图参数和图形。 更新图像 视图参数保持不变的情况下,使用当前载入数据替换缩略图按钮的图像。 删除 删除所选缩略图及相关的视图参数。注:若视图与 EnSight 视图文件相关,文件不会被 删除。 另存为 … 显示文件浏览窗口,用户可为该视图指定另一个文件名或存储目录。 新建 使用当前显示的模型数据和所有视口,创建一个新视图按钮。 更新所有图像 对所有的缩略图按钮执行与 " 更新图像 " 相同的操作。 删除全部 对所有的缩略图按钮执行与 " 删除 " 相同的操作。 恢复 …. 打开 " 文件浏览 " 对话框,用户选择需要载入的 EnSight 视图文件。注:该选项允许用 户载入所有软件版本创建的视图文件。 另请参见 Page 171 操作指南:使用光标 (点)工具 Manipulate Tools 使用光标 (点)工具 简介 EnSight 提供了一种三维点工具,称为 " 光标 " 工具。该工具显示为以红 (X 轴)、绿 (Y 轴)、蓝 (Z 轴)着色的三 维十字型。光标工具为 EnSight 提供点信息,如:指定查询位置或点发射粒子追踪的位置。 基本操作 通常,若所执行的操作需要用到光标工具,该工具将自动打开。也可通过工具菜单或工具图标栏上的光标按钮来手动 打开或关闭。 . 光标工具可用三种方式定位:1、使用鼠标直接交互操纵; 2、将鼠标指针置于部件上,点击 "p" 键; 3、在对话框中 输入坐标值来精确定位。 使用鼠标定位光标工具: 1、将鼠标指针置于工具中心。 注:当鼠标指针位于光标中心时,鼠标指针将发生变化。 2、点击 (并按住)鼠标左键。 3、将光标拖至所需位置。 4、松开鼠标按钮。 (屏幕右下角的撤销 / 恢复按钮,可用来撤销 / 恢复工具变换) 光标的平移仅限于与视线垂直的平面。若需要在另一个平面内移动光标,可旋转模型使得所需的平移面与视线垂直。 (注:光标无法精确追踪鼠标指针的位置。) 使用 "p" 键在部件上定位光标: 1、打开光标工具。然后点击 " 拾取 " 图标。 2、在弹出菜单中选择 " 选取光标工具位置 "。 3、将鼠标指针置于图形窗口中部件上的所需位置,点击 "p" 键 (或在编辑 > 首选项 > 鼠标和键盘下设置为 " 选 定的拾取操作 " 的鼠标按钮)。通常默认鼠标中键也执行 拾取操作。 Page 172 操作指南:使用光标 (点)工具 通过坐标值设置光标: 1、点击 " 工具位置设置 " 按钮,选择 " 工具位 置编辑器 …",打开 " 变换编辑器 " 对话框。 2、若变换编辑器中显示的并非光标工具,点击编 辑器功能 > 工具。 3、在 X、 Y 和 Z 输入框内输入所需坐标值,按下 回车键。 也可在 " 关于轴 " 处选择平移轴,并操纵滑动条来移动光标。在这种情况下, " 数值范围设置 " 部分将设置滑块的增量 和范围。 注:由于 X,Y,Z 值总是随着拾取的位置不断更新,可使用该对话框来查看 (非设置)光标的位置。若正在使用鼠标定 位光标,则数值将在鼠标按钮松开时实时更新。 快捷键 在光标工具上点击右键,可隐藏工具 (使其不可见)、编辑工具 (打开变换编辑器)、使用工具快速执行变量随时间 变化的查询或发射粒子追踪。 高级应用 模型载入之后,光标的初始位置为 " 观测点 "-- 即,所有可见几何体的几何中心。光标的坐标为默认坐标系 frame0 下 的坐标。然而,若已创建新坐标系,则可相对于不同坐标系的原点设置光标,在 " 变换编辑器 " 对话框的 " 选择坐标 系 " 列表中选择所需坐标系即可。 也可将光标工具的位置和方向恢复至默认值。详见操作指南:复位工具和视口。 使用二维设备 (鼠标)定位三维工具比较困难。采用多个视口有助于定位工具,因为这样可以同时从多个角度查看工 具。 另请参见 其他工具:光标、直线、平面、方框、圆柱、圆球、回转曲面。参见操作指南中有关坐标系的章节,以获取坐标系如 何影响工具的其他信息。 用户手册: Tools Menu Functions Page 173 操作指南:使用直线工具 使用直线工具 简介 EnSight 提供了一种三维线型工具,称为 " 直线 " 工具。该工具显示为中心点带有坐标系并且其中一端带箭头的线 (通常为白色)。直线工具为 EnSight 提供线型参数,如:指定直线剪切的位置或直线发射粒子追踪的位置。 基本操作 通常,若所执行的操纵需要用到直线工具,该工具将自动打开。也可通过工具菜单或工具图标栏上的 " 显示直线 工具 " 按钮来手动打开或关闭。 直线工具可用三种方式定位或操纵:1、使用鼠标直接在工具的 " 关键点 " 上交互操纵; 2、将鼠标指针置于部件上, 点击 "p" 键; 3、在对话框中输入坐标值来精确定位,或关于轴线旋转工具。若设置了选取表面法向,直线将会一直 保持与表面垂直 . 使用鼠标移动直线工具: 1、将鼠标指针置于工具中心。 2、点击 (并按住)鼠标左键。 3、将直线拖至所需位置。 4、松开鼠标按钮。 使用鼠标拉伸直线工具: 1、将鼠标指针置于直线的任一端点。 2、点击 (并按住)鼠标左键。 3、拖动端点至所需位置。 4、松开鼠标按钮。 使用鼠标旋转直线: 1、将鼠标指针置于工具中心的坐标系上任一轴线的末端。 2、点击 (并按住)鼠标左键。 3、拖动鼠标直到直线旋转至所需位置。 4、松开鼠标按钮。 注:选择 X 轴末端,将绕 Y 轴旋转;选择 Y 轴末端,将绕 X 轴旋转;选择 Z 轴末端,将绕中心点 旋转。 注:当鼠标指针位于关键点上时,鼠标指针将发生变化。 (屏幕右下角的撤销 / 恢复按钮,可用来撤销 / 恢复工具变换) 直线的移动和拉伸仅限于与视线垂直的平面。若需要在另一个平面内移动直线,可旋转模型以使得所需的平移面与视 线垂直。(注:直线无法精确追踪鼠标指针的位置。) Page 174 操作指南:使用直线工具 使用 "p" 键在部件上定位直线: 1、在工具图标栏点击 " 拾取 " 图标。 2、在弹出菜单中选择 " 选取直线工具位置 "。 在图形窗口中,将鼠标指针置于部件上直线的第一个端 点处,点击 "p" 键 (或在编辑 > 首选项 > 鼠标和键盘下 设置为 " 选定的拾取操作 " 的鼠标按钮)。通常默认鼠标 中键也执行拾取操作。 4、移动鼠标指针至直线的第二个端点处,再次点击 "p" 键或按 下鼠标中键。 若选择 " 使用两点 ",拾取的位置即为线的端点。 若选择 " 使用两节点 ",端点将为与拾取的位置最近的节点, 同时系统将会记录下该两个节点的编号,即使它们的位置发生 变化,直线工具也将一直保持与该两节点关联。 . 通过坐标值设置直线: 1、点击 " 工具位置设置 " 按钮,选择 " 工具位置编辑器 …",打开 " 变换编辑器 " 对话框。 2、若变换编辑器中显示的并非直线工具,则点击 编辑器功能 > 工具。 3、在 X、 Y 和 Z 输入框内输入端点的坐标值,按 下回车键。 3、也可输入模型中的两个节点编号。 此举将保持直线工具一直绑定于该两个节点 -即使它们的位置随时间变化 . 注:长度输入框 -- 在下文的高级应用中会讲到。 也可通过设置恰当的变换类型、所需轴线以及操纵滑动条来旋转、平移或缩放直线工具。在这种情况下, " 数值范围 设置 " 部分将设置滑块的增量和范围。 注:由于 X,Y,Z 值总是随着拾取的位置不断更新,可使用该对话框来查看 (非设置)直线的位置。若正在使用鼠标定 位直线,则数值将在鼠标按钮松开时实时更新。 Page 175 操作指南:使用直线工具 快捷键 在直线工具的中心点上点击右键,可快速执行绕 x 或 y 轴的旋转、隐藏工具、打开变换编辑器。也可使用右击来快速 创建直线剪切、查询变量、或以该直线工具作为发射器发射粒子追踪。 高级应用 模型载入之后,直线中心点的初始位置为 " 观测点 "-- 即,所有可见几何体的几何中心。直线端点的坐标为默认坐标系 frame0 下的坐标。然而,若已创建新坐标系,也可相对于不同坐标系的原点设置直线,在 " 变换编辑器 " 对话框的 " 选择坐标系 " 列表中选择所需坐标系即可。 也可轻松地将直线工具的位置和方向恢复至默认值。详见操作指南:复位工具和视口。 使用二维设备 (鼠标)定位三维工具比较困难。采用多个视口有助于定位工具,因为这样可以同时从多个角度查看工 具。 要查询带有节点编号的两节点间的距离,可使用预定义函数 Dist2Nodes。然而,若要查询不同部件上的两节点间的 距离,或其中一个节点没有编号,此时,可使用直线工具。点击 " 拾取 " 图标,选择 " 选取直线工具位置 -> 使用两节 点 ",移动光标至第一个节点附近,点击 "p" 键,再移至第二个节点处,点击 "p" 键,打开变换编辑器,在变换编辑器 菜单下,点击编辑器功能 > 工具 > 直线,便可查出直线工具的长度,即为两点间的距离。 另请参见 其他工具:光标、直线、平面、方框、圆柱、圆球、回转曲面。参见操作指南中有关坐标系的章节,以获取坐标系如 何影响工具的其他信息。 用户手册: Tools Menu Functions Page 176 操作指南:使用平面工具 使用平面工具 简介 EnSight 提供了一种平面型工具,称为 " 平面 " 工具。该工具显示为在中心点带有坐标轴的矩形框 (通常为白色), 平面也可 " 填充 " 为半透明状态。平面工具为 EnSight 提供平面参数,如:指定平面剪切的位置或平面发射粒子追踪 的位置。 基本操作 通常,若所执行的操纵需要用到平面工具,该工具将自动打开。也可通过工具菜单 (工具 > 平面)或工具图标栏上的 " 显示平面工具 " 按钮来手动打开或关闭。 平面工具可用三种方式定位:1、使用鼠标直接在工具的 " 关键点 " 上交互操纵; 2、将鼠标指针置于部件上,点击 "p" 键; 3、在对话框中输入坐标值来精确定位。 . 使用鼠标移动平面: 1、将鼠标指针置于工具中心。 2、点击 (并按住)鼠标左键。 3、将平面拖至所需位置。 4、松开鼠标按钮。 使用鼠标关于平面中心拉伸平面: 1、将鼠标指针置于平面的任一角点。 2、点击 (并按住)鼠标左键。 3、拖动角点至所需位置。 4、松开鼠标按钮。 Z Y X 若要固定平面工具的一个角,执行与上述相同的操作,只是需要在点击并 拖动角点时,按住 ctrl 键 (与拖动的角点相对的角点保持固定)。 使用鼠标旋转平面工具: 1、将鼠标指针置于平面工具中心的坐标系上任一轴线处 (X、 Y 或 Z)。 2、点击并拖至所需方向。点击 X (Y)标签将绕 Y (X)轴旋转。点击 Z 标签将绕平面中心点自由旋转。 注:当鼠标指针位于关键点上时,鼠标指针将发生变化 (屏幕右下角的撤销 / 恢复按钮,可用来撤销 / 恢复工具变换) 平面的移动仅限于与视线垂直的平面。若需在另一个平面内移动平面工具,可旋转模型以使得所需的平移面与视线垂 直。(注:平面无法精确追踪鼠标指针的位置。) Page 177 操作指南:使用平面工具 使用 "p" 键在部件上 (通过 3 个点)定位平面: 1、打开平面工具,点击 " 拾取 " 按钮。 2、在弹出菜单中,选择 " 拾取平面工具位置 > 使用三点 "。 3、在图形窗口中,将鼠标指针置于部件上,点击 "p" 键 (或在编辑 > 首选项 > 鼠标和键盘下设置为 " 选定的拾 取操作 " 的鼠标按钮)。 4、重复上述动作两次。注:并非指定平面角点 -- 只是三个 独立点。 也可使用三个节点 (与上述三点不同,这里指的是与所拾取位置最近的三个节点)来定位平面工具。平面的方位会一 直保持更新,以便与所选的三个节点关联,即使节点位置发生变化,平面工具也将一直保持与该三节点关联。 指定三节点来定位平面:: 1、打开平面工具,点击 " 拾取 " 按钮。 2、在弹出菜单中,选择 " 拾取平面工具位置 > 使用 三节点 "。 3、在图形窗口中,将鼠标指针置于部件上,在所需的节点 附近,点击 "p" 键 (或在编辑 > 首选项 > 鼠标和键盘下 设置为 " 选定的拾取操作 " 的鼠标按钮)。 4、重复上述动作两次。注:并非指定平面角点 -- 只是三个 独立节点。 若此时打开位置变换编辑器, 假设仅执行了上述操作,打开的应为定位平面工具的编辑 器。若不是,则点击编辑器功能 > 工具 > 平面,便可看到 所选的三个节点的编号。 Page 178 操作指南:使用平面工具 也可通过在屏幕上绘制直线来定位平面工具。平面将一直保持与指定直线平行,并且与屏幕垂直。 指定直线来定位平面:: 1、打开平面工具,点击 " 拾取 " 按钮。 2、在弹出菜单中,选择 " 拾取平面工具位置 > 使用两点 "。 3、将鼠标指针移至图形窗口中,点击 "p" 键,然后将指针 至于所需的起始点,点击并拖动鼠标以获取所需直线。 4、松开鼠标按钮。 还可通过拾取原点 (平面中心点)并指定法向来定位平面工具。需要执行两个拾取操作来完成。 拾取原点并执行法向定位平面:: 1、打开平面工具,点击 " 拾取 " 按钮。 2、在弹出菜单中,选择 " 拾取平面工具位置 > 原点 "。 3、将鼠标指针移至图形窗口中,并置于平面工具的中心, 点击 "p" 键。 4、在弹出菜单中选择 " 拾取平面工具位置 > 法向 "。 5、将指针置于法向向量上 (从平面工具的中心点开始)的 点,点击 "p" 键。 Page 179 操作指南:使用平面工具 指定参数精确定位平面: 1、打开平面工具,在工具图标栏上打开 " 位置变换编 辑器 "。 2、通过 " 编辑器功能 > 工具 > 平面 ",将编辑器 设置为平面工具模式。 3、输入原点坐标、法向量分量、 x 和 y 方向尺 寸,按下回车键。 –或– 3、输入三个节点编号,按下回车键。 – 或– 3、输入平面方程的参数 (Ax + By + Cz = D),按 下回车键。 – 或– 3、在 X、 Y、 Z 输入框内输入三个角点坐标,按 下回车键。 也可通过选择变换类型、设置轴线以及操纵滑动条来旋转、平移或缩放平面。在这种情况下, " 数值范围设置 " 部分 将设置滑块的增量和范围。 注:由于 X,Y,Z 值总是随着拾取的位置不断更新,可使用该对话框来查看 (非设置)平面的位置。若正在使用鼠标定 位平面,则数值将在鼠标按钮松开时实时更新。 屏幕右下角的撤销 / 恢复按钮,可用来撤销 / 恢复工具变换。 快捷方式 在平面工具中心点上点击右键,可快速执行绕 x 或 y 轴的旋转、缩放工具尺寸、隐藏工具、打开变换编辑器。也可使 用右击来快速创建平面剪切、以该平面工具作为发射器发射粒子追踪。 高级应用 模型载入后,平面中心点的初始位置为 " 观测点 "-- 即,所有可见几何体的几何中心,并与 X-Y 平面平行。平面的坐 标为默认坐标系 frame0 下的坐标。然而,若已创建新坐标系,则可相对于不同坐标系的原点设置平面,在变换对话 框下的 " 选择坐标系 " 列表中选择所需坐标系即可。 也可将平面工具的位置和方向恢复至默认值。详见操作指南:复位工具和视口。 Page 180 操作指南:使用平面工具 默认情况下,平面工具以线框形式显示。可在编辑 > 首选项 …> 视图中勾选 " 填充平面工具 ",将平面工具显示为半 透明填充状态。 使用二维设备 (鼠标)定位三维工具比较困难。采用多个视口有助于定位工具,因为这样可以同时从多个角度查看工 具。 另请参见 其他工具:光标、直线、平面、方框、 圆柱、圆球、回转曲面。参见操作指南中有关坐标系的章节,以获取坐标系如 何影响工具的其他信息。 平面工具也可用来指定辅助切面的位置。 用户手册: Tools Menu Functions Page 181 操作指南:使用方框工具 使用方框工具 简介 EnSight 提供了一种六面体型的工具,简称 " 方框 " 工具。该工具显示为在一角上带有坐标轴线的线框 (通常为白 色)。方框工具为 EnSight 提供特定的三维体参数,如:指定方框剪切的位置。 基本操作 通常,若所执行的操纵需要用到方框工具,该工具将自动打开,也可在主菜单下点击 " 工具 > 方框 " 来手动打开或 关闭。 方框工具可用两种方式定位:1、使用鼠标直接在工具的 " 关键点 " 上交互操纵; 2、在对话框中输入坐标值来精确 定位。 使用鼠标移动方框工具: 1、将鼠标指针置于工具原点。 2、点击 (并按住)鼠标左键。 3、将方框拖至所需位置。 4、松开鼠标按钮。 使用鼠标拉伸方框工具: 1、将鼠标指针置于任意角点 (除了原点)。 2、点击 (并按住)鼠标左键。 3、拖动端点至所需大小。 4、松开鼠标按钮。 使用鼠标旋转方框工具: 1、将鼠标指针置于 x、 y 或 z 轴的轴线上 (非端点上)。 2、点击并拖动,使其旋转。 注:点击 X 轴,将使方框绕 Y 轴旋转;点击 Y 轴, 将绕 X 轴旋转;点击 Z 轴,将绕原点旋转。 注:当鼠标指针位于关键点上时,鼠标指针将发生 变化。 (屏幕右下角的撤销 / 恢复按钮,可用来撤销 / 恢复工 具变换) 方框工具的移动和拉伸均在三维空间。(注:方框工具无法精确追踪鼠标指针的位置。) Page 182 操作指南:使用方框工具 通过坐标值设置方框工具: 1、点击 " 工具位置设置 " 按钮,选择 " 工具位 置编辑器 …",打开 " 变换编辑器 " 对话框。 2、若显示的不是方框工具对话框 (参看对话 框标题),则点击 " 编辑器功能 > 工具 > 方 框 "。 3、设置位置和尺寸,输入原点坐标以及各 方向的长度,按下回车键。 4、设置方向,输入正交轴线方向向量的 分量。 也可通过选择变换类型、设置轴线以及操纵滑动条来旋转、平移或拉伸方框工具。 其中 " 数值范围设置 " 部分设置滑 块的增量和范围。 注:由于数值总是随着所选位置、尺寸和方向在不断更新,可使用该对话框来查看 (非设置)方框工具的位置。若正 在使用鼠标定位方框工具,则数值将在鼠标按钮松开时实时更新。 快捷键 在方框工具的各角点点击右键,可执行快速隐藏工具、打开变换编辑器。 高级应用 模型载入后,方框工具中心点的初始位置为 " 观测点 "-- 即,所有可见几何体的几何中心,并与模型轴对齐。方框工具 的坐标为默认坐标系 frame0 下的坐标。然而,若已创建新 坐标系,则可相对于不同坐标系的原点设置方框工具,在 变换对话框下的 " 选择坐标系 " 列表中选择所需坐标系即可。 也可将方框工具的位置和方向恢复至默认值。详见 操作指南:复位工具和视口。 使用二维设备 (鼠标)定位三维工具比较困难。采用多个 视口有助于定位工具,因为这样可以同时从多个角度查看 工具。 Page 183 操作指南:使用方框工具 另请参见 其他工具: 光标、 直线、 平面、 方框、 圆柱、圆球、 回转曲面。参见操作指南中有关 坐标系的章节,以获取坐标系如 何影响工具的其他信息。 用户手册: Tools Menu Functions Page 184 操作指南:使用圆柱工具 使用圆柱工具 简介 EnSight 提供了一种圆柱型的工具,简称 " 圆柱 " 工具。该工具显示为带有中心轴线的圆柱 (通常为白色)图标,其 中坐标系位于中心轴线的中心。圆柱工具为 EnSight 提供特定的圆柱参数,如:指定圆柱剪切的位置。 基本操作 通常,若所执行的操纵需要用到圆柱工具,该工具将自动打开,也可在主菜单下点击 " 工具 > 二次曲面 > 圆柱 " 来手 动打开或关闭。 圆柱工具可用两种方式定位:1、使用鼠标直接在工具的 " 关键点 " 上交互操纵; 2、在对话框中输入坐标值来精确 定位。 . 使用鼠标移动圆柱: 1、将鼠标指针置于工具中心 2、点击 (并按住)鼠标左键。 3、将圆柱拖至所需位置。 4、松开鼠标按钮。 使用鼠标拉伸圆柱工具 1、将鼠标指针置于中心线的任一端点。 2、点击 (并按住)鼠标左键。 3、拖动端点至所需位置。 4、松开鼠标按钮。 使用鼠标更改圆柱半径: 1、将鼠标指针置于中心环上。 2、点击并拖至所需半径。 3、松开鼠标按钮。 使用鼠标旋转圆柱: 1、将鼠标指针置于中心轴上坐标系轴线的任一末端。 2、点击并拖动直至完成所需的旋转。 3、松开鼠标按钮。 注: 选择 x 轴,将关于 Y 轴旋转。 选择 y 轴,将关于 X 轴旋转。 选择 z 轴,将关于原点旋转。 注:当鼠标指针位于关键点上时,鼠标指针将发 生变化。 (屏幕右下角的撤销 / 恢复按钮,可用来撤销 / 恢 复工具变换) Page 185 操作指南:使用圆柱工具 圆柱的移动和拉伸仅限于与视线垂直的平面。若需要在另一个平面内移动圆柱,可旋转模型以使得所需的平移面与视 线垂直。(注:圆柱无法精确追踪鼠标指针的位置。) 通过坐标值设置圆柱: 1、点击 " 工具位置设置 " 按钮,选择 " 工具位 置编辑器 …",打开 " 变换编辑器 " 对话 框。 2、若面板未设置为圆柱工具,则点击 " 编辑器 功能 > 工具 > 圆柱 "。 3、输入位置点 (圆柱中心点)坐标、轴线 向量、半径,按下回车键。 也可通过设置变换类型、轴线以及操纵滑动条来旋转、平移和缩放圆柱。其中, " 数值范围设置 " 部分设置滑块的增 量和范围。 注:由于数值总是随着选取的位置不断更新,可使用该对话框来查看 (非设置)圆柱的位置。若正在使用鼠标定位圆 柱,则数值将在鼠标按钮松开时实时更新。 高级应用 模型载入后,圆柱中心的初始位置为 " 观测点 "-- 即,所有可见几何体的几何中心,并与 X 轴对齐。圆柱的坐标为默 认坐标系 frame0 下的坐标。然而,若已创建新坐标系,则可相对于不同坐标系的原点设置圆柱,在变换对话框下的 " 选择坐标系 " 列表中选择所需坐标系即可。 也可将圆柱工具的位置和方向恢复至默认值。详见操作指南:复位工具和视口。 使用二维设备 (鼠标)定位三维工具比较困难。采用多个视口有助于定位工具,因为这样可以同时从多个角度查看工 具。 另请参见 其他工具:光标、直线、平面、方框、圆柱、圆球、回转曲面。参见操作指南中有关坐标系的章节,以获取坐标系如 何影响工具的其他信息。 用户手册: Tools Menu Functions Page 186 操作指南:使用圆球工具 使用圆球工具 简介 EnSight 提供了一种球型工具,称为 " 圆球 " 工具。该工具显示为带有中心轴线的球形图标 (通常为白色),坐标系 位于中心轴线的中心。圆球工具为 EnSight 提供球型参数,如:指定圆球剪切的位置。 基本操作 通常,若所执行的操纵需要用到圆球工具,该工具将自动打开,也可在主菜单下 " 工具 > 二次曲面 > 圆球 " 来手动打 开或关闭。 圆球工具可用两种方式定位:1、使用鼠标直接在工具的 " 关键点 " 上交互操纵; 2、在对话框中输入坐标值来精确 定位。 使用鼠标移动圆球: 1、将鼠标指针置于工具中心。 2、点击 (并按住)鼠标左键。 3、将圆球拖至所需位置。 4、松开鼠标按钮。 使用鼠标拉伸圆球: 1、将鼠标指针置于中心线的任一端点。 2、点击 (并按住)鼠标左键。 3、拖动端点至所需位置。 4、松开鼠标按钮。 使用鼠标旋转圆球: 1、将鼠标指针置于中心轴上坐标系轴线的任一末端。 2、点击并拖动直至完成所需的旋转。 3、松开鼠标按钮。 注: 选择 x 轴,将关于 Y 轴旋转。 选择 y 轴,将关于 X 轴旋转。 选择 z 轴,将关于原点旋转。 注:当鼠标指针位于关键点上时,鼠标指针将发生变化。 (屏幕右下角的撤销 / 恢复按钮,可用来撤销 / 恢复工具变换) 圆球的移动和拉伸仅限于与视线垂直的平面。若需在另一个平面内移动圆球,可旋转模型以使得所需的平移面与视线 垂直。(注:圆球无法精确追踪鼠标指针的位置。) Page 187 操作指南:使用圆球工具 通过坐标值设置圆球 1、点击 " 工具位置设置 " 按钮,选择 " 工具位 置编辑器 …",打开 " 变换编辑器 " 对话 框。 2、若面板未设置为圆球工具,则点击 " 编辑器 功能 > 工具 > 圆球 "。 3、输入位置点 (圆球中心点)坐标、轴线 向量、半径。 i 若基于球面创建提升面,需要清楚轴线方向如何影 响该操作。(参见 操作指南:创建提升面 ) 也可通过设置变换类型、轴线以及操纵滑动条来旋转、平移或缩放圆球,其中, " 数值范围设置 " 部分将设置滑块的 增量和范围。 注:由于数值总是随着选取的位置不断更新,可使用该对话框来查看 (非设置)圆球的位置。若正在使用鼠标定位圆 球,则数值将在鼠标按钮松开时实时更新。 高级应用 模型载入后,圆球中心的初始位置为 " 观测点 "-- 即,所有可见几何体的几何中心,并与 X 轴对齐。圆球的坐标为默 认坐标系 frame0 下的坐标。然而,若已创建新坐标系,则可相对于不同坐标系的原点设置圆球,在变换对话框下的 " 选择坐标系 " 列表中选择所需坐标系即可。 也可将圆球工具的位置和方向恢复至默认值。详见操作指南:重置工具和视口。 使用二维设备 (鼠标)定位三维工具比较困难。采用多个视口有助于定位工具,因为这样可以同时从多个角度查看工 具。 另请参见 其他工具:光标、直线、平面、方框、圆柱、圆球、回转曲面。参见操作指南中有关坐标系的章节,以获取坐标系如 何影响工具的其他信息。 用户手册: Tools Menu Functions Page 188 操作指南:使用圆锥工具 使用圆锥工具 简介 EnSight 提供了一种圆锥型的工具,简称 " 圆锥 " 工具。该工具显示为带有中心轴线的圆锥 (通常为白色)图标。圆 锥工具为 EnSight 提供特定的圆锥体参数,如:指定圆锥剪切的位置。 基本操作 通常,若所执行的操纵需要用到圆锥工具,该工具将自动打开,也可在主菜单下点击 " 工具 > 二次曲面 > 圆锥 " 来手 动打开或关闭。 圆锥工具可用两种方式定位:1、使用鼠标直接在工具的 " 关键点 " 上交互操纵; 2、在对话框中输入坐标值来精确 定位。 使用鼠标移动圆锥: 1、 将鼠标指针置于工具中心。 2、点击 (并按住)鼠标左键。 3、将圆锥拖至所需位置。 4、松开鼠标按钮。 使用鼠标拉伸圆锥工具: 1、将鼠标指针置于中心线的任一端点。 2、点击 (并按住)鼠标左键。 3、拖动端点至所需位置。 4、松开鼠标按钮。 使用鼠标更改圆锥半径: 1、将鼠标指针置于底部环上。 2、点击并拖至所需半径。 使用鼠标旋转圆锥: 1、将鼠标指针置于中心轴上坐标系轴线的任一末端。 2、点击并拖动直至完成所需的旋转。 3、松开鼠标按钮。 注: 选择 x 轴,将关于 Y 轴旋转。 选择 y 轴,将关于 X 轴旋转。 选择 z 轴,将关于原点旋转。 注:当鼠标指针位于关键点上时,鼠标指针将发生 变化。 (屏幕右下角的撤销 / 恢复按钮,可用来撤销 / 恢复 工具变换) 圆锥的移动和拉伸仅限于与视线垂直的平面。若需在另一个平面内移动圆锥,可旋转模型以使得所需的平移面与视线 垂直。(注:圆锥无法精确追踪鼠标指针的位置。) Page 189 操作指南:使用圆锥工具 通过坐标值设置圆锥: 1、点击 " 工具位置设置 " 按钮,选择 " 工具位 置编辑器 …",打开 " 变换编辑器 " 对话 框。 2、若显示的不是圆锥工具对话框,则点击 " 编 辑器功能 > 工具 > 圆锥 "。 3、输入位置点 (圆锥顶点)坐标、轴线向 量、圆锥半角 (以度为单位),按下回 车键。 也可通过设置变换类型、轴线以及操纵滑动条来旋转、平移或缩放圆锥,其中, " 数值范围设置 " 部分设置滑块的增 量和范围。 注:由于数值总是随着选取的位置不断更新,可使用该对话框来查看 (非设置)圆锥的位置。若正在使用鼠标定位圆 锥,则数值将在鼠标按钮松开时实时更新。 圆锥工具剪切将从顶点开始向外无限扩展。若要限制圆锥剪切的扩展,可借助平面工具来切出所需的有限圆锥剪切。 高级应用 模型载入后,圆锥中心的初始位置为 " 观测点 "-- 即,所有可见几何体的几何中心,并与 X 轴对齐。圆锥的坐标为默 认坐标系 frame0 下的坐标。然而,若已创建新坐标系则可相对于不同坐标系的原点设置圆锥,在变换对话框下的 " 选择坐标系 " 列表中选择所需坐标系即可。 也可将圆锥工具的位置和方向恢复至默认值。详见操作指南:复位工具和视口 。 使用二维设备 (鼠标)定位三维工具比较困难。采用多个视口有助于定位工具,因为这样可以同时从多个角度查看工 具。 另请参见 其他工具:光标、直线、平面、方框、圆柱、圆球、回转曲面。参见操作指南中有关坐标系的章节,以获取坐标系如 何影响工具的其他信息。 用户手册: Tools Menu Functions Page 190 操作指南:使用回转曲面工具 使用回转曲面工具 简介 EnSight 提供了一种回转曲面型工具,简称 " 回转 " 工具。该工具显示为带有中心轴线的 (通常为白色)图标。默认 情况下,回转曲面的轮廓线由五个平面点距中心轴的距离决定 (最多可添加至 10 个点)。回转工具为 EnSight 提供 特定的回转曲面参数,如:指定回转剪切的位置。 基本操作 通常,若所执行的操纵需要用到回转工具,该工具将自动打开,也可在主菜单下点击 " 工具 > 二次曲面 > 回转工具 " 来手动打开或关闭。 回转工具可用两种方式定位:1、使用鼠标直接在工具的 " 关键点 " 上交互操纵; 2、在对话框中输入坐标值来精确定 位。 使用鼠标移动回转工具: 1、将鼠标指针置于工具中心 2、点击 (并按住)鼠标左键 3、将工具拖至所需位置 4、松开鼠标按钮 使用鼠标调整回转工具方向: 1、将鼠标指针置于中心线的任一端点 2、点击 (并按住)鼠标左键 3、拖动端点以获取所需方向 4、松开鼠标按钮 使用鼠标旋转回转工具: 1、将鼠标指针置于中心轴上坐标系轴线的任一末端 2、点击并拖动直至完成所需的旋转 3、松开鼠标按钮 注: 选择 x 轴,将关于 Y 轴旋转 选择 y 轴,将关于 X 轴旋转 选择 z 轴,将关于原点旋转。 注:当鼠标指针位于关键点上时,鼠标指针将发生 变化。 (屏幕右下角的撤销 / 恢复按钮,可用来撤销 / 恢复 工具变换) 回转工具的移动和拉伸仅限于与视线垂直的平面。若需在另一个平面内移动回转工具,可旋转模型以使得所需的平移 面与视线垂直。(注:回转工具无法精确追踪鼠标指针的位置。) Page 191 操作指南:使用回转曲面工具 通过坐标值设置回转工具: 1、点击 " 工具位置设置 " 按钮,选择 " 工具位置编辑器 …",打开 " 变换编辑器 " 对话框 2、若显示的不是回转工具对话框,则点击 " 编辑器功能 > 工具 > 回转工具 "。 该对话框将轮廓线显示为一系列在曲线点上标 有星号的连接线段。可点击并拖动这些点或手 动输入 " 距离 - 半径 " 来编辑曲线,也可添加或 删除点。在编辑的同时,图形窗口中的回转工 具将实时更新。 使用鼠标编辑点: 1、点击点并拖至所需位置 添加点 (最多 10 个) 1、勾选 " 添加点 " 2、将鼠标指针移至曲线窗口,在所需放置新点 的位置点击鼠标左键。点击 " 删除点 ",将 移除当前选中的点。 手动编辑点: 1、在曲线窗口中选择点,或在 " 距离 - 半径 " 列表中点击所需点。 2、所选点的距离和半径显示在列表下方的文字 输入框内。 3、编辑点的距离和 / 或半径值,按下回车键。 编辑位置或方向: 1、输入中心点坐标或轴线向量,按下回车键 也可通过设置变换类型、轴线以及操纵滑动条来旋转、平移和缩放回转工具,其中, " 数值范围设置 " 部分设置滑块 的增量和范围。 注:由于数值总是随着选取的位置不断更新,可使用该对话框来查看 (非设置)回转工具的位置。若正在使用鼠标定 位回转工具,则数值将在鼠标按钮松开时实时更新。 Page 192 操作指南:使用回转曲面工具 高级应用 模型载入后,回转工具中心的初始位置为 " 观测点 "-- 即,所有可见几何体的几何中心,并与 X 轴对齐。回转工具的 坐标为默认坐标系 frame0 下的坐标。然而,若已创建新坐标系 , 则可相对于不同坐标系的原点设置回转工具,在变换 对话框下的 " 选择坐标系 " 列表中选择所需坐标系即可。 也可将回转工具的位置和方向恢复至默认值。详见操作指南:复位工具和视口。 使用二维设备 (鼠标)定位三维工具比较困难。采用多个视口有助于定位工具,因为这样可以同时从多个角度查看工 具。 另请参见 其他工具:光标、直线、平面、方框、圆柱、圆球、圆锥。参见操作指南中有关坐标系的章节,以获取坐标系如何影 响工具的其他信息。 其他工具 : 光标、直线、平面、方框、圆柱、圆球、圆锥。参见操作指南中有关坐标系的章节,以获取坐标系如何影 响工具的其他信息。 Page 193 操作指南:使用选择工具 使用选择工具 简介 EnSight 提供了一种二维平面选择工具,简称 " 选择 " 工具。与其他工具不同,它并非用来创建部件,一般用于选择, 例如:选择屏幕上需要放大的区域、选择部件,也可用于单元消隐操作。 基本操作 缩放区域 使用选择工具执行缩放操作: 1、在工具图标栏上,点击 " 显示选择工具 " 图标 You manipulate the tool by: - 点击并拖动工具的任一角 - 点击并拖动工具的中心移动工具 注:点线框表示图形窗口的高宽 比,并用于缩放操作。 2、点击工具左上角的缩放符号, 以执行缩放操作。 注:可点击撤销按钮,撤销本次 变换。 Page 194 操作指南:使用选择工具 单元消隐 选择工具可用于单元消隐操作: 1、选择需要执行单元消隐的部件 2、点击 " 显示选择工具 " 图标以打开工具 3、将工具置于所需位置 4、点击工具左上角的单元消隐符号 注:需要勾选 " 允许单元消隐 " (默认已勾 选)。 点击 " 清除 " 或 " 清除所有部件 " 按钮,可撤 销消隐。 结果如下: Page 195 操作指南:使用选择工具 部件选择 在部件选择过程中使用工具: 1、打开 " 选择工具 ",操纵其位置 / 尺寸,直到覆盖所需选择的部件 2、右击 " 选择工具 ",点击 " 选择部件 "。 注:部件列表中的所选部件将被高亮显示。 另请参见 操作指南:单元消隐 操作指南:旋转、缩放、平移、伸缩 用户手册: Tools Menu Functions Page 196 操作指南:使用样条曲线工具 使用样条曲线工具 简介 样条曲线可用来 (a)指定摄像机路径; (b)指定剪切平面路径; (c)沿线查询变量。样条曲线可以定义、编辑、 保存、恢复。另外,样条曲线还具备可见性、线宽、颜色等属性,以方便操纵。 样条曲线为分段三次曲线,因而始终能够经过所定义的控制点。控制点可源自部件 (如粒子追踪)、可在图形窗口中 拾取、可通过 x/y/z 坐标输入、也可基于光标工具位置。 基本操作 有多种方式定义样条曲线及其控制点: 在表面拾取创建样条曲线: 1、在工具图标栏,点击 " 拾取 " 按钮 2、在弹出菜单中,选择 " 拾取样条曲线控制点 ",然 后选择所需选项 3、在图形窗口中,将鼠标指针置于部件上所需位置 处,按下 "p" 键 (或在编辑 > 首选项 > 鼠标和键盘 下设置为 " 选定的拾取操作 " 的鼠标按钮)。若选择 " 于表面拾取 ",样条曲线控制点标记将显示于 "p" 键按下的位置;若选择 " 位于所选部件的中心 ",则 显示于部件中心。若已创建多个控制点,可看到连接 状态的样条曲线。 Page 197 操作指南:使用样条曲线工具 通过 " 变换编辑器 " 对话框创建样条曲线 1、从 " 图形窗口变换 " 图标菜单中选择 " 位置 变换编辑器 …",打开 " 变换编辑器 " 对话框 2、点击 " 编辑器功能 > 工具 > 样条曲线 " 3、点击 " 新建 " 创建一根样条曲线,编辑 " 描述 " 重命名 该样条曲线。 4、若要基于某一维部件的全部节点坐标创建控制点,在部 件列表中选择该部件,然后点击 " 创建 " 或 4、若知道控制点的确切位置,点击 " 新建 (光标处) ", 在 X/Y/Z 输入框内输入精确值。 或 4、在点列表中选择已有控制点,点击 " 复制 " 按钮,然后 再在点列表中选择需要在其后面插入该点的行,点击 " 粘贴 " 按钮。 编辑样条曲线的控制点: 1、在图形窗口中,移动鼠标指针至需要移动的控制点,点 击并拖动控制点。 或 1、在点列表中选择点,在 X/Y/Z 输入框内编辑坐标值 或 1、选择需要编辑的点,点击 " 偏移量 …" 按钮 2、在弹出的对话框中输入 X/Y/Z 偏移值,选中的所有控制 点坐标均叠加该值 删除控制点: 1、在点列表中选择一个或多个点 2、点击 " 删除 " 按钮 编辑样条曲线属性 1、勾选或取消勾选 " 显示 " 以开启 / 关闭所有视口中样条 曲线的可见性 (不可在各视口中单独设置) 2、设置是否显示控制点。若显示,则在此处设置控制点记 号的尺寸。 3、在此处调整样条曲线的线宽和颜色 4、点此反向样条曲线 (相反方向) Page 198 操作指南:使用样条曲线工具 高级应用 样条曲线始于第一个控制点 (样条曲线值为 0),结束于最后一个控制点 (样条曲线值为 1)。若样条曲线用作摄像 机、剪切平面的路径、或沿线查询变量,则一般沿着样条曲线的正方向。若需要使用样条曲线的反方向,仅需简单的 反向样条曲线即可。 另请参见 Create Clip Splines Page 199 操作指南:创建部件入门 Visualize Data 创建部件入门 简介 Ensight 的许多功能均源于它灵活和强大的部件建立机制, EnSight 中的几乎每个任务在执行时都涉及到对部件的操 作,因此理解这些概念至关重要。 在 EnSight 中,部件是单元及其关联节点的集合。可以在节点上定义零个或多个变量 (例如压力或应力)。部件的所 有组分均共享相同的属性集 (如颜色或线宽)。 部件可以在加载过程中创建 (基于计算网格及关联的表面),也可以在 Ensight 会话期间创建。在加载期间创建的部 件被称为模型部件。模型部件也可以在 ensight 会话期间通过执行复制另一个模型部件来创建。 在 EnSight 会话期间所创建出的部件称为派生部件或子部件。子部件通过一个或多个母部件创建,它依赖于母部件。 若一个或多个母部件改变,所有依赖于这些母部件的子部件将自动重新计算并重新显示。例如:在某三维计算域中创 建一个切面,再基于该切面创建等值线,则等值线的母部件为切面,切面的母部件为三维域。若三维域改变 (如:时 间步改变),切面将首先重新计算,随后等值线重新计算,这样就维持了部件的一致性。 本文分为以下各节介绍: 部件列表 创建部件 部件属性 部件创建的位置 部件类型 提示和技巧 部件操作 部件列表 所有模型部件及其子部件均显示于部件列表中。部件列表有多种显示方式,默认方式类似于: 案例编号 (对于加载 多组数据集 非常重要) P 表示该部件为当前所选 部件的母部件 部件编号 当前选中部件 部件描述 以铅笔图标标识的部件为当前 正在编辑的部件 在部件列表的任一列上右击,可自定义在列表中显示的 列。在弹出的对话框中的左右两侧列中任意选择属性并使 用左 / 右箭头按钮,向部件列表里添加或删除列。还可以 在右侧列中选择属性并使用向上 / 向下箭头来更改部件列 表中列的顺序。 点击 " 保存 " 将在下一次运行 Ensight 时也使用该设置, 而 " 确定 " 则仅在本次会话中显示更改,但并不保存。 Page 200 操作指南:创建部件入门 通过抓取界面上的分界线 ( 若所放位置恰当 , 鼠标光标将显示为可拖动边框 .) 可调整部件列 表尺寸。 还可按住部件面板的标题栏将整个面板拖离用 户界面的初始停靠位置。 有几种选择多个部件的方法。若要选择一个案例中 的所有部件,可在部件列表中单击蓝色的 case 行, 也可在部件列表中右击并在下拉菜单中执行部件选 择操作。 部件有许多右击功能。不仅在部件列 表中,在图形窗口中也可右击鼠标, 在弹出菜单中执行各种部件选择操 作。 无论在部件列表中还是在图形窗口 中,均可通过在部件上点击鼠标右 键,在下拉菜单中选择删除,或在选 中部件后敲击键盘上的删除键来删除 部件。 可以选中一个或多个部件,点击鼠标右键,在下拉菜单中选择 " 新建组 " 一个部件组一旦被创建,可以将部件拖入 / 拖离该组。 Page 201 操作指南:创建部件入门 此外,选择部件列表中各部件的标准做法如下: 目标 做法 详细操作 选择一个部件 选择 ( 或单击 ) 将鼠标指针置于该部件上,单击鼠标左键。该部件将被加亮以反映其为 " 被选定 " 状态。 连续选择 Shift + 单击 首先选择第一个部件,然后将鼠标指针置于列表中所需选择的最后一个部件上,按 住 shift 键的同时单击鼠标左键。此操作将选中包含首选部件与该部件及其之间列出 的所有部件。 不连续选择 Ctrl + 单击 将鼠标指针置于部件上,按住 ctrl 键的同时单击鼠标左键。此操作将逐一添加新部 件。 取消已选部件 Ctrl + 单击 将鼠标指针置于已选部件上。按住 ctrl 键的同时单击鼠标左键。此操作将取消选择 部件。 打开部件属性面板 编辑部件 双击 将鼠标指针置于所需部件上,快速双击鼠标左键。 创建部件 无论何种部件类型,创建子部件的步骤大体上是相同的: 1、在部件列表中选择母部件。 2、选择所需创建的内容,方式有如下几种:(1)通过功能图标栏完成创建,前提是所需功能必须显示于图标栏上; (2)在主菜单上的 " 创建 " 下拉菜单中选择所需功能; (3)在部件上点击鼠标右键 (在部件列表中,或图形窗 口中均可)。以上各操作均会打开创建模式的部件属性面板。 3、在属性面板中设置各种属性。 4、点击 " 创建 " 按钮创建部件。 也可使用单击鼠标右键的方法来创建部件,步骤与上述相同,只是会基于一些默认假设快速创建子部件。 下面的示例介绍了创建等值面部件的步骤: 3、选择变量 1、选择母部件 4、设置适当的值 (通常均有合理的默 认值) 2、点击 " 等值面 " 图标 5、点击 " 创建 " Page 202 操作指南:创建部件入门 部件类型 下表提供了 EnSight 中的有效部件类型: 部件类型 代号 图标 描述 剪切 2 使用部件的 IJK、 XYZ 或 RTZ 面剪切;使用直线、平面、方框、圆 柱、圆球、圆锥、回转工具剪切;通过旋转现有 1 D 部件剪切,以 生成面或线. 等值线 C 二维单元上的恒定值线 展开面 D 展开旋转面 ( 例如展开使用圆柱工具创建的切面)生成一个二维平 面。 提升面 E 基于变量值的大小,缩放二维部件而创建的部件 (方向为当前表面 的法线方向) 等值面 I 三维单元上的恒量值面。 模型 M 原始部件 (即:从磁盘文件中载入的)或在模型部件上通过某些操 作创建 (如:复制或提取)。 粒子追踪 T 由一个或多个穿过矢量场 (通常为速度场)的无质量粒子的轨迹所 组成的部件。 剖面 P 沿着一条线 (二维情况即为提升面)绘制某变量的曲线图。 矢量箭头 V 由一系列显示有矢量大小和方向的箭头组成的部件 子集 S 由模型部件的部分节点与 / 或单元所组成的部件。 张量场标记 G 由显示有张量的特征矢量的方向和相对大小的标记所组成的部件 材料部件 A 根据材料的交界面或交界域创建的部件。 涡核 X 由流动涡的中心线段所组成的部件。 激波面 / 激波域 K 由激波高于阈值的面单元或体单元组成的部件。 分离 / 再附线 L 由表面上发生流动分离和再附的线段组成的部件 Page 203 操作指南:创建部件入门 部件操作 Ensight 支持几种强大的部件操作。这些操作可通过 " 编辑 > 部件 " 子菜单或直接在部件上单击右键进行。 复制 复制操作会创建一个部件的从属 副本。这个部件副本仅在客户端上创建,服务器并不知晓。新部件 与原部件共享几何与变量数据,但新部件有自己的属性集 (除了显示方式)。 创建副本的最大用处之一是可在并行配置中同一时间显示部件上的多个变量。由于会给每个副本自动 分配一个新的坐标系,所以可以单独移动副本。 详见操作指南:复制部件 分组 分组操作将所选部件折叠到一个新的组部件中。分组最常用于将一系列部件合并为单一实体,以便于 统一处理。分组部件操作只是在部件列表中新增了层级结构,而并无新部件创建。可通过 " 取消分组 " 命令执行反向操作。 详见操作指南:部件分组。 删除 删除操作将清除当前所选的部件及其所下属的全部子部件。 详见操作指南:删除部件。 提取 提取操作与部件的显示方式密切相关。提取仅使用部件当前显示的几何外形来创建新的部件。例如, 如果由三维单元组成的某部件的当前显示方式为 “ 显示边界 ”,则提取的结果是由全部非共享的二维 单元 (即表面)组成的部件。 提取常用于减少部件信息总量 (例如快速显示或几何体输出)或创建三维计算域部件的外表面。 详见操作指南:提取部件显示方式 。 合并 合并是基于一个或多个所选部件创建出一个新的关联部件,原部件保持不变。如果选择了单一部件执 行合并操作,则合并将创建 “ 真实 ” 的部件副本 (与复制操作所执行的 “ 浅 ” 拷贝截然相反)。 合并通常用于将一系列部件组合到单个部件中以便于统一处理 (如属性设置)。 详见操作指南:合并部件。 部件属性 所有部件都有许多状态属性和显示属性。尽管可通过部件快速操作图标或鼠标右键选项来设置部件的绝大多数属性, 然而完整的属性设置还是需要通过属性面板 (Feature Panel)。详细的部件属性和属性面板 (Feature Panel)介绍 请参见操作指南:设置属性。 Page 204 操作指南:创建部件入门 部件创建的位置 部件的创建可发生在 EnSight 客户端或服务器上。由于客户端和服务器上可用的数据不同,了解部件创建的位置和数 据存储位置非常有用,例如:只能对存储在服务器上的部件执行查询操作。下表为各种部件类型的信息: 部件类型 创建位置 数据在服务器上? 服务器端服务器端 是 取决于显示方式 等值线 客户端 否 是 展开面 服务器端 是 取决于显示方式 不适用 是 取决于显示方式 提升面 服务器端 是 取决于显示方式 等值面 服务器端 是 取决于显示方式 不适用 是 取决于显示方式 服务器端客户端 否 是 剖面图 客户端 否 是 矢量箭头 客户端 否 是 服务器端 是 取决于显示方式 客户端 否 是 涡核 服务器端 是 取决于显示方式 激波面 / 激波域 服务器端 是 取决于显示方式 分离 / 再附线 服务器端 是 取决于显示方式 材料 服务器端 是 取决于显示方式 剪切 离散粒子 模型 粒子追踪 子集 张量场标记 数据在客户端上? 最后一列中, " 取决于显示方式 " 即部件当前的可视化显示方式。例如,若部件的显示方式是 " 未加载 ",则当前客户 端上没有数据显示。 提示和技巧 一组数据集通常包含了多个部件,图形窗口中显示的部件与部件列表中对应部件的关联非常重要。 EnSight 会高亮显 示所选部件,单击 " 高亮显示部件 " 按钮,打开或关闭此功能。 使用键盘上的上 / 下箭头键,可循环查看部件列表中的各部件。在部件列表中选择任意部件,按下向上箭头将移至前 一项或向下箭头键移至后一项。如若同时打开 " 高亮显示部件 ",可快速定位所需的部件。 可在图形窗口中的部件上单击鼠标左键来选择部件列表中的部件,除非改变了 " 选取部件 " 的默认单击设置。若要改 回 " 选取部件 " 设置,点击编辑 > 首选项,在类别列表中选择鼠标和键盘。此外,还可以在图形窗口中使用 'p' 键来选 取部件。在 " 拾取 " 下拉菜单中选择 " 选取部件 ",将鼠标指针置于图形窗口中的所需部件上,按下 'p' 键,该部件会 被添加至当前已选的部件列表。 Page 205 操作指南:创建部件入门 使用默认设置快速创建部件的方法即在图形窗口中的部件上单击鼠标右键,将弹出一个下拉列表,显示诸如创建等值 线、等值面或矢量箭头等,此举将使用默认设置,并以右击的部件作为母部件来创建部件。 选中的部件可以写入磁盘,并在以后的会话中加载。点击文件 > 输出 > 几何实体 … 可以选择将其保存为 EnSight 格 式、 VRML 格式、 STL 格式或用户自定义的其他格式。详见操作指南:保存几何实体。 另请参见 用户手册: Features, Parts Page 206 操作指南:创建等值线 创建等值线 简介 等值线是在二维 (不一定是平面)表面上具有恒量值的线。该线的一侧大于该恒定值,另一侧则小于该值。 Ensight 创建等值线组,这些恒定值可以是定义等值线的变量的调色板色阶,也可以由用户指定范围及其分布,等值线的阶数 也可基于相应的变量调色板值来指定。 基本操作 2. 点击 " 等值线 " 图标。 1. 选择母部件。 3. 选择变量。 4. 点击 " 基于选定部件创建 "。 Page 207 操作指南:创建等值线 等值线创建 / 编辑对话框允许用户设置等值线阶数 (以及子阶数),给这些等值线附上标签。等值线可以自动同步至 调色板的色阶也可以用手动设置。 将变量调色板的色阶应用于等值线的操作步骤: 在部件列表中,双击所需编辑的 等值线部件。 1. 勾选 " 高级 "。 2. 选择变量。 若为矢量,则有矢量分量或矢量的模。 3. 勾选 " 同步至调色板 "。 4. 设置所需子阶数。并确认勾选了 " 显示 "。 对于如何设置调色板色阶。参见操作指南: 编辑颜色映射。 5. 设置等值线标签的可见性、间距、颜色和 格式。 注:只有等值线的主阶 (非子阶)可显示 标签。 默认情况下,编辑各种属性时,等值线会随 之发生变化。 Page 208 操作指南:创建等值线 等值线阶数独立于变量调色板色阶的操作步骤: 在部件列表中双击所需编辑的等 值线部件。 1. 勾选 " 高级 "。 2. 选择变量。 若为矢量,则有矢量分量或矢量的模 3. 取消勾选 " 同步至调色板 "。 4. 指定最大值和最小值范围。 5. 选择分布方法。 6. 指定阶数与子阶数。 7. 设置等值线标签的可见性、间距、颜色和 格式。 注:只有等值线的主阶 (非子阶)可显示 标签。 默认情况下,编辑各种属性时,等值线会随 之发生变化。 Page 209 操作指南:创建等值线 快捷方式 右击部件列表中或图形窗口中的 部件。 在下拉列表里,选择等值线。 弹出一个选择变量窗口 接下来会以右击的部件作为母部 件,使用所选变量,按默认设置 自动创建等值线部件。 高级应用 勾选 " 同步至调色板 " 时,变量调色板的色阶被用作等值线的阶。必须通过编辑变量调色板,来修改等值线的阶数、 分布等。 参见操作指南: 编辑颜色映射。 其他说明 默认情况是基于创建的变量给等值线部件着色。若取消勾选 " 着色为创建变量 ",等值线部件则不会基于变量自动着 色,而显示为白色。 不同于大多数部件的创建,等值线是基于部件的客户端显示方式创建的。如果等值线的母部件由一维单元组成,或在 客户端无任何显示方式,则由此产生的等值线将为空。若母部件的当前显示方式为特征角、边界或者未加载,则会出 现以上情形。一般均将等值线的母部件显示方式设置为 " 三维显示边界,二维全显 "。 详见操作指南: 更改显示方式。 另请参见 操作指南:创建部件入门 , 操作指南:编辑颜色映射。 用户手册:Contour Parts Page 210 操作指南:创建等值面 创建等值面 简介 等值面是三维域中具有常量值的面。它是等值线的三维形式:等值面一侧区域的值大于指定常量值;另一侧区域的值 则小于该值。在 EnSight 中,等值面可以基于标量、矢量的分量或模、模型坐标的分量生成。 标量或矢量的等值面是反映变量分布的复杂曲面,而坐标的等值面则为平面、圆柱、圆锥或球体等规则几何图形。 基本操作 1、选择母部件 2、点击等值面创建图标 3、选择变量 4、设置恰当的值 (默认为中间值) 5、点击 " 创建 " 快捷方式 在图形窗口中的部件上点击鼠标右键,在弹出的下拉菜单中,选择等值面,将弹出选择变量窗口。最后,将使用所选 变量,以右击的部件作为母部件,自动创建出等值面部件。 Page 211 操作指南:创建等值面 高级应用 等值面交互 在鼠标调整滑块的同时, Ensight 实时更新等值面。 . 1、设置 " 交互类型 " 为 " 手动 " 2、调整滑块至所需位置 也可以将交互类型设为 " 自动 ", EnSight 会从最小值到最大值以步长为增量自动扫略。 快捷方式 在图形窗口中的等值面部件上点击鼠标左键,会看到一个绿色的 " 手柄 ",拖动该手柄可改变等值面的值,且随着等 值面的拖动,屏幕左下角会实时显示出等值面当前的实际值。 等值面动画 在动画书中可以自动加载一系列等值面。动画书可生成各种动态事件的屏幕动画,(默认设置中)在动画运行时还可 同时进行图形变换操作 (如旋转或缩放)。 1、在等值面部件上双击鼠标左键 2、勾选 " 高级 " 3、在 " 创建 " 属性部分,设置一个合适的 " 动画 间隔 "。动画书中的每页 (帧)将使用当前值 叠加该增量值,从而生成新的等值面。 Page 212 操作指南:创建等值面 4、点击动画书图标。 5、在加载类型中选择 " 创建 数据 " 6、设置合适的帧数。 7、点击 " 加载 " 8、加载完成后,使用这些控制按钮播放动画 书 另一种方式,将等值面交互类型设为 " 手动 " 模式,点击动画书图标,加载类型设置为 " 创建数据 ",点击 " 开始 " 按 钮,移动等值面至所需位置,点击 " 结束 " 按钮,并设置总帧数,最后点击 " 加载 "。 创建多个等值面: EnSight 中,可指定 " 间隔 " 来创建多个等值面,结果是生成一组等值面: 1、选择母部件 2、点击等值面创建图标 3、选择变量 4、设置合适的值 (默认为中间值) 5、设置 " 等值面数量 " 和 " 间隔 " 6、点击 " 创建 " 等值体的创建 在标量场中,等值体 (如节点和单元)被限制于一个恒定区间内,可以限制等值体小于区间的最小值,或大于区间的 Page 213 操作指南:创建等值面 最大值,也可以限制在区间内。 1、在等值面属性面板中,勾选 " 高级 " 2、选择变量 3、设置类型为 " 等值体 " 4、设置 " 最小值 " 和 " 最大值 " 5、设置约束。带状:限制等值体在最小和最大标量值范 围内;低:将创建小于等于该最小值的等值体;高: 将创建大于等于该最大值的等值体 6、点击 " 创建 " 其他说明 同时显示两个以上的嵌套等值面非常困难,一般将外层等值面设为透明,以帮助显示内层等值面。为避免混淆,不要 试图同时显示多个变量的等值面,或由同一变量创建但按不同变量着色的多个等值面。 另请参见 操作指南:创建动画书 操作指南:创建关键帧动画 用户手册: Isosurface Parts Page 214 操作指南:创建粒子追踪 创建粒子追踪 简介 流线与迹线追踪 粒子追踪为在流场中释放一个粒子所形成的轨迹,轨迹是基于速度场,从初始点 (发射器)开始随着时间的推移而形 成的,因此,轨迹与流向处处平行。在流场中使用单一时间步计算出的轨迹被称为流线。在随着计算过程不断更新的 瞬态流场中,计算所得的路径被称为轨迹线。 EnSight 可定义发射器并设置追踪属性: • 发射器可使用内置工具 ( 光标 , 直线或平面 ) 来定义,也可以在图形窗口的任意表面上点击来定义,任 何部件上的节点都可以作为发射器,也可从文件中读取发射器的时间与位置 ( 参见用户手册的第 11 章 EnSight Particle Emitter File Format)。 • 正向、负向或正负方向都能生成流线。 • 追踪可限于任意表面,从而搜索流动拓扑和分离特性。 • 瞬态情况下 , 发射器基于一个时间间隔周期地释放粒子到动态流中。 • 发射器可以交互:用鼠标移动发射器时,会自动重新计算相关的轨迹,并重新显示 ( 该选项不可用于 " 限于表面 " 的粒子追踪、由部件发射的粒子追踪、 SOS 模式下、或迹线 )。 • 追踪轨迹可显示为线状、带状、或管状,若流动伴有旋转,则缎带或方管也会作相应扭曲。 • 粒子追踪可以很容易的生成动画,从而对流场有一个直观的理解。可设置粒子追踪动画的各种属性,包 括长度、速度、以及脉冲间隔。 节点追踪: EnSight 中的另一种追踪形式是节点追踪,即节点位置随时间变化的轨迹。该功能常用于几何体随时间变化或拥有瞬 态位移的模型 (包括测量粒子)。 变量最小 / 最大值追踪 : 更进一步的追踪类型是追踪变量的最小或最大值,即所选变量 (选定部件上)在时间变化过程中的最小或最大值位置 的连线。因此,在瞬态模型中,可以追踪变量的最大和最小值发生位置。 节点追踪和变量最小 / 最大值追踪选项均为时间变化过程中的连接点集。 Page 215 操作指南:创建粒子追踪 基本操作 稳态流场中的粒子追踪 (流线): 2、点击粒子追踪图标 1、选择流场部件 3、选择矢量 4、类型设置为 " 流线 " 5、选择所需发射器。 若发射器为工具 ( 光标, 直线, 平面 ),则在所需 发射的位置放置该工具;若发射器为部件,则输 入部件编号,并按回车键确认。 6、设置发射方向 +: 速度正方向发射 -: 速度负方向发射,朝向来流 (仅适用于流 线) +/-: 速度正负方向均发射 (仅适用于流线) 7、点击 " 创建 " 粒子追踪将会根据所设置的发射器创建。勾选 " 高级 ",可通过 " 发射器信息 " 下方的 " 发射总 时间 " 来设置追踪的最大持续时间。 Page 216 操作指南:创建粒子追踪 以下为可用的发射器类型。注:只可追踪位于所选流场域的单元内部的发射点。 光标 从光标工具中发射单一追踪。 直线 沿直线工具的等距点发射多个追踪。在 " 点数量 " 输入框内输入所需的追踪数量, 并按回车键确认。 . 平面 在平面工具上,从栅格图形中的等距点发射多个跟踪。在 " 点数量 " 的 X/Y 输入框 内分别输入在 X 与 Y 方向 (平面工具的轴线)上所需追踪的数量并按回车键。追 踪总数等于 X 与 Y 的乘积。 . 部件 该追踪将发射于指定部件的节点 (随机选择节点号)。输入作为发射器的部件号 (位于主部件列表)以及节点数。 . 文件 该追踪将发射于 EnSight 粒子发射文件中定义的位置与时刻。参见 Ensight 用户手 册第 11 章 EnSight Particle Emitter File Format. 快捷方式 . 快速创建粒子追踪: 在工具 (光标、直线、平面)上点击 鼠标右键, 选择粒子追踪。 选择变量 将该工具作为发射器并按默认设置创 建流线追踪 Page 217 操作指南:创建粒子追踪 在高级模式下的追踪属性面板中编辑粒子追踪的全部属性,如:发射器属性可在创建属性部分的发射器信息中修改: 勾选 " 发射于当前时间 ",否则请指定 " 发射起始时间 " (仅适用于流线) 设置追踪持续的总时间,也可将其设置为默认值。 设置迹线追踪的开始时间 (仅适用于轨迹线) 迹线的发射时间间隔 若不为零,将于 S,S + D,S+ 2 D… 时间在变化的流场中发射一系列追踪 ( 其中 S 是开始时间,D 是时间间隔), 通常用于创建烟线追踪。对于可视化瞬态流场,烟雾线动画是一个非常有效的方法 (仅适用于迹线) 将追踪显示为带状或管状,并设置箭头 流线与迹线的粒子轨迹可以显示为线状、带状或管状,若流动伴有旋转,则缎带或方管也会作相应扭曲。启用带状或 管状显示及更改追踪箭头的步骤如下: 1、在部件列表中双击所需编辑的粒子追踪部件 (也可以在部件列表中或图形窗口的粒子追踪部件上单击鼠标右 键,选择编辑 …),打开属性面板。有时需勾选 " 高级 ",打开创建属性部分。 2、设置 " 显示为 "" 带状 " 或 " 管状 "。 3、设置 " 宽度 ",并按回车确认。 4、选择 " 箭头 " 类型 (圆锥、标准或三角形)。 5、设置沿着追踪轨迹显示的箭头数量。 6、设置箭头尺寸 注:节点追踪和变量的最大 / 最小值追踪只能显示为线状。箭头必须在粒子追踪的属性面板 (Particle Trace Feature Panel)中 (即高级模式下)设置。 粒子动画 任何类型的粒子追踪都可以动画显示。详见 操作指南:粒子追踪动画。 Page 218 操作指南:创建粒子追踪 选取表面,在其上追踪粒子 除了发射于工具或部件,也可在图形窗口中的某表面上选取点来定义发射位置,操作步骤如下: 2、点击粒子追踪图标 1、选择流场部件 3、勾选 " 拾取表面 " 4、点击 " 创建 " (会弹出一个对话框) 5、根据提示完成操作,将鼠标指针移动至图形 窗口中所需位置并单击左键。单击点必须是 所选三维部件单元上的点。 6、点击创建任意多的点发射器。完成后,将鼠 标移开图形窗口。 7、取消勾选 " 拾取表面 "。 注:同样也可在表面上定义线或面发射,只是需要将发射器设置为直线或平面,点击创建,然后根据弹出窗口中的提 示进行操作。 Page 219 操作指南:创建粒子追踪 追踪限于表面的粒子 Ensight 可以追踪约束在二维表面 ( 不一定是平面 ) 上的粒子 -- 即使表面上速度为零。从表面平移出一个极短的距离, 使其位于三维流场中,使用平移后各位置点的速度值来计算追踪。平移距离 (偏移量)和偏移显示都由用户定义。 限于表面追踪的发射器由图形窗口中鼠标操作所定义。在表面上单击并拖动时,发射器由投射在表面上的鼠标路径所 定义。追踪限于表面的粒子: 1、在部件列表中选择 表面部件,即所需 追踪的表面 2、选择追踪所需的矢量 3、选择发射器类型 (光标、直线或平面)。 4、勾选 " 限于表面 "。 注:随后所有的追踪都将假定约束于表面,直 至取消勾选该选项。 5、若 " 发射于 " 设置为直线或平面,输入点数 量 (直线)或 X 与 Y 方向上点的数量 (平 面)。 6、点击创建 7、移动鼠标指针至图形窗口中,并且: 光标发射器:在所需位置上单击鼠标左键 直线发射器:在所需直线的一端单击左键 并按住不放,拖动至直线的另一端 (将 反馈回一条白线) 平面发射器:在所需范围的一个角上单击 左键并按住不放,拖动至另一个对角 (将反馈回一个白色矩形) 8、只要鼠标指针仍停留于图形窗口中,就可继 续发射,一旦鼠标指针移出图形窗口,追踪 部件将被创建 9、完成后,取消勾选 " 限于表面 " 注:在高级模式中,可设置追踪的各种其他属性,包括偏移量、显示偏移、发射方向等。 Page 220 操作指南:创建粒子追踪 交互粒子追踪 若粒子追踪发射于工具发射器 (光标、直线或平面)且为流线,则该发射器可以交互。交互时,由该工具创建的流线 可随鼠标移动。工具移动过程中,新的流线将自动地重新计算并显示 (该操作不适用于限于表面的粒子追踪、发射于 部件的追踪、 SOS 模式、迹线)。实现交互的步骤如下: 1、打开粒子追踪部件的属性面板,并打开其创建属性部分 2、勾选 " 交互发射器 ". 定义发射器时,工具为隐藏状态,执行该操作之后会自动将其打开 3、将鼠标指针移至图形窗口并操纵工具。参看操作指南中有关工具使用的章节 ( 光标、直线、或 平面 ) 4、完成后,取消勾选 " 交互发射器 " 追踪迹线 EnSight 可设置瞬态粒子追踪的各种属性,开始时间与结束时间均可指定,此外,还可指定发射器的发射间隔,每隔 一段时间由发射器向流场中发射出额外的粒子,这种类型的迹线也称为烟线追踪。 将类型设置为迹线 (而非流线)来创建迹线追踪。默认情况是,迹线将从模拟的第一时间步开始并在最后时间步结束 (除非提前终止)。可在属性面板中创建属性部分的发射器信息里更改默认值。 编辑发射器属性 在粒子追踪部件属性面板的高级模式中,可以设置所有创建属性。有多种方法可获取这些属性,如下: 1、双击部件列表中所需编辑的粒子追踪部件 或者选中部件并点击粒子追踪图标 或者在部件列表中所需的粒子追踪部件上单击 鼠标右键并选择 " 编辑 …" 或者点击 " 创建 > 粒子追踪 …", 然后在部件列表中选择所需的粒子 追踪部件。 Page 221 操作指南:创建粒子追踪 2、确认勾选了 " 高级 "。 设置流场变量 追踪类型 设置交互发射器 设置 (发射)点的数量 (如 果发射器是直线或平面) 显示方式:线状或带状 限于表面的追踪 切换开关 设置限于表面的变量偏移及 显示偏移 设置沿追踪轨迹的 箭头数量 设置缎带的宽度 设置发射方向 勾选 " 拾取表面 " 以定义 发射器 设置箭头尺寸 当前所选发射器的发射工具 所选追踪部件的 发射器列表 添加发射:基于当前属性,为 已选部件添加一个新的发射器 删除发射:删除选定的发射器 设置发射于当前时间发射或 设置发射时间 设置发射器的总时间 将总时间设置为默认值 设置发射的开始时间和时间 间隔 Page 222 操作指南:创建粒子追踪 带质量粒子的追踪 在追踪的属性面板中的高级模式下,可设置带质量粒子的追踪属性。 1、打开所需编辑的粒子追踪部件的属性面板 (Feature Panel) 2、勾选 " 带质量粒子属性 ",显示质量粒子参数 3、根据数据修改质量粒子的参数 动量守恒方程中的各项都包含了 相关参数的分项 4、勾选 " 考虑粒子质量 " 根据所指定的参数,所选的粒子追踪部件会更新为 带质量的粒子追踪 对于质量粒子追踪中用到的原理,请参阅用户手册: Particle Trace Parts Page 223 操作指南:创建粒子追踪 节点追踪 Ensight 可追踪随时间变化的节点位置。无论是几何体的变化,还是模型有瞬态位移,节点都必须有编号才有意义。 对于测量粒子部件,建议使用该操作。 1、在部件列表中选择包含希望追踪节点的部件 2、选择类型为 " 节点追踪 " 3、修改开始和结束时间步 默认为全部时间步 4、指定所需追踪的特定节点编号或选择 " 全部节点 " 若域已修改,可使用 " 全部节点 " 按钮来 选择全部 变量最小 / 最大值追踪 Ensight 可追踪所选变量的最小值或最大值的位置。当然,只适用于瞬态问题。 1、选择包含变量的部件,以追踪其最小值或 最大值 2、设置类型为:" 追踪变量最小值 " (或 " 追踪变量最大值 ") 3、选择追踪的变量 4、设置开始和结束时间步 默认为全部时间步 Page 224 操作指南:创建粒子追踪 高级 使用 EnSight 的 case 文件格式可以很容易实现逆时间迹线追踪。(注:若数据为另一种文件格式,可以使用文件 > 输出 > 几何实体,将其转换为 case 文件格式)。 1、通过一个负的文件名增量,给该时间文件反序。 举例: TIME time set: filename start number: filename increment: time values: 1 1 1 0.0 2.0 4.0 6.0 8.0 变换为 TIME time set: filename start number: filename increment: time values: 1 5 -1 0.0 2.0 4.0 6.0 8.0 2、创建一个矢量,作为原矢量的负值。用变量计算器创建该矢量 (neg_vector = - vector)。 3、用 neg_vector 变量创建迹线。 其他说明 对于大型数据文件或瞬态数据文件,粒子追踪计算一般会很费时间,因为目前还没有办法中止该操作,需要一次性指 定尽可能多的粒子。创建迹线的大部分时间均消耗于从磁盘读取瞬态数据。 EnSight 的粒子追踪算法使用了带有时变积分步的 4 阶龙格 - 库塔算法来对矢量流场在时间上积分,积分参数可由用 户更改。详见用户手册: Particle Trace Parts 若有其他类型的粒子追踪数据 (比如多相流模拟),可使用离散 / 测量数据 功能来加载粒子轨迹,并动画显示其随时 间变化的过程。 另请参见 操作指南:粒子追踪动画 用户手册: Particle Trace Parts Page 225 HOW TO 创建剪切 创建剪切 简介 EnSight 提供了一系列功能强大的剪切操作。详见下述各章节 : 创建直线剪切 剪切线 ( 使用线工具 ) 是对二维或三维模型的线性剪切,它采样于均匀的空间间隔 ( 栅格 ) 或与 母部件的单元 ( 网格 ) 边界相交处,剪切线的值可通过剖面图或查询功能得以显示,并绘制成 曲线图。 创建平面剪切 剪切面是使用平面工具对三维网格的平面切片。 EnSight 的剪切操作可以实现对结构或非结构 网格的任意剪切。该剪切可以是无限的 (至母部件的最外边界),也可以是以平面工具的边界 为限值的有限大小。生成的剪切面的节点可以基于初始网格的拓扑和分辨率,也可以基于用户 自定义的规则栅格,还可通过将剪切区域设为 " 褶皱 " 来创建包含所有与平面相交的单元的剪 切,这种剪切有助于查看位于该值处网格的完整性。 创建方框剪切 方框剪切是对三维几何体的六面体剪切。该剪切使用方框工具 (可操作至空间任意位置),剪 切结果可以是由方框工具与原始模型相交所得的表面、可以是模型中位于工具内部的体部分、 也可以是模型中位于工具外部的体部分、还可以是相交所得的褶皱面单元。取决于所用的算 法,该剪切 (绝大多数情况下)可能会有斜切边 (chamfered edges),其尺寸取决于模型单 元的粗糙度。 创建二次曲面剪切 除了标准的平面剪切, EnSight 还提供了二次曲面剪切。这类剪切使用相应二次曲面工具 ( 圆 柱、圆球、圆锥、回转面 ) 来定位剪切位置。 还可通过将剪切区域设为褶皱域来创建包含所有与二次曲面相交的单元,这种剪切有助于查看 位于该值处网格的完整性。 创建 IJK 剪切 IJK 剪切是结构网格的一维或二维切片,剪切后得到的是一维线或二维面,其中一个维度 (如:I)固定,其他一个或两个维度 (如:J 和 K)变化。用户可自定义另外两个自由维度的 范围及步长。通过操纵滑块,可将 IJK 剪切在设定的范围内生成动画。 尽管在结构化网格中可创建平面剪切,人们还是倾向于创建 IJK 剪切,因为这种剪切计算速度 快,而且占用内存少。此外, IJK 剪切让使用者更有直观感。 创建 XYZ 剪切 XYZ 剪切是二维或三维网格 ( 结构或非结构 ) 的一维或二维切片,剪切后得到的是一维或二维 网格切片,其中一个维度 (如:X)固定,而其他两个维度 (如:Y 和 Z)则根据网格的局部 坐标系变化。通过操纵滑块,可将 XYZ 剪切在设定的范围内生成动画。固定维度上的最小值、 最大值以及步长均可由用户自定义。 尽管在任意网格中可创建平面剪切,人们还是倾向于创建 XYZ 剪切,因为这种剪切限制于网 格部件的局部坐标系。若想快速创建 XYZ 剪切,可在部件上点击右键,选择 " 剪切 ",再选择 方向。 创建 RTZ 剪切 RTZ 剪切是二维或三维网格 ( 结构或非结构 ) 的一维或二维切片,剪切后得到的是一维或二维 网格切片,其中一个维度 (如:R)固定,其他两个维度 (如:θ 分量和 Z)则根据网格的局 部坐标系变化。通过操纵滑块,可将 RTZ 剪切在设定的范围内生成动画。固定维度上的最小 值、最大值以及步长均可由用户自定义。若想快速创建 RTZ 剪切,可在部件上点击右键,选 择 " 剪切 ",再选择方向。 回转工具剪切 回转工具剪切可使用回转曲面工具实现。它可以是由回转曲面与模型相交所得的表面,也可以 是回转曲面工具切割出的单元 (褶皱),还可以是旋转工具扫略后所得域的内部或者外部的 体,这种剪切无法执行交互操作。 旋转一维部件剪切 旋转一维部件剪切可通过指定一维部件及旋转轴来创建,它可以是一维部件关于轴旋转后与模 型相交所得的表面,也可以是旋转后切割出的单元 (褶皱),还可以是旋转后扫略出的域的内 部或者外部的体。这种剪切无滑块或者鼠标拖动的交互功能。然而,若一维部件可移动,在移 动之后,回转剪切则自动更新。 创建剪切样条曲线 样条曲线剪切是对已有的样条曲线在均匀的空间间隔上进行采样。样条曲线上各点的值可通过 剖面图或查询功能得以显示,并绘制成曲线图,这些值也可用于进一步计算,如线积分。 创建一般二次曲面剪切 可以创建通用的二次曲面剪切 , 曲面方程为 AX2+BY2+CZ2+DXY+EYZ+FXZ+GX+HY+IZ=J。 该应用只在剪切属性面板 (Clip Feature Panel)中才有。 Page 226 操作指南:创建剪切直线 创建剪切直线 简介 除标准的剪切平面, EnSight 也提供一维剪切。剪切线是对二维或三维模型的线性剪切 , 它采样于均匀的空间间隔 ( 栅 格 ) 或与母部件单元 (网格)相交的表面。剪切线的值可通过剖面图或查询功能得以显示,并绘制 曲线图。 基本操作 1、选择母部件 2、点击剪切图标 3、在工具的下拉栏中选择 " 直线 " 4、类型设为 " 网格 " 或 " 栅格 " 5、若为网格可选择 " 有限 " 或者 " 无限 " ; 若为栅格,则需在栅格线上设置均匀间隔点 的数量 6、定位线工具 (参见操作指南:使用直线工具 ). 7、点击 " 创建 " 8、勾选 " 高级 " 进行详细设置 注: 在直线工具上点击右键,选择 " 剪切 " 以快速创建直线剪切,此举将按默认设置创建直线剪切。 Page 227 操作指南:创建剪切直线 高级应用 正如 Ensight 中其他的剪切工具一样,剪切线也可以交互:使用鼠标拖动、旋转或拉伸直线工具,剪切线会自动重新 计算并显示。若基于该剪切线创建了查询,那么绘制的曲线也将同样自动重新显示。执行交互线剪切的步骤如下: 1、在部件列表中剪切线部件上双击鼠标左键 2、勾选 " 交互 " 3、将鼠标指针移至图形窗口,点击并拖动直线工具的关键点 (端点或者轴线的中心点)至所需位置。 注:交互移动工具时,线工具本身会隐藏,以免遮住剪切线,释放鼠标时,工具又会再次出现。 . 可以指定两个节点来创建线剪切。 这需要有效的节点编号,且在高级模式中才可用。 此方法的作用是:即便节点位置随着时间变化,剪切线也会 一直保持与该两节点关联。 其他说明 有时仅显示直线剪切的节点非常有用。在高级模式下的属性面板中,点击 " 节点、单元、线 " 折叠按钮,编辑显示属 性以便只显示节点 (线或单元不显示)。节点可以显示为圆点、十字或圆球,若显示为十字或圆球,尺寸 (半径)可 以是固定值或某变量值,详见操作指南:设置属性。 Page 228 操作指南:创建剪切直线 另请参见 操作指南:部件创建入门 操作指南:使用直线工具 操作指南:创建剖面的绘制 操作指南:查询 / 绘制 其他剪切: 操作指南:创建剪切面 操作指南:创建二次曲面剪切 操作指南:创建方框剪切 操作指南:创建 IJK 剪切 操作指南:创建 XYZ 剪切 操作指南:创建 RTZ 剪切 用户手册: Clip Parts Page 229 操作指南:创建剪切平面 创建剪切平面 简介 剪切平面是三维网格的平面切片。 EnSight 的剪切操作可以对结构化或非结构化网格进行任意切割。该剪切基于 EnSight 的平面工具,可以是无限的 (至母部件的边界),也可以限制在平面工具的边界内。生成的剪切面的节点可 以基于初始网格的拓扑和分辨率,也可基于用户自定义的规则栅格。 同样可指定三个节点来创建平面剪切。一旦使用了这些节点编号,即使几何模型随时间变化,平面也会一直保持与该 三节点关联。 除了常用的创建平面与域的交集,剪切平面还用于创建切割母部件域所得的 " 前 " (内部)部件或 " 后 " (外部)部 件,这些部件包含与原始域部件同序的有效单元。 与其他剪切工具类似,剪切平面可以随鼠标交互,提供了强劲的可视化能力。剪切平面可自动动画显示空间区域内的 结果或随时间变化的结果。 基本操作 1、选择母部件 2、点击剪切图标 3、选择 " 平面 " 工具 4、将平面工具置于所需位置 (参见操作指南: 使用平面工具 ). 注:可通过设置这些值来轻松创建多个平面剪切。 5、点击 " 创建 " 注:可在平面工具上单击右键并选择 " 剪 切 ",来快速创建平面剪切。此举将 按默认设置创建平面剪切。 Page 230 操作指南:创建剪切平面 交互剪切平面 类似于 EnSight 中的其他剪切工具, " 剪切区域 " 设为 " 相交 " 的剪切平面 (基于平面工具)是可以交互的:随着鼠标 拖动平面工具,剪切平面会自动计算并重新显示。执行交互平面剪切的步骤如下: 1、在部件列表中双击所需的平面剪切部件 2、勾选 " 交互 " 3、将鼠标指针移至图形窗口,点击并拖动平面工具的 关键点 (中心或轴线)至所需位置 4、勾选 " 高级 " 设置更多属性。 高级应用 使用 3 个节点 ID 可指定平面上的三个节点 (使用节点编号)来创建一个无限剪切,该方法生成的平面剪切无论几何模型如何变化,都 会始终关联这三个节点,该设置必须在剪切属性面板 (Clips Feature Panel)中进行。 1、在主部件列表中选择母部件 2、点击剪切图标, 打开属性面板 3、勾选 " 高级 " 3、输入位于目标平面上的三个节点编号 4、点击 " 创建 " Page 231 操作指南:创建剪切平面 将平面附于样条曲线 基于平面工具创建的剪切可以关联至样条曲线 1、创建一条样条曲线 (操作指南:使用样条曲 线工具) 2、创建一个剪切平面,并勾选 " 高级 " 3、在剪切平面的属性面板 (Clip Plane Feature Panel)中,选择所需样条曲线, 将剪切平面关联至该样条曲线 4、通过在该输入框内输入值或移动滑块来调整 平面剪切位置 (0 到 1) 栅格剪切和有限剪切 默认情况下,剪切平面 (基于平面工具)基于原始网格 (母部件)的分辨率和拓朴来计算。剪切平面也可使用规则 网格计算,这种剪切称为栅格剪切,一般用于单元体积大不相同的非结构化网格的剪切中。在栅格切面上创建矢量箭 头比在原始网格切面上创建矢量箭头更直观。 默认情况下,剪切平面会延伸至母部件的边界,但也可将其限制于平面工具的边界内。 将一个已有的剪切平面转变成一个栅格剪切或有限范围剪切的步骤如下: 1、在部件列表中双击所需的剪切平面部件 2、若要转换成栅格剪切,在 " 类型 " 的下拉菜单中选 择 " 栅格 " 3、若要转换成有限范围的剪切平面,在 " 剪切范围 " 下拉菜单中选择 " 有限 " Page 232 操作指南:创建剪切平面 剪切平面动画 Ensight 可以在体部件上扫略剪切平面 (基于平面工具),也可以自动计算剪切平面序列,并用动画书播放 (播放速 度取决于图形硬件)。动画书记录平面工具的开始和结束位置,并动画显示起止位置之间剪切平面的扫略过程。也可 利用关键帧动画来实现剪切平面动画。 关于使用动画书计算剪切平面序列的介绍,参见操作指南:创建动画书。关键帧动画的详细信息参见操作指南:创建 关键帧动画。 平面切割 平面工具还可用来创建这样的部件,这些部件是切割母部件域所得的 " 前 " (内部)部件或 " 后 " (外部)部件,它们 包含与原始域部件同序的有效单元。切割可用来切掉模型不需要的部分,也可用来创建动画效果,比如 " 打开 " 封闭 区域以查看内部。 1、在部件列表中选择母部件 2、点击剪切图标 3、选择平面工具 4、设置 " 剪切区域 " 为 " 内部 "、 " 外部 " 或者 " 内部 / 外部 (包含内部和外部) " 5、点击 " 创建 " 按钮 褶皱面剪切 可以通过相交皱褶的剪切来检查网格的完整性。指定皱褶域生成这样的部件,该部件由与平面工具相交所得的所有网 格单元组成。 1、将 " 剪切区域 " 改为 " 皱褶 " 其他说明 若平面剪切由三个节点所定义,而您又试图使用交互模式,此时,剪切虽然会随着平面工具位置的变化而交互变化, 但是一旦松开鼠标按钮,剪切便又会回到由该 3 个节点确定的平面上。 使用剪切平面可创建任意网格的平面切片。但若为结构化网格 (如 PLOT3D 格式),使用 IJK 剪切会更好, IJK 剪切 所得的结果是 I, J 或 K" 平面 "。一个交互的 IJK 切面将在 I (例如)的范围内扫略并在每个 I 值上显示 JK 平面。详 见操作指南:创建 IJK 切面。 Page 233 操作指南:创建剪切平面 另请参见 操作指南:部件创建入门 操作指南:使用平面工具 操作指南:创建动画书 其他剪切: 操作指南:创建剪切直线 操作指南:创建 IJK 剪切 操作指南:创建二次曲面剪切 操作指南:创建 XYZ 剪切 操作指南:创建 RTZ 剪切 操作指南:创建方框剪切 操作指南:使用样条曲线工具 用户手册:Clip Parts Page 234 操作指南:创建方框剪切 创建方框剪切 简介 方框剪切即使用六面体对三维物体进行剪切或切割,该剪切使用方框工具 (可操作至空间任意位置),剪切结果可以 是由方框工具与模型相交所得表面、可以是模型中位于工具内部的体部分、可以是模型中位于工具外部的体部分、还 可以是相交所得的褶皱面单元。 注:取决于所使用的算法,此剪切 (绝大多数情况下)会有斜切边 (chamfered edges),其大小取决于模型单元的粗糙度。 基本操作 1、在部件列表中选择母部件 2、点击剪切图标 3、选择方框工具 4、将方框工具置于所需位置 勾选 " 高级 ",精确定位方框工具 坐标 5、点击 " 创建 " 另请参见 操作指南:部件创建入门 操作指南:使用方框工具 其他剪切 操作指南:创建剪切线 操作指南:创建剪切平面 操作指南:创建二次曲面剪切 操作指南:创建 IJK 剪切 操作指南:创建 XYZ 剪切 操作指南:创建 RTZ 剪切 用户手册: Clip Parts Page 235 操作指南:创建二次曲面剪切 创建二次曲面剪切 简介 除标准剪切平面外, EnSight 还支持二次曲面剪切,这些剪切使用二次曲面工具 (圆柱,圆球, 圆锥, 回转曲面 ) (圆球,圆锥,回转曲面)来指定剪切的位置。 与剪切平面一样,这些工具也可用于剪切操作,创建母部件域的 " 内部 " 部件或 " 外部 " 部件。 与相交剪切平面一样,可通过鼠标来交互操纵二次曲面剪切。 基本操作 1、在部件列表中选择母部 件 2、点击剪切图标 3、在工具下拉菜单中选择所 需的二次曲面工具 6、点击对话框底部的 " 创建 " 4、设置 " 范围 " 为 " 有限 " 或 " 无限 " 5、将工具置于所需 位置 (参见操作 指南:应用工 具)。勾选 " 高级 ",设置精确的工 具坐标 高级应用 与 EnSight 中的其他剪切工具一样, " 剪切区域 " 设为 " 相交 " 的二次曲面剪切 (除了用回转工具创建的)也可以交 互:用鼠标拖动工具,剪切会自动重新计算并重新显示。执行二次曲面剪切交互的步骤如下: 1、在部件列表中双击所需的二次曲面剪切 部件 2、勾选 " 交互 " 3、将鼠标指针移至图形窗口。点击并拖动 工具的关键点 (参见操作指南:应用 工具)至所需位置。 Page 236 操作指南:创建二次曲面剪切 采用二次曲面工具切割 二次曲面工具可用来创建这样的部件,该部件是切割母部件域所得的 " 内部 " 部件与 / 或 " 外部 " 部件,这些部件包含 与原始域部件同序的有效单元。 1、在部件列表中选择母部件 2、点击剪切图标 3、选择所需二次曲面工具 4、设置 " 剪切区域 " 为 " 内 部 "、 " 外部 " 或 " 内部 / 外部 (包括内部和外部) " 5、点击对话框底部的 " 创建 " 褶皱的二次曲面剪切 可以通过褶皱相交剪切来验证网格的完整性。指定皱褶域生成这样的部件,该部件由与二次曲面工具相交所得的所有 网格单元组成。 4、将 " 剪切区域 " 改为 " 褶皱 ", 剪切会自动更新 另请参见 操作指南:创建部件入门 操作指南:使用 { 圆柱 , 圆球 , 圆锥或回转表面 } 工具 其他剪切: 操作指南:创建剪切平面 操作指南:创建剪切线 操作指南:创建 IJK 剪切 操作指南:创建 XYZ 剪切 操作指南:创建 RTZ 剪切 操作指南:创建方框剪切 用户手册: Clip Parts Page 237 操作指南:创建 IJK 剪切 创建 IJK 剪切 简介 IJK 剪切是结构网格的一维或二维切片,剪切后所得的是一维线或二维表面,其中一个维度 (例如 I) 固定不动,另一 个或两个维度 (例如 J 和 K)则不固定。用户可自定义另外两个自由维度的最小和最大范围及步长。通过操纵滑块, 可将 IJK 切面在设定的范围内生成动画。 尽管在结构化网格中也可创建平面剪切,人们还是倾向于创建 IJK 剪切,因为 IJK 剪切计算速度快,且占用较少的内 存。此外,对于用户来说, IJK 剪切往往更直观。 基本操作 1、在部件列表中选择母部件 2、点击剪切图标 3、设置工具为 "IJK" 4、从 " 网格切片 " 下拉栏中选择所需的固定维 5、在 " 值 " 输入框内输入值并按回车确 认 6、点击 " 创建 " 7、若想为所有的维度修改最大值、最小值和步 长值,勾选 " 高级 ",进行详细编辑 注:可随时改变 IJK 切面的固定维度 (使用 " 网格切片 " 下拉菜单) Page 238 操作指南:创建 IJK 剪切 高级应用 交互 IJK 剪切 使用鼠标调整滑块,可在固定维度的范围内交互扫略剪切。 1、在部件列表中双击所需的 IJK 剪切部件 2、设置 " 交互 " 为 " 手动 " 3、使用鼠标调整滑块 改变 IJK 步长 可以修改块结构化模型部件的 IJK 步长来调整网格的精细度,其子部件和变量也会随之更新。 1、在模型部件上双击鼠标左键,打开 " 模 型部件编辑 " 对话框。 注:不是剪切对话框。 2、基于最小和最大值在 " 从 "、 " 至 "、 " 步长 " 输入框内输入值,分别修改 I、 J、 K 方向网格的精细度。按下回车键 或移至下一个输入框时,部件将会更 新,所有的子部件和变量也会随之更 新。 剪切平面动画 不仅可以手动扫略 IJK 剪切, EnSight 也可以自动计算出一系列 IJK 剪切,这些剪切可使用 Ensight 的动画书来播放 (播放速度取决于图形硬件),详见操作指南: 创建动画书。 Page 239 操作指南:创建 IJK 剪切 另请参见 操作指南:创建部件入门 操作指南:创建动画书 其他剪切: 操作指南:创建剪切线 操作指南:创建剪切平面 操作指南:创建二次曲面剪切 操作指南:创建 XYZ 剪切 操作指南:创建 RTZ 剪切 操作指南:创建方框剪切 用户手册: Clip Parts Page 240 操作指南:创建 XYZ 剪切 创建 XYZ 剪切 简介 XYZ 剪切是二维或三维网格 (结构化或非结构化)的一维或二维切片。剪切结果是一维或二维网格切片,其中一个 维度 (例如 X) 保持不变 (或固定),另一个或两个维度 (例如 Y 和 Z)则根据网格的局部坐标系变化。通过操纵滑 块,可将 XYZ 剪切在设定的范围内生成动画。固定维度上的最小值、最大值以及步长均可由用户自定义。 基本操作 1、在部件列表中选择母部件 2、点击剪切图标 3、在工具的下拉菜单中选择 "XYZ" 4、在 " 网格切片 " 下拉菜单中选择所需的 固定维度 5、在 “ 值 ” 输入框内输入固定维度值 并按回车键确认 6、点击 " 创建 " 注:在固定维度方向上设置增量值,可以轻松创建多个 切片。 注:可随时 (在 " 网格切片 " 下拉菜单中)更改 XYZ 剪切的固定维度。 快捷方式 在图形窗口中右击部件,在下拉菜单中选择 " 剪切 ",再选择 X、 Y 或 Z,此举将会以右键单击的部件为母部件,在鼠 标所指位置按默认设置自动创建出 X、 Y 或 Z 剪切部件。 Page 241 操作指南:创建 XYZ 剪切 高级应用 交互 XYZ 剪切 使用鼠标调整滑块,可在固定维度的范围内交互扫略剪切。 1、在部件列表中双击所需的 XYZ 剪切部件 2、将 " 交互 " 设为 " 手动 " 3、输入所需最小值、最大值和步长 来替换默认值 4、使用鼠标操纵滑块 褶皱的 XYZ 剪切 可以通过褶皱相交剪切来验证网格的完整性。指定皱褶域可生成这样的部件,该部件由与网格切片相交所得的所有单 元组成。 1、将 " 剪切区域 " 改为 " 褶皱 " 剪切平面动画 不仅可以手动扫略 XYZ 剪切, EnSight 还可自动计算出一系列 XYZ 剪切,这些剪切可使用 Ensight 的动画书来播放 (播放速度取决于图形硬件),详见操作指南:创建动画书。 另请参见 操作指南:创建部件入门 操作指南:创建动画书 其他剪切: 操作指南:创建剪切线 操作指南:创建剪切平面 操作指南:创建二次曲面剪切 操作指南:创建 IJK 剪切 操作指南:创建 RTZ 剪切 操作指南:创建方框剪切 用户手册: Clip Parts Page 242 操作指南:创建 RTZ 剪切 创建 RTZ 剪切 简介 RTZ 剪切是二维或三维网格 (结构化或非结构化)的一维或二维切片,剪切后得到的是一维或二维网格切片,其中一 个维度 (例如 R" 径向分量 ") 保持不变 (或固定),另一个或两个维度 (例如 T"θ 分量 " 和 Z"Z 分量 ")则根据网格 的局部坐标系变化。通过操纵滑块,可将 RTZ 剪切在固定维度范围内生成动画。固定维度上的最小值、最大值和步长 均可由用户自定义。 基本操作 1、选择母部件 2、点击剪切图标 3、在工具的下拉菜单中选择 "RTZ" 4、选择 " 网格切片 " (R, T 或 Z) 5、选择描述圆柱长度的轴 6、输入值 (R, T 或 Z 的值),或保留中值 并按回车确认 7、点击 " 创建 " 注:可随时改变 RTZ 剪切的固定维度 (使用 " 网格切片 " 下拉菜单)。若改变了数值,记得按回车键生效。 高级应用 交互 RTZ 剪切 使用鼠标调整滑块,可在固定维度的范围内交互扫略剪切。 1、在主部件列表中双击所需的 RTZ 部件 2、将 " 交互 " 设为 " 手动 " 3、使用鼠标操纵滑块 4、输入最小值、最大值和步长来 替换默认值 Page 243 操作指南:创建 RTZ 剪切 褶皱的 RTZ 剪切 可以通过褶皱相交剪切来验证网格的完整性。指定皱褶域可生成这样的部件,该部件由与网格切片相交所得的所有单 元组成。褶皱剪切无法交互。 1、将 " 剪切区域 " 改为 " 褶皱 " 剪切平面动画 不仅可以手动扫略 RTZ 剪切, EnSight 还可以自动计算出一系列 RTZ 剪切,这些剪切可使用 Ensight 的动画书来播 放 (播放速度取决于图形硬件),详见操作指南:创建动画书。 其他说明 这种剪切类型的 " 剪切区域 " 无法选择 " 内部 "、 " 外部 " 及 " 内部 / 外部 ",因为 T 没有实际意义。若想在 Z 或 R 方向 创建,可使用平面剪切或圆柱剪切代替。 另请参见 操作指南:创建部件入门 操作指南:创建动画书 其他剪切: 操作指南:创建剪切线 操作指南:创建剪切平面 操作指南:创建二次曲面剪切 操作指南:创建 IJK 剪切 操作指南:创建 XYZ 剪切 操作指南:创建方框剪切 用户手册: Clip Parts Page 244 操作指南:创建回转工具剪切 创建回转工具剪切 简介 使用回转曲面工具创建回转工具剪切。该剪切可以是回转曲面工具和模型相交所得的表面、也可以是回转曲面切割出 的单元 (褶皱)、也可以是回转工具的内部或外部的体。这种剪切无法通过滑块或鼠标实现交互,但可以操纵工具本 身,并且剪切会随之更新。 基本操作 1、将回转曲面工具置于所需位置。参见操作指 南: 使用回转曲面工具 2、在部件列表中选择母部件 3、点击剪切图标 4、在工具下拉菜单中选择 " 回转工具 " 5、选择所需的 " 剪切区域 " 6、设置 " 范围 " 7、点击 " 创建 " 注:可以操纵回转曲面工具,并点击 " 更 新工具应用 " 来更新剪切。 还可以改变 " 剪切区域 " 来更改剪切。 另请参见 操作指南:创建部件入门 其他剪切: 操作指南:创建剪切线 操作指南:创建剪切平面 操作指南:创建二次曲面剪切 操作指南:创建 XYZ 剪切 操作指南:创建 RTZ 剪切 操作指南:创建方框剪切 操作指南:创建 IJK 剪切 操作指南:创建旋转 1D 部件剪切 用户手册: Clip Parts Page 245 操作指南:创建旋转一维部件剪切 创建旋转一维部件剪切 简介 可以使用一维部件和旋转轴来创建旋转一维部件剪切。它可以是一维部件关于轴旋转后和模型相交所得的表面、也可 以是旋转后切割出的单元 (褶皱)、还可以是旋转后扫略出的域的内部或者外部的体。这种剪切不能通过滑块或鼠标 实现交互。不过,若一维部件可移动,则在移动之后,回转剪切会随之更新。 基本操作 1、选择母部件 2、点击剪切图标 3、在工具下拉菜单中选择 " 旋转一维部件 " 4、输入一维旋转部件的编号 5、选择剪切区域 6、设置旋转轴方位 7、点击 " 创建 " 注:可以操纵一维部件或编辑位置点和轴向量来更 新剪切。 也可以更改 " 剪切区域 " 来更新剪切。 另请参见 操作指南:创建部件入门 其他剪切: 操作指南:创建剪切线 操作指南:创建剪切平面 操作指南:创建二次曲面剪切 操作指南:创建 XYZ 剪切 操作指南:创建 RTZ 剪切 操作指南:创建方框剪切 操作指南:创建 IJK 剪切 操作指南:创建回转工具剪切 用户手册: Clip Parts Page 246 操作指南:创建一般二次曲面剪切 创建一般二次曲面剪切 简介 点击剪切图标打开剪切属性面板 (Clips Feature Panel),在其创建属性部分可创建 / 编辑一般二次曲面剪切。可以 直接指定一般二次方程的系数,来创建一个二次曲面剪切。 下式为二次曲面的一般方程。通过修改系数值来更改方程。 AX2+BY2+CZ2+DXY+EYZ+FXZ+GX+HY+IZ=J 基本操作 1、点击剪切图标 2、在部件列表中选择母部件 3、工具设为 " 一般二次曲面 " 4、选择所需剪切区域 (相交、褶皱、内部、外部 或内部 / 外部) 5、编辑系数 6、点击 " 创建 " 注:动画间隔不可用于一般二次曲面剪切。 SEE ALSO 操作指南:创建部件入门 其他剪切: 操作指南:创建剪切线 操作指南:创建剪切平面 操作指南:创建二次曲面剪切 操作指南:创建 XYZ 剪切 操作指南:创建 RTZ 剪切 操作指南:创建方框剪切 操作指南:创建 IJK 剪切 操作指南:创建旋转 1D 部件剪切 用户手册: Clip Parts Page 247 操作指南:创建样条曲线剪切 创建样条曲线剪切 简介 除了沿直线的剪切, EnSight 还提供沿着样条曲线的剪切。样条曲线剪切将在采样点处对二维或三维母部件进行查 询,这些点是样条曲线上均匀的空间间隔点,样条曲线上各点的值可通过剖面图或查询功能得以显示,并绘制成 曲线图,这些值也可用于进一步计算 (如线积分)。 基本操作 1、选择母部件 2、点击剪切图标 3、在工具下拉菜单中选择 " 样条曲线 " 4、选择所需样条曲线 (样条曲线的创建请参见 操作指南: 使用样条曲线工具 ) 5、设置曲线上等距点的数量 6、点击 " 创建 " 注:可点击并拖动样条曲线上的点来调整剪切。 其他说明 有时仅显示样条曲线剪切上的节点非常有用,可在属性面板 (Feature Panel)中设置仅显示节点 (不显示线),节 点可以显示为圆点、十字或圆球,若显示为十字或圆球,尺寸 (半径)可以是固定值或某变量值,详见操作指南:设 置属性。 另请参见 操作指南:创建部件入门 操作指南:使用样条曲线工具 操作指南:创建剖面图 操作指南:查询 / 绘制 其他剪切: 操作指南:创建剪切平面 操作指南:创建剪切线 操作指南:创建二次曲面剪切 操作指南:创建方框剪切 操作指南:创建 IJK 剪切 操作指南:创建 XYZ 剪切 操作指南:创建 RTZ 剪切 用户手册:Clip Parts Page 248 操作指南:创建矢量箭头 创建矢量箭头 简介 矢量箭头显示模型上离散点的矢量的模及方向。矢量的大小可以有多种方式显示 (例如:颜色),但重要的方向信息 还需通过箭头来描述。 矢量箭头有多种属性,包括长度、头部样式与尺寸、投影、起点位置以及箭头筛选。 基本操作 2、点击矢量箭头图标 1、选择母部件 3、选择矢量 4、保持默认 " 比例系数 ",也可根据需要更改 5、点击 " 创建 " 6、设置密度 (0.0 到 1.0) 箭头密度从没有箭头 (0.0)到在每个位置都有 (1.0), 中间的箭头密度随机放置,不受用户控制。 7、勾选 " 高级 " 设置更多属性 矢量箭头快捷方式 可以在部件列表或图形窗口中的部件上点击右键并选择矢量箭头,从而在部件上快速创建矢量箭头。 1、在弹出的矢量列表中选择变量,将按默认设置在该部件上创 建矢量箭头。 2、若该数据集只有一个矢量,则所选部件会直接使用该变量创 建矢量箭头。 3、矢量箭头将着色为该矢量。 Page 249 操作指南:创建矢量箭头 矢量箭头高级属性 以下为箭头类型、箭头位置以及箭头筛选属性。 1、可随时更改矢量箭头属性。在部件列表中双击所需矢量 箭头部件。 2、勾选 " 高级 " 3、在类型下拉菜单中选择所需类型 类型解读: 直线 固定长度 曲线 标准的矢量箭头:箭身方向为矢量的方向,箭头长度 等于按比例系数缩放的矢量大小。 同直线,只是其长度与矢量大小无关,为根据比例系 数设置的固定值。 箭身为流场中粒子追踪的轨迹。比例系数为追踪的 " 持续时间 ",且控制停止条件。 警告!若箭头数量太多或持续时间太长,将很费时间 4、选择箭头的起点位置 位置解读: 节点 顶点 单元中心 箭头源自母部件的每个节点 箭头源自母部件单元的顶点 箭头源自所有母部件单元的几何中心 5、从 " 阈值筛选 " 下拉菜单中选择所需筛选类型 类型解读: 无 不筛选 -- 所有矢量箭头都显示 低 只显示大小 > 低值的箭头 带状 高 只显示大小 < 低值且 > 高值 (与低 / 高相反)的箭 头 只显示大小 < 高值的箭头 低/高 只显示大小在高低值之间的箭头 (与带状相反) 6、选择所需箭头尖端的形状 无 没有头部 (默认) 圆锥 实体圆锥形状 7、设置所需 " 偏移量 " 标准 单个楔型,适合二维问题, 楔形所在平面取决于 X、 Y、 Z 分量的相对大小 三角形 两个交叉三角形,适合二维 / 三维问题 彩色 箭身末端采用不同的颜色着 色。适合用在其他形状会产 生许多视觉凌乱的时候。 注:一般不用,因为默认情况下,偏移量由图形硬件自动设定。显 示偏移是指从定义的表面上将矢量箭头移离很短的距离 (一般用于 硬拷贝或动画目的)。它用于切向投影的箭头,且箭头位于母部件表 面的情况。注:也可使用负偏移量 (视方向而定)。如要手动设置, 必须在首选项中关闭硬件的显示偏移,如要关闭,点击编辑 > 首选 项 > 视图。 8、选择投影分量 在投影分量输入框内设置 X、 Y、 Z 比例,低于 1 减少投影,高于 1 扩大投影。零意味着不予考虑该方向分量,即,将箭头限制于垂直 于该分量的平面上。 全部 显示矢量方向上的箭头 切向 显示表面单元的切向分量 法向 显示表面单元的法向分量 分量 同时显示法向和切向分量 Page 250 操作指南:创建矢量箭头 其他说明 矢量箭头也可动画显示,它是通过动画书或关键帧使其母部件 (例如剪切平面)在时间或空间上生成动画来间接处理 的。详见操作指南:创建动画书,操作指南:创建关键帧动画。 若在非结构化网格的剪切部件上创建矢量箭头,且网格分辨率差异极大,或是极度不规则,由此产生的箭头将很难显 示。此时,可选择在栅格切片上创建矢量箭头而非在默认的网格切片上创建。详见操作指南:创建平面剪切。 不同于大多数部件的创建操作,矢量箭头基于部件的客户端显示方式创建。例如,若已有一剪切平面,其显示方式为 特征角或边界,则仅有这些显示的单元会产生矢量箭头 (尽管剪切平面的所有单元都驻留于服务器上)。详见操作指 南:更改可视化显示方式。 切向投影矢量箭头有时会被表面覆盖。要解决此问题,可在偏移量输入框中添加微小的位移,使箭头显离表面。这是 较好的显示输出方式 (例如,硬拷贝或动画)。 另请参见 操作指南:部件创建入门 用户手册: Vector Arrow Parts Page 251 操作指南:创建提升面 创建提升面 简介 提升面是基于变量值缩放的二维表面 (母部件的表面法线方向)。提升面类似于等高线图,它能突显出某变量值的相 对差异。偏移面基于原部件执行刚体平移,并使用该原始部件的几何形体来创建一个新的部件,同时从三维母部件中 获取变量信息,换句话说,偏移部件是使用原始部件的平移部件来剪切三维母部件生成的。 基本操作 提升面 1、选择母部件 2、在 Ensight 的主菜单 中,点击 " 创建 > 提 升面 " 6、输入 " 偏移量 " 3、选择变量 偏移允许 " 移动 " 提升 面,既远离母部件又不影 响形状。 4、 " 表面类型 " 选为 " 提升 " 5、输入适当的比例系数 (或保持默认) 7、选择关闭表面或侧壁面 开关 关闭之后所得表面为真实提 升的表面。侧壁面连接了母 部件的边界与提升面的边 界,以封闭创建后的部件。 8、点击 " 创建 " 偏移面 偏移面可以看作是平移二维部件至三维域, 并剪切该域 1、执行上述步骤 1 至步骤 3 2、 " 表面类型 " 更改为 " 偏移 " 3、设置平移的方向向量和比例因子。刚体平 移量=偏移因子 × 偏移向量 4、设置原始部件编号,将基于刚体平移量来 平移该部件,并在指定位置处剪切母部件 5、点击 " 创建 " 另请参见 用户手册: Elevated Surface Parts Page 252 操作指南:拉伸部件 拉伸部件 简介 使用拉伸功能,可将一个 (多个)部件 " 拉伸 " 成更高维度的有序部件。即一维线可以拉伸成二维面,二维面可以拉 伸成三维体等等。这种 " 拉伸 " 可以是旋转 (由一个薄片扫略出整个饼图),比如轴对称模型的重塑;也可以是平 移,即部件朝某一方向延伸。 对于旋转,必须在全局坐标系下定义旋转轴的位置点与轴向量、以及切片数量和扫略的总旋转角度;而对于平移,需 在全局坐标系中定义方向向量,以及切片数量和总的平移量。 基本操作 旋转: 1、选择母部件 2、在主菜单中,点击 " 创建 > 拉伸 " 3、将拉伸类型设为 " 旋转 " 4、设置切片数量 5、设置总旋转角 (- 360 到 360 之间) 6、设置旋转轴的位置点 7、设置旋转轴的轴向量 (方向余弦) 8、点击 " 创建 " 将使得二维切片旋转成三维体。 Page 253 操作指南:拉伸部件 平移: 1、选择母部件 2、在主菜单中,选择 " 创建 > 拉伸 " 3、将拉伸类型设为 " 平移 " 4、设置平移方向上的切片数量 5、设置总的平移距离 6、设置方向向量的各分量 7、点击 " 创建 " 此时,切片将会变成类似下图 高级:勾选 " 高级 ",可设置更多选项。 另请参见 用户手册: Extruded Parts Page 254 操作指南:创建剖面图 创建剖面图 简介 剖面图的二维形式即提升面:基于变量值映射远离一维部件。剖面图可基于任意一维部件 (剪切线、等值线、粒子追 踪或由 1D 单元组成的模型部件)创建。 基本操作 1、选择母部件 2、在主菜单中,点击 " 创建 > 剖面图 " 3、命名新部件 4、选择变量 5、设置合适的比例系数 (或保持默 认) 6、输入偏移量 该偏移允许移动剖面图远离母部件,但不影响形 状。 7、调整平面工具的方向 平面工具常用于指定剖面图的方位,参见下文详细 说明 8、点击 " 创建 " 对于母部件的每个节点,在剖面曲线上对应的节点是通过所选变量值加上偏移值后再乘以比例系数而定的。剖面图是 连接母部件的节点与剖面曲线节点的线。平面工具常用于指定剖面图的方位,剖面图平行于平面工具并且远离平面工 具的中心 (至少所选变量的值加偏移量是正数)。 虽然剖面图的母部件必须是一维的,但这些节点构成的部件不需要一定是线性的。对于弯曲的母部件,剖面图依然是 平行的,不过它们未必位于同一平面上。 高级 勾选 " 高级 " 可设置更多的比例选项和平面工具的方位选项。 另请参见 用户手册: Profile Parts Page 255 操作指南:创建展开面 创建展开面 简介 Ensight 提供了几种复杂工具,用于从网格中提取计算表面。对于带固定旋转轴的模型部件或剪切面 (类似由一般二 次曲面剪切工具创建),这种曲面可被 " 展开 " 为平面,并且在切面上定义的所有变量均被正确地插值到该展开面上。 剪切部件可基于曲线坐标 (r, z),(θ, z)或 (m, θ)展开,展开处的 " 切缝 " 可交互指定。 模型部件必须有切缝,其位置点和轴向量需在展开面的属性面板 (Feature Panel)中定义。 基本操作 创建展开面的步骤: 1、首先创建一个二次曲面 (圆柱、圆球、圆锥),若已有二次曲面模型部件,则可跳过该步。 2、选择母部件 (即,第 1 步中创建的部件) 3、在主菜单中点击 " 创建 > 展开面 " 4、选择投影轴 (参见下文详细介绍) 5、输入 u,v 比例系数并按回车确认 6、若需显示并改变切缝,点击 " 显示切缝 " 按钮, 并调整滑块 7、点击 " 创建 " 展开部件通过指定投影轴创建,该投影轴基于曲线坐标 r (半径)、 z、 θ 和 m (子午线或经线),这些坐标相对于创 建母部件所用工具 (如:圆柱工具)所在的局部坐标系的原点和坐标轴定义,投影轴为 (r, z),(θ, z)或 (m,θ), u、 v 比例系数 (只适用于 (θ, z)或 (m, θ)投影)为坐标缩放比例,比如:若投影轴为 (θ, z),则 θ 基于 u 缩 放, z 基于 v 缩放。 勾选 " 高级 " 来编辑切缝位置点和轴向量。 另请参见 操作指南:创建二次曲面剪切 用户手册: Developed Surface Parts Page 256 操作指南:创建子集部件 创建子集部件 简介 子集部件通过指定模型的节点或单元的编号创建。子集部件只可基于带有节点或单元编号的模型部件创建。该功能常 用于处理大数据,从较大的区域中分离出所需的节点和单元区域。 基本操作 1、点击子集部件创建图标 3、在 " 添加部件 " 中输入母部件编号 并按回车确认。 2、若功能图标栏中没有该图标,可在图标栏 上单击鼠标右键选择 " 自定义功能图标栏 ...",使用左右箭头在面板中添加子集部件 图标,使用上下箭头移动该图标在面板中 的位置。 3、选择需显示的单元 (或节点) 4、在文本输入框中输入单元 (或节点)的编号 范围 (用逗号分隔) 或者 勾选 " 拾取单元 ",逐个选择单元,默认按键 盘上的 'P' 键 或者 打开选择工具并置于所需位置,点击 " 从选择 工具添加单元 " 以拾取位于工具内部的所有单 元。 5、点击 " 创建 " 另请参见 How To Probe Interactively 用户手册: Subset Parts Page 257 操作指南:创建张量场标记 创建张量场标记 简介 张量场标记显示的是张量的特征向量的方向。可设置仅显示压力或拉力的特征向量,也可选择显示次、中间或主特征 矢量。 张量场标记有许多属性,包括长度尺度、尖端形状、颜色和线宽,这些均为压力或拉力特征矢量的显示属性。 基本操作 1、选择母部件 2、点击 " 创建 -> 张量场标记 " (By default there is not an icon for this option in the Feature Icon Bar.) 3、选择张量 4、选择需显示的特征向量 5、点击 " 创建 " Page 258 操作指南:创建张量场标记 显示属性 有几种修改拉力或压力特征向量标记符号属性的方式。勾选 " 高级 " 进入张量场标记属性面板 (Feature Panel) 的高级模式,从而打开张量显示属性: 1、在 " 尖端形状 " 下拉菜单中选择所需形状。 尖端形状解读: 无 无尖端 (默认) 标准 单个楔型,适合二维问题, 楔形所在平面取决于 X、 Y、 Z 分量的相对大小 三角形 两个交叉的三角形,适用于 二维 / 三维问题 2、标记符号可着色为部件颜色,也可为压力 和拉力特征向量选择特定的颜色。 3、标记符号的线宽可设置为部件线宽,也可 为压力和拉力特征向量选择特定的线宽。 其他说明 张量场标记也可动画显示,它是通过动画书或关键帧使其母部件 (例如剪切平面)在时间或空间上生成动画来间接处 理的。详见操作指南:创建动画书或操作指南:创建关键帧动画。 不同于大多数部件的创建操作,张量场标记基于部件在客户端的显示方式创建。例如,若已有一剪切平面,其显示方 式为特征角或边界,则仅有这些显示的单元会生成张量标记符号 (尽管剪切平面的所有单元均驻留在服务器端上)。 详见 操作指南:更改可视化显示方式。 另请参见 操作指南:部件创建入门 用户手册:Tensor Glyph Parts Page 259 操作指南:显示位移 显示位移 简介 在结构力学仿真中,通常会输出反应几何运动或位移的矢量。每个位移矢量指定一个节点从起始位置开始的平移。 EnSight 可动画显示这些位移,以反应几何的相对运动。 通常,相比模型的尺寸,实际位移相当小,为此, EnSight 提供了比例系数,使位移能够按比例放大。 通常,位移应用于 EnSight 客户端,提供显示修正。然而, EnSight 可根据 " 模型位移变量 " (不可用 " 派生位移 变量 ")修改服务器上几何体的坐标,且服务器端会将位移应用于其他计算。 基本操作 1、选择母部件 2、点击位移图标 3、选择节点变量 注:只能用基于节点的矢量 4、输入 " 位移比例系数 " 并按回车确认 5、为了提高显示速度并节省内存,默认仅显示位移。 若需要该位移参与运算, 请勾选 " 服务器端计算位移 "。 注:所做更改均立即执行,指定位移并非创建新部件,它仅为所选部件设置位移属性。 Page 260 操作指南:显示位移 服务器端位移 在属性面板中有服务器端位移的详细属性 1、首先读取模型,载入所需部件,并激活模型位移变 量 (非派生变量)。 2、在部件列表中选择所需部件。 3、单击右键并选择 " 编辑 …" 4、设置整体几何比例系数 按回车键确认 5、设置位移变量比例系数 按回车键确认 6、选择位移分量,并设置平移量 按回车键确认 注:可将各分量方向设置为不同的变量,并分别平 移一个单值;也可仅设置比例系数来缩放整个几 何。 这种位移是在服务器端修改几何 (而不仅是客户 端上的显示)。任何查询或计算都将基于该修改后 的几何,如面积或体积计算都将使用新的位置值。 Page 261 操作指南:显示位移 高级应用 模态分析通常会产生特征矢量, EnSight 可将这些矢量以动画显示以反应选定的振型 (一个位移向量代表一个模态阶 数)。 EnSight 中的动画书常用于构建和加载动画。载入之后,可在进行视图变换的同时播放该动画。创建模态振型 动画的步骤: 1、确保位移变量为激活状态,且设置了 合理的位移比例系数 2、点击动画书图标 3、在 " 加载类型 " 下拉菜单中选择 " 模态振型 " 4、设置动画书帧数 5、点击加载 6、加载完毕后动画会自动运行 动画的第一帧显示完整的位移 (正如在图形窗口中所显示),最后一帧在相反方向上显示完整的位移,中间帧则显示 按余弦函数规律变化的位移。 注:可创建部件副本或提取部件,以同时显示不同的振型变量,或在播放动画的同时,显示其初始状态。 另请参见 操作指南:创建动画书 。 用户手册: Flipbook Animation Page 262 操作指南:显示离散或实验数据 显示离散或实验数据 简介 除了包含节点和单元的网格数据, EnSight 还支持离散或测量的数据。测量数据集由一系列不连续的空间点组成。测 量数据可以有变量数据,也可以随时间的变化而变化。测量数据的例子包括燃油喷雾、多相流和实验数据。 测量数据无法单独加载 -- 必须给其指定一个规则的几何网格。 基本操作 测量数据经 case 文件 (EnSight6 与 EnSightGold 格式)自动载入 EnSight 中,或者在 " 打开 …" 对话框中的 " 格式 选项 " 下随同其他网格格式一起读取,如下所述: 1、点击文件 > 打开 … 2、找到包含数据的目录 (详见 操作指南:读取数 据) 3、选择高级界面 4、在 " 数据 " 选项下设置所 需信息,包括格式、几何 文件、结果文件 5、打开 " 格式选项 ",选择 并设置测量结果文件 6、选择加载全部部件或部分 部件 Page 263 操作指南:显示离散或实验数据 加载之后,测量数据会以单个部件的形式显示于部件列表中,且命名为 " Measured/Particle "。 测量数据是一组无关联的节点,可以使用 EnSight 的各种节点显示方式来描绘测量数据。改变节点显示的步骤: 1、在部件列表中选择测量数据 2、点击 " 节点显示方式 " 图标 打开 " 部件节点显示方式 " 对话框,默认打开测 量数据部件的节点显示方式。 3、选择节点的显示类型: • 圆点: 节点显示为点 • 十字:节点显示成十字型且可固定其尺寸或基 于变量设定尺寸 • 圆球:节点显示成球状且可固定其尺寸或基于 变量设定尺寸, " 详细 " 属性设置圆球的细节。 4、设置 " 比例 "、" 详细 "、" 尺寸为 " 和 " 变量 "。 其他说明 在用户手册:EnSight Gold Measured/Particle File Format 一章中详细解说了测量数据和测量结果文件的文件格 式。 可使用 动画书或关键帧来动画显示瞬态测量数据。 使用 EnSight 的案例功能,可同时加载多个测量数据集。 另请参见 用户手册: EnSight Gold Measured/Particle File Format Page 264 操作指南:更改时间步 更改时间步 简介 迄今为止, EnSight 已广泛应用于后处理时变数据或瞬态数据。许多情况下,动态现象只能通过交互探究来理解。在 分析时间播放器中更改播放时间,通过 " 分析时间 " 图标进入 " 创建 / 编辑瞬态动画 " 对话框,进行更多的瞬态时间设 置。 EnSight 提供了两种处理瞬态数据的方式:1、时间步 (默认使用该方式):时间以一系列离散的时间步表示,从零到 总步数减一; 2、分析时间:使用结果数据中的实际分析时间。模式在 " 单位 " 下拉菜单中选择,下面会讲到。 " 开始 " 和 " 结束 " 输入框中显示了时间范围,当前时间步显示在 " 当前 " 输入框中。可以在 " 开始 " 和 " 结束 " 输入框 内输入值 (记得按下回车键)来修改时间范围,也可以编辑 " 当前 " 输入框 (记得按回车键)、操纵滑块、单击时间 面板中的左 / 右按钮来更改当前时间步。将 " 开始 " 设置为小于最小值的任意数,将 " 结束 " 设置为大于最大值的任意 数,都使得时间范围复位至全部范围。 时间尺度 (与通过滑块和开始、当前、结束操作一样)可以是连续的也可以是离散的。若将尺度设置为 " 离散的 ", 则仅可显示结果数据中的真实时间步。此外,若 " 单位 " 设置为 " 时间步 " 且 " 时间尺度类型 " 设置为 " 离散的 ",则 开始、当前和结束输入框只可设置为整数;若 " 单位 " 设置为 " 分析时间 ",则可设置为结果数据中的实际分析时间。 若将尺度设置为 " 连续的 ",则可显示实际输出时间步之间的结果 (所有变量在前后两个时间步之间线性插值)。注: 若组成网格单元的节点随时间变化,则无法显示连续的结果。 操纵滑块或更改 " 当前 " 输入框, EnSight 将调用一切资源在图形窗口中显示所定位的时间步,如果数据集较大或子 部件数量较多,该操作可能很耗时。若要实现该瞬态数据的动画,可使用 " 播放 " 图标,或使用动画书完成。 基本操作 使用分析时间播放器: 跳至上一时间步。 逆序播放 停止播放 正序播放 跳至下一时间步 滑块,用于手动调整时间。 选择播放方式: 单次播放 循环播放 往返播放 " 开始 " 和 " 结束 " 设置有效时间范围 (即滑块的行程范围)。 可以在输入框中输入新值,然后按回车键确认。 " 当前 " 输入框设置当前时间步。可移动滑块或在输入框中输 入新值,然后按回车键。 打开 “ 创建 / 编辑瞬态动画 ” 对话框以获取更多的设置。(与 点击分析时间图标一样)。 Page 265 操作指南:更改时间步 : 打开 " 创建 / 编辑瞬态动画 " 对话框进行更多设置 点击 " 分析时间 " 图标或者 "…" 按钮 根据需要更改 点此在图形窗口中显示时间注释 时间尺度类型,可为 " 离散的 " 或 " 连续的 " (详见上文) 单位,可为 " 时间步 " 或 " 分析时间 " (详见上文) 设置循环次数,即时间范围的倍数 点此查看 / 修改详细时间 (参见下文中的高级应用) 设置滑块的步长增量。若时间尺度类型为 " 离散的 ", 则必须是整数。 录制瞬态数据动画: 导入瞬态数据之后,点击播放按钮。 播放时,点击 " 录制当前图形 窗口动画 " 图标 注:与动画书加载类似,无需消耗额外的内存,因而这是一种录制瞬态数据 动画的简单方法。 该录制过程在操作指南: How To 打印 / 保存图片中有所介绍。 Page 266 操作指南:更改时间步 高级应用 EnSight 允许几何体和变量定义于不同的时间轴上。例如:温度在 t=0,3,6 处定义,而压强则在 t=0,2, 和 5.5 时定义。 点击 "Timeset 详细 " 按钮弹出 " 详细时间集 " 对话框,该对话框允许用户查看各种时间轴,并且指定变量在未定义时 的显示状态。 EnSight 的 case 文件定义了时间集 (名称和关联时间值),并且为每个变量和几何体关联一个时间集。 默认情况下,分析时间播放器显示的是所有时间集的合集。然而,也可仅显示与特定时间集关联的时间值。 在如下显示的 " 详细时间集 " 对话框中,存在多个时间集,其中两个时间集 (时间集列表中)已选,并且显示了详细 信息。各时间集窗口显示了 (a)、最小和最大时间值, (b)、定义时间集所用的时间值绿色刻度线, (c)、关联时间集的 当前时间值 (以较长的绿色刻度线显示)。(详见用户手册 5.10 中的 Timeset Details...) 当前分析时间 (与分析时间面 板中的设置相同) 选择要查看的 时间轴 修改所有时间轴使其以同 一方式显示,选择所需修 改的范围,然后选择显示 方式。 时间集刻度值可是全部 时间范围,也可是各时 间集范围。 默认情况下,分析时间 面板显示时间轴合集。 点击该按钮将分析时间 面板中的 " 开始 " 和 " 结束 " 值修改为当前选 定的时间集。 当前时间值。 使用该时间集的变量 (或几 何)列表。 若当前时间值 (即分析时间面板中 的当前时间值,同时也显示于该对 话框的左上角)小于该时间轴的有 效值,则使用最近时间值或保持变 量未定义。 若当前时间值 (即分析时间面板 中的当前时间值,同时也显示于该 对话框的左上角)为该时间轴上不 存在的值,则在已定义的时间值内 插值、或使用左侧时间值、右侧时 间值、最近时间值、或保持变量未 定义。 若当前时间值 (即分析时间面板中的当 前时间值,同时也显示于该对话框的左 上角)大于该时间轴的有效值,则使用 最近时间值或者保持变量未定义。 Page 267 操作指南:更改时间步 另请参见 操作指南:加载瞬态数据 , 操作指南:瞬态数据动画 用户手册: Flipbook Animation Page 268 操作指南:提取涡核 提取涡核 简介 涡核是涡流的中心,此处的速度与涡量平行。详见用户手册相关章节。 基本操作 1、选择母部件 2、点击 " 创建 -> 涡核 " 3、点此弹出设置变量对话框 4、设置 ( 密度和动量 ) 或速度,以及比热比 变量可以在对应的输入框中键入,也可以在上面的 列表中选择,并单击 " 设置 " 按钮。 5、点击 " 确定 " 完成变量的设置 6、点击 " 创建 " Page 269 操作指南:提取涡核 高级应用 生成的涡核线可通过 fx_vortcore_strength 变量或其他有效变量筛选。 1、选择阈值变量 2、设置筛选区间以移除大于或 小于指定阈值的涡核 3、滑动滑块至新的阈值 -或4、直接输入阈值 其他说明 提取涡核不可在多个案例中运行。 另请参见 用户手册: Vortex Core Parts Page 270 操作指南:提取分离 / 再附线 提取分离 / 再附线 简介 分离和再附线创建于任意二维表面,显示出了流动的突然离开 (分离)或返回 (再附)。详见用户手册相关章节。 基本操作 1、选择二维母部件 2、点击 " 创建 -> 分离 / 再附线 " 3、点此弹出设置变量对话框 4、设置 (密度和动量)或速度,以及比热比 变量可以在对应输入框中键入,也可以在上面的列表 中选择,并单击 " 设置 " 按钮。 5、点击 " 确定 " 完成变量的设置 6、点击 " 创建 " 将创建出两个部件:一个分离线和一个再附线。可以 分别编辑这两个部件的显示属性,但若改变其中之一 的创建属性,两个部件都将被修改。 Page 271 操作指南:提取分离 / 再附线 高级应用 生成的分离 / 再附部件可通过 fx_sep_att_strength 变量或其他有效变量筛选。 1、选择阈值变量 2、设置筛选区间以移除大于或 小于指定阈值的分离线 / 再附线。 3、滑动滑块至新的阈值 或 3、直接输入阈值 其他说明 分离和再附部件的创建属性是紧密相连的,一个被修改,另一个也随之更改。一个被删除,另一个也将被删除。 分离和再附线功能仅在一个案例中运行 (不可用于多案例)。 分离和再附线部件一般不会影响二维母部件的可见性 (只要视图首选项中图形硬件偏移为打开状态),但可能会干扰 打印。无论何种情况,都可以在部件的属性面板 (Feature Panel)中手动设置偏移量,以避免干扰。显示偏移的方 向为母部件的表面法线方向。 另请参见 用户手册: Separation/Attachment Line Parts Page 272 操作指南:提取激波面 提取激波面 简介 激波面和激波域有助于显示三维流场中的激波。详见用户手册的相关章节。 基本操作 1、选择母部件 2、点击 " 创建 -> 激波域 / 激波面 …" 3、点此弹出设置变量对话框 4、设置密度或 (温度和压力)、(能量和压 力)、(动量或速度)以及比热比 变量可以在输入框中输入,也可以从 上面列表中选择,然后点击 " 设置 " 按钮。 5、点击 " 确定 " 完成变量设置 6、选择变量 7、选择算法, " 区域 " 或 " 表面 " 8、点击 " 创建 " Page 273 操作指南:提取激波面 高级应用 生成的激波可通过任意阈值变量筛选。 1、选择阈值变量 2、设置筛选区间以移除大于或 小于指定阈值的激波面或激 波域 3、直接输入阈值 或 3、滑动滑块至新的阈值 4、激波通常定义在一个非常狭 窄的频段中,因此,可能需 要在最大值 / 最小值输入框 中输入新值来调整滑块滑动 的范围。 其他说明 参阅用户手册的 Shock Surface/Region Parts 一章中的 Other Notes 部分,以了解如何通过指定马赫数来预筛选和 / 或后筛选流场域,以及在使用 " 区域 " 算法时,如何将瞬态校正项应用于激波移动。 激波面功能不可在多个案例中运行。 另请参见 用户手册:Shock Regions/Surfaces Parts Page 274 操作指南:创建材料部件 创建材料部件 简介 材料部件可被创建为一个域或一个交界面。 材料域为固体域,由一个或多个指定的材料组成。二维单元部件产生二维材料单元,三维单元部件产生三维材料单 元。 材料交界面是由两种或多种指定的材料组成的相邻材料间的边界区域。二维单元部件生成一维材料单元,三维单元部 件生成二维材料单元。 材料部件功能常用于在含有多种材料的数据集中分离出所需的单元域。 基本操作 对于材料域 (算法为 " 平滑的 "): 1、打开 " 创建材料部件 " 对话框 在主菜单中的 " 创建 " 下拉菜单中选择 " 材料交界面 "。 2、选择母部件 3、设置类型为 " 域 " 4、选择一种或多种材料 5、点击 " 创建 " 对于材料交界面 (算法为 " 平滑的 "): 1、打开 " 创建材料部件 " 对话框 在主菜单中的 " 创建 " 下拉菜单中选择 " 材料交界面 "。 2、选择母部件 3、设置类型为 " 交界面 " 4、选择两种或更多种材料 5、点击 " 创建 " Page 275 操作指南:创建材料部件 另请参见 用户手册: Material Interface Parts 在 9.1 节, Section 9.1, EnSight Gold Casefile Format, 以及 EnSight Gold Material Files Format Page 276 操作指南:移除失效单元 移除失效单元 简介 EnSight 中,可基于变量移除 " 失效 " 单元。这种失效是一种 " 深度 " 失效 -- 单元不仅在客户端上被移除,同时也不再 参与所有服务器端的计算。例如,使用变量计算器计算部件体积,将仅计算所有的非失效单元。若只需更改失效单元 的可见性,可使用 Element Blanking。 失效准则可以是两种变量状态 (一种是该单元失效,而另一种是该单元未失效),或是指定了极限值和失效条件的变 量阈值 (如 Von Mises 应力 / 应变)。失效变量必须是单元变量,且只可在模型部件上执行该操作,若想在子部件上 (如切面或等值面)获得这种效果,需将此操作应用到该子部件的模型母部件上。 基本操作 使用单元变量移除失效单元,操作步骤如下: 1、选择模型母部件 2、点击 " 过滤单元 " 图标 3、选择单元变量 (本例子中,使用 Failure_Stress) 4、设置条件和值 (本例子中,定义 Failure_Stress 大于 0.7 的单元失效) 5、点击 " 应用 " 满足失效条件的单元将会从模型中消失。 Page 277 操作指南:移除失效单元 高级应用 EnSight 的用户自定义读取程序 (reader) API 能够处理指定的失效变量和失效值以及失效条件。因此,可在读取程 序 (reader)中设置使用求解器规定的失效条件,并自动应用到失效单元操作。以下是 LS-DYNA3D 的例子。 注:在该读取程序 (reader)的格式选项中,标题为:"Remove Failed Elems" (移除失效单 元) 勾选该选项,将创建一个 "Delete_Flag" 变量, EnSight 失效单元功能会自动打开,且条件和 值均已设置好,将移除求解器定义的失效单元。(对于 LS - DYNA3D, 移除 Delete_Flag 变 量值等于 0.0 的单元) 另请参见 操作指南:读取用户自定义 Page 278 操作指南:单元消隐 单元消隐 简介 EnSight 允许在模型中拾取单元并使其消隐 --" 显示空白 "。此举使得用户可以查看某些部件的内部信息或? 除部件的 一部分 (并非隐藏整个部件或透明)。单元消隐仅仅是单元在客户端上隐藏。例如:模型的体积并不会因为有某些单 元被消隐而变化。单元消隐是暂态的,并且可以 " 清除 " 以重返其可见性。 基本操作 使用拾取执行单元消隐: 1、将拾取功能设置为 " 选取单元以消隐 " 2、在部件列表中选择所需部件 3、将鼠标指针置于需消隐的单元上, 按下 "P" 键 可以看到位于鼠标下方的单元消失了。 4、点击 " 单元消隐 / 可见 " 图标,在弹出的对话 框中点击 " 清除 ",使单元重新得以显示 注:更改鼠标和键盘设置,可使用鼠标完成单元 消隐。例如:可在首选项中设置使用鼠标中键完 成消隐。(编辑 > 首选项 > 鼠标和键盘) Page 279 操作指南:单元消隐 另外,选择工具可用于在大尺度上执行单元消隐。 1、选择需执行单元消隐的部件 2、点此打开选择工具 3、将工具置于所需 位置 4、点击 " 单元消隐 / 可见 " 图标 5、设置消隐条件:内部或外部 (选择工具的内部或外部)、顶层或全部 (顶 层表示仅消隐第一个可见层,全部则表示在选择工具垂线方向的所有单元 全都消隐) 6、点击选择工具左上角的单元 消隐擦除符号 结果 如图 单击 " 清除 " 或 " 清除所有 " 按钮撤消消隐。 说明 单元编号常用于标记可见性,这些标记在时间步变化过程中会被保留。如果单元编号发生变化 (比如组成单元的节点 发生变化),而 EnSight 还继续使用与原先相同的编号,这可能会导致不同位置的单元不可见。 另请参见 操作指南:使用选择工具 Page 280 操作指南:使用点部件 使用点部件 简介 点部件是仅由节点组成的部件,该部件可作为模型部件载入,也可以使用点部件功能来创建。要创建该部件,必须定 义一系列点的位置。点的位置可以从外部文件读取,也可以将光标工具置于所需位置来添加。可以编辑这些点的位 置,或删除任意点。选择母部件并点击创建,将创建一个仅包含节点的新部件。这种部件可用于表示数据中的探针, 或者用于创建网格使之成为二维或三维部件。可将模型部件的节点变量映射至点部件的位置,从而写输出节点变量信 息以应用于进一步计算 (点击文件 -> 保存 -> 几何实体 )。注:若母部件仅有单元变量,则必须使用计算器函数 ElemToNode 将变量值映射到节点处。 基本操作 1、选择母部件 2、点击 " 创建 -> 点部件 ",打开点部件 的属性面板 (Point Parts Feature Panel) 3、点击显示光标工具 4、移动光标工具至所需位置 (使用交互方式或位置变换编辑器均可), 点击 " 添加点 (于光标处) " (可重复多次)。 4. 也可点击 " 从文件加载点 …" (弹出 " 文件选择 " 对话框), 选择包含所需点的文件。 ( 参见用户手册第 9.17 章 Point Part File Format User Manual) 点部件文件的简单例子: #Version 1.0 #EnSight Point Format -.5, -.5, .5 -.5, .5, .6 .5, -.5, .7 .5, .5, .4 -1.5, -1.5, .5 1.5, 1.5, .3 2.25, 2.1, 1.5 5、点击 " 创建 " 6、若需基于点部件创建网格,勾选 " 高级 " Page 281 操作指南:使用点部件 另请参见 用户手册: Point Parts Page 282 操作指南:激活变量 激活变量 简介 EnSight 读取结果数据时,相关的变量会列于变量面板上,并以两种状态存在, " 未激活 " (未加载至内存)或 " 激活 " (已读至内存)。 若不再用到某激活状态的变量,可以禁用该变量以释放内存。 基本操作 变量激活与失活 在多数情况下,变量会根据需要自动激活。例如:若基于失活变量创建等值线, EnSight 将在创建等值线之前自动先 激活该变量。 也可以在变量列表中的变量上点击右键来手动激活或失活变量 . 1、在所需变量上点击右键。灰色状态的变量表示当 前为失活状态。 2、右键点击后,在下拉菜单中选择 " 激活 " (若变 量已激活,则选择 " 失活 ") 另请参见 编辑调色板、 创建新变量 用户手册:Variable Selection and Activation Page 283 操作指南:创建新变量 创建新变量 简介 EnSight 可以基于已有变量和部件来创建新变量。例如:在一个流体动力学问题中,若已知动量、密度和滞止能量, 可以计算出温度、马赫数、压强或速度。除了内置的函数之外,还可以结合已定义的变量使用公式编辑器来创建自定 义函数。 本文分为以下几个部分: 简介 变量创建 表达式示例 扩展的 CFD 变量 基本操作 简介 EnSight 提供了五种不同的变量类型: 常量 常量为一个单值,它在一个部件上保持恒定,尽管它可以随着时间的变化而 变化。例如:Analysis_Time、 Temperature[123] (节点 123 上的温度值)、 Stress{3}[321] (时间步为 3 时,节点 321 上的应力值)、或结果恒定的函 数值 (如:面积)。 标量 标量为一组值:部件上各节点或单元的值。例如:Pressure、 Velocity[Z] (速度的 Z 分量)、 Stress{3} (时间步为 3 时的应力)、或结果为标量的函 数值 (如:流量) 矢量 矢量为一组值:部件上各节点或单元的三个值 (X,Y,Z 分量)。例如: Velocity、 Velocity{3} (时间步为 3 时的速度值)、 Coordinate (节点的 XYZ 坐标)、或结果为矢量的函数值 (如:涡量) 张量 张量为一组值:部件上各节点或单元的 6 个值 (各向同性)或 9 个值 (各 向异性)。张量可直接用张量场标记来表示,变量计算器中的 eigenvalues、 eigenvectors、 determinant、 VonMises 或 Tresca 等可用作张量的相关计 算。 复变量 在 EnSight 中,复变量既可以是标量,也可以是矢量,包括实部和虚部。变 量计算器允许用户计算复变量的模、辐角、瞬态响应等。 变量可以是已知的 (从数据中读取或 EnSight 自动提供),也可以是派生的 (在 EnSight 会话期间由现有变量推导出 的)。变量类型以及是已知变量还是派生变量均显示在变量面板中。 " 位置 " 一栏将告知变量值基于节点还是单元。 每一个非恒定变量 (既可以是已知的,也可以是派生的)均有一个调色板,用来定义变量值与颜色的映射关系。这些 调色板均可编辑 (详见操作指南 :编辑颜色映射)。恒定变量可以文字标识显示于图形窗口中 (详见操作指南: 创 建文字注释 )。 对于瞬态数据,当时间步改变时,派生变量将自动重新计算。 Page 284 操作指南:创建新变量 变量创建 派生变量可使用 Variable Calculator 创建。创建新变量的步骤: 1、点击变量计算器图标。默认情况下,会有三 个选项 (通常可以看到四个),最左边的图 标表示预定义的函数、铅笔图标表示自定义 函数、第三个选项用来反馈模型变量信息。 也可以有多个表达不同功能的用户自定义选 项, ΣF 选项为默认的用户自定义的求和工 具,用来计算力和力矩的和。 2、选择所需选项。使用预定义函数,或使用数 学运算符和简单数学函数来自定义函数。 预定义函数选项: 可通过函数名查找或在列表中直接查找函数。 选中一个函数时,该函数名将自动载入上方的变 量名输入框,该函数名将成为变量列表中的变量 名。也可输入新名称来替换原名称 (并且敲击回 车键)。 在函数列表的下方将会出现函数的描述。 在 " 预定义函数参数 " 部分,呈现了各种必需输 入的信息。 对于每个必需输入项,都呈现了有效的选项。例 如:右图中的函数,密度既可以是浮点值,也可 以是标量。若想指定为标量值,点击单选按钮, 在下拉菜单中 (仅显示标量)选择所需标量。若 想使用浮点值,则在当前显示为 " 输入浮点值 " 的输入框内双击并输入恰当的值。 3、所有参数都设置完毕之后,需确认在部件列 表中选择了恰当的部件,然后点击 " 计算 "。 Page 285 操作指南:创建新变量 自定义函数选项: 另外,还可选择所需变量、数学函数、运算符 及数字来建立自己的函数。 一旦在表达式输入框内定义好了的方程,并且 在变量名输入框内定义好了名称 —— 再确认选 择了正确的部件,然后点击 " 计算 "。 表达式示例 下面的示例展示了变量计算器的用法。通常,首先在变量名输入框内输入名称,然后点击界面上的按钮或在列表项中 选择或直接在表达式区域框输入。在下面的示例中,假设 Analysis_Time (瞬态数据中的恒量)、 pressure、 density 和 velocity 为已知变量。 表达式 -13.5/3.5 描述及创建步骤 简单的常数。 要创建它,可通过键盘输入,也可点击计算器按键。 Analysis_Time/60.0 恒量。假设分析时间的单位为秒,该表达式将计算出以分钟为单位的时间。 要创建它,在变量列表中选择 Analysis_Time,然后通过键盘输入或点击计 算器按键来输入 " /60.0" velocity*density 动量 -- 矢量 要创建它,在变量列表中选择 "velocity ",点击或输入 *,再在变量列表中选 择 "density " Page 286 操作指南:创建新变量 表达式 描述及创建步骤 SQRT(pressure[73]*2. (节点 73 处的压强 *2.5+ 节点 73 处的速度的 X 分量)的平方根 5) + velocity[X][73] 要创建它,在数学函数列表中选择 "SQRT",在变量列表中选择 "pressure", 点击或输入 " [73]*2.5)+",再在变量列表中选择 "velocity",点击或输入 "[X][73]" velocity^2 这里需要注意, velocity^2 不等于 DOT(velocity,velocity)。 EnSight 中的矢量与 矢量相乘以分量形式表示 (x-component*x-component, y-component*ycomponent, z-component*z-component), SQRT(x-component^4 + ycomponent^4 + z-component^4) 为该表达式的模,而非模的平方。若想获得以 速度的平方为大小的标量,使用 DOT(velocity,velocity) ;若想得到速度的模, 使用 RMS(velocity) 或 SQRT(DOT(velocity,velocity)) 或 SQRT(velocity[x]*velocity[x]+ velocity[y]*velocity[y]+velocity[z]*velocity[z]) pressure{19} 标量,表示时间步为 19 时的压强。该变量不随当前时间步的改变而改变。 要创建它,从变量列表中选择 "pressure",然后点击或输入 " {19}" MAX(plist, pressure) 恒量,表示部件列表中所有部件的所有节点上压强的最大值。 要创建它,在通用函数列表中选择 "MAX",然后根据信息反馈区的提示信息进行 操作。 (pressure/ max_pres)^2 标量,表示无量纲化压强的平方。 要创建它,首先根据上述示例计算出恒量 "MAX " (这里称为 max_pres),然 后点击或键入 "(",再从变量列表中选择 "pressure",再点击或键入 "/",接着 在变量列表中选择 "max_pres",最后点击或键入 ")^2" 因为 EnSight 同时只能计算一个变量,所以必须将方程分解为若干个小方程,使用临时或中间变量进行。 计算器存在以下局限性: 1、表达式中不可使用变量名,以下输入为非法输入: temperature = temperature + 100 应使用 temperature2 = temperature + 100 2、表达式中不可使用函数结果。 (pressure / MAX(plist,pressure) )^2 应分解为两个子步骤进行。定义 p_max: MAX(plist,pressure) 然后定义 norm_press_sqr: (pressure / p_max)^2 3、时间计算 (使用 {})不可用于子部件 (或几何模型随时间变化的部件)。 4、计算只发生在基于服务器的部件。基于客户端的部件则被忽略,其变量值可能并未定义。 想要获取各函数 (及参数)的详解信息,参见用户手册中的 General Functions 或 Math Functions。 Page 287 操作指南:创建新变量 扩展的 CFD 变量 若已给定恰当的基本变量和常量, EnSight 能够根据这些已知变量自动创建各种常用的 CFD 变量,而不必分别创建。 在加载模型后,打开 " 扩展的 CFD 变量设置 " 对话框完成设置: 1、在变量列表的任意变量上点击右键,从下拉菜 单中选择 " 扩展的 CFD 变量 …" 2、在列表中选择变量名,然后点击 " 设置 " 按钮。 例如:在列表中选择 "Density",然后点击密度输入 框后面的 " 设置 " 按钮。 3、所有的变量和常数均设置完毕之后,勾选 " 显 示扩展的 CFD 变量 "。 4、点击 " 确定 "。 常用的 CFD 变量将显示在变量列表中。注:在激 活之前,实际上并没有计算这些变量。 若有一个 " 标准的 "PLOT3D Q 文件,在读入数据 的时候会默认显示扩展的 CFD 变量。 另请参见 操作指南:编辑颜色映射 用户手册:变量创建 , General Functions 和 Math Functions. Page 288 操作指南:提取边界层变量 提取边界层变量 简介 EnSight 可以通过变量计算器计算很多边界层变量。也可以批量计算以下变量 (本质上消耗同样多的计算资源) 边界层厚度 位移厚度 动量损失厚度 形状参数 表面摩擦系数 命名: (bl_thickness) (bl_displ_thickness) (bl_momen_thickness) (bl_shape_parameter) (bl_skin_friction) 三维域中必须存在二维表面,且指定该二维表面作为母部件。 对于这些变量的详细描述,参见用户手册的相关章节。 基本操作 1、选择二维母部件 2、在变量列表中的任意变量上点击右键,在下拉 菜单中选择 " 边界层变量 " 3、通过在列表中选择变量并点击 " 设置 " 按钮来定义变量。 4、定义 (密度和动量)或速度 变量可以通过输入框输入,也可以在列表中选择并点击 " 设置 " 按 钮。 5、点击确定结束定义变量。 6、选择定义边界层外的速度的方法。 7、点击 " 创建 / 更新 " 将生成 5 个新变量,并可用于进一步操作,例如部件着色和查询。 其他说明 这些变量在变量计算器中是独立的变量。参见用户手册第四章 Boundary Layer Variables 。 注:自由流密度和自由流速度为 " 上游 " 流体密度和速度的大小 (入口附近),其仅用于计算表面摩擦系数 (Cf)。 边界层变量不可用于多个案例。 Page 289 操作指南:提取边界层变量 另请参见 操作指南:创建新变量 用户手册:Boundary Layer Variables Page 290 操作指南:编辑调色板 编辑调色板 简介 所有标量和矢量均有相应的调色板,用来定义变量值与颜色之间的映射。可以编辑这些调色板来自定义映射。调色板 也可被存盘,并在后面的会话中恢复。 基本操作 各变量的默认调色板有五个色阶 (其最小值和最大值即为变量的极值)。颜色渐变为一个标准五色谱,(从小到大) 设置为蓝、青、绿、黄和红。 激活状态的标量和矢量均有调色板。标量有 1 个调色板,而矢量有 4 个调色板 -- 一个是模,另外三个分量各自对应一 个。 激活状态的变量在变量列表面板上显示为黑色,而未激活的变量 (尚未读入 EnSight)则显示为灰色。若要激活变 量,可右键点击列表中的相关变量,选择激活。 EnSight 可在图形窗口中显示多个颜色图例:: 1、点击 " 注释 " 选项,打开图例组 2、在列表中选择所需变量或变量分量 3、通过快速图标栏 (Quick Action Icon Bar)的 " 可见 性 " 按钮打开 若移除图例,可重复上述步骤,也可右键点击并选择 " 隐藏 "。 颜色图例有一系列的显示属性,包括尺寸、位置、变量标签的格式。详细请参见操作指南:创建图例。 Page 291 操作指南:编辑调色板 可通过调色板编辑器访问变量的各种信息,包括最小 / 最大信息、直方图分布、变量值映射的颜色和透明度: : 1、选择所需编辑的部件,点击快速图标栏 (Quick Action Icon Bar)的 " 颜色 / 透明度 " 按钮 2、点击 " 调色板 …" 按钮 3、在下拉菜单中选择所需 编辑的调色板 调色板最小值滑动条 键入调色板最小值 默认打开初级选项 调色板色阶 (以及变量值)。可 输入新值。点击颜色可以更改颜 色。 调色板最大值滑动条 键入调色板最大值 更新变量范围, a、变量极 值, b、变量在选定的部件上 的极值 (注:与部件的单元 显示方式有关), c、变量在 选定视口中的当前可见部件 上的极值。 键入调色板的色阶数 (221) 反色 / 反值 在两个色阶间插值。输入高 色阶和低色阶,点击 " 内插 值 " 以创建中间色阶 改变色阶颜色 4、点击需要修改的色阶后面的颜色按 钮,在弹出的对话框中选择新的颜 色。 或者 5、点击 " 反色 " 将使颜色反序 或者 6、点击 " 文件 " 选项,选择新的调色板,点击 " 恢复 " 载入新的调色板。 Page 292 操作指南:编辑调色板 高级应用 1、打开颜色编辑器,然后点击 " 调色板 …" 按钮。 2、选择 " 高级 " 选项 调色板由一组控制点上的颜色和不透明度信息组成,默认情况下, EnSight 均匀地创建控制点,并 且点的个数与调色板上的色阶数相同。可以更改对话框下方的 " 节点锁定 " 选项,来从色阶上解耦 控制点。 控制点图形的背景包含了调色板对应变量的直方图分布,图像左侧的小水平操纵杆用来调整直方 图的纵轴信息。 操纵控制点 3、选择操纵的分量 (R、 G、 B 或 Alpha) 更改控制点的值 4、点击控制点,在 " 色值 " 输入框内键入值 4、或点击控制点,将其拖至一个新值。默认情况 下,控制点的运动位置是受限的,只有值的大小 可变。若想移动控制点的位置,必须将 " 节点锁 定 " 设置为 " 无 "。 添加或删除控制点 5、在控制点上点击右键,选项添加或删除控制点。 若添加控制点,将会在所选点的右侧添加。 6、对于大数据,将 " 更新 " 设为 " 延迟更新 "。此 时将会出现 " 更新应用 " 按钮,点击该按钮,更 新将生效。 7、点击 " 选项 " 8、 " 着色类型 " 默认为 " 连 续 ",即插值或平滑颜色。 9、将 " 着色类型 " 改为 " 色 带 ",将为每个颜色创建一 个色带。减少每个色阶的 颜色数,从而使色带变粗 糙。 10、对于未定义的变量值,有两种处理方法。 默认情况下,将其显示为 0,也可将其设 为隐藏不显示。 11、边值处理:是指对变量值位于调色板上最 小 / 最大值范围之外的那部分值的处理方 法,默认情况下,小于 (大于)调色板上 最小值 (最大值)的部分,按最小值 (最 大值)的颜色显示。也可将其设为显示部 件色或隐藏不显示。 12、更改 " 透明体渲染因子 " 以作用于体渲染 13、对于瞬态数据,勾选此项并在 " 时间范 围 " 输入框内填上合适的开始和结束时间 步,将调色板极值调整为此时间步范围内 的变量极值及相应的直方图信息。 Page 293 操作指南:编辑调色板 标线为叠加在调色板上的单一色阶,旨在强调色阶间的 差别。 14、点击 " 标线 " 选项。标线是指在特定的变量值处绘 制指定的颜色。该功能类似于等值线着色。 15、设置颜色、线宽和最大标记线数量。 16、在 " 添加 " 下拉菜单中选择添加标记线的方式: " 于各色阶处 " (在每个色阶值处添加标记线)、 " 于特定值处 " (在指定的值处添加单个标记)、 或 " 均匀标记 " (在 " 数量 " 输入框内键入值,则 均匀地添加标记) 17、点此可清除标记。 EnSight 内置了一系列预定义的调色板。 18、选择一种调色板 19、点击 " 恢复 " 若新调色板的色阶数与当前调色板的色阶数不匹配,将 会弹出一个对话框,询问是使用新的色阶数还是使用当 前色阶数。 其他说明 另请参见 操作指南:创建图例、 创建新变量、 创建等值线 用户手册: Variable Summary & Palette Page 294 操作指南:使用体渲染 使用体渲染 简介 EnSight 的可视化技术为使用点、线和面来表征数据,某种程度上,需要二次采样体数据。体渲染是一种可视化技 术,它允许用户一次查看整个数据量,而无需任何切片数据。这个过程涉及到查找重叠像素的所有单元,并且累积每 个像素的颜色和透明度。体渲染可着色为纯色,但更多的时候,会使用变量或变量分量对应的调色板来着色。调色板 包含透明度 ("alpha")值,可以基于变量值调节透明度。 基本操作 1、选择三维母部件 2、打开颜色对话框 3、选择着色变量 4、将单元显示方式设置为 " 体渲染 " 体渲染是部件的几种 " 单元显示方式 " 之一。当数据载入 EnSight 时,通常默认显示方式为边界、特征角或全部显 示,这些显示方式仅包含点、线或面数据,而 " 体渲染 " 显示方式将激活体渲染。与面显示一样,可在部件颜色对话 框中设置体渲染的颜色和不透明度,也可以使用标量、矢量或矢量的分量来着色。对于大型非结构化部件,请参见高 级应用中有关如何利用块结构的体渲染功能来减少内存消耗和提高性能的介绍。 Page 295 操作指南:使用体渲染 高级应用 EnSight 提供了体渲染的高级控制。通过调整 alpha 值 (调色板编辑器中显示为 A)来控制变量调色板上各色阶的体 渲染程度。 Alpha 值为体渲染时特定色阶的不透明度 / 光强度,这意味着可以通过增加这些色阶的不透明度,来强调 体渲染着色中变量的色阶。还可以通过调整 " 透明体渲染因子 " 来扩大整个域的不透明度。 5、点击 " 调色板 …" 按钮 6、鼠标左键点击控制点,并往上 拉。 8、若体渲染接近隐藏状态,则可 均匀地增大 " 透明体渲染因子 " 以增加不透明度。 7、注意这些色阶处变量值的不透 明度也随之增大,从而在图形 窗口中创建突显部分。 Page 296 操作指南:使用体渲染 结构化体渲染 上文中使用的非结构化体渲染占用了很大的桌面系统内存以及图形硬件。还有另一种结构化体渲染,该技术将创建一 个方框剪切,并在母部件上间隔均匀地采样。注:这种技术需要在规则的网格上采样。 1、选择三维母部件 2、打开方框工具 3、将鼠标指针置于方框工具上,点击右键,在下拉菜单中选择 " 适 合选定的部件 "。这将使得方框工具正好适合步骤 1 中选定的部 件。 4、在方框工具上再次点击右键,选择 " 体渲染 > 创建 " 5、在弹出的对话框中方框工具的 X、 Y、 Z 方向设置采样数 6、根据上一节中所学知识给生成的 Volume Clip 部件着色 7、刚刚创建的 Volume clip 部件为一个方框剪切,可通过剪切部件 的属性面板 (Feature Panel)对其进行编辑 (也可使用该面板 创建)。 其他说明 体渲染需要 DirectX 10 的显卡,最好是拥有更大显存和最新软件驱动的新显卡。体渲染时,每一千万个四面体网格大 约需要使用 1G 的显存,其他单元将被分解为多个四面体。在旧显卡上, EnSight 无法实现体渲染。另外, EnSight 不 支持远程渲染,因为很有可能会遭遇大量的 OpenGL 远程渲染问题。 另请参见 操作指南:更改可视化显示方式、编辑色彩映射 Page 297 操作指南:获取点、节点、单元及部件信息 获取点、节点、单元及部件信息 简介 EnSight 提供了许多方法用以从结果中提取精确的数据信息。可显示节点、单元、部件、 IJK 位置或任意点的具体 信息。 基本操作 显示点信息 显示任意点的信息: 1、若数据为瞬态的,在分析时间面板中设置所需时间。 2、若有多个 案例,通过案例 > 案例名称 来选择所需案例。 3、在所需位置放置 光标工具。 4、在部件列表中选择所需部件。仅当光标工具位于所选部件的单元内部时,查询才生效。 5、在主菜单上点击查询 > 显示信息 > 光标。 查询结果将呈现于 EnSight 弹出的消息窗口中。 也可通过消息按钮进入。 下面显示的是点的输出信息示例: Point (6.19810e-01,2.77589e-01,2.41451e-01)(In Frame 0) Query Information. Found in structured part # 2. Found in element # 168379. Closest node # 1782 (within the element) Value for Variable density is 9.96230e-01. Values for Variable momentum are: x=3.03989e-01,y=-1.42727e-02,z=8.51241e-02,mag=3.16005e-01. 显示节点信息 若要显示特定节点的信息,则节点必须带有编号信息,且必须知道所需查询的节点编号。若编号未知,可打开部件 节点编号的可见性进行查询,或者若知道该节点所在的单元,也可显示该单元的信息来间接显示节点信息 (见下 文)。最终该指定节点上的所有激活状态的变量均将显示。显示节点信息的步骤: 1、若数据为瞬态,在分析时间面板中设置所需时间。 2、若有多个 案例,通过案例 > 案例名称 选择所需案例。 3、在部件列表中选择所需部件。仅当节点位于所选部件的内部时,查询才生效。 4、在主菜单中点击 " 查询 > 显示信息 > 节点 ",将弹出 " 查询 " 对话框,在文字输入框内输入所需查询节点的 编号,点击确定。 查询结果将呈现于 EnSight 弹出的消息窗口中。 也可通过消息按钮进入。 下面显示的是节点的输出信息示例: Node 123 Query Information. Coordinates (In Frame 0) are: (-2.00000e+00,0.00000e+00,1.19320e+00) Found in unstructured part # 1. Values for Variable velocity are: x=5.82290e-01,y=3.70160e-02,z=-1.82780e-03,mag=5.83468e-01. Page 298 操作指南:获取点、节点、单元及部件信息 显示 IJK 信息 显示结构化模型中特定 IJK 位置的信息: 1、若数据为瞬态,在分析时间面板中设置所需时间。 2、若有多个 案例,通过案例 > 案例名称 来选择所需案例。 3、在部件列表中选择所需部件 (仅一个)。仅当指定的 IJK 位于所选部件的内部时,查询才生效。 4、在主菜单中点击 " 查询 > 显示信息 > IJK",将弹出 " 查询 " 对话框,在文字输入框内输入所需查询的 IJK 位 置,点击确定。 查询结果将呈现于 EnSight 弹出的消息窗口中。也可通过工具栏上的消息按钮进入。 IJK 位置处的所有激活状态 的变量均将显示 下面显示的是 IJK 查询的输出信息示例: IJK 2 5 10 Query Information. Node Id is: 26146 Found in iblanked structured part # 1. Coordinates (In Frame 0) are: (4.72982e-01,1.64710e-01,6.50679e-02) No variables active to show values at the IJK location. 显示单元信息 若要显示特定单元的信息,则单元必须带有编号信息,且必须知道所需查询单元的编号。若编号未知,可打开部件单 元编号可见性进行查询。显示单元信息的步骤: 1、若数据为瞬态,在分析时间面板中设置所需时间。 2、若有多个 案例,通过案例 > 案例名称 来选择所需案例。 3、在部件列表中选择所需部件。仅当指定的单元位于所选部件的内部时,查询才生效。 4、在主菜单中点击查询 > 显示信息 > 单元,将弹出 " 查询 " 对话框,在文字输入框内输入所需查询单元的编 号,点击确定。 查询结果将呈现于 EnSight 弹出的消息窗口中。 也可通过消息按钮进入,单元上所有激活状态的变量均将显示。 下面显示的是单元查询的输出信息示例: Element 321 Query Information. Found in unstructured part # 2. Type of element is 6 Noded triangle Number of nodes is 6 Node IDs are: 1050 910 1054 1052 1053 1055 Neighboring Element Information is: Element neighbor 318 is of type 6 Noded triangle Element neighbor 322 is of type 6 Noded triangle Page 299 操作指南:获取点、节点、单元及部件信息 显示部件信息 显示某部件的信息: 1、若数据为瞬态,在分析时间面板中设置所需时间。 2、在部件列表中选择所需部件 3、在主菜单中点击 " 查询 > 显示信息 > 部件 " 查询结果将呈现于 EnSight 弹出的消息窗口中。 也可通过消息按钮进入。 下面显示的是部件查询的输出信息示例: Part 2 Query Information. Unstructured part. Number of nodes 2380 Minimum coordinate (In Frame 0) is (0.00000e+00,0.00000e+00,0.00000e+00) Maximum coordinate (In Frame 0) is (3.80000e+01,1.20000e+01,0.00000e+00) Min node label in part is (1) Max node label in part is (2380) Element Information is: Element type: 6 Noded triangle, count = 1128. Min element label in part is (1) Max element label in part is (1128) 注:客户端部件 (粒子追踪、剖面图、矢量箭头、等值线)不可通过该方式查询。将会出现如下的错误信息: 错误:无法完成指定部件的查询。 对于粒子追踪部件,会给出一个信息 -- 即部件中的追踪数量,并且会给出一个说明,提示如何在消息窗口中获取追 踪的 " 转储 ",如下: Part 2 Query Information This part is a particle trace part Part has 10 traces Note: For full trace dump into this window, issue the following command in the command dialog: test: full trace query ON Then repeat this query. 另请参见 操作指南:查询 / 绘制、探针交互 . 用户手册: Show Information Page 300 操作指南:探针交互 探针交互 简介 EnSight 提供了交互查询的功能,随着鼠标指针在几何体上的移动、光标工具在模型内部的移动、或在特定的节点、 单元、 IJK 或 XYZ 处,可在图形窗口中实时地显示变量数据。探针可直接在鼠标指针的精确位置显示值 (通过插值相 关单元的节点值),也可搜索并显示最邻近鼠标指针的节点的值。 基本操作 执行探针交互: 1、点击 " 交互探针查询 " 图标 (或在主菜单中点击查询 > 交互探针 …) 2、在 " 查询 " 下拉菜单中选择所需操作 表面上拾取:模型表面上任意位置处 光标: 模型中光标工具的位置处 节点:指定的节点处 IJK: 指定的 IJK 位置处 单元: 指定的单元处 XYZ: 指定的 XYZ 处 3、选择所需显示的变量 4、若查询设置为 " 表面上拾取 ",可以选择: a)将探针对齐到最邻近节点 或 b)使用精确位置 何时采样信息: c)按下键盘上的 "p" 键时,或 d)随着鼠标的移动,变量值连续显示 若查询设置为节点、单元、 IJK 或 XYZ,则需输入 编号或坐标值,并敲击回车键。 若查询设置为 " 光标 ",则移动光标工具至所需位 置,点击 "p" 键 (鼠标指针必须在图形窗口中)。 5、输入同时显示的探针数量。一旦达到该数量,最 新的探针将替换最旧的探针。 6、若所选变量为矢量,可指定变量的分量 (或矢量 的模)。 7、除了在图形窗口中的模型上显示结果,还可显示 结果表格 8、完成后,将 " 查询 " 更改为 " 无 " 以禁用交互探 针。 Page 301 操作指南:探针交互 探针显示属性 探针显示为标记 (球形)和数值标签。可编辑该标记和标签: 1、点击 " 显示样式 " 选项 切换编号的可见性 (节点编号、 单元编号等) 切换数值标签的可见性 选择是否 " 置顶 " 数值标签 设置标签的颜色 切换探针标记的可见性 设置标记的颜色 设置探针标记的半径 查看周围的单元 若单元编号存在,则可提取包含查询位置的单元: 1、创建查询之后,打开 " 显示样式 " 2、在 " 显示膨胀系数 " 处,点击向上箭头。 膨胀系数为 1 表示提取并显示仅包含查询的单元。 3、继续点击向上箭头。 膨胀系数为 2 表示显示与第 2 步中的单元相邻的单元。 因为膨胀系数功能使用了子集部件,所以可通过编辑子 集部件的属性来满足各种所需 (如:显示节点编号)。 部件列表中的子集部件名称为 "Query show expand"。 4、可选择是否保留因设置膨胀系数而生成的子集部件。在 关闭交互查询时会弹出对话框,询问是否需要保留或删 除膨胀系数子集部件。 Page 302 操作指南:探针交互 其他说明 注:交互查询并不生成相应的命令语言! 当执行查询并使用 "p" 键来选取查询位置时,将禁用其他使用 "p" 键的拾取选项 (如:部件、光标工具、直线工具、 平面工具及注视点)。 上述对话框中的 "Time" 变量为粒子追踪的积分时间。因而,仅在探测粒子追踪时被定义,对于其他部件类型,均不 被定义。 另请参见 操作指南:查询 / 绘制 用户手册: Interactive Probe Query Page 303 操作指南:查询 / 绘制 查询 / 绘制 简介 EnSight 能够完成各种随时间或空间变化的查询。查询结果可以使用 EnSight 内置绘制曲线图功能绘制,也可以作为 表格打印或存盘。 基本操作 首先必须创建查询项,可以是下表采样类型中的任一种: 线工具上的点随距离变化 节点值随时间的变化 一维部件上的点随距离的 变化 单元值随时间的变化 样条曲线上的点随距离的 变化 XYZ 点的值随时间的变化 IJK 点的值随时间的变化 随时间变化的查询 标量值 已有查询的运算 从外部文件读取 从服务器文件读取 属性面板 (Feature Panel)将针对所选采样类型反馈所需信息 (例如:变量)。通过选择变量 1 和变量 2 来控制查 询实体是否为曲线还是散点图。 查询实体可以被打印、保存、删除或绘制。 创建查询并绘制曲线图 (最大值随时间变化) 1、选择需要查询的部件 2、点击 " 查询 " 图标 (或在主菜单中点 击查询 > 随时间 / 距离变化 …) 3、选择采样类型 4、选择变量 1 注:对于查询最大值或最小值随时间的变化,可以同时进行多个 变量的查询。 若变量 2 选择 " 无 ",则默认为时间。 5、点击 " 创建查询 " 6、 " 自动绘制 " 默认为开启状态,所以将自动绘制成曲线图。 若关闭该按钮,将仅创建查询,随后可自由选择是否绘制 成曲线图。 要获取关于绘制曲线图的更多信息,参见该操作指南最后的曲线图部分。 Page 304 操作指南:查询 / 绘制 管理查询实体 除了在属性面板 (Feature Panel)中,也可在 " 绘图 / 查询 " 列表中编辑各种已有查询实体: 查询实体列表带有标记的 (铅笔标记)项为属性面板 (Feature Panel)中正在编辑的项。 可在任何查询实体上点击右键,在下拉菜单中选择 " 添加 至新曲线图 " 来绘制。 在查询实体上点击右键,在下拉菜单中选择 " 数据 ", 将出现以下几种查看并使用查询数据的方式。 " 显示 " 将显示表格 " 复制到剪贴板 " 将允许查询数据粘贴至其他应用程序 -例如 Excel " 保存 CSV 至文件 " 将保存一个 .csv 文件。 " 保存 XY 至文件 " 将保存一个文件,该文件可在选择 " 从外部文件读取 " 时再次读入 EnSight。 " 保存格式至文件 " 将保存一个类似于报告格式的文件。 可点击右键,在下拉菜单中选择 " 删除 " 来删除查询。 Page 305 操作指南:查询 / 绘制 随距离变化的查询 EnSight 可沿着线工具上的均匀间隔点、一维部件上的节点、样条曲线上的均匀间隔点进行查询。一维部件包括由线 单元组成的模型部件、一维 (直线)剪切部件及粒子追踪部件。 线工具上的点随距离变化 首先在部件列表中选择要查询的部件,然后点击 " 查询 " 图标。 1、选择采样:" 线工具上的点随距离变化 " 2、在 " 变量 1" 中选择要查询的随距离变化的量 在 " 变量 2" 中选择 " 无 ",除非想要获取两个不同变量沿着 直线工具的散点图。 3、设置距离、采样点数并修改工具位置 4、点击 " 创建查询 " 一维部件上的点随距离的变化 首先在部件列表中选择包含一维单元的部件, 点击 " 查询 " 图标 1、选择采样:" 一维部件上的点随距离变化 " 2、在 " 变量 1" 中选择要查询的变量 3、设置距离、查询起点、多段属性。 4、点击 " 创建查询 " 对于上述两种随距离变化的查询,变量将以所选 " 距离 " 作为横坐标绘制曲线,将从编号最小的节点开始查询。一维 部件上的节点并不一定是等间隔分布的,可选择下列之一作为距离: 距离设定 距初始节点的距离 距初始节点的 X 坐标 距初始节点的 Y 坐标 距初始节点的 Z 坐标 距原点的距离 距原点的 X 坐标 距原点的 Y 坐标 距原点的 Z 坐标 详细描述 部件上每一个节点到第一个节点的距离 (即:一维单元长度的总和) 每一个节点到第一个节点的距离的 X 坐标值 每一个节点到第一个节点的距离的 Y 坐标值 每一个节点到第一个节点的距离的 Z 坐标值 到原点的距离 到原点的距离的 X 坐标值 到原点的距离的 Y 坐标值 到原点的距离的 Z 坐标值 若一维部件包含多组连续的一维单元 (如:线工具发射的粒子追踪),则查询结果将包括各自的曲线图。 Page 306 操作指南:查询 / 绘制 样条曲线上的点随距离的变化 首先在部件列表中选择要查询的部件,然后点击 " 查询 " 图标 1、选择采样:" 样条曲线上的点随距离的变化 " 2、选择沿样条曲线查询的变量 3、选择要查询的样条曲线 4、设置距离及沿着样条曲线查询的点数 5、点击 " 创建查询 " Page 307 操作指南:查询 / 绘制 随时间变化的查询 对于瞬态数据, EnSight 可以查询某特定节点、单元 (或结构化数据的 IJK 坐标)或任意点上变量值随着时间的变 化。还可以查询所有节点上变量值的最小值或最大值随着时间的变化。 节点值随时间的变化 首先在部件列表中选择要查询的部件,然后点击 " 查询 " 图标 1、选择采样:" 节点值随时间的变化 " 2、在 " 变量 1" 中选择要查询的随时间变化的变量 在 " 变量 2" 中选择 " 无 ",除非想要获取两个不同变量随时间变化的散 点图。 3、输入节点编号 4、设置采样点数 (默认为时间步数)、选择采样类型 (直接取值或做 快速傅里叶变换) 5、点击 " 创建查询 " 单元值随时间的变化 首先在部件列表中选择要查询的部件,然后点击 " 查询 " 图标 1、选择采样:" 单元值随时间的变化 " 2、在 " 变量 1" 中选择要查询的随时间变化的变量 在 " 变量 2" 中选择 " 无 ",除非想要获取两个不同变量随时间变化的 散点图。 3、输入单元编号 4、设置采样点数 (默认为时间步数)、选择采样类型 (直接取值或 做快速傅里叶变换) 5、点击 " 创建查询 " Page 308 操作指南:查询 / 绘制 IJK 点的值随时间的变化 首先在部件列表中选择要查询的部件,然后点击 " 查询 " 图标 1、选择采样:"IJK 点的值随时间的变化 " 2、在 " 变量 1" 中选择要查询的变量 在 " 变量 2" 中选择 " 无 ",除非想要获取两个不同变量随时间变化的 散点图。 3、输入 IJK 编号 4、设置采样点数 (默认为时间步数)、选择采样类型 (直接取值或 做快速傅里叶变换) 5、点击 " 创建查询 " XYZ 点的值随时间的变化 首先在部件列表中选择要查询的部件,然后点击 " 查询 " 图标 1、选择采样:"XYZ 点的值随时间的变化 " 2、在 " 变量 1" 中选择要查询的变量 在 " 变量 2" 中选择 " 无 ",除非想要获取两个不同变量 随时间变化的散点图。 3、输入 xyz 的精确坐标或将光标置于模型上,运用各种变 换方式,然后点击 " 获取光标位置处的坐标 "。 4、设置采样点数 (默认为时间步数)、选择采样类型 (直接取值或做快速傅里叶变换) 5、点击 " 创建查询 " Page 309 操作指南:查询 / 绘制 最小值 / 最大值随时间的变化 首先在部件列表中选择要查询的部件,然后点击 " 查询 " 图标 1、选择采样:" 最小值随时间的变化 " 或 " 最大值随时间的变化 " 2、在 " 变量 1" 中选择要查询的变量 注:对于查询最大值或最小值随时间的变化,可以同时进行 多个变量的查询。 在 " 变量 2" 中选择 " 无 ",除非想要获取两个不同变量随时间 变化的散点图。 3、设置采样点数 (默认为时间步数)、选择采样类型 (直接 取值或做快速傅里叶变换) 4、点击 " 创建查询 " 标量值 在这种查询中,需要选择两个变量 -- 第一个将绘制于 y 轴,第二个绘制于 x 轴。另外,还需指定另一个变量 (可以与先前的两个变量相同)以及一 个值, EnSight 将查找所有匹配该值的节点 / 单元,并提取这些节点 / 单元 的 x 和 y 变量值,最好绘制成散点图。 首先在部件列表中选择要查询的部件,然后点击 " 查询 " 图标 1、选择采样:" 标量值 " 2、选择查询所需的两个变量 3、选择所需标量,并设置该标量的值 4、点击 " 创建查询 " 散点查询示例 散点查询为一个变量对另一个变量的查询。 各种设置均跟正常查询一样,除了需要在 " 变量 2" 中选择一个变量而非选择 " 无 "。 Page 310 操作指南:查询 / 绘制 已有查询的运算 可以对已有的查询进行各种代数和、积分或微分运算。 1、选择采样:" 已有查询的运算 " 2、选择运算类型 (迭加、积分或微分) 对于迭加: 3、若需缩放单个查询,则选择查询项并设置比例系数; 若需缩放并求代数和,则选择两个查询项,并分别设置 各自的比例系数。 3、点击 " 创建查询 " 注:若选择积分或微分,则只需选择单个查询来进行运算。 来自外部资源的查询 可以导入先前创建的 EnSight 查询或 Dytran 时间文件 (.ths)。 从外部文件读取 1、选择采样:" 从外部文件读取 " 2、点击 " 从文件加载 XY 数据 …" 按钮,打开 " 文件选择 " 对话框,选择之前保存的 EnSight 的 XY 数据文件或 Dythan 的 .ths 文件。 Note: Depending on the version of the Dytran reader you are using (reader version 2.05 or later is needed), the Dytran xy data may be loaded automatically for you, making this option unnecessary for Dytran data. 从服务器文件读取 可以询问服务器所知的查询,若有可用查询,将会显示于查询列表中。 Page 311 操作指南:查询 / 绘制 绘制曲线图 一旦有查询存在, EnSight 可以很容易地将这些查询绘制成新曲线图,若已有曲线图存在,则也可添加至现有 曲线图。 1、在需要绘制成曲线图的查询上点击右键。 2、在下拉菜单中选择 " 添加至新曲线图 ",将创建一个新曲线图来显示 所选查询。 若想将查询绘制于已有曲线图中: 1、点击并拖动查询至已有曲线图,松开鼠标左键。也可点击并拖动查询至图形 窗口中的现有曲线图的轴线上,然后松开鼠标左键。 拖动查询至曲线图 其他说明 参见用户手册中的 XY Plot Data Format 以获取有关曲线图文件格式的描述。 另请参见 操作指南:探针交互 操作指南:更改曲线图属性 用户手册:Query/Plotter Page 312 操作指南:更改曲线图属性 更改曲线图属性 简介 EnSight 提供了功能全面的 X-Y 曲线图绘制系统,全面整合了查询和瞬态数据的处理能力。将查询实体 (参见操作指 南:查询 / 绘制)指定给曲线图,并在曲线图上绘制一条或多条曲线,每条曲线均基于一组查询数据,如果查询实体 改变,相应的曲线会自动更新。曲线图属性 (曲线和标题的颜色、轴线、刻度线和边框 / 背景颜色等)可通过快速图 标栏 (Quick Action Icon Bar)或属性面板 (Feature Panel)来编辑。 本文分为以下几个部分: 曲线图详解 创建曲线图 选择曲线图和曲线 移动和调整曲线图 曲线图的快速编辑图标 (Quick Action Icon) 设置标题、背景、图例、边框、位置、标线属性 设置轴线属性 设置曲线属性 删除曲线图 曲线图详解 曲线图由下面的基本部分组成: 曲线图标题 曲线图缩放手柄 Y 轴数值标签 图例 图例位置操纵手柄 Y 轴刻度线 Y 轴子刻度线 Y 轴标题 曲线 X 轴数值标签 原点动态手柄 X Axis Title 当前时间标记线 X 轴标题 调整 X 轴最小值和最大值动态手柄 Page 313 操作指南:更改曲线图属性 创建曲线图 将查询实体指定给一个新曲线图时,曲线图将自动创建 (详见操作指南:查询 / 绘制)。默认情况下,在创建查询时 自动绘制曲线图。 选择曲线图和曲线 任何更改曲线图属性的操作,都是针对当前选定的曲线图 (若没有被选中的,则编辑默认属性)。选择曲线图: 1、在曲线图列表中的曲线图上点击左键 或 2、将鼠标指针置于图形窗口中,在曲线图的轴线或标题上的任意地方点击鼠标左键。 曲线有多种属性。如何选择曲线: 1、在查询列表中的查询上点击左键。 或 2、将鼠标指针置于图形窗口中,在所需的曲线上点击鼠标左键。按住 Ctrl 键,点击其他曲线, 可选择多条曲线。 移动和调整曲线图 曲线图可以移动和调整。可以在图形窗口中使用鼠标调整曲线图的位置、也可以输入坐标值来给其精确定位。交互移 动或调整曲线图的步骤: 1、将鼠标指针置于曲线图上,将会出现动态手柄。 2、点击并拖动曲线图以移动至任意位置。 3、点击并拖动曲线图右上角的调整大小手柄,可重新调整曲线图的大小。 也可以精确定位曲线图。详见下文介绍。 曲线图的快速编辑图标 (Quick Action Icon) 曲线图颜色 曲线图图例可见性 1、点击选择曲线图。快速图标栏 (Quick Action Icon Bar)将 显示编辑曲线图属性的图标。 曲线图可见性 曲线图轴线设置 置换 x/y 坐标轴 曲线图边框可见性 若启用 " 锁定视图 ",则当前为隐藏状态的曲线图将显示为暗灰色 Page 314 操作指南:更改曲线图属性 设置标题、背景、图例、边框、位置、标线属性 通过曲线图属性面板 (Plotter Feature Panel)来编辑曲线图的整体属性: 在曲线图列表中的曲线图上双击 (或点击右键选择 " 编辑 …")以打开属性面板 (Feature Panel)。 " 曲线图详细属性 " 对话框包括 7 个部分:背景、边框、图例、位置、标线、轴线和标题。若需编辑某项属性,直接 点开折叠按钮便可。 在背景部分编辑曲线图背景的类型和颜色: 可将曲线图类型设置为 " 无 " 或 " 填充色 "。 填充色的背景为不透明的。 若背景类型为填充色,可设置颜色 (在 RGB 输入框内输入值,或点击 " 选择颜色 …" 按钮以打开颜色选择对话框) 设置背景的不透明度。 在边框部分编辑曲线图边框的可见性和颜色: 勾选显示边框 设置边框颜色 (在 RGB 输入框内输入值, 或点击 " 选择颜色 …" 按钮以打开颜色选择 对话框) 在图例部分编辑曲线图的图例文字。曲线图的图例中显示的文字是针对特定曲线的。参见下文中的设置曲线属性。 勾选显示图例 勾选显示曲线的最小值 / 最大值以及平均值 信息 设置字体大小 设置位置点 (点坐标相对于曲线图的左下角) 图例颜色可以是纯色或曲线的颜色。若设为 纯色 (在 RGB 输入框内输入值,或点击 " 选择颜色 …" 按钮以打开颜色选择对话框) Page 315 操作指南:更改曲线图属性 在 位置部分编辑曲线图的尺寸和位置: 设置曲线图的位置点 (点坐标对应于图形窗 口的左下角)。 设置曲线图的宽度 / 高度 (范围为 0-1,归 一化于图形窗口的宽度和高度) 在标线部分编辑曲线是否以动画绘制、标线是否随动画扫略 (或时间标线是否沿曲线扫略): 勾选 " 动画绘制曲线 ",在动画过程中将扫略 曲线。 勾选 " 显示标线 ",将创建一个垂直线,用来 显示与查询标线相对应的时间 / 距离值。对 于随时间变化的查询,标线将随时间更新扫 略。 设置时间标线的线宽、样式以及颜色。 勾选 " 显示数值大小 " 将显示曲线图中标线 与曲线相交处的 x 和 y 值。 在标题部分编辑曲线图顶端的主标题: 设置标题文字 设置标题文字的大小 设置文字颜色 (在 RGB 输入框内输入值, 或点击 " 选择颜色 …" 按钮以打开颜色选择 对话框) 若想输入特殊符号,点击 " 插入符号 …",在 弹出的窗口中选择所需符号。 Page 316 操作指南:更改曲线图属性 设置轴线属性 在曲线图属性面板 (Plotter Feature Panel)中的 " 轴线 " 部分编辑曲线图的轴线属性。 轴线属性包含两个部分:常规和高级。 常规属性中,设置轴线线宽、颜色、以及刻度线和子刻度线。 置换曲线图中的 X 和 Y 轴 自动布局,保证曲线图的各组分 (标题、轴线描述、值等) 不重叠。 指定曲线图绘制区域内轴线的位置点 (水平轴和竖直轴)。 若勾选 " 自动布局轴线 ",该选项则灰掉。 设置轴线线宽 设置轴线颜色 设置主刻度线的线宽、样式和颜色 (X 轴和 Y 轴上 的刻度线) 设置子刻度线的线宽、样式和颜色 (X 轴和 Y 轴上 的子刻度线) Page 317 操作指南:更改曲线图属性 高级属性中,设置标题、刻度值、以及 X 和 Y 轴的刻度线。 选择所需编辑的轴线 -- 可以选择 X 或 Y 或同时选择二者。 切换轴线可见性 设置轴线标题 设置轴线标题尺寸 设置轴线标题颜色 设置刻度值类型:无 (不显示刻度值)、全部 (每个刻度处均显示数值)、首尾 (显示第一个 和最后一个数值标签) 设置轴线刻度值的字体大小 设置尺度为线性或对数 (以 10 为底) 自动调整轴线 -- 开启时,最小 / 最大值和刻度数量 均将使用推荐值。 设置变量在轴线上显示的最小 / 最大范围 (注:仅在 " 自动调整轴线 " 关闭时才使用 该精确值)。 设置刻度值的显示格式 (或点击 " 格式 …" 在 列表中选择格式) 设置轴线刻度值的颜色 设置刻度线类型:无 (没有刻度标记)、栅格 (竖直线)、 刻度 (轴线上刻度值处的标记线) 设置恰当的刻度线数量 (也取决于最小 / 最大范围) 设置子刻度线类型:无 (没有子刻度标记)、 栅格 (竖直线)、刻度 (轴线上两刻度值 之间的标记线) 设置每个刻度值之间的子刻度线数量 置换最小和最大值,即置换轴线正方向。 Page 318 操作指南:更改曲线图属性 设置曲线属性 在查询 / 绘图属性面板 (Query/plot Feature Panel)的 " 查询 " 选项中设置曲线和标记属性 1、在图形窗口中点击所需编辑的曲线,或在查询列表 (ctrl+ 单 击来选择多条曲线)中选择 2、在查询列表中点击右键,选择 " 编辑 …" 或 1、在查询列表中的任一查询上双击 打开属性面板 (Feature Panel)的 " 查询 " 选项 应用于 x 或 y 数值的偏移量和比例系数。 所得值为查询值乘以比例系数再与偏移值 的和。 设置曲线宽度 设置曲线样式 设置曲线类型: 无 (仅显示曲线标记) 连接点 (数据点通过直线连接) 平滑的 (在 " 平滑子点 " 输入框内设定点 数来拟合连接数据点的样条曲线) 设置标记类型 设置标记尺寸 归一化 x 或 y 值 设置曲线颜色 删除曲线图 可删除已有曲线图: 1、选择曲线图 2、在曲线图上点击右键,选择 " 删除 "。 Note that deleting a plotter has no effect on any query entities that were attached to the plotter 另请参见 操作指南:查询 / 绘制 Page 319 操作指南:查询数据集 查询数据集 简介 结果数据集一般都由多个文件组成, EnSight 可快速查询这些文件的基本信息。 基本操作 显示数据信息: 1、在主菜单中点击 " 查询 > 数据集 …" " 相关文件 " 部分显示了所有的数据文件, 并给出了文件大小 (以字节为单位)以及 最后修改日期。 " 文件信息 " 部分显示了相关文件列表中当 前选定的文件信息。该信息根据文件的类 型和格式有所不同。 " 几何信息 " 部分显示了几何是否为静态的 (不随时间变化)、坐标是否变化 (节点 坐标在每个时间步更新)、网格是否变化 (坐标和组成单元的节点在每个时间步更 新)。还显示了所有几何体的三维长度以 及节点和单元数量。 " 单元信息 " 部分显示了数据中的所有单元 的类型和数量。 另请参见 用户手册:Query Dataset Page 320 操作指南:更改颜色 Manipulate Parts 更改颜色 简介 EnSight 中,部件既可以着色为纯色,也可以基于变量值着色。以变量着色几何体是一种最简单且最有效的变量分布 可视化手段。 可以设置 " 默认 " 颜色,所有创建出的子部件均将自动着色为默认颜色 (参见下文中的其他说明部分)。 本文介绍了如何更改部件颜色。详见操作指南:编辑颜色映射。 基本操作 改变部件颜色: 1、在部件列表中选择 所需部件 2、点击部件快速图 标栏 (Quick Action Icon Bar) 的 " 颜色 / 透明度 " 图标 打开 " 部件颜色 " 对 话框 3、从颜色矩阵中选择颜色 -或4、点击 " 更多 …" 打开颜色选择对话框。 - 或 if coloring by a variable - 3. 在 " 指定着色变量 " 列表中选择变量。 4、若着色为矢量的分量,请勾选 " 显示矢量分 量 "。 - 或利用点击并拖动功能来将部件着色为指定变 量。 3、在变量列表中点击并拖动变量至部件列表中想要以该变量着色的部件上,或者拖至图形窗口中的部件 上。若将变量直接拖至图形窗口的背景,则将当前视口中的所有部件均着色为该变量;也可将变量拖至 部件列表的案例标题上,从而将该案例中的所有部件均着色为该变量。 Page 321 操作指南:更改颜色 将变量列表中的变量拖至想以该变 量着色的部件上,既可拖至部件列 表中的部件上,也可拖至图形窗口 中的部件上。 其他说明 若着色为节点变量,颜色将连续变化,即使在单元内部,也是如此;若着色为单元变量,则单元内部的颜色保持不 变。若想以连续的方式查看单元变量,需要在主菜单中点击编辑 -> 首选项 ..,勾选 " 调色板 " 下的 " 为基于单元的变 量使用连续调色板 "。. 可以设置一个默认变量,让所有后续创建的部件均以该变量值 着色。要执行该操作,请确保主部件列表中没有部件被选中。 在颜色编辑器的变量列表中选择所需的默认变量。 任何后续创建的部件将自动着色为该默认变量。 应用二维纹理: 点击 " 纹理 …" 按钮,打开 " 纹理 " 对话框。 参见 How To Map Textures 另请参见 操作指南:编辑颜色映射 How To Map Textures Page 322 操作指南:复制部件 复制部件 简介 复制操作将仅在客户端创建部件副本 (浅拷贝)。新部件虽有其自己的一套属性 (除了显示方式),但却与原部件共 享几何体和变量数据。创建副本常用于在一个部件上同时显示多个变量。由于会给每个副本自动分配一个新的 frame,所以可以单独移动副本。 基本操作 创建部件副本的步骤: 1、在部件列表中选择所需部件。 2、在主菜单中点击 " 编辑 > 部件 > 复制 " 新副本将被加至部件列表的尾部,其名称为在原部件名的基础上加上 -COPY。 高级应用 需要创建部件副本的最常见原因是需要同时在同一几何体上显示多个变量。当创建副本时,将同时创建一个新的坐标 系,并将该副本指定给该坐标系 (当同时创建多个副本时,将会为每个副本创建各自的坐标系)。可独立操纵坐标系 (如:平移或旋转)。详见操作指南:创建和操纵坐标系。 其他说明 因为副本与原部件的依赖关系,会产生一些重要影响: 1、若更改原部件的 可视化显示方式 ,副本的显示方式也跟着改变。 2、在删除副本之前,不可先删除原部件。 3、因为部件副本仅存在于客户端,无法将部件副本存盘。 若要在服务器端也创建部件副本 (非浅拷贝),可以在单个部件上执行合并操作,以这种方式创建的 " 副本 " 基本独 立,但是也不能独立于其母部件而存在;也可以简单地重新加载部件来创建 " 副本 "。 另请参见 用户手册: Part Operations Page 323 操作指南:部件分组 部件分组 简介 在数值模拟计算中,一般都会使用多个部件来区分不同的模型组件或材料类型。 EnSight 本身无法自动基于材料类型 分组部件,然而时常需要对这些部件应用相同的属性集。若执行相同操作的部件数量太多,将很费时费力。 EnSight 提供了一种分组功能,将相同类型的多个部件组合成一组部件。该组中的部件可被收起至组内,仅留下组部件。可通 过删除组来解除分组。 基本操作 1、在部件列表中选择所需部件 2、在选择的对象上点击右键 3、在下拉菜单中选择 " 新建组 " 4、在弹出对话框中键入组名。 注:可通过在组上点击右键,在下拉 菜单中选择 " 删除组 ",从而删除一 个组。 所选部件均位于新组的下面。组可以打开或关闭以收起 / 展开组内的部件。 其他说明 组部件可以包含其他组部件。 一个部件仅可存在于一个组内 另请参见 用户手册: Part Groups Page 324 操作指南:合并部件 合并部件 简介 在数值模拟计算中,一般都会使用多个部件来区分不同的模型组件或材料类型。 EnSight 本身无法基于材料类型分组 部件,然而时常需要对这些部件应用相同的属性集。若要执行相同操作的部件数量太多,将很费时费力。 EnSight 提 供了一种合并功能,将相同类型的多个部件合并,生成一个单一部件。 合并操作由一个或多个母部件创建一个新部件,原部件保持不变。若仅选中单个部件来执行该操作,将创建一个 " 真 实的 " 部件副本 (与复制操作创建的浅拷贝相反),它仅需要母部件存在即可。 若在合并后删除任一原部件,合并部件中的相应组件也将被删除。 基本操作 1、在部件列表中选择所需部件 2、在主菜单中点击 " 编辑 > 部件 > 合并 " 合并后的部件将被添加至部件列表的尾部,被描述为 "Merge of parts #,#,#",这里的 # 为母部件的编号。 其他说明 与 复制不同,合并创建的是真实的、基于服务器的部件;与 提取也不同,合并创建的是完整的、显示为母部件服务 器端显示方式的部件。 若合并一个结构化 (IJK)部件,其结果部件是非结构化的。 另请参见 操作指南:部件分组 . 用户手册: Part Groups Page 325 操作指南:提取部件显示方式 提取部件显示方式 简介 提取操作与部件的显示方式紧密相连。提取仅利用所选部件当前显示方式下的几何体创建一个新部件。例如:若一个 由三维单元组成的部件的当前显示方式为显示边界,提取的结果将是一个由非共享的二维单元 (表面)组成的部件。 提取常用来减少部件的信息量 (如:快速显示或几何输出),或用来创建三维计算域的表面部件。 基本操作 1、在部件列表中选择所需部件。 2、在主菜单中点击 " 编辑 > 部件 > 提取 " 所得新部件将被加至部件列表的尾部,并被命名为 "Extract of parts #,#,#",这里的 # 表示母部件的编号。 另请参见 操作指南: 更改可视化显示方式 . 用户手册: Part Operations Page 326 操作指南:剪切部件 剪切部件 简介 例如,我们经常需要切开部件来展示实体的内部信息,或移除模型中不需要的部分。 EnSight 可以剪切任何基于服务 器的部件,要么保留两部分,要么放弃一部分。任意的三维工具 (平面、二次曲面或方框)均可用来剪切表面。 剪切操作生成依赖于母部件的副本。剪切生成的部件是由标准单元类型组成的完整的有效部件,这些部件可用来执行 任何操作 -- 包括进一步的剪切。 基本操作 剪切部件的步骤: 1、在部件列表中选择部件 2、点击剪切图标 3、选择所需的剪切工具 (( 平面、方框、 圆柱、圆球、 圆锥、 回转曲面 或旋转一维部件)。 4、在所需的位置放置剪切工具 5、选择保留哪一部分 内部:保留二次曲面或方框的内部、平面的正方向 外部:保留二次曲面或方框的外部、平面的负方向 内部 / 外部:两侧均保留 褶皱:保留相交面的所有单元 对于平面工具,内部是指工具的正 Z 方向。对于二次曲面工具,内部和外部可以很明显区分。在部件列表中,原部件 保留,且在删除剪切部件之前不可删除原部件 (可以隐藏)。若选择使用内部 / 外部,将会同时创建两个新部件并加 至部件列表的尾部,命名与原部件相同,但会在内部部件名后面加上 "+",在外部部件名后面加上 "-"。若选择使用内 部或外部,将会创建一个新部件,并在部件名的后面加上 "+" 或 "-"。 其他说明 部件的副本不可被剪切。若副本的母部件被剪切,副本也将被剪切 (因为部件的副本与其母部件共享几何体)。 剪切操作保持了单元的原有排列顺序,如:三维单元生成三维单元,三维二次曲面单元生成三维二次曲面单元。 剪切算法将相交面的单元分解成四面体。因为在四面体和未剪切的相邻单元之间没有过渡区,所以存在非共享的单元 表面,在边界或特征角的显示方式下,这些非共享的表面将产生不希望看到的线和单元。 若剪切结构化 (IJK)部件,将生成非结构化的部件。 基于方框的剪切并非真实切割,仅仅用来区分方框内外的单元。 另请参见 用户手册:Clip Parts Page 327 操作指南:删除部件 删除部件 简介 删除操作将删除所选部件和依赖于该部件的部件,与该部件有关的所有客户端和服务器端的信息均被删除。删除操作 不可撤销。 基本操作 1、在部件列表中选择所需部件 2、在主菜单中点击 " 编辑 > 部件 > 删除 " 或 将鼠标置于 EnSight 窗口中, 点击键盘上的删除键。 或 在部件上点击右键,选择删除 其他说明 在某些情况下,依赖于部件的变量会随着部件的删除而更新。例如:存在一个变量 (如:一组部件的面积),若删除 这些部件的其中之一,该面积将自动重新计算。 若删除一个组部件,则该组中的所有部件均被删除 另请参见 用户手册:Part Operations Page 328 操作指南:更改显示方式 更改显示方式 简介 更改部件显示方式是 EnSight 的一种强大功能,不仅可以选择最能满足要求的可视化显示方式,还能有效地管理内 存。部件显示方式存在于客户端,而完整的部件由服务器控制。使用较简单的显示方式不仅降低客户端内存消耗,还 能改善显卡的显示速度。 EnSight 为部件提供了六种显示模式 (以及基于部件维度的三种组合模式): 全部显示 每个单元的表面和边缘都显示。 显示边界 仅显示非共享表面 (三维部件),或显示非共享边缘 (二维部件) 三维显示边界, 三维的部件以 " 边界 " 显示方式显示;二维的部件以 " 全部显示 " 的显示 二维全显 方式显示 三维显示特征角, 三维部件以 " 特征角 " 的显示方式显示;二维部件以 " 全部显示 " 的显示 二维全显 方式显示 三维隐藏,二维全显 三维部件以 " 隐藏 " 的显示方式显示;二维部件以 " 全部显示 " 的显示方 式显示 显示特征角 仅显示 " 边界显示方式 " 中连接面 (joining faces)的边缘,这些连接面 的夹角小于某个阈值。 特征角通常提取模型上感兴趣的拓扑特征。 显示模型限位框 仅显示代表 XYZ 范围的方框 隐藏 全部隐藏的显示方式存在于客户端。对于三维计算域部件,通常使用该显 示方式 体渲染 每个单元均显示为半透明状态,且透明度可控。慎用该显示方式,因为将 占用大量显存。 另外,对于各特定的显示方式,均可指定仅显示点和法线 (非组成单元的节点)。这对密集型的模型十分有用。 可在 $CEI_HOME/ensight100/site_preferences/ensight_reader_extension.map 中分别指定各数据格 式的默认可视化显示方式 (以及扩展名映射)。例如:.case 文件总是使用 EnSight Case gold 读取程序 (reader) 读取,部件总是以 " 三维显示特征角,二维全显 " 的显示方式显示。可以在用户本地的 EnSight 默认目录下的 ensight_reader_extension.map 中指定自定义数据的可视化显示方式。 Page 329 操作指南:更改显示方式 基本操作 1、在部件列表中选择所需部件 2、点击部件快速图标栏 (Quick Action Icon Bar)内 的 " 部件单元设置 " 按钮 3、选择所需的可视化显示方式 4、可仅以点和法线来代替所选 " 单元显示方式 " 下组成单元的节点。点击 " 选项 …",勾选 " 只加载点和法线 "。 5、也可应用多边形简化。 使用多边形简化的目的是通过减少渲染多边形的数量来加快 可视化处理的速度,当然这将牺牲图像的质量。注:原始模 型并未修改,改变的仅是渲染的图像。 其他说明 注:有些子部件 (如:等值线或矢量箭头)依赖于母部件在客户端的显示方式。若改变母部件的显示方式,由其生成 的子部件也将随之改变。 不可更改部件副本的显示方式,副本总是显示为原部件的当前显示方式。 基于当前显示方式创建新部件,可使得部件的显示方式始终保持不变。详见操作指南:提取部件显示方式。 另请参见 用户手册:Part Element Settings Icon Page 330 操作指南:设置属性 设置属性 简介 部件属性控制部件的外观和行为, EnSight 的很多强大功能均源于其属性更改的灵活性。属性分为几类: 创建 创建属性对于每个部件 (非模型部件)类型均是唯一的 (如:等值面)。可通过双击主部件列表中的部 件来访问部件创建属性的属性面板 (Feature Panel),也可通过点击主菜单的创建 -> 等值面 (举例来 说)。可设置模型部件是否使用给定网格单元,还是使用模型节点来创建新的二维或三维网格。 常规 可见性 辅助切面 参考坐标系 响应时间变化 (活跃或冻结) 对称选项 视口可见性 着色 (通过变量或纯色) 隐藏面 隐藏线 明暗处理 (平面着色、高洛德描影、平滑描影) 透明度 光源 (漫射光、光滑度、光强度) 显示对称 节点、单元和线 节点、线、单元可见性 节点类型 (圆点、十字、圆球) 节点尺寸 (固定或变量) 节点详细 (用于圆球) 节点和单元编号可见性 单元线宽 单元线型 (实线、点线或点划线) 客户端单元显示方式 (全部显示、显示边界、三维显示边界 / 二维全显、三维显示特征角 / 二维全显、三 维隐藏 / 二维全显、显示模型限位框、隐藏) 单元收缩因子 多边形简化因子 失败单元变量和规则 位移 位移变量 位移比例因子 显示 IJK 轴 IJK 轴可见性 IJK 轴刻度值 双击部件列表中的部件打开属性面板 (Feature Panel),非模型部件的创建属性可在该面板中编辑。绝大多数显示属 性 (如:颜色和可见性)可通过快速图标栏 (Quick Action Icon Bar)中的各项来设置。 对于创建属性具体到每个部件 (非模型部件)的用法,这里并未讲到。详见操作指南中有关部件创建的相关章节。 模型部件的服务器端位移可在创建属性区编辑。对于该功能,请参见操作指南:How To 服务器端位移 本文分成以下几个部分: 部件快速编辑图标 (Quick Action Icons) 常规属性 N 节点、单元和线属性 位移属性 IJK 轴显示属性 Page 331 操作指南:设置属性 基本操作 部件快速编辑图标 (Quick Action Icons) 部件快速编辑图标 (Quick Action Icons)可用来快速设置部件的属性,使用这些功能的步骤如下: 1、在部件列表中选择所需部件 2、点击相应图标设置所需属性: 部件可见性 着色、光源 & 透明度 线宽 各视口中的可见性 单元显示方式 位移 对称显示 节点和单元编号 节点显示方式 移除失败单元 单元消隐 实体面 隐藏线 辅助切面 快速显示方式 Page 332 操作指南:设置属性 常规属性 属性面板中的常规属性部分的大多数设置均与部件快速图标栏 (Quick Action Icon Bar)中的设置重复。使用常规属 性设置的步骤如下: 1、在部件列表的部件名上点击右键,选择 " 编辑 ",或在图形窗口的部件上点击右键,选择 " 编辑 ", 1. 或直接双击部件列表上的部件。 默认情况下,所做的任何属性修改均立即生效。勾选对话框底部的 " 延迟更新 ",可 " 批处理 " 一系 列操作,一旦完成,点击 " 应用更新 " 即可。 2、打开 " 常规属性 " 折叠按钮,设置所需属性: 设置部件快速显示方式 (根据 全局视图详细模式): • 方框:用模型限位框来代表部 件 切换部件可见性 • 单元:用单元显示方式来代表 部件 切换 辅助切面开关 • 点:用点集来代表部件 若当前时间步发生变化,部件的客 户端部分是否随之更新 设置部件 参照系 设置纯色或变量 着色 设置部件 对称显示 若为纯色,设置部件颜色 切换部件隐藏面显示 设置底纹类型: 切换部件隐藏线显示 • 平面着色:跨单元时,颜色和 底纹保持恒定 设置部件透明度 填充模式 • 高洛德描影:跨单元时,颜色 和底纹线性过渡 设置部件明暗参数 • 平滑描影:跨单元时,颜色和 底纹基于表面法线插值计算, 以模拟一个平滑表面 • 漫射光:漫射度 -- 表面反射的光 量。 0 表示无反射, 1 表示全反 射。 • 光滑度:光滑度 --1 表示无光 泽, 100 表示最大光泽。 • 光强度:光强度 --0 表示无, 1 表示最大强度。 另请参见 设置全局视图参数 Page 333 操作指南:设置属性 N 节点、单元和线属性 节点、单元和线属性设置部件的节点和单元显示属性。节点可显示为圆点、十字或圆球。若显示为十字或圆球,半径 可设为节点处的变量值。设置节点、单元和线属性的步骤如下: 1、在部件列表的部件名上点击右键,选择 " 编辑 ",或在图形窗口的部件上点击右键,选择 " 编辑 ",或直接双击部件列表上的部件。 1. OR Select Create > part type. 默认情况下,所做的任何属性修改均立即生效。勾选对话框底部的 " 延迟更新 ",可 " 批处理 " 一些 列操作,一旦完成,点击 " 应用更新 " 即可。 2、打开 " 节点、单元、线 " 折叠按钮,设置所需属性: 设置节点显示方式 设置节点、线、单元的可见性 设置节点 / 单元编号 的可见性 • 圆点:以点来显示节点 • 十字:以十字型来显示节点,可以 是固定大小或变量值大小 • 圆球:以球型来显示节点,可以是 固定大小或变量值大小。球型的详 细信息在详细值输入框中设置。 设置线宽和线型 (实线、点线或 点划线) 设置 单元显示方式 (见下文) 设置单元收缩因子 (沿着形心收 缩单元) 设置多边形简化。相同的模型,但 为简化的显示方式,需要权衡图像 质量和渲染速度。 设置特征角显示方式中的角度 设置移除失败单元所用的变量 设置移除失败单元变量值的区间 Page 334 操作指南:设置属性 EnSight 为部件提供五种显示模式 (以及三种组合模式)(另请参见操作指南:改变显示方式 ): 全部显示 每个单元的表面和边缘都显示 显示边界 仅显示非共享表面 (三维部件),或显示非共享边缘 (二维部件) 三维显示边界, 二维全显 三维显示特征角, 二维全显 三维隐藏,二维全显 显示特征角 隐藏 显示模型限位框 三维的部件以边界显示方式显示;二维的部件以全部显示的显示方式显示。该显示方式为所有 部件的默认显示方式。 三维部件以特征角的显示方式显示;二维部件以全部显示的显示方式显示 三维部件以隐藏的显示方式显示;二维部件以全部显示的显示方式显示 仅显示边界显示方式中连接面 (joining faces)的边缘,这些连接面的夹角小于某个阈值。特 征角通常提取模型上感兴趣的拓扑特征。 隐藏的显示方式存在于客户端。三维计算域部件通常使用该显示方式 显示节点和单元外围的方框 位移属性 在结构力学模拟中,通常会输出一系列代表几何运动或位移的矢量。每个位移矢量即一个节点从初始位置的平移过程 (偏移量)。 EnSight 可将这些位移以动画显示出来,以更形象的体现几何体的相对运动。设置位移属性:(另参见 操 作指南:显示位移) 设置 " 位移向量 " 为 " 无 " (表示没有位移)或使用代表位移的矢量。 设置节点位移因子,以缩小或放大位移。 IJK 轴显示属性 模型部件和剪切部件 (因为它们可以是结构化部件)可以设置该属性。该属性仅适用于结构化部件。 IJK 轴可见性开关,用来显示部件的 IJK 轴线。 在该输入框内修改 IJK 轴线长度的比例因子 另请参见 部件创建简介 用户手册: Parts Quick Action Icons Page 335 操作指南:显示编号 显示编号 简介 我们通常希望能够识别出模型中特定的节点或单元,为此, EnSight 提供了在图形窗口中显示节点和单元编号的功 能。若数据本身已有明确的节点或单元编号 (或者使用 EnSight 数据格式,由 EnSight 自行分配编号), EnSight 可 顺利将其显示。仅有模型部件本身以及模型的剪切部件可以有编号。 若部件的单元或节点数量成千上万,则显示的编号不仅遮盖几何体,还遮住需要查看的编号 (同时还会降低显示性 能)。为此, EnSight 提供了一种过滤机制,仅显示某个范围内的编号。 基本操作 显示节点和 / 或单元编号 显示编号 (并且设置阈值和颜色): 1、在部件列表中选择所需部件 2、点击 " 节点 / 单元编号 " 图标,打开 " 节点 / 单元编号属性 " 对话框。 3、勾选 " 显示节点编号 " 和 / 或 " 显示单元编号 "。 4、选择所需的筛选方式,并在 " 低 " 和 / 或 " 高 " 输入框内输 入恰当的阈值。 5、设置节点 / 单元编号颜色 编号阈值注解如下: 无 显示所有编号 低 删除所有小于该低值的编号 带状 删除所有大于等于低值和小于等于高值的编号 高 删除所有大于该高值的编号 高/低 删除所有小于低值且大于高值的编号 Page 336 操作指南:显示编号 注:节点和单元编号可见性,在主菜单的 " 视图 " 下有相应的切换按钮,这是一个全局切换,用来启用或禁用显示各 部件的节点或单元编号。 其他说明 注:子部件 (除了模型部件的剪切部件)均没有节点或单元编号。 注:节点和单元编号的字体大小可在主菜单中 “ 编辑 > 首选项 > 注释 ” 中修改,在 “ 标签字体 ” 的 “ 尺寸 ” 输入框内更改值,并敲击回车键。若需在后续的 EnSight 会话中均使用该字体大小,点击 “ 保存至首选项文件 ”。 解决编号混乱的另一个有效方法是使用前后 Z 切面,使部件仅显示成一个薄片。详见操作指南:设置 Z 切面。 另请参见 用户手册: Label Visibility Page 337 操作指南:设置透明度 设置透明度 简介 EnSight 有两种使部件透明的方式 : 真实 (alpha) 真透明使用硬件的 alpha 平面。尽管所得的可视化效果优于填充模式,但是真透明的绘制速 度较慢 (特别对于大模型),因为需调用多个绘制通道。 填充模式 填充模式透明使用多边形填充模式来提供一种伪透明的效果。 EnSight 提供了三种填充模 式。 基本操作 1、在部件列表中选择所需部件 2、点击部件快速图标栏 (Quick Action Icon Bar)中 的 " 颜色 / 透明度 " 图标,打开相应对话框 对于真透明: 3、调整滑块以获取所需效果。 图形窗口将随着滑块的移动动态显示更新。 或 对于填充模式透明: 4、在填充模式下拉菜单中选择所需模式 快捷方式 在图形窗口中所需编辑的部件上点击右键,选择 " 着色 ",然后选择 " 选择变量 "、 " 选择颜 色 " 或 " 使透明 "。 另请参见 用户手册: Part Transparency Page 338 操作指南:选择部件 选择部件 简介 部件操作是 EnSight 的基本操作。在对部件进行操作之前,必须首先选中部件。部件既可以在部件列表中选择, 也可以在图形窗口选择。 基本操作 图形窗口中选择部件 在图形窗口的部件上点击鼠标左键,按住 CTRL 键选择多个部件。 部件列表中选择部件 采用标准选择方法选择部件列表中的部件: 目的 … 做法 … 详细 … 选择单个部件 选择 (或单击) 将鼠标置于部件上,点击左键。部件将高亮显示以示 " 被选中 "。 连续选择 Shift 键 + 单击 选择第一项,然后将鼠标指针置于列表中需要选择的最后一项上, 按住 Shift 键,点击鼠标左键。该操作将选中包含第一项和最后一 项之间的所有部件。 添加非连续选择 CTRL + 单击 将鼠标指针置于所需部件上,按住 CTRL 键,单击鼠标左键。该 操作将新增多个部件选择,不同于两者之间的连续选择。 取消选择 CTRL + 单击 将鼠标置于已选择的部件上。按住 CTRL 键,单击鼠标左键。该 操作将取消选择部件。 打开属性面板 (Feature Panel) 双击 将鼠标置于所需编辑的部件上,双击鼠标左键。 使用右键选择部件 在部件列表或图形窗口中点击右键,会看到其他关于部件选择的可用项。 1、在部件列表或图形窗口中点击右键,在下拉菜单中选择 " 部件 选择 "。 2、选择所需选项。 全部 选择列表中的所有部件。 反选 反选已选项。即,取消选择所有当前已选部件,而选择 所有当前未选部件。 可见的 / 不可见的 选择所有可见状态 / 隐藏状态的部件。 二维 / 三 维 选择包含二维或三维单元的部件 区域 选择位于 " 选择工具 " 内部的所有部件。 (要求 " 选择工具 " 为开启状态) 显示 选择图形窗口中所有可见的部件。 查找 … 打开 " 查找 " 对话框,使用关键字和正则表达式确定选 择条件。 无 取消选择所有部件 Page 339 操作指南:选择部件 通过 " 拾取 " 来选择部件 同样可以在图形窗口通过 " 拾取 " 操作来选择部件,步骤如下: 1、在工具图标栏的 " 拾取 " 下拉菜单中,选择 " 选取部件 "。 2、将鼠标指针置于图形窗口中所需部件上,按下 'p' 键 (或 " 编辑 > 首选项 > 鼠标和键盘 " 中设置为 " 选定的 拾取操作 " 的鼠标按键)。 如何识别部件,见下文: 注:选中的部件当前在部件列表中也被选中。 必须在可见的面 / 线 / 点上选择部件,在背景通透处将无法选择部件 (如:若部件以线模式显示,则拾取单元中心无 法选中部件)。 默认情况下,按下 'p' 键,将取消选择之前已选的部件。在点击 'p' 键时按住 CTRL 键:若该部件当前未选中,则添加 至已选部件 (即,可通过 " 拾取 " 操作选择多个部件);否则将取消已选部件。 其他说明: 1、默认情况下,部件列表中选中的 部件将会高亮显示为首选项中设 置的高亮颜色和透明度。 2、此为高亮显示的全局开关 (默认 开启) 在主菜单的 " 编辑 -> 首选项 -> 视图 " 中修改已选对象 / 未选对 象的高亮属性首选项。 3、未选部件也将根据首选项中设定 的未选对象的颜色和透明度进行 相应修正。 另请参见 用户手册: Part List Panel Page 340 操作指南:设置对称 设置对称 简介 在许多情况下,建模工具均利用模型的对称性来简化复杂的计算。对于这样的模型, EnSight 通过镜像或旋转操作来 实现数据传递。尽管镜像或旋转的部分看上去与源部件相同,但它们仅是一种显示效果 (在客户端),并不能用于计 算。例如:在一侧创建的粒子追踪,并不能跨越对称面延伸至另一侧 (尽管可以将该粒子追踪部件再次执行对称操 作)。 EnSight 还提供 " 真正的 " 或 " 计算的 " 对称操作 (镜像、旋转、平移),它是部件参考坐标系的一种属性。使用计算 对称,可以横跨周期边界追踪粒子。 两种对称类型 (显示的或计算的)均基于部件的参考系。尽管可以在不操纵坐标系的情况下简单的实现显示对称或计 算对称,但是有关对称的更高级应用还是需要了解坐标系的知识。详见操作指南:创建和操纵坐标系 基本操作 显示对称 显示对称是部件的一种属性。可以显示部件参考系的七种卦限的一个或多个镜像副本,也可以显示关于部件参考系的 x,y,z 轴旋转的对象。实现显示对称的步骤: 1、在部件列表中选择所需部件 2、在部件快速图标栏 (Quick Action Icon Bar),点击 " 显 示对称 " 按钮。 显示镜像对称: 3、在对称类型的下拉菜单中,选择 " 镜像 "。 4、勾选所需卦限 显示旋转对称: 3、在对称类型的下拉菜单中选择 " 旋转 " 4、设置旋转轴、旋转角、及实体 数量。 回想一下,对称操作是关于部件的参考系执行的。坐标系的轴定义了部件镜像卦限的空间分区、还定义了旋转轴,但 有时会因为模型部件的坐标系与对称面或旋转轴不对齐,而导致对称操作无法达到预期效果。解决方法是,创建一个 新的坐标系,将部件分配给该坐标系,设定该坐标系的位置,使得两个轴线位于对称面内,或者其中一个轴线与旋转 轴对齐。详见操作指南: 创建和操作坐标系。 Page 341 操作指南:设置对称 计算对称 计算对称可用于带有周期性边界条件的结构化和非结构化的模型部件。(注:计算对称不适用于子部件。)计算对称 可处理旋转、平移、和镜像对称。与显示对称不同,计算对称在服务器端生成对称的几何体和变量,而不仅仅是视觉 上的对称。 通过选择坐标系、指定类型 (镜像、平移、旋转)、设置属性 (如:旋转角和实体数量)来启用计算对称,被分配给 该坐标系的部件均在服务器端随之更新。 注:通过计算对称创建出的每个实体均在服务器端创建一个新部件。 若使用计算对称,需启用坐标系功能,若该模式当前未激活,需执行下列操作: 1、在功能图标栏 (Feature Icon Bar)上点击 " 坐标系 " 图标。若当前界 面没有该图标,则在图标栏上点击右键,选择 " 自定义功能图标栏 ...", 添加 " 坐标系 " 功能。 2、若默认坐标系 (frame0)不能正确定位所需对称操作,则创建一个新坐 标系,设定该坐标系的方位,将所需执行对称操作的部件分配给该坐标 系。(详见操作指南:创建和操纵坐标系 ) 3、点击打开 " 坐标系 " 面板,选择所需编辑的坐标系 4、点击 " 计算对称 " 图标 接下来的步骤取决于所选的对称类型。 执行镜像对称的步骤与上述显示对称中的类似。 5、将对称类型设为 " 镜像 ",并选择 所需的卦限。 6、点击 " 应用 " 旋转对称:通过围绕所选坐标轴旋转 并指定旋转角度来创建实体。所选坐 标轴必须与旋转轴对齐。 5、在对称类型的下拉菜单中选择 " 旋转 " 6、选择 " 旋转轴 " 7、在 " 角度 " 输入框内设置旋转角 (以度为单位) 8、在 " 物体数量 " 输入框内设置所需的 对象数量 (1 为初始值, 2 表示生成 一个副本)。 9、若有可用的周期性匹配文件,则可勾选 " 使用周期文件 "。 周期匹配文件在下文中有介绍。 10、点击 " 应用 " Page 342 操作指南:设置对称 平移对称:在指定的平移矢量方向创建对象。 注:平移向量将首先随着坐标系旋转。 5、在对称类型下拉菜单中选择 " 平移 " 6、在 XYZ 输入框内键入所需平移向量, 按下回车键 7、在 " 物体数量 " 输入框内设置所需的 对象数量 (1 为初始值, 2 表示生成 一个副本)。 8、若有可用的周期匹配文件,则可勾选 " 使用周期文件 "。 周期匹配文件在下文中有介绍。 9、点击 " 应用 " 计算对称的周期匹配 当模型带有周期性边界条件时,在特定的节点和单元之间会有固定的对应或 " 匹配 " 关系。例如: 7 由节点 1、 2、 3 定义的单元,绕过节点 1 的轴 (垂直于屏幕) 旋转,将与由节点 1、 6、 7 定义的单元相匹配,一旦对象创建, 节点 2 对应节点 6、节点 3 对应节点 7。 5 6 4 3 2 1 当对象加至部件时,我们都希望剔除这些重复节点。若没有匹配文件, EnSight 将试图使用散列法来找出并删除这些 节点,这种方法效果很好,但是一般无法找出全部重复点。(可将部件设置为特征角显示方式来找出余下的重复点, 尽管这些重复点与部件节点重合, EnSight 还是会区别对待这些带有重复节点的单元。) 注:若已有周期匹配文件,则无需在 " 坐标系计算对称属性 " 对话框中指定旋转轴和旋转角 -- 这些值在文件中均有提 供。 用户提供的匹配文件可用来快速查找并删除所有重复点。匹配文件是简单的 ASCII 文本文件。对应于上述例子的文件 内容应该为 (斜体字不是文件的组成部分): rotate_z 52.34 3 11 26 37 指定对称类型为旋转,并指定旋转轴 旋转角 (以度为单位) 节点对的数量 第一个节点对 第二个节点对 … 关于周期匹配文件,详见用户手册:Periodic Match File。 另请参见 操作指南:创建和操纵坐标系 Page 343 操作指南:纹理映射 纹理映射 简介 纹理映射,用于在表面上贴图或通过各种像素处理方法经由贴图图片来调节表面颜色。 EnSight 支持在部件上贴图, 且支持纹理效果与 EnSight 常规配色方案结合,另外还包含动画纹理 (如:EVO、 MPEG 文件),可用于部件贴图和 二维注释。 最简单的应用是在部件表面放置 " 贴图 /logo" 或图片。纹理也可用来添加重复模式、提供自定义的透明度和亮度、以 多个变量着色部件、以及剪切部件至任意边界。 EnSight 中的纹理操作包括纹理图片、插值和混合选项以及投影纹理 图片至部件的机制。这些在下文中均有描述。 EnSight 的纹理映射在 " 纹理 " 对话框中设置,通过 " 颜色编辑器 " 中的 " 纹理 …" 按钮进入。 纹理图片 纹理参数 纹理投影 Page 344 操作指南:纹理映射 设置纹理图片 EnSight 支持最多 32 种不同纹理,以缩略图的形式显示于 对话框的顶端。 在缩略图上点击右键,可对纹理执行一 系列的操作。 使用 " 加载纹理 …" 载入新的图片或动画 (如:EVO、 MPEG 等)。 使用 " 清除纹理 " 将纹理恢复为默认的 16x16 透明方格图片。 每个纹理都有边界颜色,用来着色纹理 边界以外的部分。该颜色 (RGB 和不 透明度)通过 " 设置边界颜色 …" 设置 使用 " 设置纹理选项 …" 设置加载纹理 图片和动画的高级选项。 32 个纹理从 1 到 32 罗列于此。EnSight 的每个部件均可与该 32 个纹理的其中 之一相关联。要完成该操作,首先选择 部件;接着点击缩略图,或者在 " 使用 纹理 " 下选择相应数字。 当前选中纹理的基本信息显示在该文本 区域内,显示了纹理尺寸、源文件、边 界颜色、透明特性 (Alpha 通道和边界 色)。 所有纹理均有颜色 (RGB)和不透明度 (A)分量。默认情况下,使用完全 RGBA 像素值绘 制缩略图,菜单的底部选项允许用户选择绘制的通道。 上述对话框中的下面一排均为相同的纹理,但是使用了不同的绘制模式。 最左边的图片使用完全 RGBA 图片 中间的仅为图片的 RGB 部分 最右边的只有图片的 A 部分 . 注:A 通道屏蔽了 RGB 图像中的黑白像素,该蒙版可用来在 EnSight 的部件上贴上非矩形的 图片 / 图标。 用户经常会对许多不同的分析使用同一套纹理设置 (如:公司 logos、标准调色板等)。 " 保 存 " 按钮允许用户将当前纹理和显示模式保存至首选项,每次启动 EnSight 时均自动加载。 Page 345 操作指南:纹理映射 设置纹理选项 在 EnSight 中,动画纹理 (如:EVO 或 MPEG 文件) 可用于贴图部件和二维注释。每个动画纹理均与 EnSight 中的当前分析时间相对应,该时间映射可在 " 纹理选项 " 对话框中设置。 纹理的基本信息显示于上面的方框内。 包括文件名、边框颜色、尺寸、帧数,还包括 动画纹理的时间信息。 动画纹理的开始和结束帧。此处用于将纹理 " 裁剪 " 为子动画。 设置播放动画纹理的开始和结束时间。 若 EnSight 当前分析时间在纹理开始时间之前,则使用 开始帧;若当前分析时间在纹理结束时间之后,则使用 结束帧。其间进行线性映射。 还有一个 " 自动调整时间 " 选项。 若勾选该项,纹理的起始和结束时间将根据当前载入的 EnSight 分析时间来动态地调整范围。 注:载入后, EnSight 将整个动画信息读至内存,因数 据在内存中使用无损压缩方法,所以若动画较大,将占 用相当大的内存。当前压缩方法可在 " 压缩 " 下拉菜单 中更改。 因为 EnSight 将整个动画存储为 .els 文件,对于大型动 画,最好选用 RLE 或 GZIP 压缩方法。一般情况下,建 议用户在加载动画纹理之前剪辑并重新取样视频文件。 Page 346 操作指南:纹理映射 纹理参数 插值方法、重复模式、纹理模式定义了如何使用纹理,以及如何将纹理集成到常规的 EnSight 配色方案中。 插值方法可以是线性平均或邻近像素。当图形硬件需要访问当前纹理的像素时,可使用双线性 插值法或邻近像素法。通常,线性平均法会使得显示较平滑,但也会因颜色的插值而导致 " 边 缘 " 色并不是原来纹理中的颜色。在 EnSight 中,时常会因为部件开启半透明,并且需要在渲 染过程中排序 (参见纹理使用限制),导致线性插值速度较慢。若需获取纹理的精确颜色,必 须使用邻近像素插值法。 EnSight 允许用户设置纹理的 " 重复 " 模式。当纹理投影指定的纹理坐标位于 [0,1] 之外时, EnSight 可使用 " 重复 " 坐标 (如:纹理坐标为 2.3 的点映射到 0.3 处),或 " 固定 " 至 纹理的边界颜色。若重复模式设置为 " 重复 ",纹理的边界颜色将不被使用。 " 固定 " 常用于 logo 和精确的纹理坐标 (参见纹理投影)。 纹理模式决定纹理以何种方式与 EnSight 的配色方案相结合。它有三种形式:" 替换 "、 " 贴图 "、 " 调制混合 "。在替换模式中,将忽略 EnSight 的基色,纹理作为部件的唯一色源 (注:这种方式禁用所有光源)。在贴图模式中,将使用纹理的 alpha 通道来选择纹理颜色 和部件基色,若纹理 alpha 值为 0,将显示部件的基色;若纹理的 alpha 值为 255,则仅显 示纹理的颜色;若纹理的 alpha 值位于 0 到 255 之间,则在纹理与基色之间插值。注:默认 纹理使用的 alpha 通道值为 255 和 80。当纹理的 alpha 通道中含有白色和图案时,常使用 调制混合模式,该模式允许显示部件的基色,但是透明度与部件不同。因操作倾向于抑制 颜色,所以容易混淆颜色通道,但是可使用灰度模式的纹理来衰减。 Page 347 操作指南:纹理映射 纹理投影 对于纹理显示于部件上的位置, EnSight 提供了两种机制,第一种为投影: 在这种模式下,可以假想纹理为无发散的投影光源 (即:光线是平行的),用户在特定的中心点的某方向上放 置光源以照亮场景。纹理并不限于 EnSight 的暴露表面,任何与光束相交的表面均被投影贴图。 用户可以在 "S 矢量 "、 "T 矢量 " 和 " 偏移量 " 输入框内键入值。 这些变量用来定义部件所在空间的向 量,对应于纹理图片的 X 轴和 Y 轴 方向以及纹理的中心点位置。 设置这些值的最简单方法为使用平面工 具。在视图中放置平面工具以匹配所需 投影,纹理将被缩放以适合平面工具的 边界,纹理轴与平面工具的 X 和 Y 轴对 齐。纹理本身沿着工具的 Z 轴投影。一 旦工具放置完毕,点击 " 基于平面工具 获取投影 " 将自动填写对话框中的输入 框。 The 'Set plane tool to proj' will move the plane tool to the projection formed by the current dialog values. " 基于投影放置平面工具 " 将移动平面工具至当前对话框中各值对应的投影位置。 Page 348 操作指南:纹理映射 也可以基于一个点或点的集合来指定纹理投 影。 " 投影 " 选项设为 " 绝对值 " 模式表示纹理投 影为当前空间中的绝对位置和角度。 若部件几何体有位移或变形,而纹理则在场 景中保持固定,于是看上去与部件表面有相 对运动。 " 相对于节点的偏移 " 允许用户在 " 原点 " 输入框内指定节点编号。 " 偏移量 " 中的 X、 Y、 Z 值为相对于该节点 的偏移量。若该节点移动,则纹理投影看上 去与该节点相连。 同样地, " 相对于节点的偏移和 S/T 矢量 " 允许指定三个节点编号,使得投影可以根据这些节点的相对位置 进行旋转和缩放。若选用任一相对模式,需要点击 " 基于平面工具 获取投影 " 来设置输入框内的值以匹配平面工具 (获取投影选项 总是与当前相对投影和节点编号相对应)。 EnSight 支持的第二种投影机制为 " 变量 "。 这种模式下,使用一个或两个标量提供精确的 S 和 T 纹理坐标,这是最通用的纹理机制。 S- 变量和 T- 变量选项菜单显示了可用的标量列表。 用户也可设置 S 和 / 或 T 值为固定值 0.5。变量的范围通常为 [0,1],表示映射至纹理贴图的边 缘 (内边界),对于该范围之外的值:在固定模式下,将映射为纹理的边界颜色;在重复模式 下,将通过不断的加 / 减运算至范围 [0,1]。这种投影形式能够模仿先前的模型,也使得创建二 维数据调色板相对较容易。正如 EnSight 中现有的调色板,变量的一些函数用来从表格中选择 颜色。在这种情况下,该表格为二维纹理,可同时处理两个不同的变量,并且不透明度也因变 量函数而异。 以各种形式显示 (面、线、点等)的 EnSight 部件均可使用纹理。特别说明,在 " 变量 " 模式 下,无论部件以何种形式显示,点仅使用单个纹理坐标,因而一个显示为圆球的点仅使用纹理 上的单个像素。所以,若要将 logo 放置于球面上,需要使用 " 投影 " 模式。 Page 349 操作指南:纹理映射 基本操作 如何在部件上放置 logo 在部件上放置 logo 或 " 贴图 " 是纹理的一个很常见的应用。该 操作涉及到使用纹理投影,这是一个简单的三步操作过程。 在这个例子中,使用 EnSight 软件内置的 AMI 数据 1、载入 AMI 数据,设置显示类型为实体表面 调整 hypersonic body 至如图所示,并在部件列表中选中该 部件。 2、设置使用的纹理贴图 选择颜色图标,打开 " 部件颜色 " 对话框,点击对话框底部 的 " 纹理 …",打开 " 纹理 " 对话框。 在第一个纹理按钮上点击右键,选择 " 载入纹理 …" 浏览 logo 图片文件 在 CEI_HOME/ensight100/freedesktop/ensight100.png 中 找到 CEI logo。该图片包含 alpha 通道 (选择 " 显示 Alpha" 将只显示该通道)。 按下 logo 图标,将该图片与部件关联。 Hypersonic body 将获得一个 CEI logo 贴图。因为我们仅需 要单个 logo,所以需要将重复模式设置为 " 固定 "。 3、进行必要的变换操作以获取放置 logo 的位置。 如图所示,设置平面工具的尺寸和位置。 关键是,需要将这里的平面工具假想为 " 手电筒 ",从平面 工具的 Z 轴照射下来,并且光束受限于该平面矩形。 一旦工具放置完毕,点击 " 基于平面工具获取投影 "。 该 logo 将显示于部件上平面工具指定的位置处。 Page 350 操作指南:纹理映射 高级应用 使用 S/T 变量映射纹理 EnSight 纹理也可用作多维调色板,允许用户基于两个变量 的任意函数来设置部件的颜色和不透明度。该技术的关键 是,需要生成恰当的纹理贴图。在下面的例子中,使用的纹 理贴图源自 "cube" 模型数据目录下的图片。 1、加载 cube 模型,打开变量计算器 需要创建用于纹理的 "S" 变量和 "T" 变量。 2、在计算器中,创建一个名为 "S" 的新变量,将其表达式 设为 "temperature/50.0" (使 "S" 大致位于范围 [0,1])。 3、创建 "T" 变量,其表达式为 "RMS(velocity)"。 4、创建一个 xyz 剪切的 "Z" 切片,并显示为实体面。 5、选择 "clip_plane" 部件,打开 " 纹理 " 对话框,在第一 个图标处载入 cube 数据目录下的 "dual_gradient.png" 文件。 注意到该纹理沿着 X 轴有渐变的不透明度,沿着 Y 轴有 渐变的颜色。 6、设置纹理模式为 " 替换 ",重复模式为 " 固定 "。 7、设置 " 计算纹理坐标 " 为 " 变量 ",分别选择 "S" 和 "T" 作为 "S" 变量和 "T" 变量。 图形窗口将如图显示,这取决于剪切平面的位置。该配色 与域内的速度有关,而不透明度与温度有关。这种技术可 用于任意两个变量,问题的关键是,需要生成一个对于两 个变量范围均有意义的二维纹理贴图。 Page 351 操作指南:纹理映射 使用纹理剪切对象 纹理也可以有趣的方式来操纵对象中的部分透明度。在这个例子中,将使 用仅有 alpha 通道的纹理图片来剪切部件,从而揭示部件内部的情况。 1、再次载入 cube 数据 与上述例子一样: 2、在两个纹理空位处分别载入 "cirle.png" 和 "sphere.png" 图片文件 对这两个纹理均执行如下操作: 3、点击鼠标右键, " 设置边界颜色 …",将边界颜色的 alpha 通道值改为 255,并且仅显示 alpha 通道。 注:RGB 通道为白色,图片的 alpha 通道中有黑 色区域。 4、创建温度的等值面, 以及 "Z" 切面。 5、以速度着色切面 6、与 logo 的例子一样,选择等值面部件,使用平面工具投影纹理。 在该案例中,使用 circle 纹理,纹理模式 设置为 " 调制混合 ",重复模式设置为 " 固 定 "。 这就像使用一个投射的圆形来剪切等值面, 从而可以看到该部件内部的情形。 Sphere 纹 理提供了更平滑的剪切。可继续测试其他的 纹理模式和重复模式以查看更多效果。记住: 一个部件对应一个纹理,各自均使用不同的 投影设置以获取极富表现力的视觉效果。 这是一个应用于动态粒子追踪的纹理剪切示例, 在这个例子中,并未剪切追踪脉冲,但是追踪 轨迹跟等值面一样被剪切掉。 Page 352 操作指南:纹理映射 其他说明 纹理使用限制 EnSight 中的纹理使用 OpenGL 及多纹理扩展。若显卡 / 驱动不支持该扩展, EnSight 则不能使用纹理,打开纹理对 话框的相应按钮也将被删除。当纹理尺寸为 2 的幂次方时, OpenGL 工作最佳,并且每个显卡的极限最大尺寸不同。 EnSight 将在内部缩放所有载入的纹理 (通过双线性插值)以适合最接近的 2 的幂次方矩形,这可能导致使用的纹理 比用户期望的尺寸还要大,也可能导致在纹理中使用插值的像素,而且,若纹理太大, EnSight 将向下采样,以适应 驱动支持的分辨率。要获取最大的性能和效率,请尽可能使用原本尺寸就为 2 的幂次方的纹理,且尽量避免使用巨大 尺寸的纹理。 对于调制混合或替换模式的纹理,用户常常遭遇到透明度问题。若纹理包含透明的像素 (或透明的边界像素),部件 将可能变得透明。在这种情况下, EnSight 需要将部件的多边形进行排序以确保适当的屏蔽。该过程很费资源并且将 显著减慢渲染速度,为此,用户可使用实体 (或无) alpha 通道的纹理,来避免该消耗资源的操作。若纹理仅使用完 全不透明或完全透明的像素,并且插值选项设置为邻近像素法, EnSight 将识别出像素不可能为透明,于是便不需要 对多边形进行排序。这可用来改善交互性能,并且能够更进一步的在调试混合模式下使用纹理剪切。 另请参见 用户手册: Part Color/Transparency Icon Page 353 操作指南:动画瞬态数据 动画瞬态数据 简介 利用 EnSight 的动画书功能,可动画显示瞬态数据。在动画书加载过程中,所有部件 (包括模型部件与派生部件)均 依次基于每个时间步的数据自动重建。每个时间步都创建一个图形 " 帧 ",并存储于内存中。动画书激活时,这些帧 会立刻按硬件允许的显示速度 (当然也可以减慢速度)顺序播放,也可以手动步进各帧。 图形帧有两种类型:对象或图像。 " 对象动画书 " 将每一帧均保存为三维几何体,使得在播放期间可以连续操纵模型 (如:旋转或缩放)。对于大模型,这将耗费非常大的内存,在这种情况下,可创建 " 图像动画书 ",仅保存每一帧的 图像像素,若不重新加载动画书,将无法改变视图参数。 本文介绍了使用动画书加载瞬态数据 (假设已成功载入瞬态数据)的功能,详见操作指南:创建动画书。 EnSight 的 关键帧动画也可与瞬态数据一起使用,并能同步 " 有效时间步 " 与 " 输出动画帧 "。 详见操作指南:创建关键帧动画。 基本操作 在加载动画书之前,创建所需部件 (例如:剪切、等值线、等值面等)。对于每个时间步,这些部件都将自动重新计 算。加载瞬态数据动画书的步骤: 1、点击 " 动画书 " 图标 2、设置加载类型为 " 瞬态数据 " 3、选择加载内容 (对象或图像) 4、在分析时间面板中定义开始 / 结束时间值。 通常,在加载动画书之前编辑开始 / 结束时间值。 5、指定加载的时间步长增量 6、点击 " 加载 " 例如:增量使用 0.5 将创建时间步为 0,0.5,1,1.5,2,2.5… 的各帧,各时间步之间 采用线性插值。 Page 354 操作指南:动画瞬态数据 此时,弹出 " 加载动画书状态 " 对话框并显示加载的进度。点击 " 取消 " 可取消本次加载,并保留已加载至该点的所有 帧。一旦加载完成,可手动控制动画书的播放: 加载完成后,执行: 1、确保 " 显示 " 设置为 " 动画书帧 " 2、点击 " 向前 / 向后 " 运行按钮 动画书将开始运行 或 手动步进这些帧 2、点击 " 单步向前 / 向后 " 按钮 (一次一帧) 也可在 " 当前 " 输入框中输入值 (记得按 回车键)直接跳到指定帧。 3、在 " 开始 " 与 / 或 " 结束 " 输入框内输入值,更改播放帧 的范围。 4、在 " 速率 " 输入框中输入值,或点击上下箭头,调整播放 速度。 1.00 为无延迟速度,使用硬件全速; 0.5 则为全速的一半。 5、设置往返播放 播放至最后一帧时,反序重新播放。 6、若要停止动画播放,请点击停止按钮。 7、完成后,将 " 显示 " 设置为 " 原始模型 " 录制 一旦加载了动画书,便可进行录制。 点击工具条上的 " 录制 " 图标,打开 " 图像 和动画录制 " 对话框。 参见操作指南: 打印 / 保存图片 Page 355 操作指南:动画瞬态数据 删除 各种动画书类型均可删除: 1、在 " 创建 / 编辑动画书 " 对话框中点击 " 删除 …" 2、确认删除 所有与动画书相关联的内存均被释放。 高级应用 以动画显示的瞬态粒子追踪 (迹线)也可加载动画书,追踪动画将自动在动画书的时间范围内播放,并保持与动画书 帧同步。详见操作指南:创建粒子追踪 、动画粒子追踪。 其他说明 因对象和图像动画书均基于部件集的当前属性创建帧,所以若执行某一改动 (如:以不同的变量着色部件或创建了一 个新部件),必须重新加载动画书。 特例:若使用对象动画书,在动画书运行过程中,可隐藏部件。 另请参见 操作指南:加载瞬态数据 操作指南: 打印 / 保存图片 操作指南:创建动画书 用户手册:Flipbook Animation Page 356 操作指南:创建动画书 创建动画书 简介 Ensight 的动画书功能可动画显示各种类型的数据。在动画书加载过程中,所选部件会基于某些条件 (如:剪切平面 间隔 δ)自动重新创建,每一步都会创建一个图形帧并存储至内存。动画书激活时,这些帧会立刻按硬件允许的显示 速度 (也可减慢播放速度)顺序播放,也可手动步进各帧。 图形帧有两种类型:对象或图像。对象动画书将每一帧均保存为三维几何体,使得在播放期间可以操纵模型 (如旋转 或缩放)。然而,对于大模型,将耗费非常大的内存。在这种情况下,可创建图像动画书,它将每帧保存为图像像 素,若不重新加载动画书,将无法改变视图参数。 有四种不同的动画书类型: 瞬态数据 在当前开始和结束时间范围内,基于各时间步顺序重建所有随时间变化的部件。 模态振型 在位移变量上应用余弦规律的比例系数。 创建数据 应用增量 (δ)至剪切部件或等值面。 线性加载 从零到最大 (位移)向量场值采用线性插值。 本文仅描述了 " 创建数据 " 类型的动画书。对于 " 瞬态数据 " 动画书,详见操作指南:动画瞬态数据;对于 " 模态振型 " 动画书,详见操作指南:显示位移。 更多的复杂动画可结合 Ensight 的关键帧动画功能实现。 基本操作 动画书的每一帧都将在剪切和等值面部件中应用一个 δ 值。对于剪切,该 δ 代表一个平移矢量;对于等值面,它则是 一个增量值。指定 δ 值的方式有两种:(1)鼠标交互操纵; (2)部件的属性面板 (Feature Panel)。前种方式在下 文中介绍,后种方式在本章最后的其他说明部分介绍。 在加载动画书之前,应创建动画所需的所有部件 (剪切 与 / 或等值面)并且操纵部件至动画书的起始位置。加载动画 书的步骤: 1、点击 " 动画书 " 图标 打开动画书属性面板 (Flipbook Feature Panel)。 Page 357 操作指南:创建动画书 2、设置 " 加载类型 " 为 " 创建数据 " 3、选择 " 加载内容 " (对象或图像) 4、设置帧数 每帧均增加一个 δ 值 5、点击 " 开始 " 记录交互的等值面 / 剪切部件 6a、对于平面剪切部件,(在主部件列表中的部件上双击鼠标左 键)打开 " 创建 / 编辑剪切部件 " 对话框。 6b、勾选 " 交互 ",将鼠标移至图形窗口,将工具置于动画书的 结束位置。 6a、对于等值面部件,(在主部件列表中的部件上双击鼠标左 键)打开 " 创建 / 编辑等值面部件 " 对话框。 6b、将 " 交互类型 " 设置为 " 手动 ",调整滑块至动画书的结束 值。 7、返回至 " 创建 / 编辑动画书 " 对 话框 (即:重新执行步骤 1) 8、点击 " 结束 " 记录交互的等值面 / 剪切部件 9、点击 " 加载 " 10、将正在播放的动画保存至文件 (必须正在播放才可保存) Page 358 操作指南:创建动画书 此时,弹出 " 加载动画书状态 " 对话框并显示加载的进度。点击 " 取消 " 可取消本次加载,并保留已加载至该点的所有 帧。一旦加载完成,可手动控制动画书的播放: 加载完成后,将打开播放器 (动画书播放面 板),接着可执行以下操作: 1、确保 " 显示 " 设置为 " 动画书帧 " 2、点击 " 向前 / 向后 " 运行按钮 动画书将开始运行 或 手动步进这些帧 3、点击 " 单步向前 / 向后 " 按钮 (一次一帧) 也可在 " 当前 " 输入框中输入值 (记得按回车 键)直接跳到指定帧。 4、在 " 开始 " 与 / 或 " 结束 " 输入框内输入 值,更改播放帧的范围。 5、在 " 速率 " 输入框中输入值,或点击上下箭 头,调整播放速度。 1.00 为无延迟速度,使用硬件全速; 0.5 则为 全速的一半。 6、设置往返播放 播放至最后一帧时,反序重新播放。 7、若要停止动画播放,请点击停止按钮。 8、完成后,将 " 显示 " 设置为 " 原始模型 " 录制 一旦加载了动画书,便可进行录制。 即, " 录制当前图形窗口动画 " 图标为开启状态 Off On 点击它打开 " 保存动画 " 对话框 参见操作指南:操作指南:打印 / 保存图片。 Page 359 操作指南:创建动画书 删除 各种动画书类型均可删除: 1、在 " 创建 / 编辑动画书 " 对话框中点击 " 删除 …" 2、确认删除 所有与动画书相关联的内存均被释放。 其他说明 在部件属性面板的高级模式中,可设置精确的间隔值,而无需像上文所述那样以交互的方式指定 δ 值。 对于剪切部件: 1、双击部件列表中的部件 (或点击右键,选择 " 编辑 …"),打开剪切属性面板 2、在 " 动画间隔 " 部分的 "X、 Y、 Z" 输入框中输入所需值并按回车键确认。 对于等值面部件: 1、双击部件列表中的部件 (或点击右键,选择 " 编辑 …")打开等值面属性面板。 2、在 " 动画间隔 " 输入框内输入所需的 δ 值并按回车键确认。 加载动画书时,剪切或等值面部件将根据动画间隔更新。 因对象和图像动画书均基于部件集的当前属性创建帧,所以若执行某一改动 (如:以不同的变量着色部件或创建了一 个新部件),必须重新加载动画书。 特例:若使用对象动画书,在动画书运行过程中,可隐藏部件。 说明: 在动画书播放期间, Alpha 透明度会因排序未执行而无法正常工作,所以最终通常会显示未排序的图像。如要查看动 画期间的透明度,请使用分析时间动画流或关键帧动画。 另请参见 用户手册: Flipbook Animation Page 360 操作指南:创建关键帧动画 创建关键帧动画 简介 EnSight 的大型瞬态数据处理能力使得它可用于工程和科学数据的许多视频动画制作。 EnSight 使用关键帧动画系统, 一个关键帧即一组特定的场景视图参数。一旦一组关键帧创建, EnSight 便可在关键帧之间自动生成插值帧,从而生 成一段平滑的动画。 这种关键帧之间的视图参数并不限于简单的旋转、平移或缩放操作。另外,可借助 EnSight 的坐标系功能单独移动部 件,例如:复杂装配体的分解视图动画。也可动画 全局观测点和注视点。 动画一旦创建,便可直接显示于图形窗口中。完成后,指定输出的分辨率并保存。 一般来说,很容易生成差强人意的动画,但要想生成好的动画还需要靠经验。一个在高分辨率的工作站屏幕上看起来 还不错的动画序列传输到模拟 DVD 时或许并不能令人满意。在图形工作站上,通常以 10 度的增量旋转对象会比较适 合,但若以每秒 30 帧的播放速度,该旋转仅需一秒多钟就完成了 -- 这个速度显然太快。参见其他说明部分以了解更 多的提示和技巧。 基本操作 所有关键帧动画属性均在属性面板 (Feature Panel)中设置,可以自定义关键帧间的变换,也可以直接创建 标准动画。 自定义关键帧的步骤如下: 1、点击 " 关键帧 " 图标。 2、设置关键帧 1 所需位置的所有视图参数。 3、点击 " 创建 " 保存首个关键帧。 注:一旦开始保存关键帧,将自动勾选 " 关键帧 " 选项。 4、设置关键帧 2 所需位置的视图参数。 5、点击 " 创建 " 保存关键帧 2 可随时点击 " 播放 " 来查看动画效果。 6、点击关键帧动画播放器面板上的播放按钮来播放动画。 7、继续更改视图参数并点击 " 创建 ",直到保存了全部所需的关 键帧。 重要说明 ! 若取消勾选 " 关键帧 ",则所有当前已定义 的关键帧都将被删除。 若希望保存一组关键帧,点击 " 保存 …" 按 钮。 有多种指定关键帧间变换的方式,详见操作指南中的如下章节: 旋转、缩放、平移、伸缩 创建与操纵坐标系 设置观测点 / 注视点 Page 361 操作指南:创建关键帧动画 使用预定义动画创建关键帧的步骤: 使用预定义动画创建关键帧的步骤: 1、点击 " 关键帧 " 图标。 2、设置关键帧 1 所需位置的所有视图参数。 3、点击 " 快速定义动画 " 折叠按钮。 在该区域中,可以创建如下预定义的关键帧:(a)观测者环 绕模型旋转 (b)旋转模型 (c)创建部件的分解视图。可使 用其中之一或任意组合。 4、设置关键帧总数量。 5、默认首尾关键帧加速。若不需要,可取消勾选 " 关键帧首帧加速 " 或 " 关键帧尾帧加速 "。 6、若想使观察者 (相机)围绕模型旋转,勾选 " 绕飞 "。 (a)选择 " 开始方向 ",右端 (观察者向右开始移 动)或左端。 (b)设置 " 转数 " 7、若希望旋转场景,勾选 " 对象旋转 " 可以绕三个轴正向或反向旋转,并设置绕各轴的转 数。 8、若希望部件关于原点平移,勾选 " 分解视图 "。 可以指定原点坐标,也可直接将原点设为变换中 心。 选择分解 " 方向 ",可以是下列之一: X/Y/Z -- 在坐标方向上平移 XYZ -- 在主坐标方向上平移 径向的 -- 在原点到部件形心的向量上平移 距指定原点最远的部件将平移距离单位 9、点击 " 创建动画 "。 Page 362 操作指南:创建关键帧动画 下面各部分讲述了 " 关键帧动画设置 " 对话框的详细信息。 速度属性 在速度属性中,设置各连续关键帧间的子帧数以及运行属性,如:加速和执行命令: 1、点击 " 速度属性 " 折叠按钮。 2、选择所需编辑的关键帧:直接输入关键帧 编号或使用上 / 下箭头。 3、设置与下一关键帧间的子帧数量 (默认为 20)。 4、设置在关键帧处停留的帧数 (默认为 1)。 5、输入运行至所选关键帧处所需执行的命 令,命令将执行于在该帧显示之前。 6、若添加或更改了执行命令,需点击 " 更新 命令 "。 动画交互等值 / 剪切部件 勾选该项,任何交互的剪切或等值面均会随着关键帧 动画一起移动。 动画透明度变化 勾选该项,定义关键帧期间部件发生的透明度变化会 作为关键帧动画的一部分显示。 7、若想加速离开 (或进入)该关键帧,勾选 " 加速 "。 8、继续选择下一关键帧,执行上述各步操作, 完成时关闭对话框。 子帧数量控制关键帧间的变换速度,子帧越多,变换越缓慢。 可以在关键帧处执行任意有效命令。若存在多行命令语句,则最好将这些命令语句保存至文件,通过输入命令 play: filename 来执行。在关键帧处执行命令有一种特殊情况,若插入命令 shell: filename,该文件(假定为 UNIX 可 执行命令)将在每个子帧以及每个关键帧后执行。此外,若动画帧正在存盘,则刚刚输入的图像文件名将作为第一个 参数传递至可执行文件,该功能可用于后处理图像文件,例如:重新调整和重新采样图像或将其复制到不同的位置, 若使用了该功能, shell: filename 命令必须是指定的唯一命令。 Page 363 操作指南:创建关键帧动画 设置动画范围 在该区域指定播放的关键帧范围。 1、点击 " 设置动画范围 " 折叠按钮。 2、若希望将动画播放限制于特定的关键帧范围,在 " 起始 关键帧 " 和 " 结束关键帧 " 输入框内输入特定的关键帧 编号。默认设置为覆盖所有关键帧。 瞬态数据设置 若有瞬态数据,可以指定其在关键帧动画期间的行为。 1、点击 " 瞬态数据设置 " 折叠按钮。 2、若想在动画期间使用瞬态数据,勾选 " 嵌入瞬态数据 "。 在关键帧动画期间,瞬态数据不必 (也不应该)为动画 书播放状态。 3、可在每个时间轴期间使用瞬态数据。 若时间轴未覆盖所有关键帧,则动画中将有一部分不含瞬 态数据。 默认为单一时间轴,其覆盖了所有已定义的关键帧。点击 " 新建 " 可创建多个时间轴 4、对于每个时间轴,均可指定 " 开始时间 " 与 " 结束时间 " (时间步或分析时间均可 -- 见 " 分析时间 " 对话框) 5、若未勾选 " 时间增量 ",将对时间进行插值,使得开始 时间发生于起始关键帧且结束时间发生于结束关键帧; 若 " 时间增量 " 为开启状态,则时间轴期间的每帧将按 指定时间递增。 若瞬态数据的结束时间发生于结束关键帧之前,可选择 " 循环播放 " (回到开始时间)或 " 往返播放 " (倒序播 放)。 Page 364 操作指南:创建关键帧动画 录制动画 详见 操作指南:打印 / 保存图片。 保存与恢复 可将关键帧及相关信息保存至磁盘中并在以后恢复。保存关键帧的步骤如下: 1、在 " 创建 / 编辑关键帧动画 " 对话框中点击 " 保存 …" 2、在 " 文件选择 " 对话框中输入文件名并点击确定 恢复先前保存的关键帧的步骤: 1、在 " 创建 / 编辑关键帧动画 " 对话框中点击 " 恢复 …" 2、在 " 文件选择 " 对话框中输入文件名并点击确定 其他说明 正如上文所提及,高质量的动画需要时间和经验。多年来, CEI 已制作出大量的动画,并学习到了各种丰富经验。为 了让 EnSight 用户在学习过程中少走弯路,这里列出了许多经验和规则。 EnSight 的关键帧动画方法借鉴于动画电影业。在动画电影制作中, " 制作者 " 定义各特定时间点的场景 (关键帧), 并指出每个关键帧之间需要添加的帧数,然后把工作移交给 " 中间者 ", " 中间者 " 随后绘制缺失的帧。 EnSight 的作 法类似于:" 制作者 " 即用户, EnSight 即 " 中间者 "。这种方法的优点包括: 1、创建关键帧时, EnSight 不仅记录视图参数,还记录上一关键帧移动至当前帧期间所执行的动作。这种算法基本实 现了动画过程的唯一性。 2、每个视口都可独立编辑动画。 3、动画期间,可以播放动画书。 4、动画期间,可以播放粒子追踪动画。 5、很容易同步将瞬态数据与生成的帧。动画运行时, EnSight 会自动随时间逐步重新计算所有随时间变化的实体。 6、直接输出至磁盘文件,便于以后录制、操纵或转换为其他格式 (例如 MPEG 或 QuickTime)。 7、EnSight 具备在关键帧处执行命令的功能,体现其格外强大与灵活。 工程师和科学家可基于关键帧功能制作出高品质的动画。当然,它还缺乏其他商业动画软件 (通常成本为 EnSight 的 2-3 倍)所具备的详细设置。一些局限如下: 1、关键帧过程仅保存变换参数 (全局、坐标系和照相机变换)。关键帧间并不插值其他参数和部件属性。 2、EnSight 中的光源是固定的 -- 不会随动画移动。 3、EnSight 中使用的底纹与照明模型太过简单。 Page 365 操作指南:创建关键帧动画 视频制作技巧 动画停留 无论动画何时开始或停止,运用 " 停留 " 可使得观测者建立起场景的视觉环境。通常在开始时停留 3 秒,在结束时停 留 2 秒效果比较好。对于复杂的图像,可能需要停留更长时间。注:通常可在停留时播放语音 -- 无需在停留处创建太 多的帧。 速率控制 动画的速度是最难把握的方面之一,太快,观众会有眩晕感;太慢,会丧失兴趣。 NTSC (北美使用的视频格式)的 帧速率为每秒 30 帧,但通常会因图形硬件的速度和模型的大小不同,该速率有着很大的差异。工作站一般会慢得多, 当以每秒 30 帧录制视频时,若在工作站上的播放速度还不错,其实际速度会比较快。 试错法是确定合适速率的一种方法。尽管可以通过一些 " 线测试 " 视频录制来改善速率,使用这里描述的方法可以获 得较好初始值: 1、定义所有关键帧。 2、设置动画为全屏播放。 3、设置仅播放第一与第二关键帧之间的动画。 4、设置第一与第二关键帧间的子帧数量为 300. 5、选择视图 > 模型限位框 > 静态方框 6、使用秒表记录动画播放时间 "T"。我们知道播放 300 帧视频需要 10 秒钟。计算如下: factor = T/10. 例如,若 T 约为 12 秒,那么系数就是 1.2,这意味着在屏幕上看到的速率比实际速率慢 1.2 倍。 7、反复调整关键帧 1 和 2 (每次调整后均运行动画)间的子帧数量,直到在屏幕上看到满意的速率。 8、最后,通过第 6 步中算出的系数调整子帧的数量。例如,若子帧为 150 时的速率良好,则将子帧的数量更改为 150 * 系数,这样就会在视频上将看到同样的速度。 9、为下一组关键帧执行步骤 3 到 8。 瞬态数据 动画对于展示瞬态数据特别有用。然而,由于视图参数和时间可以同时变化,很容易迷惑观测者。一般情况下,最好 不要同时更改视图参数和时间,通常在开场中展示模型时,使用变换 (即更改视图参数),然后在适合观看瞬态现象 的位置结束变换,接着在该点展示随时间变化的数据。如果确实需要在显示瞬态现象期间改变场景,需要非常小心, 以免迷惑观众。 注:可以通过创建两个关键帧动画,无需在其间执行任何变换,来动画随时间变化的信息。 通常,仿真数据中均没有足够多的时间步以生成一段持续的动画。若数值模拟不涉及几何形状的变化, EnSight 可在 时间步之间插值 (线性)更多的帧。然而请记住:数值模拟现象事实上不可能是线性的,如果在每个时步间插值了许 多帧,在结果视频中关键帧 (源自分段线性插值)的不连续现象是相当明显的。 Page 366 操作指南:创建关键帧动画 帧数 EnSight 动画的总帧数为所有子帧加上关键帧的总和。同步动画帧与瞬态数据时,这一点尤其重要。 动画追踪 如果在关键帧动画期间显示粒子追踪动画,请记住:追踪动画总是在关键帧动画开始时复位。然而在多数情况下,我 们都希望在关键帧动画开始时,粒子追踪已经完全释放,这可以通过在动画开始时创建一个额外的关键帧来实现。在 关键帧 1 和 2 之间设置足够多的子帧数使得粒子追踪饱和。运行动画时,将 " 设置动画范围 " 中的 " 起始关键帧 " 设 为 2,使动画从关键帧 2 开始播放。这样,对于关键帧 1 和 2 之间的每个子帧,将只执行一次追踪动画。 色彩 视频 (尤其是 NTSC)的色域 (显示设备的颜色范围)明显小于工作站显示器,其结果是:对于某些颜色,在工作 站上显示良好却不能正常显示于视频上,完全饱和的颜色 (尤其是红色和蓝色)尤其如此。为此, EnSight 提供了三 种解饱和图像的方法 (需在录制之前执行): 1、修改所有色彩饱和度。例如,将纯红色 (1 ,0, 0)修改为更柔和的红色 (0.85, 0.1, 0.1)。 2、在图像格式选项中修改饱和系数。系数 0.85 通常较好。 3、创建动画,然后使用图像工具 (圣地亚哥超级计算中心提供免费版)去除饱和图像。这种方法仅适用于保存至磁 盘文件的动画。 深色调背景比浅色调背景好,最好选用黑色背景。 线 移动单线宽的线,在视频中会有 " 爬行 " 倾向,建议线宽至少设为 2。 反锯齿 未经修正时,计算机生成的图像通常显示出锯齿状边缘。通常,当采样分辨率低到无法捕获底层几何体的 " 信号 " 时 便导致锯齿。为此,只能在有效像素上采样几何体上。由于 NTSC 视频信号的有效像素数只有工作站屏幕上的四分之 一,因此,在工作站上看起来不错不代表在视频上也能令人满意。 EnSight 的多次渲染功能支持直接反锯齿。 也有一些其他的方式可以修正这个问题。如果正在录制图像至磁盘文件,并且以全屏的分辨率录制,然后使用图像编 辑工具 (如 EnVe)向下采样所需的分辨率。向下采样,几个像素平均后产生一个输出像素,这样有效地保持了在原 来的全屏图像中的分辨率。 注释 在视频中可以清楚读出的最小注释字体大小为 40,标题字体一般使用 65。若以变量着色部件,应该显示颜色图例, 以使观测者了解各颜色所代表的意义。对于颜色图例,只需在顶部显示最大值,底部显示最小值,外加变量名便足 够。若仅需体现变量的相对大小,用 " 高 " 和 " 低 " 表示就足够了。 Page 367 操作指南:创建关键帧动画 屏幕空间 " 安全 " 的视频显示区域通常小于动画显示窗口,需要认真布局场景使得感兴趣的对象 (尤其是注释)不要 " 太靠 " 边 缘,最好将这些对象的显示范围 (基于 EnSight 视口坐标)控制在 X 方向 0.06 到 0.94 ( 宽 ), Y 方向 0.05 到 0.95 (高)内。 开篇序幕 在动画的开始一般需要用一些标题幻灯片来向观众介绍即将展示的内容。对任何幻灯片,都尽量不要使用太多文字, 并且至少展示四秒钟。 接下来,在显示结果之前,需要一步一步地将模型介绍给观测者,该过程必须足够长且足够完整,让观众带着目标去 观看。这个动画过程的必要性很难估量,但是若没有该动画序列,观众常常会对整个动画感到莫名其妙。 片尾致谢 在任何动画中,都应该包含恰当的片尾致谢。即使制作动画的初衷是仅用于内部交流,但最终往往会展示给更多的观 众。 另请参见 用户手册: Keyframe Animation Page 368 操作指南:粒子追踪动画 粒子追踪动画 简介 EnSight 强大的粒子追踪功能可以追踪穿越流场的颗粒 (稳态或瞬态)。有了粒子追踪动画,用户可以对基础流场特 性有更为直观的理解。通过在粒子追踪部件的所有追踪上显示一个或多个示踪器来动画追踪。示踪器沿着路径移动, 其长度与本地速度成比例。 EnSight 提供了对追踪器各个方面的控制,包括长度、速度和多脉冲发射间隔。 本文涵盖了粒子追踪动画,并假定已经创建一个或多个粒子追踪部件。详见操作指南:创建粒子追踪。 基本操作 启用粒子追踪动画并调整动画参数的步骤如下: 1、在主部件列表中双击所需的粒子追踪 部件。 弹出部件属性面板 (Feature Panel)。 2、勾选 " 动画显示 "。 3、点击 " 动画设置 " 打开 " 粒子追踪动 画设置 " 对话框 Page 369 操作指南:粒子追踪动画 根据需要进行更改 (若更改文字输入框,记得按下回车键) 示踪器的颜色可设置为流 线颜色 (即,追踪部件的 颜色)或纯色 (点击 " 选 择颜色 " 设置所需颜色或 在 RGB 输入框内输入精确 值)。 设置示踪器的线宽。 若为瞬态追踪 (迹线), 设置开始时间与 / 或最大 时间。 设置示踪长度系数 (见下文)。 设置示踪速度系数 (见下文)。 设置示踪器头部的显示方式:无或圆球。若为圆球,半径可以是固定值 (通过 " 尺度 " 设定),也可以是变量值。圆球体的细节信息在 " 详细 " 输入框中设置。 点击 " 恢复默认 ",将为示踪时间、示踪间隔和脉冲间隔设置合适的默 认值。 勾选 " 多脉冲 " 并设置脉冲 (见下文)间隔。 示踪器参数详解: 示踪时间 (长度) 示踪时间 (长度)是所有示踪器长度的 (值越高,示踪器越长)比例 系数。示踪器的长度会因本地速度的不同而不同。例如,当示踪器的前 缘移入高速区时,示踪器将延长。 示踪间隔 (速度) 示踪间隔 (速度)是示踪器速度 (值越大,示踪器速度越快)的比例 系数。示踪器的首尾边缘的速度会随着本地速度的变化而变化。 脉冲间隔 在多脉冲模式下,连续的示踪器发射间隔 ( 值越高,脉冲间隔时间越 长 )。 注:本地速度增大时,示踪器间的距离将加大。 录制 动画追踪一旦计算,便可录制。 此时, " 录制当前图形窗口动画 " 图标为可用状态。 关 开 点击该图标,打开 " 保存动画 " 对话框。 参见操作指南:操作指南:打印 / 保存图片 Page 370 操作指南:粒子追踪动画 高级应用 若有瞬态数据,并已计算瞬态粒子追踪 (迹线),则可打开追踪动画,加载瞬态动画书,在播放动画书的同时查看迹 线动画。详见操作指南:创建粒子追踪 、动画瞬态数据。 其他说明 " 追踪动画设置 " 对话框中的参数并不只是针对当前选中的粒子追踪部件 -- 该设置应用于所有的粒子追踪部件。 另请参见 用户手册: Particle Trace Animation Page 371 操作指南:创建文字注释 创建文字注释 创建文字注释 简介 对于文字注释, EnSight 具有全面的功能。不仅可以显示用户自定义文本,还可以显示包含于某些数据格式描述线上 的文字以及随时间变化的动态文本。 基本操作 1、点击 " 注释 " 图标,打开注释属性面板 (Annotation Feature Panel) 2、点击 " 文字 " 选项 3、点击 " 创建 ",将创建一个名为 "New Text" 的注释。 4、点击该文字字符串,并修改。 若敲击键盘上的回车键,该文本将另起一行。 在输入文字的过程中,可通过点击 " 上标 / 下标 " 下的 " 上标 "、 " 下标 "、 " 正常 " 三个按钮来轻松 地更改文本上下标。这些按钮将以 、 、 或 的形式显示于文本字符串中。 其他包括更改字体在内的特定代码项,同样也可 (通过选择并点击 " 插入特殊项 ")被插入文本字 符串中,这将在下文中介绍。 Page 372 操作指南:创建文字注释 若要操纵文本字符串的属性,首先在列表中选择需要编辑的字符串,然后: 更改可见性: 切换可见性 更改颜色: 从矩阵中选择所需颜色,或在 RGB 输入框内输入恰当的 值,或点击 "More…",打开颜色选择 对话框。 更改对齐方式: 在对齐下拉菜单中,选择 " 左端 "、 " 右端 " 或 " 中心 "。 更改字体大小: 可通过调整尺寸动态手柄,交互地调整大小;也可在 " 字 体大小 " 输入框内精确地指定尺寸 (或移动滑块来更改 字体大小)。 I 重要说明!文字大小与图形窗口大小成正比。若增大图 形窗口尺寸,所有的文字也将重新调整大小以维持原有 的比例关系。 旋转文字: 在 " 旋转角度 " 输入框内 (或移动滑块)指定旋转角 (以度为单位),来确定文本关于对齐点的方向。也可以 在快速图标栏 (Quick Action Icon Bar)中指定旋转角。 增加文字阴影效果: 输入 " 阴影偏移 " 和 " 阴影强度 ",或移动滑块。也可使 用快速图标栏 (Quick Action Icon Bar)。 更改文字在图形窗口中的位置: 使用动态手柄,交互地将文本拖至所需位置;或在位置 点 XY 输入框内精确地指定位置坐标。 可指定文本所相对的视口。若为 0,则相对于整个图形窗 口。 Page 373 操作指南:创建文字注释 特定代码项 EnSight 可基于各种信息来源自动创建文本字符串。要使用特定字符串,从 " 特定值 " 下的列表中选择所需项,点击 " 插入特定项 ",将会在文本区域插入相应代码。 有以下几种可用的特定字符串。若有多个案例载入,任何部件或变量的引用均只应用于当前案例 (点击主菜单中的案 例 > 案例名以更改案例)。 字体 打开 " 字体选择 " 对话框,可以选择新字体。 操纵字体,包括可用的字体格式代码,将在操作指南:操纵字体中介绍。 符号 打开 " 符号 " 对话框,点击任意符号,将在字符串中的光标处插入该符号。符号在字符串 中显示为 xxx,这里的 xxx 为所插入字符的 ASCII 码。 常量 常量值 (如:时间或长度)。从常量列表中选择量,并在数字格式列表中选择显示格式。 若更改常量,相应的文本将自动更新。这对于显示瞬态数据动画中的当前分析时间非常 有用。 日期 当前日期。例如: Wed Jan 1 12:34:56 2012 几何标题行 当前案例的几何文件的第一文本行或第二文本行。选择几何标题行 1 或几何标题行 2。 测定粒子标题行 当前案例的测量 (离散)数据文件的第一行。 变量标题行 变量文件的第一行 (一般为描述行)。在变量列表中选择所需变量。 部件值 部件的 " 值 "。等值面或一些剪切部件 (ijk 剪切、 xyz 剪切、 rtz 剪切、与轴线对齐的剪 切或与样条曲线绑定的平面剪切),它们的值与剪切位置或其他特定值有关。有值的部件 将出现在该部件选择列表中。在列表中选择部件,并在数字格式列表中选择显示格式。 部件描述 插入主部件列表中显示的部件描述。(注:可编辑部件属性面板 (Feature Panel)中的 " 描述 " 输入框来更改该文本。) 版本 名称和当前版本号。如: EnSight Version 10.0. EnSight 命令语言变量也可通过特定代码插入至注释字符串中。该代码项并没有关联的 GUI,但是可以在注释文本编 辑区域直接输入。代码的格式为: <\\ensv “format“ var_name\\> 该格式字符串为 "C" 语言中的 printf 格式。var_name 为插入变量的名称。若在 EnSight 中执行以下命令: $globalstring example $example = Hello from EnSight 注释字符串为: The value is: <\\ensv “%s“ example\\> 将生成注释文字 "The value is: Hello from EnSight"。若变量有更新,下面的命令语言将更新该注释: text: update 又一个例子:使用 EnSight 内置的帧频计数器来存储 ensight 变量 "ensight_fps" (当前渲染速率)。下述注释字符串 (包含了变量格式)将动态显示 EnSight 的当前渲染速率: Page 374 操作指南:创建文字注释 Frames per second: <\\ensv “%.2f“ ensight_fps\\> 还可将交互探针查询值嵌入注释字符串。一般使用交互查询结果的第一个值。该格式的关键词为 "iqval",紧接着后面 为格式声明,以及交互查询的编号 (从 0 开始)。例如: Temperature = <\\iqval "%.2f" 0\\> 将在上述的等号之后显示第 0 个交互探针查询值,精度为两个小数位。 删除注释 在注释列表中选择所需注释,点击右键,选择 " 删除 ",将删除已 有注释。 另请参见 操作指南:操纵字体 用户手册: Text Annotation Page 375 操作指南:创建线 创建线 简介 EnSight 中的线注释既可显示于二维平面上,也可显示于三维空间中。 基本操作 1、点击 " 注释 " 图标 2、点击 " 线 " 图标 3、点击 " 创建 " 按钮,将在图形 窗口中创建线 若要操纵线属性,首先在注释列表面板 中选择所需编辑的线,然后: 更改可见性: 切换可见性。注:若勾选 " 锁定视图 ", 则所有隐藏着的线均以较暗的颜色显示 出来。 更改颜色: 从矩阵中选择所需颜色,或在 RGB 输 入框内输入恰当的值,或点击 "More…",以打开 颜色选择 对话框。 更改位置: 将 " 坐标为 " 设置为 " 二维平面坐标 " 或 " 三维空间坐标 "。可在图形窗口中拖动 线的端点,也可在 X、 Y (和 Z,若为 三维空间坐标)输入框内指定精确的坐 标值。 更改线宽: 在宽度下拉菜单中选择所需线宽。 标记线: 在此下拉菜单中选择文字注释,使其与 线注释关联匹配。 更改箭头位置: 点击箭头下拉菜单,选择箭头所需放置的位置。 删除线:在注释列表中选择相应项,点击右键,选择 " 删除 "。 另请参见 用户手册: Line Annotation Page 376 操作指南:创建二维图形 创建二维图形 简介 EnSight 可以显示二维图形 (箭头、矩形和圆形)。这些二维图形浮于图形窗口的上方,且不与任何视口关联。 基本操作 1、点击 " 注释 " 图标 2、点击 " 图形 " 图标 3、设置图形类型,然后点击 " 创 建 "。 若要操纵图形的属性,首先在列表面板中选择所需 编辑的图形 (或者在图形窗口中直接拾取),然 后: 更改可见性: 切换可见性。注:若勾选 " 锁定视图 ", 则所有隐藏着的形状均以较暗的颜色显 示出来。 更改颜色: 从矩阵中选择所需颜色,或在 RGB 输入框内输入 恰当的值,或点击 "More…",以打开 " 颜色选择 " 对话框。 在图形上应用纹理: 更改位置: 选中图形,将其拖至恰当的位置,或在 " 位置点 X/ Y" 输入框内键入精确的坐标值。二维箭头的位置点 为箭头点,矩形或圆形的位置点为各自的中心。 形的纹理总是替换当前形状颜色,不支持 “ 调 制 ” 和 “ 贴图 ” 模式、自定义投影以及重复 模式。 更改尺寸: 选中图形,调整尺寸动态手柄,将其调至恰当的尺 寸,或在 " 宽度 / 长度 " (或高度、直径)输入框 内键入精确的值。范围为 0 到 1. 可使用与部件相同的纹理,点击 " 编辑纹理 …" 按钮,打开 " 部件纹理 " 对话框,在此,同样可 载入纹理或动画,并设置其他属性。注:二维图 其他属性:旋转图形: 根据所选图形的不同,可能会存在其他属 性,如:旋转属性、箭头属性等 删除图形: 在注释面板中的图形上点击右 键,选择删除。 更改填充模式: 可将图形绘制为填充模式或轮廓模式。 Page 377 操作指南:创建二维图形 另请参见 用户手册:Shape Annotation Page 378 操作指南:创建三维箭头 创建三维箭头 简介 EnSight 可以显示三维箭头。三维箭头定义于模型空间,其位置与场景一同变换。可设置三维箭头在特定视口中的可 见性。 基本操作 1、点击 " 注释 " 图标 2、点击 " 三维箭头 " 图标 3、点击 " 创建 " 按钮,在图形窗口中 (以 及在箭头注释列表中)创建三维注释箭 头。 4、在列表中选择该箭头,然后在 " 拾取 " 下拉菜单中选择 " 选取 三维箭头注释 "。 5、放置鼠标,点击 "p" 键。 Page 379 操作指南:创建三维箭头 若要操纵三维注释箭头的属性,首先在列表 面板中 (或直接在图形窗口中拾取)选择 所需项,然后: 更改视口可见性: 在 " 视口可见性 " 区域上点击以切换在 视口中的可见性。绿色表示可见。 在 " 光源 " 下,更改表面属性: " 光滑度 " 表示表面平滑度, " 光强度 " 为白光 反射颜色的多少, " 漫射光 " 表示周围光线反 射的量。 在 " 尺寸 " 下,更改尺寸: 箭头尺寸为全局坐标下的尺寸。箭头半径、尖 端长度以及尖端半径,均为在箭头尺寸中所占 的百分比。 注:箭头的比例也可在所给值的范围之外。 Page 380 操作指南:创建三维箭头 在 " 方位 " 下,更改位置: 可通过交互查询探针位置、 xyz 坐标、外力或 力矩矢量标记来设置箭头的位置点。例如:位 于 XYZ,可以在 X、 Y、 Z 输入框内键入精确 的坐标值,也可以输入节点或单元编号。偏移 量将会使箭头向后移动该值。 更改方向: 按钮:X、Y、Z 表示箭头平行于该轴," 翻转 " 表示旋转 180 度, " 法向 " 表示垂直于表面 (仅适用于表面) 滑块:将箭头绕 X、 Y、 Z 轴旋转。 对于其他的 " 位于 " 选项,也列出了相应的属 性。 在 " 标签 " 下,更改标签属性: 在这里设置箭头的标签、尺寸和颜色。 若使用交互查询探针来定义三维箭头的位置, 则可以附上交互查询值。 还可使用现有文字注释来定义箭头标签。指定 编号,并设置字体的大小和颜色。 另请参见 用户手册:3D Arrow Annotation Page 381 操作指南:创建表盘 创建表盘 简介 EnSight 可以显示与常量相关联的二维表盘 (就像测量时间的时钟)。这些二维表盘将浮于图形窗口的上方,并且不 与任何视口关联。 基本操作 1、点击 " 注释 " 图标 2、点击 " 表盘 " 图标 3、在常量列表中选择常量, 点击 " 创建 "。 若要操纵表盘属性,首先在列表中选择所 需编辑的表盘,然后: 更改可见性: 切换可见性 更改是否显示边界: 切换边界可见性 更改刻度线数量: 输入刻度线的数量。 更改表盘尺寸: 输入表盘半径,或使用滑块,值位于 0 到 1. 更改位置: 选中表盘,将其拖至恰当的位置,或在 " 圆心 X/Y" 输入框内键入精确的坐标值,圆心即表盘的中心。 删除表盘:在注释列表的表盘上点击右键,在下拉 菜单中选择 " 删除 "。 大指针、小指针、值和背景区域在下一页中介绍。 例如: Page 382 操作指南:创建表盘 大指针属性 表盘的 " 大指针 " 直指上方的最小值,并且有指定的范围。若 跟踪的变量超出范围,则显示变量的绝对值和范围。 若要更改大指针属性,点击 " 大指针 "。 更改最小值: 在最小值输入框内输入最小值。 更改范围: 在范围输入框内输入范围值。 更改大指针的颜色: 从矩阵中选择所需颜色,或在 RGB 输入框内输入恰当的值, 或点击 "More…",打开 " 颜色选择 " 对话框。 小指针属性 表盘的 " 小指针 " 可显示或隐藏。若显示,仅表示大指针所旋 转的圈数。 0 值在最上方,且不可更改。 若要更改小指针属性,点击 " 小指针 "。 更改小指针可见性: 点击切换显示开关 修改小指针范围: 输入一个新的范围值 更改小指针的颜色: 参见大指针的相关介绍 值的属性 可以在表盘上显示变量值或小指针旋转的圈数。 若要更改表盘上值的任意显示属性,点击 " 值 "。 更改值的可见性: 点击切换显示开关 更改字体大小 输入字体大小或移动滑块。 更改显示类型: " 显示为 " 设置为 " 转数 ",表示显示大指针的旋转圈数; " 显示为 " 设置为 " 值 ",表示显示变量值。 若 " 显示为 " 设为 " 值 ",还可修改数值的格式类型和小数 位。 更改值的显示颜色: 参见大指针的相关说明。 Page 383 操作指南:创建表盘 背景属性 设置表盘的底纹和颜色。 不显示表盘背景: 点击切换显示开关。若关闭,则无背景显示 (表盘仅显 示为 " 线框 ")。 更改背景颜色: 参见大指针的相关说明 另请参见 用户手册:Dial Annotation Page 384 操作指南:创建量表 创建量表 简介 EnSight 可显示与常量相关联的二维量表。这些二维量表将浮于图形窗口的上方,且不与任何视口关联。 基本操作 1、点击 " 注释 " 图标 2、点击 " 量表 " 图标 3、在常量列表中选择常量,点击 " 创建 " 按钮。 若要操纵量表属性,首先在列表中选择所 需编辑的量表,然后: 更改可见性: 更改是否显示边界: 切换边界可见性 更改变量范围: 调整最小值和最大值。若追踪的变量值大 于等于最大值,量表将为 " 满 " 状态;同 样,若变量值小于等于最小值,量表将为 " 空 " 状态。 更改方向 设置方向为 " 竖直的 " 或 " 水平的 "。 更改宽度 / 高度: 输入精确的宽度 / 高度值,或移动滑块, 值在 0 和 1 之间。 更改位置: 选中量表,将其拖至恰当的位置,或在 " 位置点 X/Y" 输入框内键入精确的坐标值。 量表的起点为其左下角点。 删除量表: 在图形窗口中的量表上点击右 键,选择 " 删除 "。 例如: 量表的颜色、值和背景区域在下 一页中介绍。 Page 385 操作指南:创建量表 量表颜色属性 可通过以下方式修改量表的前景色 (追踪变 量值的颜色): 点击量表 " 颜色 " 从矩阵中选择所需颜色,或在 RGB 输入 框内输入恰当的值,或 点击 "More…",打开 " 颜色选择 " 对话 框。 值的属性 可设置在量表上显示追踪变量的当前值。 若需更改量表上值的任意显示属性, 点击 " 值 "。 更改值的可见性: 点击切换显示开关 更改字体大小和位置: 设置标签字体的大小和位置。 更改格式: 可设置格式为浮点型或指数型,并指定显 示的小数位数。 更改值标签的颜色: 参见量表颜色的相关介绍。 背景属性 设置量表的底纹和颜色。 不显示量表背景: 点击切换显示开关。若关闭,则无背景显 示 (量表仅显示为 " 线框 ")。 更改背景颜色: 参见量表颜色的相关介绍。 另请参见 用户手册: Gauge Annotation Page 386 操作指南:载入自定义 LOGO 载入自定义 logo 简介 EnSight 可以显示从磁盘文件载入的位图。位图可以是任何图片,最常用的包括 logo 或其他用来识别图像或动画来源 的特征图形。位图将显示于图形窗口中所有几何体的最上层 (至少在位图不透明处),但位于所有其他注释的最下 层。 基本操作 载入 logo 的步骤: 1、点击 " 注释 " 图标 2、点击 "logo" 图标 3、点击 " 创建 " 按钮,在弹出的 " 文件选 择 " 对话框中选择软件所支持的图像文 件格式,点击打开。 若要操纵 logo 的属性,首先在列表中 (或图像窗口中)选择 所需编辑的 logo,然后: 更改可见性: 切换可见性。注:若勾选 " 锁定视图 ",则原本隐藏着的 logo 将以一种较暗的颜色显示出来。 更改在图形窗口中的位置: 可以在图形窗口中选中所需 logo,直接拖动至所需位置;也可 以在 X 和 Y 输入框内精确地指定坐标值。 更改尺寸: 在 X 和 Y 输入框内键入所需的缩放比例因子,按下回车键。 注:logo 的尺寸不可通过动态手柄交互地调整。 另请参见 用户手册: Logo Annotation Page 387 操作指南:创建颜色图例 创建颜色图例 简介 每个当前激活状态的变量均有可在图形窗口中显示的颜色图例。颜色图例提供了以变量值 (云图)着色部件所得图片 的基本信息。若将该图片展示给他人,图例则尤为重要。 图例可显示为相应变量值的竖直或水平彩条,其尺寸和位置可以更改。本文讨论了如何通过修改注释属性来更改图例 的显示样式。若要编辑调色板 (更改颜色或更改变量值至颜色的映射),请参见 操作指南:编辑调色板。 基本操作 显示颜色图例的步骤: 1、点击 " 注释 " 面板。 2、展开图例组,查看所有可用的图例。 3、点击所需显示或隐藏的变量图例 图例列表包含标量、矢量的模和分量。 4、点击右键,选择 " 隐藏 " 或 " 显示 " 图例 -或4、在图例快速图标栏 (Quick Action Icon Bar),点击 " 可见性 " 图标。 若希望关闭所有的图例显示,可点击图例组 (选 择全部图例),然后点击右键,选择 " 隐藏 "。 Page 388 操作指南:创建颜色图例 在图形窗口中调整图例的大小或方位 可在图形窗口中选择图例,动态缩放或移动: 1、将鼠标移至所需移动或缩放的图例上,将出现一个动态手柄。 2、点击并拖动中心点可移动图例。 3、点击并拖动调整大小手柄 (右上角),可修改图例的宽度和高度。 另外两个调整大小手柄用于修改依附于调色板的最小和最大值 图例的其他属性 1、在所需编辑的图例上双击,或选中图例 并点击右键,选择 " 编辑 "。打开属性 面板 (Feature Panel)。 2、若还是未激活,可点击 " 图例 " 图标, 然后: 更改可见性: 切换可见性 更改文字和图例轮廓的颜色: 从矩阵中选择所需颜色,或者在 RGB 输入 框内输入值,或点击 "More…" 打开 颜色 选择对话框。 更改标题位置 点击 " 标题位置 " 下拉菜单,选择上方 (默认)、下方或无。 更改图例方向: 点击选择所需布局 (竖直或水平) 更改文字位置: 点击 " 值的位置 " 下拉菜单, 选择左端 / 底部 (默认)、右端 / 顶部或无。 更改图例类型: 点击 " 图例样式 " 下拉菜单,选择连续 (默认) 或离散。 更改字体大小: 输入所需的字体大小,或移动滑块。 更改值标签格式: 可从值格式列表中选择预定义的格式,也可在格式输入框内输入新的格式字符串。 更改位置: 输入 X 和 Y 值 (位置点相对于图形窗口的左下角),以及宽度和高度。 Page 389 操作指南:创建颜色图例 另请参见 操作指南:编辑调色板 用户手册: Legend Annotation Page 390 操作指南:操纵字体 操纵字体 简介 EnSight 图形窗口中的所有文字均使用全真 (TrueType)字体,它能够识别绝大多数字体和字体集,在 Windows 下,甚至还能渲染注释中的国际化多字节文本。 为确保在操作系统间可移植,EnSight 内置了许多跨平台字体。这些字体包括:Arial、Courier New、Symbol、Times New Roman。若用户将字体限制为使用这些字体集,则生成的 .els 和其他文件将可以在任何计算机上使用。若使用 其他字体集,并且在目标操作系统上找不到匹配的字体,则 EnSight 将自动替换这些字体。 EnSight 还可读取 Windows 和 Mac 下的系统字体。环境变量 CEI_FONTPATH 可以设置为以 ":" (Windows 下为 " ; ")隔开的目录名 列表,在此, EnSight 可以查找 .ttf 和 .ttc 文件。这允许用户在任何操作系统下使用自己的字体。 EnSight 中的字体一般定义为一个字体集名和一个可选的样式,以 ":" 隔开。例如:"Arial:BoldItalic" 表示带 有粗体和斜体风格的 Arial 字体集。 "Roman"、 "Italic"、 "Bold"、 "Oblique" 风格 (及它们的组合)均可被 EnSight 识 别。 EnSight 中默认的字体、样式和大小也可通过一系列环境变量来设置。 ENSIGHT_FONT_DEFAULT_SYMBOL 符号字体集,默认为 "symbol" ENSIGHT_FONT_DEFAULT_OUTLINE 编号 / 轴线标签字体集,默认为 "Arial" ENSIGHT_FONT_DEFAULT_ANNOT 注释字体集,默认为 "Times New Roman" ENSIGHT_FONT_DEFAULT_SYMBOL_STYLE ENSIGHT_FONT_DEFAULT_OUTLINE_STYLE ENSIGHT_FONT_DEFAULT_ANNOT_STYLE ENSIGHT_FONT_DEFAULT_OUTLINE_SCALE 符号字体中使用的样式 标签字体中使用的样式 注释字体中使用的样式 标签字体相对尺度。 100.0 为默认值, 200.0 为两倍大小, 50.0 为 ½ 大小。 ENSIGHT_FONT_DEFAULT_*_STYLE 环境变量为各种字体样式均编了号。下面的值也可加在一起以形成一种综合样 式: BOLD 1 ITALIC 2 OBLIQUE 4 ROMAN 8 例如:若用户所需的默认注释字体为 Arial:BoldItalic,则需要设置下述环境变量 (Windows 下的语法): set ENSIGHT_FONT_DEFAULT_ANNOT=Arial set ENSIGHT_FONT_DEFAULT_ANNOT_STYLE=3 这里选择 Arial 和 BOLD+ITALIC=3。默认字体并不会记录在场景文件中,因而,若基于这些默认设置生成了一个场景 文件,而又需要让 EnLiten 用户能够看到完全相同的注释,则需要在 EnLiten 用户的系统上也设置相同的环境变量, 并且安装相同的字体。若有代表字体更改的 格式的代码 (见下文)嵌入至场景文件中,则不需要设置环境变量 (但是需要安装相同的字体)。 注:在 Windows 下, EnSight 使用 Times New Roman 作为默认的注释字体,该字体不含多语言字符。对于运行 Windows 国际版本的用户,我们建议他们将 ENSIGHT_FONT_DEFAULT_ANNOT 设置为最符合他们语言环境的字体 名,这样可允许国际化文本输入。 Page 391 操作指南:操纵字体 基本操作 字体选择对话框 在几乎每一个 EnSight 允许用户输入文本字符串的 地方 (如:文字注释、曲线图标题、轴线标题等) 均可更改字体,还可以在同一组字符串下反复修改 字体,通过在包含字体名的字符串内插入特定代码 来实现 (详见文本格式代码)。另外, EnSight 的 GUI 中有几处列出了所有可用的字体集 / 样式组合 以供选择,使得上述过程得以简化。 在对话框打开时,当前字体 (默认)将在列表中 被选中,用户可在列表中点击选择任意字体。 我们以文字注释为例,来说明字体的功能: 双击,或右击并选择 " 编辑 …",打开 " 创建 / 编辑注释 (文字) " 对话框。 文本可在该输入框内修改。 Page 392 操作指南:操纵字体 所需编辑的文字将显示于该文本输入框中。 注:点击回车键将在注释中插入一行。 编辑结果将动态地显示于图形窗口中。 在 " 字体 " 下选择插入的字体和样式。 特殊 EnSight 值可在 " 特定值 " 下选择插入。 在 " 上标 / 下标 " 下,正常、上标、下标单选 按钮允许用户在文字中插入特殊代码 、 、 来以上标或下标的形式标记文 字。 符号可在 " 符号 " 中选择插入。 任何代码 (如下页中的字体格式代码所 示)均可手动输入。 Page 393 操作指南:操纵字体 字体格式代码 TrueType 字体渲染系统支持一系列特殊的嵌入代码,通常可用于 EnSight 图形窗口中显示的几乎所有的字符串中 (如:曲线图标题、轴线标题等)。编辑文本字符串时,这些特殊代码均被解析为字符串,并且作用于代码右端的所 有文字。通常,作用效果是叠加的,若要关闭该影响,则需插入另一段代码,将其设置返回至默认值。代码详解如 下: 文字以 " 正常 " 模式显示 文字以 " 上标 " 模式显示 文字以 " 下标 " 模式显示 更改当前字体集和 / 或样式。若仅更改字体集,使用 ;若仅更 改样式,使用 。特例: 将字体集和样式恢复至默认值。 更改当前字体大小和 / 或竖直偏移。若仅更改相对字体大小,使用 , 1.0 为默认的文字尺寸;若仅更改下一个显示文字的竖直偏移,使用 。例如: 表示显示上标。特例: 将比例和 竖直偏移分别复位至 1.0 和 0.0。 存储当前文字位置至空位 X (x 为从 1 到 9 的整数) XXX 从空位 X 中 (x 为从 1 到 9 的整数)返回当前文字位置。存储 / 返回机制连同 代码可以对文字进行精确定位。例如:它不仅允许文字的硬性叠加,还允许 同时显示上标、下标,并且能够显示分数形式。注:空位 0 预留给当前文本行的第 一个字符。 在当前位置,从 " 符号 " 字体中选择插入单个符号。注: 文字后面将跟随三位 数字。 使用 Unicode 编码来显示任意字符。编号必须是四位十六进制数。例如: 将生成版权符号 (©) (前提是当前字体支持显示)。 设置后面文字的颜色。用户可以在 [0.0,1.0] 中取 4 个浮点数,分别表示红、绿、蓝 和 Alpha (透明度)。 Alpha 值默认为 1.0,其他值默认与其左侧文字相同。注: 仅更改文字的透明度。 精确移动至下一行。这与在文字输入区域内按回车键效果一样。注:在注释对话框 列表中的文字注释均以 代替所有的换行。 Page 394 操作指南:操纵字体 一个简单的例子 下面是一个文字注释的例子,用到了多种字体、多行文字、字符以及存储 / 返回功能。 创建该注释需要在创建 / 编辑对话框中的文本输入区域 输入如下字符串: This is dynamically updated, multi-line text... A symbol: 120 Stored location ____________ 开始的几个单词为正常文字,后面更改字体,并另起一行;第二行的中间,再次更改字体,在第二行的最后,将字体 还原为默认;第三行的最后插入了符号;最后一行的开始在空位 "1" 上存储了 "S" 的位置,并最终在与词组 "Stored location" 重复的位置处绘制下划线。 一个较复杂的例子 下面的文字注释的例子运用了文字颜色、字体大小和偏移功能。 创建该注释需要在创建 / 编辑对话框中的文本输入区域输入 如下字符串 (注:这实际上是三行文字,第一行很长): A 091 more complex 093 example A transparent example 在这个例子中,首先输入字母 "A" ;放大文字,并同时设置显示位置低于当前行;插入左括号 "[" ;存储当前位置;缩 小文字至原始大小,设置显示位置高于基线;更改颜色为红色;输入单词 "more" ;返回之前存储的位置;设置显示 位置低于基线;更改颜色为绿色;输入单词 "complex" ;设置与左括号相同的字体大小;复位颜色为白色;输入右括 号 "]" ;复位字体大小和竖直偏移至默认状态;更改颜色为蓝色;输入单词 "example" ;按下回车键;再次按下回车 键,即第二行为空白行;最后一行是使文字变得半透明。注:可透过文字看到背后的红色物体。 另请参见 操作指南:创建文字注释 用户手册: Annot Mode Page 395 操作指南:自定义图标栏和面板 自定义图标栏和面板 简介 EnSight 使用若干组图标来对功能进行分组。可自定义功能图标栏中的有效功能图标及其显示顺序。所有的图标栏均 可移动、停靠或悬浮。此外,也可自定义所有面板 (部件、变量、视口、注释、查询 / 绘制、坐标系)中显示的数据 列。 这些图标均可在其下方显示文字注解。对于初学者,可打开文字注解,熟练之后可关闭。 基本操作 打开图标的文字注解: 1、在功能图标栏上点击右键,在下拉菜单中选择 " 显示图标 及其文字注解 " 自定义功能图标栏: 1、在功能图标栏上点击右键,在下拉菜单中选择 " 自定义功能图标栏 ..." 2、在弹出的对话框中: (a)在左侧的有效功能列表中选择,并使用向右箭头 按钮,使其显示于功能图标栏 (Feature Icon bar)中。 (b)同样,也可在右侧列表中选择功能,使用向左箭 头按钮,将该功能移除功能图标 栏。 (c)右侧列表中的功能均可使用向上 / 向下箭头按钮进行上下移动,修改 它们在图标栏中的显示顺序。 3、点击 " 保存 ",在下次运行 EnSight 时也使用该设置。 4、点击 " 确定 ",仅在本次会话中使 用该设置。 Page 396 操作指南:自定义图标栏和面板 自定义面板中的各列: 1、在所需自定义的面板的列标题上点击右键。图中为右击 " 名称 " 列所弹出的内容。 2、每个面板均有各自不同的属性集。右图显示的是 " 变量 " 面板中 的各选项。类似于上文中有关功能图标栏的描述,可以使用左 / 右 和上 / 下箭头来添加或移除列以及修改各列的显示顺序。 移动图标栏: 1、在图标栏上点击右键,确认下拉菜单中的 " 锁定工具栏 " 未勾选,即:工具栏为可移动状态。 2、点击并拖动图标栏的 " 操纵杆 ",使图标栏脱离用户界面, 并随着鼠标移动。 3、若在界面之外松开鼠标,图标栏将处于悬浮状态。 或 3、当拖动图标栏至界面上的可停靠位置时,界面将会自动开辟一块 空白区域,若在此处松开鼠标,图标栏将与该空白区域自动对接。 蓝色矩形区域表示图标栏可 停靠的位置。 正在拖动该图标栏 Page 397 操作指南:自定义图标栏和面板 移动面板: 1、在图标栏或面板的标题上点击右键,确认下拉菜单中的 " 锁定窗口构件 " 未勾选,即:窗口构件为可移动状态。 2、可拖动面板标题来移动面板。点击并拖动标题,面板将脱 离用户界面,并随着鼠标移动。 3、若在界面之外松开鼠标按钮,面板将处于悬浮状态。 或 3、当拖动面板至界面上的可停靠位置时,界面将会自动开辟一块空 白区域,若在此处松开鼠标,图标栏将与该空白区域自动对接。 蓝色矩形表示面板的 可停靠位置。 4、面板可层叠堆放,占据同一空间 的各面板有各自的选项卡。默认 情况下,变量、绘图 / 查询、注 释和视口面板均共用同一空间。 正在拖动该面板 高级应用 图标栏和面板的布局和位置将自动保存,并在下次启动 EnSight 时自动恢复。恢复默认配置最简单的方式是在启动 EnSight 时附加启动参数 "-no_prefs"。 另请参见 用户手册: Icon Bars Page 398 操作指南:自定义鼠标按钮 自定义鼠标按钮 简介 当鼠标指针位于图形窗口时,点击并按住鼠标左键拖动将执行图形窗口下方变换控制区当前选定的变换操作 (如:旋 转或缩放)。 点击该图标,选择执行不同的变换。 可重新定义鼠标左键的功能,并可将鼠标中键、右键、各按键组合、 以及双击按键映射至各变换操作。 这种自定义功能仅在图形窗口中使用鼠标时有效。此外,左键还用 于其他界面操作。 基本操作 更改图形窗口中鼠标按键行为的步骤: 1、点击主菜单中的 " 编辑 > 首选项 …",选择 " 鼠标和键盘 " 2、设置各种 " 单击并拖动 " 鼠标功能 (左键、中键、右键及各种组合) 3、设置同时点击并拖动两个鼠标按键的功能 4、设置单击鼠标功能 5、设置键盘上 "P" 键功能 (见下文) 5、设置缩放样式 自动滑动:基于鼠标移动的方向和距离进行自动缩放。 向右或向上将缩小几何体,向左或向下,放大几何体。 鼠标拖动的距离决定连续缩放率。 手动拖拉:缩放方向定义同上,移动的距离与拖动鼠标 的距离有关。 6、(若需要在后续 EnSight 的会话中使用该设置作为默 认设置,)点击 " 保存至首选项文件 ",点击关闭退 出对话框。 新的设置将在点击关闭按钮时生效。若点击 " 保存至首 选项文件 ",所有更改将写入文件,并在后续的 EnSight 会话中自动载入。 Page 399 操作指南:自定义鼠标按钮 每个鼠标按钮 (或鼠标按钮的组合)均可关联至下述任一操作: 选定的变换操作 点击并拖动鼠标时,执行变换控制区中当前选定的变换操作。 旋转 点击并拖动鼠标时,执行旋转操作。 平移 点击并拖动鼠标时,执行平移操作。 缩放 点击并拖动鼠标时,执行缩放操作。若缩放样式为 " 手动拖拉 ",则产生缩放位移;若缩放样式为 " 自动滑动 ",则产生缩放速度。 局部缩放 点击并拖动鼠标时,执行局部缩放操作。 框线选择工具 点击并拖动鼠标时,执行框线选择工具的操作。 选定的拾取操作 点击鼠标按钮时,执行当前选定的拾取操作 (即, " 选取 " 图标下的操作) 选取部件 点击鼠标按钮时,执行选取部件操作,即,位于鼠标指针下方的部件被选中。 选取光标工具位置 点击鼠标按钮时,执行选取光标工具操作,即,将光标工具置于鼠标指针所指位置。 拾取变换中心 点击鼠标按钮时,执行拾取变换中心操作,即,将鼠标指针所指位置作为变换中心。 选取单元以消隐 点击鼠标按钮时,执行单元消隐操作,即,移除位于鼠标指针下方的单元。 无 点击鼠标按钮时,不执行任何操作 注:必须设置至少一种鼠标按钮 (或组合按钮)为 " 选定的变换操作 "。 每个鼠标按钮的双击或键盘上的 "P" 键均可设置为如下操作: 选定的拾取操作 双击鼠标按钮时,执行当前选定的拾取操作 (即, " 选取 " 图标下选定的操作) 选取部件 双击鼠标按钮时,执行选取部件操作,即,位于鼠标指针下方的部件被选中。 选取光标工具位置 双击鼠标按钮时,执行选取光标工具操作,即,将光标工具置于鼠标指针所指位置。 拾取变换中心 双击鼠标按钮时,执行拾取变换中心操作,即,将鼠标指针所指位置作为变换中心。 选取单元以消隐 双击鼠标按钮时,执行单元消隐操作,即,移除位于鼠标指针下方的单元。 无 双击鼠标按钮时,不执行任何操作 注:必须设置至少一种双击鼠标按钮选项或 "P" 键为 " 选定的拾取操作 "。 另请参见 用户手册: Mouse and Keyboard Preferences Page 400 操作指南:保存 GUI 设置 保存 GUI 设置 简介 EnSight 用户界面窗口的默认尺寸和位置的选择以尽量减少窗口重叠为原则。移动和调整窗口大小时, EnSight 会保 存该变动信息,下次启动程序时,依然保持之前的布局状态。 高级应用 若想重获窗口的默认布局,在启动 EnSight 时附加 "-no_prefs" 启动参数。 另请参见 Page 401 操作指南:定义和使用宏 定义和使用宏 简介 EnSight 高级用户会发现自己经常执行重复性的操作。为此, EnSight 内置了宏功能,可以保存命令流,并利用键盘 按键创建执行这些命令的快捷方式,在按下相应键时即可直接执行命令。 按下指定给宏的按键,将读取并执行相关命令文件。根据创建方式的不同,有三种执行文件的方式: 1、一次按键执行一次命令文件。这种模式适合一次性操作,如:开 / 关动画书、保存图片。 2、按住按键重复执行命令文件。这种模式适合连续操作,如:关于 Y 轴旋转 5°。 3、一次按键执行一个周期内的多个命令文件。 宏按键定义于文本文件 macro.define 中,宏可定义为网络宏或本地宏,当这两个宏定义为同一按键时,本地宏优 先于网络宏。 %CEI_HOME%/ensight100/site_preferences/macros 目录下的 macro.define 文件 (若有 的话)用来定义网络宏;而 EnSight 默认安装目录下 (一般位于 %HOMEDRIVE%%HOMEPATH%\(username)\.ensight100 下。对于 Vista 和 Win7,位于 C:\Users\username\.ensight100 ;对于早期的 Windows 版本,位于 C:\Documents and Settings\yourusername\.ensight100 ; Linux 系统下,位于 ~/.ensight100 ; Mac 系统下,位于 ~/Library/Application Support/EnSight100)的 macro.define 文件用来定义用户的本地宏。宏所引用的命令文件也必须位于这些目录中。 定义和编辑宏的绝大多数功能可在命令对话框 (主菜单中,文件 > 命令)的 " 宏 " 下进行。 基本操作 创建宏命令文件 创建宏的第一步:保存执行所需操作的命令流。可使用以下几种方式完成。 一种方式为:从 EnSight 会话中直接保存命令文件。详见 操作指南:记录和执行命令文件。保存命令文件时要特别小 心,冗余或错误的命令均会减慢宏操作速度,甚至导致错误,可使用文本编辑器查看生成的命令文件并做适当地修 改。 另一种方式为:从命令对话框历史窗口中拷贝命令。 1、在 " 历史记录:" 窗口中,选中所需命令。 2、将鼠标指针置于标记的命令上,点击鼠标右 键,弹出操作菜单,选择 " 复制 "。 将命令拷贝至系统剪贴板。 3、打开文本编辑器,将上述命令 " 粘贴 " 至文本。 4、当完成创建宏命令文件时,请将其保存至网 络宏或本地宏目录 (见上文)。 Page 402 操作指南:定义和使用宏 第三种方式为:从命令对话框的 " 历史记录:" 窗口中直接写入 / 追加至文件: 1、在历史窗口中,选中所需命令。 2、将鼠标指针置于标记的命令上,点击鼠标右 键,弹出操作菜单,选择 " 写入 / 追加至文 件 …"。 3、在 " 文件选择 " 对话框中选择或输入要保存 命令的文件,点击保存。若文件已存在,所 选的命令将添加至该文件;若文件不存在, 将新建文件。 键联宏命令文件 链接宏目录下的命令文件至键盘按键或鼠标按钮: 1、在命令对话框的 " 宏 " 下 (主菜单中,文件 > 命令),点击 " 新建 "。 打开 " 新建宏 " 对话框。 2、选择或输入一个按键 3、若需在按住按键时,重复执行宏命令,请勾选 " 重复执行 " 4、选择辅助按键,如:CTRL 或 ALT 5、为宏操作输入简要的说明。 6、点击 " 添加 ",添加命令文件。 6、或,点击 " 添加菜单 ",添加 EnSight 现有的 功能菜单。 打开 " 文件选择 " 对话框。 7、选择所需文件,点击打开。 注:可选择硬盘中任何位置的文件,若本地 .macros 目录下没有该文件,则会自动将该文件复 制到这里。 8、重复第 6 步和第 7 步,设置多个命令文件。 Page 403 操作指南:定义和使用宏 更改已有的宏: 1、在命令对话框的 " 宏 " 下 (主菜单下,文件 > 命令),点击 " 编辑 "。 2、打开 " 编辑宏 " 对话框。在该对话框中进行更 改,点击 " 关闭 "。 在命令对话框中的 " 宏 " 选项下点击 " 保存更改 ", 或关闭命令对话框并在弹出的询问是否保存更改的 消息框中点击 " 是 ",方可将所有更改写入 macro.define 文件中。 其他说明 通常可以创建一个切换选项来将多个命令文件绑定至同一按键。打开选项时,执行第一个命令文件;关闭选项时,执 行第二个命令文件。切换时,将循环执行两个命令文件。 另请参见 操作指南:记录和执行命令文件 用户手册: Macros Tab Page 404 操作指南:设置或修改首选项 设置或修改首选项 简介 几乎每个 EnSight 的操作和功能最初均为默认值,首选项允许用户设置这些初始值,如:瞬态数据的初始载入时间 步、鼠标各按钮的定义等。启动 EnSight 时,首先从 $CEI_HOME/ensight100/site_preferences 目录中读取首选项设 置,然后使用 EnSight 默认目录 (位于 %HOMEDRIVE%%HOMEPATH%\(username)\.ensight100 下。在 Vista 和 Win7 系统中,一般位于 C:\Users\username\.ensight100 ;在 Windows 的早期版本中,位于 C:\Documents and Settings\yourusername\.ensight100 ;在 Linux 系统中,位于 ~/.ensight100 ;在 Mac 系统中,位于 ~/Library/ Application Support/EnSight100)下的首选项设置覆盖初始默认值。 基本操作 1、在主菜单的 " 编辑 " 下拉菜单中选择 " 首选项 ",打开首选项 对话框 以下列出的是首选项对话框中的有效类别 (将在下文中一一描述): 设置注释默认值: 设置调色板默认值: 设置数据首选项: 设置图片保存和打印首选项: 设置鼠标和键盘首选项: 设置性能首选项 设置用户自定义输入首选项: 设置变量首选项 设置视图首选项: Page 405 操作指南:设置或修改首选项 设置注释默认值: 许多时候,都需要在 EnSight 中使用较大的字体 1、在首选项类别列表中选择 " 注释 " 2、点击 " 默认字体首选项 …" 按钮 6、分别更改注释、符号和标签字体 7、更改标签字体大小 8、点击此处保存首选项设置 Page 406 操作指南:设置或修改首选项 设置调色板默认值: 1、在首选项类别列表中选择 " 调色板 " 2、使用变量着色部件时,选择是否自动显示颜色图 例。 3、不再使用当前图例 (即:没有部件以该变量着 色)而使用新变量着色时,选择是否更新颜色图 例。 4、时间变化时,是否基于当前时间下着色的变量值 更新颜色图例范围。 5、是否将单元变量的默认图例设置为单元内恒定还 是单元间连续 (与邻单元求平均)。 6、若存在预定义的调色板,可在此输入名称或在预 定义调色板列表中选取,来设置默认值。 8、点击此处保存首选项 Page 407 操作指南:设置或修改首选项 设置命令行首选项: EnSight 中存在很多命令行参数,这些参数可以在首选 项文件中设置,以便用户在每次使用 EnSight 时不需要 再在启动行指定。 1、在首选项类别列表中选择 " 命令行参数 " 2、选择命令行参数 所选参数的注解文字将出现在该 对话框中。 3、点击此处添加参数 所添加参数将置于编辑区域。 若编辑出现错误,添加了不必要的参数,可直接在编辑 区域删除。 若需要附加信息,将在此处贴出说明文字。 4、若需要添加附加信息,可在编辑区域添加所需文字 5、点击此处保存首选项 Page 408 操作指南:设置或修改首选项 设置数据首选项: 1、在首选项类别列表中选择 " 数据 " 2、若需指定查找数据的默认路径,在此输入 3、在此指定默认的二进制文件类型 4、载入瞬态数据时,可在 " 数据读取 " 对话框中指 定加载的开始时间步。若未指定,可选择载入 " 起始步 " 或 " 结束步 "。 5、若该属性设置为 " 没有部件 ",则在 EnSight 读 入数据之后,呈现出部件载入器;若设置为其他 属性,则指定的部件将直接载入并显示。 6、设置 " 多面体分解算法 " (详见用户手册 Edit Menu Functions) 关于 EnSight 运行过程中周期模型的更新 -- 请联 系 CEI 技术支持。 6、带 * 的 reader 将显示于 EnSight" 数据读取 " 对 话框的 " 格式 " 下拉菜单中。若关闭 * (在列表 中点击格式),则将相应的 reader 将移出下拉菜 单。 7、在此键入 reader 名称来指定默认数据类型 8、点击此处保存首选项。 Page 409 操作指南:设置或修改首选项 设置图片保存和打印首选项: 1、在首选项类别列表中选项 " 图片保存和打印 " 2、点击 " 点此开始 " 按钮,打开 " 打印 / 保存图片 " 对话框 3、修改首选项属性,如:图片格式 4、点击此处保存首选项 Page 410 操作指南:设置或修改首选项 设置鼠标和键盘首选项: 该首选项允许用户修改 EnSight 变换过程中鼠标按 钮所对应的操作。可定义单击、多按钮单击以及双 击。注:至少需要设置一种按钮为 " 选定的变换操 作 " (意为将按钮设置为 EnSight 图形窗口底部的 变换图标所示的操作 -- 默认为旋转)。并且,至少 需要设置一种鼠标按钮或键盘 "p" 键为 " 选定的拾 取操作 "。 1、在首选项类别列表中选择 " 鼠标和键盘 " 2、修改各鼠标按钮 (或键盘 "p" 键)首选项 可选的单击操作: 可选的单击并拖动 选项: 可选的缩放样式: 3、点击此处保存首选项 参见 How To 自定义弹出式菜单以获取 " 用户自定 义菜单 " 的详解。 Page 411 操作指南:设置或修改首选项 设置性能首选项 1、在首选项类别列表中选择 " 性能 " 2. To take advantage of pixel saving when redrawing a window movement, set this toggle. (Graphics card speed for reading/ writing of pixels needs to be reasonable to use.) 4、若需将快速模式设置为静态,勾选该项。默认 为关闭状态,即快速显示 (即,模型限位框) 仅在变换过程中激活,鼠标按钮松开时,图像 依旧显示完整图形;若勾选该静态模式,则快 速模式将持续显示。 5、为确保正确的显示透明几何体, EnSight 必须将透明的多边形在显示屏上排序,该 操作可能很耗资源,尤其在多个透明部件 均显示的情况下。该选项设置何时以及如 何进行表面排序。 " 交互 " 模式下,每次视图刷新均执行排序操作。 " 延迟 " 模式下,用户与视图交互时 (即,按住鼠 标按钮时),不执行排序。注:无论 " 交互 " 还是 " 延迟 ",隐藏线均不执行。 " 深度渲染 " 模式下 (仅对支持 OpenGL 语言的显卡有效),显卡逐像 素反复渲染视图,该模式会因为多边形数量的增加 而使显示效果更佳,并且当多个部件透明时,其性 能不会降低。渲染的层数 (即,需要排序的表面 数量)在 " 透明层数 " 输入框内定义。 5、若使用 " 点 " 作为快速显示模式,在此设置点 分辨率。 6、若使用 " 稀疏模型 " 作为快速显示模式,在此 设置显示模型的百分比。 (仅适用于即时模式 (immediate mode)) 7、 EnSight 的客户端 - 服务器进程有可能运 行于不同的远程主机上,因此无法采用常 规的中止操作。为此, EnSight 提供了定 时器功能,设置在一段时间之后终止服务 器操作。若需设置该超时值,勾选此项并 设置超时值 (以秒为单位)。 8、点击此处保存首选项 Page 412 操作指南:设置或修改首选项 设置用户自定义输入首选项: 1、在首选项类别列表中选择 " 用户自定义输入 " 2、勾选该项,显示宏面板 3、勾选该项,在图形窗口中显示部件列表。该功能 在全屏模式或 VR 环境中极为有用。 4、勾选该项,激活用户自定义输入设备 (ENSIGHT10_INPUT 必须正确定义) 5、设置缩放操作的灵敏性。此处设置缩放值,值大 于 1.0,执行放大操作;值小于 1.0,执行缩小 操作。 6、 " 混合模式 " 下, z 轴旋转直接使用输入设备, 但 x/y 轴旋转使用 x 和 y 平移值。 " 直接模式 " 下,三个轴均使用输入设备的旋转角 7、灵敏性为旋转值的比例系数。 8、点击此处保存首选项 Page 413 操作指南:设置或修改首选项 设置变量首选项 1、在首选项类别列表中选择 " 变量 " 2、若需要在变量激活前得到通知,勾选此项 3、切换 " 变量计算器 " 对话框下预定义函数列表 中函数的可见性 4、点此保存通知请求和函数可见性至首选项文件 5、点此打开 " 设置扩展 CFD 变量 " 对话框 点击此处保存扩展的 CFD 变量设置 Page 414 操作指南:设置或修改首选项 设置视图首选项: 1、在首选项类别列表中选择 " 视图 " 2、勾选此项,平面工具将以半透明形式显示 ;关闭此项,平面工具将以线框模式显示。 3、 EnSight 中有两种偏移方式。 第一种偏移为硬件偏移,硬件偏移与显示屏垂 直。若勾选此项,偏移在硬件中完成。如:希 望等值线看起来比其母部件离观察者更近,使 得无论从哪个方向观察该等值线均可见。 第二种偏移为显示偏移。显示偏移可在线形部件 (如:等值线、粒子追踪线、示例箭头、分离 / 再附线)的属性面板 (Feature Panel)中设置。 显示偏移为单元法向 (垂直于表面)的距离。 4、选择默认的视图方向。 5、对于较新的显卡, EnSight 将试图使用 " 硬件 " 拾取;否则选用 " 软件 " 拾取。对于 性能不好的老显卡,选择 " 软件 " 拾取。 6、点击此处弹出 " 高亮设置 " 对话框 7、点击此处弹出 " 反锯齿参数设置 " 对话框 8、点击此处弹出 " 点击并拖动首选项设置 " 对话框 9、点击此处保存首选项。注:若存为 " 软件 " 拾取,而后更换了较新的显卡,则推荐将 拾取方法改为 " 硬件 ",以发挥新显卡的优 势。 另请参见 用户手册: Edit Menu Functions Page 415 操作指南:启用用户自定义的输入设备 启用用户自定义的输入设备 简介 EnSight 提供了专为 VR 用户设计 (不限于)的输入设备。安装启用这些输入设备需要遵守各种指令,见下文。 基本操作 操作面板界面: 1、主菜单下,编辑 > 首选项 …,点击 " 用户自定义输入 " 2、宏面板界面开关 主图形窗口会基于 EnSight 默认目录 (位于 %HOMEDRIVE%%HOMEPATH%\(usernam e)\.ensight100 中。在 Vista 和 Win7 系统 下,位于 C:\Users\username\.ensight100 中;在早期的 Windows 系统下,位于 C:\Documents and Settings\yourusername\.ensight100 中;在 Linux 系统下,位于 ~/.ensight100 中;在 Mac 系统下,位于 ~/Library/Application Support/EnSight100)中的文件 (如: hum.define )来更新宏面板。 (若该文件尚未创建,可参考 EnSight 客户端 主机系统下的例子 $CEI_HOME/ensight100/src/cvf/udi/ HUM/hum.define 3、部件面板界面开关 (若想在图形窗 口中显示部件列表) 4、用户自定义输入开关 (执行用户自定义输入设备的详细步骤,参见 EnSight 客户端主机系统下的文件 $CEI_HOME/ensight100/src/udi/cvf/ README.v3 5、设置 " 缩放灵敏性 " (越趋向于 0,越慢;越趋向于 1,越快) 6、设置恰当的 " 旋转模式 " 及其灵敏性 (越趋向于 0,越慢;越趋 向于 1,越快) 另请参见 用户手册: User Defined Input Preferences Page 416 操作指南:自定义弹出式菜单 自定义弹出式菜单 简介 EnSight 可以通过鼠标右键调用弹出式菜单,菜单具体到每个对象 (部件、注释、曲线图等),它们作为 Python 对象 写入,并在 EnSight 启动时自动载入。菜单可基于命令语言或 Python 建立,并实现任意功能。大多数菜单使用 Python 来查询 EnSight 状态,并且基于该状态执行自定义动作。 EnSight 用户可以添加自定义菜单至已有的弹出式菜单,该机制使得 EnSight 能够满足特定的用户需求。 基本操作 本节描述了 EnSight 的默认菜单。在部件、文字或背景上 (如下图)点击右键,即可使用 EnSight 的内置功能。默认 情况下,单击鼠标右键即弹出菜单,也可通过编辑首选项设置进行更改,参见操作指南:设置鼠标和键盘首选项:菜 单也可作为宏,指定给特定按键,参见操作指南:定义和使用宏。具体的菜单显示,取决于所点击的对象。这里展示 了几个例子。 在注释上点击 在部件上点击 在视口背景上点击 菜单对象 通常,操作对象被列在菜单顶部。使用辅助按键 ("ctrl")来控制对象 / 部件的选择。若对象为当前所选内容的一部 分,则菜单操作将以整个选择作为对象;若对象不是当前所选内容的一部分,则目标对象将自动更改为该对象,且菜 单操作将基于该对象执行。可使用 "ctrl" 键来进行适当地修正,一般情况下,在点击鼠标左键拾取时,按住 ctrl 键告知 EnSight 拾取的对象应被添加至当前所选;在点击右键打开菜单时,按住 ctrl 键,告知 EnSight 操作对象依然保持为 原先选择的对象。在对象难以选中,甚至对象隐藏时,这种方法较为有效。 Page 417 操作指南:自定义弹出式菜单 高级应用 这一节讲述了如何创建用户自定义菜单,正如接口手册中所讲的 EnSight extension mechanism。(这里假设您在 Python 语言以及面向对象程序设计方面有一定的基础。)自定义菜单拥有与内置菜单相同的功能,两者都基于同一接 口创建。此外,自定义菜单允许用户显示选项及其级联菜单。默认情况下,自定义菜单将出现于 EnSight 默认菜单列 表的最下方。用户还可定义一个按键 (使用宏功能)来调用该操作。 EnSight 自带两个 Python 文件例子,很好地展示了创建自定义弹出菜单的过程。下面我们以此为例来学习如何自定义 EnSight 菜单。将这两个文件从现存位置移至启动 EnSight 时自动加载的目录中。 如何加载菜单 默认情况下, EnSight 在这些目录下查找 Python 文件: $CEI_HOME/ensight100/site_preferences/ extensions/user_defined 目录的子目录、extensions/user_defined 子目录(位于 EnSight 默认目录下)。 对于不同的操作系统, EnSight 默认目录的路径不同: Linux: ~/.ensight100/extensions/user_defined/Tools Mac: ~/Library/Application Support/EnSight100/extensions/user_defined/Tools Windows Vista, Windows 7: C:\Users\username\.ensight100\extensions\user_defined\Tools Windows XP: %HOMEDRIVE%%HOMEPATH%\(username)\.ensight100\extensions\user_defined\Tools 该过程的具体细节参见操作指南:EnSight extension mechanism。 EnSight 找出要执行的 Python 文件时,会调用 该文件中指定的构造函数,构造函数返回已在 EnSight 中注册了的对象列表,该对象可以是用户自定义工具、菜单和 GUI,这取决于扩展类中的子类。每当用户调用弹出式菜单时 (一般通过鼠标右键), EnSight 将滤掉注册的菜单对 象列表,将其显示为弹出菜单,并在用户选中时调用各运行方案。 在接下来的两节中,我们通过两个简单的自定义 EnSight 用户菜单的例子来加深理解。 "Hello world" 菜单 下面显示的是菜单扩展的简单例子 (可作为更多菜单的模板)。该示例 Python 文件已打包于 EnSight 的安装文件中, 储存于文件夹 $CEI_HOME/ensight100/src/user_defined_ext/ 中。将整个文件夹拷贝至 EnSight 默认目录 的子目录 extensions/user_defined/examples 中,重新启动 EnSight。下图中展示了该 Python 代码生成的新 菜单项,以及 Python 窗口下的输出 (文件 > 命令,在弹出的窗口中点击 "Python")。 C:\Users\username\.ensight100\extensions\user_defined\examples Page 418 操作指南:自定义弹出式菜单 下文展示的是带注释的 Python 代码。注意到注释行以 #ENSIGHT_USER_DEFINED_BEGIN 开头,以 #ENSIGHT_USER_DEFINED_END 结尾。这些特殊格式的 Python 注释即为 EnSight 启动时所查找的对象,它们指定了 文件载入时调用的函数名。构造函数负责创建菜单对象,并返回至 EnSight。 # # This comment block is required to identify the file for loading at # startup by EnSight. The function named by FACTORY= (in this case # 'ctor' is called by EnSight on startup. Note: the file is loaded # as a module in EnSight and the path to this file is added to sys.path. # #ENSIGHT_USER_DEFINED_BEGIN #FACTORY=ctor #ENSIGHT_USER_DEFINED_END # # Import the parent class for all user-defined menus and the ensight module # import ensight from ensight.core.menu_extension import menu_extension # # Define a menu class, a subclass of the menu_extension class # class hello_menu(menu_extension): # # Construct the menu with reasonable defaults # def __init__(self,name,parent,text="",tooltip="",desc="",icon=None): menu_extension.__init__(self,name,__file__,1.0) if (parent): parent.addChild(self) if (icon): self.setIcon(icon) self.setText(text) self.setDesc(text) self.setTooltip(text) # # Method that is called when the menu is selected # def run(self): # # Do whatever operation this menu should do, replace with your own code # print "Hello, these parts are selected:" for part in ensight.query_parts(client=1): print part[3] # # Construct a list of menu objects to be added to the global list of # user-defined menus # def ctor(parent): list = [] # # Create the actual menu object, giving it a unique name an # onscreen name and a text description # p = hello_menu("hello_menu",parent,"Hello menu","Menu description") list.append(p) return list Page 419 操作指南:自定义弹出式菜单 级联菜单 下图展示的是一个较复杂菜单的示例。同样,可使用与上文所描述的相同方式启动,结果菜单如下图所示。 这个例子基于上一例子创建。首先,展示了单个 Python 文件可以生成任意多个菜单;还展示了具备定义级联菜单的 功能。在这个例子中,菜单本身仅在特定的上下文环境中显示 (如:仅当选中特定类型的部件时)。最后,设置了其 他几个菜单选项,指定菜单的名称和图标,详见接口手册。 基本的文件结构与上述相同。有一个标题块,下面是各种类定义,接着是构造函数。 Page 420 操作指南:自定义弹出式菜单 # # This comment block is required to identify the file for loading at # startup by EnSight. The function named by FACTORY= (in this case # 'ctor' is called by EnSight on startup. Note: the file is loaded # as a module in EnSight and the path to this file is added to sys.path. # #ENSIGHT_USER_DEFINED_BEGIN #FACTORY=ctor #ENSIGHT_USER_DEFINED_END # # Import the parent class for all user-defined menus and the ensight module # import ensight from ensight.core.menu_extension import menu_extension # # Define a "separator" menu class used to put a dividing line between menus # class sep_menu(menu_extension): def __init__(self,name,parent): menu_extension.__init__(self,name,__file__,1.0) self.setSeparator(True) if (parent): parent.addChild(self) # # Define a menu class, a subclass of the menu_extension class # class part_menu(menu_extension): # # Construct the menu with reasonable defaults # def __init__(self,name,parent,text="",tooltip="",desc="",icon=None): menu_extension.__init__(self,name,__file__,1.0) if (parent): parent.addChild(self) if (icon): self.setIcon(icon) self.setText(text) self.setDesc(text) self.setTooltip(text) self.setVendor("John Q. Public") # # Method that is called when the menu is selected # def run(self): # # We are constructing two instances of this class. They differ by # name. We use the name to perform different operations for each # of the instances. This could also be done with any other class # data, including user defined data members. # if (self._name == "allpart_menu"): print "All parts hello!" else: print "Model part specific hello!" # # Construct a hierarchy of menus. A parent "roll-over" menu and two # children with a separator between them. These menus use context # sensitive filtering. The parent is only displayed in EnSight "Part" mode. # One child is always display and the other is only displayed when the # currently selected part is a "Model" part. Note: this filtering could # also be performed by overriding the "validFilter()" method on the menu # object to perform any custom filtering operation. # Page 421 操作指南:自定义弹出式菜单 def ctor(parent): # # The factory method always returns a list of object to be added. # In this example, we only return menu_extension subclass instances, # but the list can include any combination of object subclassed from # the core_extension class. # list = [] # # Create the parent roll-over menu # p = menu_extension("placeholder",None) # # Create an icon for the menu (this is optional). In this case, we # access one of the icons embedded in EnSight itself. See the Qt # resource management documentation for details. # p.setIcon(":/ensight/ens_icn_small") # # Set the EnSight mode filter to only display in "Part" mode. # p.setMode("Part") # p.setText("Simple part tools") p.setTooltip("Example part tools") if (parent): parent.addChild(p) list.append(p) # # Create the instance of the part_menu class that should be displayed # for any part that is selected. # m = part_menu("allpart_menu",p,"All part menu","Menu description") list.append(m) # # Add a horizontal separator line between the child menus. # m = sep_menu("sep1",p) list.append(m) # # Create an instance of the part_menu class that is only displayed # when a "Model" part is selected. # m = part_menu("modelpart_menu",p,"Model part menu","Menu description") # # Set the EnSight part type filter to "Model" parts. # m.setPartType("Model") list.append(m) return list Page 422 操作指南:自定义弹出式菜单 其他例子 例子中的源代码均在 $CEI_HOME/ensight100/src/user_defined_ext/examples 目录中。所有内置菜单的 源代码均在 $CEI_HOME/ensight100/site_preferences/extensions/user_defined 目录下。其他例子的 代码在 $CEI_HOME/ensight100/site_preferences/extensions/user_defined/Tools/QuickTools/ Examples 中,但这些都是用户自定义工具而非菜单,不过两者的扩展机制共享大量的特征。在用户自定义工具的高 级应用中有两个例子,很好地展示了用户自定义扩展的能力,可以生成并执行自定义命令语言,并使用外部图标文 件。 要最有效地使用该机制,我们鼓励菜单开发者使用 Python 脚本,并且使用内置工具将命令语言脚本转换为 Python。 Python 接口在接口手册 Python EnSight module interface 中有详细介绍。 另请参见 EnSight 界面手册 Mouse and Keyboard Preferences Produce Customized Access to Tools & Features Page 423 操作指南:自定义工具 & 特征 自定义工具 & 特征 简介 EnSight 允许用户自定义工具选项。通过 " 用户工具 " 图标来访问工具箱,这些选项是执行常规操作的 Python 代码的 集合。这些工具可以包括完整的 GUI 接口,并可与 EnSight 的核心功能实现交互。该机制使得 EnSight 能够满足特定 的用户需求。 工具均被写为 Python 对象,在 EnSight 启动时动态地载入这些工具。用户可通过 EnSight extension mechanism 添加自定义的工具。 基本操作 默认情况下, " 用户工具 " 图标已显示于界面上。若未显示,可在图标栏上点击右键,选择 " 自定义功能图标栏 ..." 来 使其得以显示。点击图标以打开对话框,在对话框的各种工具上双击即可访问用户自定义工具。 1、点击 " 用户工具 " 图标 2、打开用户自定义工具窗口 EnSight 快速工具集合了各种常规操作,这些操作一般需 要执行很多步骤才能完成,通过这种简单的程序包方式, 实现一步完成。 程序包包括: a)查找所选部件当前着色变量的最小 / 最大值 b)计算压力、合力和力矩,以及查找压力中心。 c)使用 python 计算器 d)重新采样瞬态数据以使时间步均匀 e)查看 EnSight 简易图形用户界面 d)将数据输出为 OpenJT 格式 f)导入 CSV 文本文件以创建 EnSight 查询。 g)点击展示工具,以快速创建各种输出并启动 CEI 后处理 工具。 h)提交 bug 或需求至 CEI,并浏览 FAQ i)学习如何使用 Python 编写符合自己习惯的 GUI j)导入图片或动画作为注释。 k)修改 Case Gold 文件使其包含刚体运动 l) 在数据外围空间生成天空盒纹理。 Page 424 操作指南:自定义工具 & 特征 高级应用 这部分内容描述了如何创建用户自定义工具,正如接口手册中所讲的 EnSight extension mechanism。这里假设您 在 Python 语言以及面向对象程序设计方面有一定的基础。自定义工具拥有与内置工具相同的功能,因为两者都基于 同一接口创建。默认情况下,自定义工具将出现在用户自定义工具箱中 EnSight 各内置工具列表的最下方。 EnSight 自带两个 Python 文件例子,很好地展示了创建自定义工具的过程。下面我们以此为例来学习如何自定义 EnSight 工具。将这两个文件从它们现存位置移至启动 EnSight 时自动加载的目录中。 EnSight 如何加载菜单 系统目录 --CEI 安装工具 EnSight scans for Python tools in the EnSight 在 $CEI_HOME/ensight100/site_preferences/extensions/user_defined 目录下扫描 Python 工具。 Note that because EnSight caches the files in this directory in order to speed up the start up process, new tools put in this directory may not be recognized and loaded when you restart EnSight. In that situation, simply restart EnSight from the command line with no preferences and it will reload and recache the python files from this directory. ensight100 -no_prefs $CEI_HOME—— 所有用户的 Python 文件 EnSight 扫描 $CEI_HOME 目录,以查找含有名为 product.xml 文件的子目录,根据 product.xml 和内部关联编码加载 Python 文件至该目录。联系 CEI 技术支持以获取更多详细信息。 本地目录 —— 个人用户的 Python 文件 EnSight 查找用户指定的 EnSight 默认目录。对于不同的操作系统,该目录不同: Linux: ~/.ensight100/extensions/user_defined/Tools Mac: ~/Library/Application Support/EnSight100/extensions/user_defined/Tools Windows Vista, Windows 7: C:\Users\username\.ensight100\extensions\user_defined\Tools Windows XP: %HOMEDRIVE%%HOMEPATH%\(username)\.ensight100\extensions\user_defined\Tools 要找出 %HOMEDRIVE%%HOMEPATH%,点击主菜单下的帮助 >CEI 技术支持,点击 " 系统信息 ",找到 Prefs Dir, EnSight 即在此目录中查找用户自定义工具。 当 EnSight 找到要执行的 Python 文件时,会将其载入到专有 Python 模块,并调用该文件中指定的构造函数,构造函 数返回已在 EnSight 中注册了的对象列表,该对象可以是用户自定义工具、菜单和 GUI,这取决于扩展类中的子类。 用户自定义工具的注册表由 EnSight 维护,通常显示为树形列表。应用程序可自行使用自身的运行方法调用工具,而 执行自定义命令的工具需直接从命令分解器调用,即使在批处理模式下。 在接下来的两小节,我们通过两个简单的自定义 EnSight 用户工具的例子来加深理解。 Page 425 操作指南:自定义工具 & 特征 "Hello world" 工具 下面显示的或许是实现工具扩展的最简单的例子。该示例 Python 文件已包含在 EnSight 的安装文件中,储存于 $CEI_HOME/ensight100/src/user_defined_ext/examples 中。将整个文件夹拷贝至用户指定的 EnSight 默 认子文件目录 extensions/user_defined 下,重新启动 EnSight。下图中展示了该 Python 代码生成的新工具选 项。 下文展示的是带注释的 Python 代码。注意到注释行以 #ENSIGHT_USER_DEFINED_BEGIN 开头,以 #ENSIGHT_USER_DEFINED_END 结尾。这些特殊格式的 Python 注释即扫描扩展时所查找的内容。它们指定了文件载 入时调用的函数名。构造函数负责创建工具对象,并将它们返回至 EnSight。 # # This comment block is required to identify the file for loading at # startup by EnSight. The function named by FACTORY= (in this case # 'ctor' is called by EnSight on startup. Note: the file is loaded # as a module in EnSight and the path to this file is added to sys.path. # #ENSIGHT_USER_DEFINED_BEGIN #FACTORY=ctor #ENSIGHT_USER_DEFINED_END # # Import the parent class for all user-defined tools and the generic dialog # from cei.qtgenericdlg import * from ensight.core.tool_extension import tool_extension # # Define a tool class, a subclass of the tool_extension class # class hello_tool(tool_extension): # # Construct the menu and set up common information # def __init__(self,parent=None): tool_extension.__init__(self,"hello_tool",__file__,1.0) self.setText("Hello world tool") self.setDesc("Say hello to the world from a tool") self.setTooltip("Say hello to the world from a tool") if (parent): parent.addChild(self) # # We have a PNG icon in the same directory as this file Page 426 操作指南:自定义工具 & 特征 # dir = os.path.dirname(__file__) self.setIcon(os.path.join(dir,"hello_world.png")) # # Method that is called when the tool is selected # def run(self): # # Do whatever operation this menu should do, replace with your own code # In the example, we use the "generic" dialog to display "Hello world!" # items = [] items.append(['textval',ITEM_TEXT,"Hello world!","A tooltip..."]) dlg = CeiQtGenericDialog(items,None,"Hello world","Ok",cancel=None) ret = dlg.doit() if (ret > 0): # # If the user pressed ok, do something... # pass # # Construct a list of menu objects to be added to the global list of # user-defined tools # def ctor(parent): list = [] obj = hello_tool() list.append(obj) return list Page 427 操作指南:自定义工具 & 特征 自定义命令语言的批处理工具 下图展示的是一个较复杂工具的示例。同样,可使用与上文所描述的相同方式启动,结果工具如下图所示。 这个例子基于上一例子创建。调用工具时,打开一个对话框,提示用户输入整数参数和文件名。点击 " 确定 " 将创建 当前视图的快照,并存盘。更重要的是,这将生成自定义命令语言 (显示于命令对话窗口中),所有的用户自定义扩 展 (工具、菜单、 GUI)均以这种方式进行。超级类提供了一个框架,可以很容易地实现界面与功能间的分离,例 如:在工具的 Python 文件中添加 menu_extension 子类,可提供与用户自定义菜单相同功能的界面。这个例子使用 了 EnSight 内置图标资源中的图标。最终,这个例子是 " 持续的 ",它存储了状态 (即对话框中的输入值),并且可 使用该状态来重新填充对话框。 EnSight 扩展的一个主要优势是可以存储状态,并且兼具私有数据和成员方法。 基本的文件结构与上述相同。有一个标题块,下面是各种类定义,接着是构造函数。 # # This comment block is required to identify the file for loading at # startup by EnSight. The function named by FACTORY= (in this case # 'ctor' is called by EnSight on startup. Note: the file is loaded # as a module in EnSight and the path to this file is added to sys.path. # #ENSIGHT_USER_DEFINED_BEGIN #FACTORY=ctor #ENSIGHT_USER_DEFINED_END # # # Import the parent class for all user-defined tools, the ensight module # and the generic dialog # from cei.qtgenericdlg import * from ensight.core.tool_extension import * import ensight # # Define a tool class, a subclass of the tool_extension class # class snapshot_tool(tool_extension): # # Construct the tool and set up common information # def __init__(self,parent=None): tool_extension.__init__(self,"snapshot",__file__,1.0) self.setText("Snapshot the current image") self.setDesc("Save the current image to a disk file") self.setTooltip("Save the current image to a disk file") Page 428 操作指南:自定义工具 & 特征 if (parent): parent.addChild(obj) # # Create an icon for the menu (this is optional). In this case, we # access one of the icons embedded in EnSight itself. See the Qt # resource management documentation for details. # self.setIcon(":/ensight/image") # # This is where we store the current command language parameters # We start with some defaults... # self._params = {'file':'untitled.png','xsize':640,'ysize':480} # # A user-defined method that performs the desired operation taking its # parameters from a Python dictionary. This method can be called from # interactive operation or in batch, so it should not display anything. # def compute(self,params): # # Render and save an image to disk. This is only an example. # A deeper example can be found in the ensight.core.qtimageutils # module found in: # $CEI_HOME/ensight92/site_preferences/extensions/core/qtimageutils.py # img = ensight.render(x=params['xsize'],y=params['ysize']) fname = params['file'] # # The render method returns an EnVe image object, simplifying saving. # if (img.save(fname) == 0): return True if (img.errstr().find("Unknown file format") >= 0): fname += ".png" if (img.save(fname) == 0): return True return False # # Method that is called when the tool is selected interactively # def run(self): # # Do whatever operation this tool should do, replace with your own code # In the example, we use the "generic" dialog to prompt the user for # and image size and a filename. # items = [] items.append(['file',ITEM_FILE,"Filename", "Name of file to save",self._params['file'],OPT_FILE_SAVE]) items.append(['xsize',ITEM_INT,"Width", "Width of the image in pixels",self._params['xsize'],10,2048]) items.append(['ysize',ITEM_INT,"Height", "Height of the image in pixels",self._params['ysize'],10,1536]) dlg = CeiQtGenericDialog(items,None,"Save a snapshot") ret = dlg.doit() # # If the user pressed ok, we will continue. # if (ret > 0): # # Build a dictionary of output values Page 429 操作指南:自定义工具 & 特征 # for key in self._params: self._params[key] = dlg.getValue(key) # # Try to perform the operation # if (self.compute(self._params)): # # The operation succeeded, so we need to record custom # command language to place the operation into the journaled # output. # self.cmdRecord("xsize '%d'" % self._params['xsize']) self.cmdRecord("ysize '%d'" % self._params['ysize']) self.cmdRecord("file '\""+self._params['file']+"\"'") self.cmdRecord("compute") # # All extensions include the ability to record custom command language # and play it back. Remember that extensions should be able to play # back their operations in batch mode. This mechanism allows for an # extension developer to break GUI interaction and the actual operation # into two parts. # # The cmdExec() method is passed all of the custom command language for # this tool. Here we use a trick where we assume that the recorded # command language takes the form of actual Python assignment statements. # We break up the passed line and use the Python 'exec()' method to # recover the information back into a dictionary. # def cmdExec(self,str): p = str.split("'") try: key = p[0].strip() if (key == 'compute'): self.compute(self._params) else: exec("d = "+p[1]) self._params[key] = d except Exception, e: print "Error handling the command:",str,e # # Construct a list of tool objects to be added to the global list of # user-defined tools # def ctor(parent): list = [] obj = snapshot_tool() list.append(obj) return list Page 430 操作指南:自定义工具 & 特征 其他例子 例子中的源代码均显示在 $CEI_HOME/ensight100/src/user_defined_ext/examples 目录下。所有内置工 具的源代码均在 $CEI_HOME/ensight100/site_preferences/extensions/user_defined 目录下 (大部分 位于 QuickTools 子目录)。其他例子存在于 $CEI_HOME/ensight100/site_preferences/extensions/ user_defined/Tools/QuickTools/Examples 中。然而这些也未必都是工具,也包含许多用户自定义菜单的例 子。工具和菜单的扩展机制共享大量的常用特征。在用户自定义工具的高级应用中有两个例子,很好地展示了用户自 定义扩展的能力,可以创建对象层次结构,还可以在一个 Python 模块中包含多个对象。 要最有效地使用该机制,鼓励菜单开发者使用 Python 脚本,并且使用内置工具将命令语言脚本转换为 Python。 Python 接口在接口手册 Python EnSight module interface 中有详细介绍。 另请参见 命令语言手册 EnSight 界面手册 自定义弹出式菜单 Page 431 HOW TO SETUP FOR PARALLEL COMPUTATION Setup For Parallel Computation INTRODUCTION Ensight supports shared-memory parallel computation via POSIX threads on all of our supported platforms. BASIC OPERATION Configuration Each executable of EnSight can be configured individually to control the number of threads used. The following environment variables are used to specify the maximum number of threads that the executable can use for computation. ENSIGHT10_MAX_THREADS The maximum number of threads to use for each EnSight server. Threads are used to accelerate the computation of streamlines, clips, isosurfaces, and other compute-intensive operations. ENSIGHT10_MAX_CTHREADS The maximum number of threads to use for each EnSight client. Threads in the client are used to accelerate sorting of transparent surfaces. ENSIGHT10_MAX_SOSTHREADS The maximum number of threads to use on the server of server in order to start up server processes in parallel rather than serially. OTHER NOTES The number of threads is limited to 2 (per client or server) with a Lite license and 4 (per client or server) with a Standard license, while the upper limit for a Gold license is 128. EnSight, by default, uses threading according to the license and the number of processors available and will echo this information out to the console at startup. .... Detected 2 CPU(s) ensight100.client using 2 threads. .... Detected 2 CPU(s) ensight100.server using 2 threads. When manually setting these parameters it is a good idea to take into account the number of processors on the system. In general, you will not see benefit from setting the parameters higher than the number of total processors. Because the server, server-of-servers and client operate in a pipelined fashion, it is not necessary to limit one in order to apply more threads to another. Compute intensive server operations that make use of shared memory parallel computations include isosurface, clipping, and particle trace computations. Client threaded operations include transparency resort and display list creation. Page 432 操作指南:并行渲染设置 并行渲染设置 简介 为提升性能、提高显示分辨率、以及分屏显示, EnSight Gold 支持常规的并行渲染。其配置文件格式以及相关例子均 在用户手册中有介绍,点击下面的链接来查看这些信息。 另请参见 用户手册: Parallel and Distributed Rendering Page 433 操作指南:选择文件 选择文件 简介 EnSight 中的许多操作 (如加载数据)均需要指定文件。 EnSight 使用标准的 " 文件打开 " 对话框,使用户能够通过 搜索目录快速定位所需文件。 基本操作 默认情况下, " 文件打开 " 对话框直接打开 EnSight 客户端的当前工作目录。 下图展示了 " 文件打开 " 对话框的基本组成部分: 查找范围下拉菜单显示的是当前目录。 注:当前目录的父级目录以 "…" 显示 (标准的 UNIX 格式) 双击该父级目录将更改目录。 也可使用标准的 向上图标。 文件类型下拉菜单控制显示何种 文件列表。可在这里筛选文件。 文件列表显示了子目录和当前目 录下的文件清单 (可通过文件类 型通配符来筛选)。 单击文件,选中该文件。 双击文件,打开该文件,并关闭 对话框。 文件输入框中包含了当前选中文 件的全路径名。点击确定时,将 打开该文件。 既可在文件列表中点击另一文件, 也可在文件输入框内直接编辑文 件路径来更改选择。 敲击回车键,将会打开所选文件, 并关闭对话框。 点此,打开当前所选文件,并关 闭对话框。 点此,取消选择,并关闭对话框。 Page 434 QUICK ICON REFERENCE sFeature Icon Tools Icon Bar Part Quick Action Annotate Legend Quick Action Annotate Dial/Gauge Quick Action Annotate Line Quick Action Annotate Logo Quick Action Annotate Shape Quick Action Annotate Arrow Quick Action Plotters Quick Action Query (curve) Quick Action Page 435 QUICK ICON REFERENCE Viewport Quick Action Frames Quick Action Page 436
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.4 Linearized : No Tagged PDF : Yes XMP Toolkit : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:08:04 Format : application/pdf Title : HowTo.book Creator : Administrator Create Date : 2012:08:08 10:40:03Z Creator Tool : FrameMaker 10.0 Modify Date : 2012:08:08 11:01:08+08:00 Metadata Date : 2012:08:08 11:01:08+08:00 Producer : Acrobat Distiller 9.5.1 (Windows) Document ID : uuid:9227f061-8374-418f-8a50-5c3a24002384 Instance ID : uuid:b65aa6b8-efd2-40e5-8302-84f379f7ec3c Page Mode : UseOutlines Page Count : 436 Author : AdministratorEXIF Metadata provided by EXIF.tools