2024年3月15日发(作者:)

RhinoScript入门

RhinoScript 是以VB语法作为语言基础的,任何一个RhinoScript脚本运行在当前的Rhino环境中时都可

以使用Rhino本身的函数和子程序调用,以及某些Rhino环境变量。注意在脚本或者其他插件中,Rhino

的当前环境被称之为“文档(document)”。

RhinoScript实际为文本文档,为了实现各版本之间的兼容性,请使用标准的ASC编码的脚本文件,即使

是注释也不要使用中文。一般的RhinoScript格式后缀为rvb。

一,RhinoScript的载入

在使用RhinoScript前需要将rvb文件载入到文档中。常用的方法如下:

如上图所示,可以使用Tools|RhinoScript|Load,来加载rvb文件。也可以在Rhino命令行中输入“LoadScript”

命令进行载入。

在菜单或者命令操作之后会有如下的对话框出现:

点击ADD按钮可以加入新的RVB文件到列表中。在列表中选择一个文件,点LOAD即可加载。点REMOVE

即可从列表中删除一个文件。

RhinoScript加载规则如下:

如果RVB文件中只包含子程序或者函数的定义,这时候没有“裸语句”, Rhino仅仅检查语法规则,不运

行任何一个子程序或者函数。但RVB文件中还包含“裸语句”,这时Rhino会解吸并运行这个脚本。

二,RhinoScript作为命令运行

在RhinoScript被载入之后,这个RVB文件内部的一些函数或者子程序便可以当作特殊命令被使用,但并

不是RVB文件内的所有函数或者子程序可以被当作特殊命令使用,只有满足如下条件的子程序才可以被

使用。使用条件是:

必须为标准的VB子程序,并且这个子程序不可以带任何参数。

如下一段摘自Rhino4 RhinoScript帮助文档的程序

Sub Test1()

MsgBox "Test1"

End Sub

Sub Test2(strMessage)

MsgBox strMessage

End Sub

Function Test3()

MsgBox strMessage

Test3 = strMessage

End Function

其中只有Test1可以被当作命令使用。Test2带有参数,而Test3是函数,所以他们不能被使用。

使用VB子程序的特殊命令是:-RunScript “子程序名称”,注意前面有减号“-”

如上面的代码运行:

-RunScript Test1

就可以调用Test1()子程序

可以用Tools|RhinoScript|Run菜单命令来管理或者运行RhinoScript命令,也可以用RunScript命令完成同

样的功能。执行菜单命令或者RunScript命令后会出现如下的对话框。

里面有当前所有可用子程序名称。