如何使用andengine改变曲线下面积的背景颜色

时间:2013-10-11 03:46:32

标签: box2d andengine

我正在使用andengine和box2d扩展名。我使用基于下面所示的正弦方程生成的线体生成一些山丘。

public ArrayList<Line> CreateSinusoidalHills(PhysicsWorld world, int length, float density, float elasticity,
                                    float friction, int resolution, Engine engine, Scene scene)
{
    // resolution argument is how far the line is drawn for every iteration
    ArrayList<Line> lineList = new ArrayList<Line>();

    float xIndex = 0;
    float offset = 150; //TODO: add offset to function arguments
    for (int x=0;x<length;x++)

    {

        Line line = new Line(xIndex,(float)Math.cos(xIndex)*100+offset,xIndex+resolution,
                (float)Math.cos(xIndex+50)*100+offset,10.0f,engine.getVertexBufferObjectManager());
        line.setColor(new Color(200,90,254));
        lineList.add(line);
        xIndex = xIndex + resolution;

    }
    return lineList;
}

我希望此生成曲线下方的区域与场景背景颜色不同,但我无法弄清楚如何实现这一点。我尝试在每条线下方创建矩形,但是我失去了很多性能(正如我预期的那样)。我想也许我可以使用这些x,y点来创建一个多边形,它是山丘的确切形状(此时我可以改变它的颜色),但我也无法弄清楚如何做到这一点(我可以创建多边形,我只是不知道如何将它添加到场景中,因为它似乎与矩形的工作方式不同。任何帮助都会非常感激。

这是我的第一篇文章,如果我没有按照正确的协议提问,请告诉我。谢谢!

0 个答案:

没有答案