我想使用此NURBS-Library。在给定的示例中,控件点是从* txt文件中读取的,但我想从列表中读取它们:
points = [(220, 340), (230, 350), (274.81862312, 374.16747697),
(296.53778748, 432.99598526), (287.34352425, 482.4938853),
(240.25166951, 533.10730113), (167.82511298, 566.76643201),
(105.54327019, 576.83965142), (33.78721601, 565.2008206),
(-4.53463006, 526.7978961), (-28.68208396, 467.04880685), (-30.68208396, 447.04880685)]
curve = ns.Curve()
curve.ctrlpts(points)
这不起作用:“TypeError:'tuple'对象不可调用”
有什么想法吗?根据文档,它应该工作:
ctrlpts:曲线的控制点存储为(x,y)坐标列表
提前致谢。
答案 0 :(得分:0)
从我看到的链接项目的源代码看,curve.ctrlpts
是property,因此
curve.ctrlpts = points
而不是
curve.ctrlpts(points)
应该足够了。
注意:当前代码会发生的情况是您确实尝试将元组用作函数(即调用它)。 curve.ctrlpts
调用属性getter,它将控制点列表作为元组返回。通过写作
curve.ctrlpts(points)
你试图将返回的元组称为函数,因此错误。