- (void)draw {
lines[0] = ccp(self.l.x + (segmentIndex[0] * segmentSpacing), self.l.y);
lines[1] = ccp(self.l.x + (segmentIndex[1] * segmentSpacing), self.l.y + segmentHeight * 1);
lines[2] = ccp(self.l.x + (segmentIndex[2] * segmentSpacing), self.l.y + segmentHeight * 2);
lines[3] = ccp(self.l.x + (segmentIndex[3] * segmentSpacing), self.l.y + segmentHeight * 3);
lines[4] = ccp(lines[3].x + segmentWidth, lines[3].y);
lines[5] = ccp(lines[2].x + segmentWidth, lines[2].y);
lines[6] = ccp(lines[1].x + segmentWidth, lines[1].y);
lines[7] = ccp(lines[0].x + segmentWidth, lines[0].y);
ccDrawPoly(lines, 8, YES);
//ccDrawSolidPoly(lines, 8, [self color]);
}
ccDrawPoly 线绘制了我打算绘制的之字形样式。有 4 个 Y 段,每个段都有一个由 segmentIndex 和 segmentSpacing 确定的点,然后是 x 上的 +segmentWidth,总共 8 个点。我先从最左边的点往下走,然后再往上走。
当我调用 ccDrawSolidPoly 时,它以不同的方式填充形状。它使用所有最外面的点填充多边形,而不是按照我在点中设置的顺序绘制线条。
我如何做 ccDrawPoly 和填充?