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

标题: 【已解决】求教一个关于python树形数据的问题 [打印本页]

作者: a80983672    时间: 2016-8-3 15:17
标题: 【已解决】求教一个关于python树形数据的问题
本帖最后由 筑梦NARUTO 于 2016-8-4 16:27 编辑

请问这这种问题怎解决

QQ截图20160803151659.jpg (179.83 KB, 下载次数: 29)

QQ截图20160803151659.jpg

作者: 筑梦NARUTO    时间: 2016-8-3 17:12
上传代码,你这个创建树形数据的时候,类型是设置的Polylinecurve,而你穿进去的参数类型是guid,所以需要转换一下,用rs.coercecurve()系列函数转换一下类型
作者: a80983672    时间: 2016-8-3 17:25
from ghpythonlib.components import EdgeSurface
from Grasshopper import DataTree
from Rhino.Geometry import PolylineCurve
from Grasshopper.Kernel.Data import GH_Path
import rhinoscriptsyntax as rs
n=len(x)
b=y
i=0
L1=DataTree[PolylineCurve]();L2=DataTree[PolylineCurve]()
LS1=[];LS2=[]
for i in rs.frange(0,n-1,1):
    ls1=rs.OffsetCurve(x[i],[0,0,0],b)
    ls2=rs.OffsetCurve(x[i],[0,0,0],-b)
    LS1.append(ls1[0])
    LS2.append(ls2[0])
L1.AddRange(LS1,GH_Path(0))
L2.AddRange(LS2,GH_Path(0))
作者: a80983672    时间: 2016-8-3 17:27
本帖最后由 a80983672 于 2016-8-3 17:28 编辑
  1. from ghpythonlib.components import EdgeSurface
  2. from Grasshopper import DataTree
  3. from Rhino.Geometry import PolylineCurve
  4. from Grasshopper.Kernel.Data import GH_Path
  5. import rhinoscriptsyntax as rs
  6. n=len(x)
  7. b=y
  8. i=0
  9. L1=DataTree[PolylineCurve]();L2=DataTree[PolylineCurve]()
  10. LS1=[];LS2=[]
  11. for i in rs.frange(0,n-1,1):
  12.     ls1=rs.OffsetCurve(x[i],[0,0,0],b)
  13.     ls2=rs.OffsetCurve(x[i],[0,0,0],-b)
  14.     LS1.append(ls1[0])
  15.     LS2.append(ls2[0])
  16. L1.AddRange(LS1,GH_Path(0))
  17. L2.AddRange(LS2,GH_Path(0))
复制代码



作者: 筑梦NARUTO    时间: 2016-8-3 19:21
a80983672 发表于 2016-8-3 17:27

上传gh文件呀,那个x是啥?我不知道我也不好测试呀。
作者: a80983672    时间: 2016-8-3 23:02
筑梦NARUTO 发表于 2016-8-3 19:21
上传gh文件呀,那个x是啥?我不知道我也不好测试呀。

x就是几条pline线
作者: a80983672    时间: 2016-8-4 09:54
1111111

upload.zip

132.47 KB, 下载次数: 70


作者: 筑梦NARUTO    时间: 2016-8-4 10:53
a80983672 发表于 2016-8-4 09:54
1111111

用了两种方法,你打开文件看看吧,还有尽量不要调用gh的电池做,容易出现bug

QQ截图20160804105948.png (70.62 KB, 下载次数: 30)

QQ截图20160804105948.png

upload.zip

9.92 KB, 下载次数: 83


作者: a80983672    时间: 2016-8-4 11:56
筑梦NARUTO 发表于 2016-8-4 10:53
用了两种方法,你打开文件看看吧,还有尽量不要调用gh的电池做,容易出现bug

多谢解答




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