function MainScene:ctor()
-- ui.newTTFLabel({text = "Hello, World1", size = 64, align = ui.TEXT_ALIGN_CENTER})
-- :pos(display.cx, display.cy)
-- :addTo(self)
self.canvas = display.newDrawNode():addTo(self)
-- draw a polygon
self.canvas:drawPolygon({{100, 100}, {200, 200}, {150, 200}}, {fillColor = cc.c4f(1, 0, 0, 1), borderColor = cc.c4f(0, 1, 0, 1), borderWidth = 1})
-- draw a circle
display.newCircle(60, {
x=200,
y=200,
color=cc.c4f(1, 0, 0, 1)}):addTo(self)
print(">>>")
-- display.newSolidCircle(radius, params):addTo(self)
self.canvas:drawCircle(60, {
x=500,
y=500}):addTo(self)
self.canvas:drawDot(ccp(500, 100), 20, cc.c4f(0, 1, 1, 1))
end
```
为何不能画实心圆
是哪行报错啊。
display.newCircle(60, {
x=200,
y=200,
fill=true,
color=cc.c4f(1, 0, 0, 1)}):addTo(self)
错误提示说的很清楚了,你试图对一个userdata取length。
在DrawNodeEx的源码里面,取length的操作只在 drawPolygon 里面出现过一次。
function DrawNode:drawPolygon(points, params) local segments = #points ``` 从这个方向找吧。
谢谢,加参数 fill=true 是可以的
对 lua还不是很熟悉。
我直接调用
display.newSolidCircle(60, {
x=200,
y=200
}):addTo(self)
报的错。 不知道参数传的不对还是怎么的
这个版本的 newSolidCircle 已经比较老了,我会改一下提一个pr。
好的! 谢谢答复