Open CASCADE学习|Draw Harness

2024-01-08 04:38:18

目录

显示长方体

提供帮助信息

执行文件

记录交互式命令

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

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

退出

加载插件

在屏幕显示变量

返回绘图变量信息

视图

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

fit, 2dfit

u, d, l, r

平移

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个像素时。如果未给定索引,则所有视图都将沿指定的方向平移。

文章来源:https://blog.csdn.net/T20151470/article/details/135446894
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。