NCF参数化建筑论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 22548|回复: 10
打印 上一主题 下一主题

[在线求助] 【求助】刚刚开始学习GHPython,一事研究良久不得解,跪求高人指点。

[复制链接]
跳转到指定楼层
1m
发表于 2016-3-13 06:20:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
是Guid 和 Curve之间转换的问题,我去查了很多资料也大概对这俩东西有啥区别稍微有了点概念,但是还是有点点困惑。比如遇到下面这个问题:
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享分享
2m
发表于 2016-3-13 08:39:35 | 只看该作者
默认的就是guid,你那里出错是因为转换出错了。返回的是一个null,所以显示没有PointAt()方法

评分

参与人数 1强度 +3 收起 理由
skywoolf + 3

查看全部评分

3m
发表于 2016-3-13 08:44:43 | 只看该作者
还有你写代码逻辑有点混乱(你参数都带入函数了,咋还使用了全局变量)。还有不要用中文啊、、、、
4m
 楼主| 发表于 2016-3-13 08:51:18 | 只看该作者

哦哦。。。不好意思不好意思,我太小白,刚刚开始,这个算是自己瞎摸索出来的,见笑啦。。。请问我这个怎么转换才能正确的把这个guid转换成curve呢?

点评

转换函数就是你写的那个,或者sc.doc.Objects.Find()  详情 回复 发表于 2016-3-13 09:09
5m
发表于 2016-3-13 09:09:40 | 只看该作者
jlmaoju 发表于 2016-3-13 08:51
哦哦。。。不好意思不好意思,我太小白,刚刚开始,这个算是自己瞎摸索出来的,见笑啦。。。请问我这个怎 ...

转换函数就是你写的那个,或者sc.doc.Objects.Find()
6m
 楼主| 发表于 2016-3-13 09:11:35 | 只看该作者
月之眼 发表于 2016-3-13 08:39
默认的就是guid,你那里出错是因为转换出错了。返回的是一个null,所以显示没有PointAt()方法

因为如果直接用输入进去的那个来切的话,是这样报错:

Runtime error (TypeErrorException): Parameter must be a Guid or string representing a Guid
Traceback:
  line 495, in coerceguid, "C:\Users\Belmondo\AppData\Roaming\McNeel\Rhinoceros\5.0\Plug-ins\IronPython (814d908a-e25c-493d-97e9-ee3861957f49)\settings\lib\rhinoscript\utility.py"
  line 2439, in SplitCurve, "C:\Users\Belmondo\AppData\Roaming\McNeel\Rhinoceros\5.0\Plug-ins\IronPython (814d908a-e25c-493d-97e9-ee3861957f49)\settings\lib\rhinoscript\curve.py"

点评

Parameter must be a Guid or string representing a Guid,这句话就说了,参数必须是guid或者string  详情 回复 发表于 2016-3-13 09:18
转换方法这两个都行  详情 回复 发表于 2016-3-13 09:17
7m
发表于 2016-3-13 09:17:54 | 只看该作者
jlmaoju 发表于 2016-3-13 09:11
因为如果直接用输入进去的那个来切的话,是这样报错:

Runtime error (TypeErrorException): Paramete ...

转换方法这两个都行

a.gh

3.98 KB, 下载次数: 10, 下载积分: 照度 -1 lux

8m
发表于 2016-3-13 09:18:49 | 只看该作者
jlmaoju 发表于 2016-3-13 09:11
因为如果直接用输入进去的那个来切的话,是这样报错:

Runtime error (TypeErrorException): Paramete ...

Parameter must be a Guid or string representing a Guid,这句话就说了,参数必须是guid或者string
9m
 楼主| 发表于 2016-3-13 10:17:30 | 只看该作者
月之眼 发表于 2016-3-13 09:18
Parameter must be a Guid or string representing a Guid,这句话就说了,参数必须是guid或者string

哎呀妈呀!太感谢了,竟然提供了例子!  我拿回去好好学习一下~(其实我查了好多帖子都是看你的回复学到很多东西。。。没想到一来问问题就得到了你的回答~ 膜拜一下~)

点评

相互学习而已  详情 回复 发表于 2016-3-13 10:29
10m
发表于 2016-3-13 10:29:59 | 只看该作者
jlmaoju 发表于 2016-3-13 10:17
哎呀妈呀!太感谢了,竟然提供了例子!  我拿回去好好学习一下~(其实我查了好多帖子都是看你的回复学到很 ...

相互学习而已
11m
 楼主| 发表于 2016-3-13 10:58:50 | 只看该作者
月之眼 发表于 2016-3-13 10:29
相互学习而已

终于搞懂为什么我那个转换会出错了! 因为rs.SplitCurve ( curve_id, parameter, delete_input=True)
最后是有个删除初始曲线的参数,我没设置默认是True,所以我先切了再转换的时候其实原来那个曲线变量已经是空值了。

多谢多谢!!终于搞懂了!

小黑屋|手机版|NCF参数化建筑论坛 ( 浙ICP备2020044100号-2 )    辽公网安备21021102000973号

GMT+8, 2024-12-18 09:41 , Processed in 0.082371 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表