AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Imaginären/Realen Anteil berechnen
Thema durchsuchen
Ansicht
Themen-Optionen

Imaginären/Realen Anteil berechnen

Ein Thema von Stillmatic · begonnen am 26. Apr 2007 · letzter Beitrag vom 4. Mai 2007
 
Eichhoernchen

Registriert seit: 22. Apr 2004
Ort: Hagen
322 Beiträge
 
Turbo Delphi für Win32
 
#12

Re: Imaginären/Realen Anteil berechnen

  Alt 29. Apr 2007, 10:12
Pass auf, du hast 800 Pixel in der Breite und, 600 Pixel in der Höhe.

Und du hast Für die X-Achse also die Realwerte Von ReMin (-2,25) bis ReMax (0,75), sprich entsprechen 800Pixel in der Breite 3 Einheiten in der Gauschenzahlenebene.

Sprich um ein Pixel in die Gauschezahlenebene umzurechnen rechnest du Pixel/3

Auf der Y-Achse werden die Imaginärenzahlen aufgetragen.

Von ImMin=-1,5 bis ImMax=1,5 sprich wieder 3.

Also auch Pixel/3.

nun lässt du ein Programm laufen:

Delphi-Quellcode:
//Wahrscheinlich muss die unit math eingebunden werden: uses ..., math;

procedure PaintMandelOnCanvas(ReMin, ReMax, ImMin, ImMax: Real; MaxIt: integer; Canv: TCanvas);
var
  xalt, x, xc, yalt, y, yc, RePlane, ImPlane: real;
  n, i, j: integer;
begin
  RePlane := abs(ReMin) + abs(ReMax);
  ImPlane := abs(ImMin) + abs(ImMax);
  for i := 0 to 800 do
    for j := 0 to 600 do
    begin
      xalt := 0;
      yalt := 0;
      n := 0;
      xc := (i / RePlane) + ReMin; //Umrechnen in die Gauschezahlenebene
      yc := (j / ImPlane) - ImMin;
      while (xalt*xalt + yalt*yalt < 4) and (n < MaxIt) do
      begin
        inc(n);
        x := xalt*xalt - yalt*yalt + xc;
        y := 2 * xalt * yalt + yc;
        xalt := x;
        yalt := y;
      end;
      if n = MaxIt then
        Canv.Pixel[i, j] := clblack
      else
        //Färb je nach erreichter Iteration, veränderbar
        Canv.Pixel[i, j] := RGB(n, n div 2, (n+100)/3);
    end;
end;

So, ich hab das jetzt nicht getestet aber das sollte eine Schwarze Mandelbrotmenge geben mit gefärbtem Randbereich.
Jan
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz