Fail:Mandelbrot Set Image 05 by Aokoroko.jpg

Lehekülje sisu ei toetata teistes keeltes.
Klõps ikoonil viib faili leheküljele Wikimedia Commonsis.
Allikas: Vikipeedia

Algfail(3840 × 3840 pikslit, faili suurus: 19,49 MB, MIME tüüp: image/jpeg)

Lühikirjeldus

Kirjeldus
Русский: Участок множества Мандельброта. Координаты центра: -0.3736977, 0.65913254, ширина: 0.00032
English: The piece of Mandelbrot set. Coordinates: -0.3736977, 0.65913254, width: 0.00032
Kuupäev
Allikas Üleslaadija oma töö
Autor Aokoroko

Source code

Practically I use the application written by me in FASM language because of the speed advantages. But for your better understanding I have rewrote it in Pascal language. This code can be compiled with Delphi or with Free Pascal. The application produces the image of any reasonable given width and height.

P.S. I apologize for so many values in q:array[0..255]of byte but they are necessary for my palette design.

{$APPTYPE CONSOLE}
{$N+}
{Author: https://commons.wikimedia.org/wiki/User:Aokoroko}

const
absc=-0.3736977; ordi=0.65913254; size=0.00032;
q:array[0..255]of byte=(211,71,123,38,223,73,197,249,126,227,211,5,36,36,128,5,
151,2,198,166,197,181,142,52,174,151,244,164,255,62,173,75,21,197,126,225,130,
146,244,175,86,1,180,253,198,191,50,36,233,200,150,221,176,73,23,161,71,224,41,
69,139,245,44,40,68,45,147,127,73,39,156,189,191,20,19,15,27,203,206,97,156,
111,189,126,87,209,209,36,23,17,15,49,172,58,146,65,93,214,80,80,168,177,231,
81,122,75,196,189,141,185,105,138,152,225,171,28,120,103,29,13,140,172,20,235,
214,174,237,70,179,188,127,169,40,58,242,93,32,252,78,13,26,221,141,178,25,171,
4,79,231,137,83,113,230,88,90,124,18,217,194,46,236,126,32,228,103,53,206,150,
28,159,237,138,83,114,58,47,176,254,161,177,138,24,191,38,59,225,182,112,250,
39,10,47,2,96,101,93,21,116,129,117,172,209,145,64,95,149,223,155,65,178,142,
224,92,93,159,199,116,52,178,214,192,230,47,198,68,75,179,0,8,220,51,69,171,81,
41,95,108,20,121,18,215,15,75,234,94,198,83,178,216,183,78,41,84,119,63,255);

var
f:file;
horiz,vert,a,b,t,i,j,l:longint;
c,d,cc,dd,m,n,mm,nn,step,absc2,ordi2:extended;
s:array[0..30000]of array[0..2]of byte;
z:array[0..2]of longint;
pal:array[0..255]of array[0..2]of byte;
h:array[0..13]of longint=($4D42,0,0,54,40,0,0,$180001,0,0,2834,2834,0,0);


begin
  write('Width: '); readln(horiz); write('Height: '); readln(vert);
  h[5]:=horiz; h[6]:=vert;
  a:=horiz*3; if (a and 3<>0) then a:=(a+4) and $FFFFFFFC; h[9]:=a*vert; h[1]:=h[9]+54;
  assign(f,'Mandelbrot05.bmp'); rewrite(f,1);
  blockwrite(f,h,2); blockwrite(f,h[1],52);
  for a:=0 to 254 do
  begin
    pal[a][0]:=round(127+127*cos(2*pi*(a+28)/255)); pal[a][1]:=round(127+127*sin(2*pi*(a+28)/255)); pal[a][2]:=q[a]
  end;
  for a:=0 to 2 do pal[255][a]:=255;
  step:=size/(horiz shl 3);
  absc2:=absc-step*(horiz shl 3-1)/2; ordi2:=ordi-step*(vert shl 3-1)/2;
  for b:=0 to vert-1 do
  begin
    nn:=b shl 3;
    for a:=0 to horiz-1 do
    begin
      mm:=a shl 3;
      for l:=0 to 2 do z[l]:=0;
      for j:=0 to 7 do
      begin
        n:=ordi2+(nn+j)*step;
        for i:=0 to 7 do
        begin
          m:=absc2+(mm+i)*step;
          c:=m; d:=n; t:=4081;
          repeat cc:=c*c; dd:=d*d; d:=(c+c)*d+n; c:=cc-dd+m; dec(t) until (t=0) or (cc+dd>1000000.0);
          if (t=0) then t:=255 else t:=t mod 255;
          for l:=0 to 2 do z[l]:=z[l]+pal[t][l]
        end
      end;
      for l:=0 to 2 do s[a][l]:=z[l] shr 6
    end;
    blockwrite(f,s,h[9] div vert);
    write('Done: ',b+1,chr(13))
  end;
  close(f)
end.

Litsents

Autoriõiguse omanikuna avaldan selle teose järgmise litsentsi all:
w:et:Creative Commons
omistamine sarnaselt jagamine
See fail kuulub jurisdiktsiooniga sidumata Creative Commonsi litsentsi "Autorile viitamine + jagamine samadel tingimustel 3.0" alla.
Tohid:
  • jagada – teost kopeerida, levitada ja edastada
  • kohandada – valmistada muudetud teoseid
Järgmistel tingimustel:
  • omistamine – Pead materjali sobival viisil autorile omistama, tooma ära litsentsi lingi ja märkima ära, kas on tehtud muudatusi. Sobib, kui teed seda mõistlikul viisil, kuid seejuures ei tohi jääda muljet, et litsentsiandja tõstab esile sind või seda, et sina materjali kasutad.
  • sarnaselt jagamine – Kui töötled, kujundad ümber või arendad materjali edasi, siis pead oma töö levitamiseks kasutama sama litsentsi, mille all on algupärand, või ühilduvat litsentsi.

Pealdised

Lisa üherealine seletus sellest, mida fail esitab

Selles failis kujutatud üksused

kujutab

Faili ajalugu

Klõpsa kuupäeva ja kellaaega, et näha sel ajahetkel kasutusel olnud failiversiooni.

Kuupäev/kellaaegPisipiltMõõtmedKasutajaKommentaar
viimane25. aprill 2017, kell 09:52Pisipilt versioonist seisuga 25. aprill 2017, kell 09:523840 × 3840 (19,49 MB)AokorokoImprove resolution and quality
1. aprill 2017, kell 20:22Pisipilt versioonist seisuga 1. aprill 2017, kell 20:221920 × 1920 (5,38 MB)AokorokoBigger size
1. veebruar 2017, kell 04:21Pisipilt versioonist seisuga 1. veebruar 2017, kell 04:211000 × 1000 (1,25 MB)AokorokoUser created page with UploadWizard

Seda faili ei kasuta ükski lehekülg.

Globaalne failikasutus

Järgmised muud vikid kasutavad seda faili:

Metaandmed