2012-03-07 49 views
1

我正在使用Python-fu的gimp.pdb.gimp_paintbrush_default(layer,2,[10,10,20,20]),但無論我告訴它繪製多少筆畫,它只繪製第一個(x ,y)(在這種情況下,(10,10))。它是否期待不同的格式?該函數的文檔不是針對Python插件的,只是說第三個參數需要一個FLOATARRAY類型的變量。我假設Python版本在這裏使用了一個列表,但它似乎沒有在前兩個值之後看到任何值。我怎樣才能讓它繪製多個控制點?你如何用Python-fu在Gimp中描繪一箇中風?

回答

1

你傳遞的第二個參數 - 在這種情況下,「2」表示到GIMP在下面的參數列表的長度 - 雖然,在Python編碼時,我們所使用的所謂的功能沒有問題,找到了GIMP Python腳本中的這些調用與其他幾種語言的GIMP API是1:1映射,並且用C編寫。

在C中,沒有辦法讓人們知道一個列表的長度數組傳遞,除非它被明確地傳遞,所以需要這個參數。

嘗試這樣做,而不是:

points = [10,10, 20,20] 
pdb.gimp_paintbrush_default(layer, len(points), points) 
+0

嗯,有道理......好!它完美的作品。謝謝=) – derefed 2012-03-07 18:27:58

相關問題