Rhino(犀牛)中国技术支持与推广中心

标题: 【已解决】请教各位大神,如何通过rhinoscrip做类似鼠标点选的效果 [打印本页]

作者: kietsuc    时间: 2015-4-19 04:17
标题: 【已解决】请教各位大神,如何通过rhinoscrip做类似鼠标点选的效果
本帖最后由 筑梦NARUTO 于 2015-4-19 12:08 编辑

Dim strObject, strCurve0, strCurve1
strObject = Rhino.GetObject("Select object to flow")
If Not IsNull(strObject) Then
  strCurve0 = Rhino.GetObject("Base curve", 4)
  strCurve1 = Rhino.GetObject("Target curve", 4)
  Rhino.FlowObject strObject, strCurve0, strCurve1
End If


这个帮助文件自带的例子,其中strobject 可以同过script自动选取,但是strcurve0和strcurve1我始终无法做出软件自动拾取的效果。
       我想要的效果是,我只要选取曲面,则软件自动完成流动,不需要再有鼠标选取基准曲线跟目标曲线,其他的过程我都已经通过rhinoscrip实现,就只剩下选取曲线的两个步奏始终都无法绕开鼠标选取,求各位大神指点。

作者: 筑梦NARUTO    时间: 2015-4-19 09:37
本帖最后由 筑梦NARUTO 于 2015-4-19 09:57 编辑

不会rhinoscript,不过你应该可以用        Rhino.ObjectsByType等函数去做,不过不知道你为啥要放弃脚本与用户的交互。

比如可以像这样做就不需要选择线,脚本自动选择两条线:
[mw_shl_code=applescript,true]
Dim strObject, strCurve0, strCurve1,strCurve
strObject = Rhino.GetObjects("Select object to flow")
If Not IsNull(strObject) Then
        strCurve = Rhino.ObjectsByType(4, True)
        strCurve0 = strCurve(1)
        strCurve1 = strCurve(0)
        
        
        'strCurve0 = Rhino.GetObject("Base curve", 4)
        'strCurve1 = Rhino.GetObject("Target curve", 4)
        Rhino.FlowObject strObject, strCurve0, strCurve1
End If[/mw_shl_code]
作者: kietsuc    时间: 2015-4-19 10:12
谢谢筑梦NARUTO大神,我其实对这些不是很知道,其实我是个编程小白,最近自己在研究这些的,希望能通过做一些这方面的东西简建模操作,提高自己的建模速度,真心非常感谢您,谢谢。
作者: 筑梦NARUTO    时间: 2015-4-19 11:02
kietsuc 发表于 2015-4-19 10:12
谢谢筑梦NARUTO大神,我其实对这些不是很知道,其实我是个编程小白,最近自己在研究这些的,希望能通过做一 ...

可以学习下rhinopython,这个是python语言作为基础的脚本,rhinoscript是vb.net语言作为基础的脚本,个人感觉写起来麻烦些,学rhinopython的话,jorin在论坛发布了rhinopython101的视频教程。点这里查看视频,而且还翻译了 Rhino Python Script 官方帮助文件中文译本,点这里查看中文帮助文件链接希望对你有帮助,有啥问题或者作品都可以发到论坛上。
作者: kietsuc    时间: 2015-4-19 11:14
筑梦NARUTO 发表于 2015-4-19 11:02
可以学习下rhinopython,这个是python语言作为基础的脚本,rhinoscript是vb.net语言作为基础的脚本,个人 ...

好的大神,我搞不清楚这两个的区别,当时就是谁便拿起一个来学的,我现在正在看jorin大神的视频教程,谢谢筑梦NARUTO大神
作者: kietsuc    时间: 2015-4-19 11:17
再问一下筑梦NARUTO大神,为什么的在基准线是v方向的,运行代码就会提示strcurve类型不匹配?
作者: 筑梦NARUTO    时间: 2015-4-19 11:30
kietsuc 发表于 2015-4-19 11:17
再问一下筑梦NARUTO大神,为什么的在基准线是v方向的,运行代码就会提示strcurve类型不匹配?

都提示了类型不匹配了啊。。。说明类型错了呗,你最好贴上代码。。。
作者: kietsuc    时间: 2015-4-19 11:42
筑梦NARUTO 发表于 2015-4-19 11:30
都提示了类型不匹配了啊。。。说明类型错了呗,你最好贴上代码。。。

谢谢,谢谢筑梦NARUTO大神的指导,我的问题已经成功解决。谢谢。




欢迎光临 Rhino(犀牛)中国技术支持与推广中心 (http://bbs.rhino3d.asia/) Powered by Discuz! X3.2