Open CASCADE学习|Draw Harness

目录

显示长方体

提供帮助信息

执行文件

记录交互式命令

使用getsourcefile可以快速查找到Tcl命令对应的C++源文件

在Tcl中内置了一些变量,并赋予了一定的功能。内置变量列表如下:

退出

加载插件

在屏幕显示变量

返回绘图变量信息

视图

[mu, md, 2dmu, 2dmd, zoom, 2dzoom](#mu, md, 2dmu, 2dmd, zoom, 2dzoom)

[fit, 2dfit](#fit, 2dfit)

[u, d, l, r](#u, d, l, r)

平移

[pu, pd, pl, pr, 2dpu, 2dpd, 2dpl, 2dpr](#pu, pd, pl, pr, 2dpu, 2dpd, 2dpl, 2dpr)


Draw Harness是一个Open CASCADE的Tcl(Tool Command Language)解释器。作为OCCT的一个组成部分,Draw Harness为OCCT算法评估、测试和自动化提供了一个开箱即用的工具,其中包括建模、数据交换和可视化等功能。

Tcl/Tk是一种用于易于使用的脚本语言,可以用来对程序进行扩展及完成一些自动化的工作,加上内置的一些命令,其功能要比Windows中的DOS的批处理命令功能更强大,使用更方便。Tcl脚本语言是开源免费的,可以方便获取且免费使用。

OpenCASCADE 中使用了Tcl/Tk来实现了一个自动化测试体系。使用在OpenCASCADE中使用自定义的Tcl命令,可以快速来检验算法的结果。通过编写脚本文 件,实现了测试的自动化。所以学习一下Tcl/Tk脚本语言,并在实际的工作中加以应用,可以将一些机械的劳动交给计算机自动完成。

Draw Harness中提供的命令基本包含了OCCT中所有的功能:

  • 执行OCCT中的造型功能;

  • 执行OCCT中的数据交换功能;

  • 显示和三维交互功能;

  • 学习、评估及原型算法验证;

  • 为OCCT提供自动化测试功能;

  • 也可以扩展Draw Harness,增加自定义命令;

  • 因为Draw Harness是基于Tcl脚本语言开发的,所以可以运行在支持Tcl的平台上,如Windows,macOS, Linux,甚至是浏览器上。

显示长方体

box b 1 2 3

vdisplay b

提供帮助信息

help [command [helpstring group]]

执行文件

source filename

记录交互式命令

spy [filename]

使用getsourcefile可以快速查找到Tcl命令对应的C++源文件

getsourcefile box

在Tcl中内置了一些变量,并赋予了一定的功能。内置变量列表如下:

|------------------|------------------------------------------------------|
| 变量名称 | 功能描述 |
| argc | 指命令行参数的个数。 |
| argv | 指包含命令行参数的列表。 |
| argv0 | 是指被解释的文件或由调用脚本的名称的文件名。 |
| env | 用于表示是环境变量数组元素。 |
| errorCode | 为最后的Tcl错误的错误代码。 |
| errorInfo | 为最后Tcl错误的堆栈跟踪信息。 |
| tcl_interactive | 分别将其设置为1和0交互和非交互模式之间切换。 |
| tcl_library | 用于设置的标准Tcl库的位置。 |
| tcl_pkgPath | 提供一般都安装包的目录列表。 |
| tcl_patchLevel | 指的是Tcl解释目前的补丁级别。 |
| tcl_platform | 用于表示使用对象,包括byteOrder, machine, osVersion平台和操作系统数组元素。 |
| tcl_precision | 指的是精度,即位数转换为浮点数时,字符串保留。默认值是12。 |
| tcl_prompt1 | 指的是主提示符。 |
| tcl_prompt2 | 指无效的命令二次提示。 |
| tcl_rcFileName | 为用户提供了具体的启动文件。 |
| tcl_traceCompile | 用于控制字节码编译的跟踪。用0表示无输出,1为概要和2为详细。 |
| tcl_traceExec | 用于控制执行的字节码的跟踪。用0表示无输出,1为概要和2为详细。 |
| tcl_version | 返回Tcl解释器的最新版本。 |

退出

exit

加载插件

pload -DrawPlugin OCAF

设置变量

set file documentation

在屏幕显示变量

puts $file

返回绘图变量信息

circle c 0 0 1 0 5

whatis c

c is a 2d curve

dump c

***** Dump of c *****

Circle

Center :0, 0

XAxis :1, 0

YAxis :-0, 1

Radius :5

视图

axo, pers, top, bottom, left, right, front, back, mu4, v2d, av2d, smallview

•axo创建一个大窗口轴测视图;

•pers创建了一个大窗口透视图;

•上、下、左、右、前、后创建一个大的窗口轴视图;

•mu4创建四个小窗口视图:前视图、左视图、顶部视图和axo视图。

•v2d创建一个大窗口2d视图。

•av2d创建两个小窗口视图,一个是2d,另一个是axo

•smallview在给定类型的屏幕右下角创建一个视图。

mu, md, 2dmu, 2dmd, zoom, 2dzoom

•mμ(放大)将一个或多个视图的缩放比例提高10%。

•md(向下放大)按反因子减小缩放。2dmu和2dmd在一个或所有2d视图上执行相同的操作。

•缩放和2dzoom将缩放因子设置为您指定的值。当前缩放因子始终显示在窗口的标题栏中。Zoom 20表示大窗口中的全屏视图;缩放10,小屏幕中的全屏视图。

•wzoom(窗口缩放)允许您用鼠标选择要放大的区域。系统将提示您给出要放大的区域的两个角,这样定义的矩形将占据视图的窗口。

fit, 2dfit

fit计算视图内容的最佳缩放和平移。视图的内容将居中并适合整个窗口。拟合所有视图时,将为所有视图计算唯一的缩放。所有视图都在同一比例上。

u, d, l, r

u、 d,l,r将视图中的对象绕其轴分别向上、向下、向左或向右旋转五度。此命令仅限于轴测视图和透视视图。

平移

pu, pd, pl, pr, 2dpu, 2dpd, 2dpl, 2dpr

pu和pd分别上下摆动;pl和pr分别向左和向右平移。每次视图偏移40个像素时。如果未给定索引,则所有视图都将沿指定的方向平移。

相关推荐
潮汐退涨月冷风霜1 小时前
机器学习之非监督学习(四)K-means 聚类算法
学习·算法·机器学习
GoppViper1 小时前
golang学习笔记29——golang 中如何将 GitHub 最新提交的版本设置为 v1.0.0
笔记·git·后端·学习·golang·github·源代码管理
羊小猪~~1 小时前
深度学习基础案例5--VGG16人脸识别(体验学习的痛苦与乐趣)
人工智能·python·深度学习·学习·算法·机器学习·cnn
Charles Ray2 小时前
C++学习笔记 —— 内存分配 new
c++·笔记·学习
我要吐泡泡了哦3 小时前
GAMES104:15 游戏引擎的玩法系统基础-学习笔记
笔记·学习·游戏引擎
骑鱼过海的猫1233 小时前
【tomcat】tomcat学习笔记
笔记·学习·tomcat
贾saisai5 小时前
Xilinx系FPGA学习笔记(九)DDR3学习
笔记·学习·fpga开发
北岛寒沫5 小时前
JavaScript(JS)学习笔记 1(简单介绍 注释和输入输出语句 变量 数据类型 运算符 流程控制 数组)
javascript·笔记·学习
铁匠匠匠7 小时前
从零开始学数据结构系列之第六章《排序简介》
c语言·数据结构·经验分享·笔记·学习·开源·课程设计
架构文摘JGWZ8 小时前
Java 23 的12 个新特性!!
java·开发语言·学习