Ich möchte versuchen, das Mandelbrot-Set mit libGDX auf AIDE zu rendern (ich habe nur mein Telefon zum coden). Also habe ich den Algorithmus studiert und versucht, ihn zu implementieren.Zeichnen des Mandelbrot-Sets mit libGDX
Diese Funktion wird für jedes Pixel auf dem Bildschirm-
public int calcFract(int x, int y, int maxiter)
{
zx = zy = 0;
cx = (x - width/2)/zoom;
cy = (y - height/2)/zoom;
while(zx * zx + zy * zy < 4.0 && iter < maxiter)
{
tmp = zx * zx - zy * zy + cx;
zy = 2.0 * zx * zy + cy;
zx = tmp;
iter++;
}
return iter | iter << 8;
}
genannt wird, und hier ist die create() Callback
public void create()
{
width = Gdx.graphics.getWidth();
height = Gdx.graphics.getHeight();
Gdx.input.setInputProcessor(this);
fractal = new Pixmap(width, height, Pixmap.Format.RGB888);
for (int i = 0; i < width; ++i)
for (int j = 0; j < height; ++j)
{
int c = mandelbrot.calcFract(i, j, maxiter);
fractal.drawPixel(i, j, Color.toIntBits(0xff, c, c, c));
}
fracTex = new Texture(fractal);
batch = new SpriteBatch();
}
Die App ohne Fehler kompiliert wird, aber wenn ich es laufen, es zeigt mir this-
notice the left side of the screen
Hier der render() Callback auch -
public void render()
{
Gdx.gl.glClearColor(0, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
batch.begin();
batch.draw(fracTex, 0, 0);
batch.end();
}
Bitte sagen Sie mir, wenn irgendetwas mit meinem Code nicht stimmt. Vielen Dank im Voraus!
Bitte helfen Sie mir herauszufinden, ppl. –
Das Bild ist schwarz für mich. Was meinst du mit "beachte die linke Seite des Bildschirms"? – Moira
Es gibt eine einzelne Pixel breite Linie mit einem Verlaufsmuster auf der linken Seite des Bildschirms. –