我正在处理曲线的交叉点。我一开始尝试使用toxiclibs和hemesh库。但是经过很多错误我试着在蚱蜢中使用python编写一个简单的脚本。结果,我注意到数据树存在问题,由于我的编程技巧,我无法在处理中解决或简单解决。
长话短说,我有一系列多边形。当它们相交时,它们的角向下旋转90度。
简单,但在处理中编写脚本非常广泛。现在我在蚱蜢中有相当快的脚本。主要组件计算曲线之间的交叉点,返回数据树中的对角线。当我尝试使用动作和物理时,我看到我需要在处理中实现我的想法。因此,我想在处理中重写脚本......
以下是我正在研究的对角线(紫色) - > diagonal lines
intersection_lines
获取交集对角线的交集函数是用python编写的:
import ghpythonlib.components as ghcomp
import rhinoscriptsyntax as rs
def ctr(crv):
pts = ghcomp.Explode(crv)[1] //polygons are exploded into segmens
pts = ghcomp.CullDuplicates(pts,0.001)[0] //duplicate lines are deleted
return ghcomp.Average(pts)
pts = []
lines = []
ctr_c1 = ctr(C1)
for crv in C2:
if ctr(crv) != ctr_c1:
int = ghcomp.CurveXCurve(C1, crv)[0] //intersection of curves is calculated
if int:
[pts.append(x) for x in int]
lines.append(rs.AddLine(int[0],int[1]))
脚本返回数据树中相交曲线的对角线。通过数据树,我的意思是图片中有15个多边形。并且脚本返回输出,表示第一条曲线有2个对象为线条,第二条曲线有3个对象为线条,第三条曲线有1个对象为线条,依此类推。每个多边形都与交叉对角线相关联。
你能帮我在处理中重写这个python脚本吗?如果没有,也许您在使用任何相关库进行处理时都有类似脚本的参考?
提前谢谢你, 彼得拉什。