Rhino3D犀牛中文网

标题: 请问,在Python如何调用rs.command [打印本页]

作者: 稻草人    时间: 2018-3-16 13:48
标题: 请问,在Python如何调用rs.command
本帖最后由 稻草人 于 2018-3-16 14:49 编辑

上次在论坛里得版主解决单线字体的问题受到的启发,所以最近也在学弄脚本。
但是有一个问题一直困扰我,想很久都没弄明白,在python脚本里调用rs.command,是如何选取之前定义的变量的。
(, 下载次数: 148)
比如图片里,我定义obj,如何在rs.command里调用_move时,把定义成选取已选取的物件。
我知道脚本里可以用rs.moveobject来实现,图片里的脚本只是举例,因为我一直没想明白这个问题,所以随便弄得一个例子。另外,如果我在以前代码中指定点搬移的起始点坐标,又如何在rs.command("_move")里实现。




作者: Jorin    时间: 2018-3-16 22:19
按照问题的描述,下面这样写就能达到你的要求(选取物件后将物件向X方向移动一个单位。):
[Python] 纯文本查看 复制代码
import rhinoscriptsyntax as rs
obj=rs.GetObject()
print obj
if obj:
    rs.Command('-_selid %s _move 0,0,0 1,0,0'%obj)


但实际上这样的脚本是没有任何意义的,都已经要用脚本来解决问题了,最好调用现成的函数来实现,调用 rs.Command 是下下策,不到万不得已,最好不要用直接调用 Rhino 的指令。

作者: 稻草人    时间: 2018-3-17 01:33
Jorin 发表于 2018-3-16 22:19
按照问题的描述,下面这样写就能达到你的要求(选取物件后将物件向X方向移动一个单位。):
[mw_shl_code=p ...

非常感谢,其实我只是好奇,因为上次版主给我写的代码是调用rs.command,所以一直好奇调用的原理。另外,有一些指令好像在函数里没有,譬如_OrientOnSrf。
一直云里雾里,这下总算明白一些了。




欢迎光临 Rhino3D犀牛中文网 (https://www.rhino3d.asia/) Powered by Discuz! X3.3