我有一个程序可以在不同的预定义几何之间进行插值,并输出一个 CSV 文件,其中包含由 XYZ 列定义的点。例如:
1,5,0.2
3,4,0.2
1,5,0.3
3,4,0.3
我正在尝试将该文件导入 Rhino,并通过 _interpCRV 将具有共同 Z 值的任何点按照导入的顺序连接 最终结果是我将在不同的 Z 值处具有相似的形状(如圆形)。在那之后我将不得不进一步操纵几何,但我很难开始这第一步。提前致谢!
我有一个程序可以在不同的预定义几何之间进行插值,并输出一个 CSV 文件,其中包含由 XYZ 列定义的点。例如:
1,5,0.2
3,4,0.2
1,5,0.3
3,4,0.3
我正在尝试将该文件导入 Rhino,并通过 _interpCRV 将具有共同 Z 值的任何点按照导入的顺序连接 最终结果是我将在不同的 Z 值处具有相似的形状(如圆形)。在那之后我将不得不进一步操纵几何,但我很难开始这第一步。提前致谢!
您可以使用以下命令从 txt 导入点:
def ReadPointsDef(filename):
if not filename: return
#read each line from the file
file = open(filename, "r")
#list of lines
contents = file.readlines()
#contents = [line.rstrip('\n') for line in file]
file.close()
# points=[]
points3d = Rhino.Collections.Point3dList()
for text in contents:
items = text.strip("()\n").split(",")
if len(items)==3:
x = float(items[0])
y = float(items[1])
z = float(items[2])
points3d.Add(x,y,z)
#contents = [__point_from_string(line) for line in contents]
#return points
return points3d
然后在任何你想要的地方使用,比如这个示例:
points = ReadPointsDef("C:/Users/UsuarioStd/Documents/points.txt")
interCurve = rs.AddInterpCurve(points,3,4)
rs.ObjectColor(interCurve, [255,0,0])#rojo
您必须按 Z 分组并使用这些组来构建曲线。您必须提供有关您想要的输出的更多信息,图表会很好。问候