我正在使用Python-fu的gimp.pdb.gimp_paintbrush_default(层,2,10,10,20,20),但无论我告诉它绘制多少笔划,它都只绘制第一个(x,y) (在本例中为(10,10))。它期望的是不同的格式吗?该函数的文档不是针对Python插件的,只是说明第三个参数需要一个FLOATARRAY类型的变量。我假设Python版本在这里使用了一个列表,但它似乎不会在前两个值之后预测任何值。如何让它绘制多个控制点?
发布于 2012-03-08 00:16:38
您传递的第二个参数-在本例中为"2“-在以下参数中指示GIMP列表的长度-尽管在Python中编码时,我们使用被调用函数在查找列表长度方面没有问题,但GIMP Python脚本中的这些调用是与其他几种语言的GIMP API的1:1映射,并且是用C编写的。
在C中,没有办法知道传递的数组的长度,除非它是显式传递的,所以需要这个参数。
试着这样做:
points = [10,10, 20,20]
pdb.gimp_paintbrush_default(layer, len(points), points)https://stackoverflow.com/questions/9603887
复制相似问题