파일:Mandelbrot Set Image 03 by Aokoroko.jpg

원본 파일 (3,840 × 3,840 픽셀, 파일 크기: 19.01 MB, MIME 종류: image/jpeg)

파일 설명

설명
Русский: Фрагмент множества Мандельброта, координаты центра: -1.96680095, 0.00000478, ширина изображения 0.00000014
English: Fragment of the Mandelbrot set, coordinates: -1.96680095, 0.00000478, width 0.00000014
날짜
출처 자작
저자 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=-1.96680095; ordi=0.00000478; size=0.00000014;
q:array[0..255]of byte=(234,94,198,83,178,216,183,78,41,84,119,63,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,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,'Mandelbrot03.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+16)/255)); pal[a][1]:=round(127+127*sin(2*pi*(a+16)/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.

라이선스

나는 아래 작품의 저작권자로서, 이 저작물을 다음과 같은 라이선스로 배포합니다:
w:ko:크리에이티브 커먼즈
저작자표시 동일조건변경허락
이용자는 다음의 권리를 갖습니다:
  • 공유 및 이용 – 저작물의 복제, 배포, 전시, 공연 및 공중송신
  • 재창작 – 저작물의 개작, 수정, 2차적저작물 창작
다음과 같은 조건을 따라야 합니다:
  • 저작자표시 – 적절한 저작자 표시를 제공하고, 라이센스에 대한 링크를 제공하고, 변경사항이 있는지를 표시해야 합니다. 당신은 합리적인 방식으로 표시할 수 있지만, 어떤 방식으로든 사용권 허가자가 당신 또는 당신의 사용을 지지하는 방식으로 표시할 수 없습니다.
  • 동일조건변경허락 – 만약 당신이 이 저작물을 리믹스 또는 변형하거나 이 저작물을 기반으로 제작하는 경우, 당신은 당신의 기여물을 원저작물과 동일하거나 호환 가능한 라이선스에 따라 배포하여야 합니다.

설명

이 파일이 나타내는 바에 대한 한 줄 설명을 추가합니다

이 파일에 묘사된 항목

다음을 묘사함

파일 역사

날짜/시간 링크를 클릭하면 해당 시간의 파일을 볼 수 있습니다.

날짜/시간섬네일크기사용자설명
현재2017년 4월 25일 (화) 21:512017년 4월 25일 (화) 21:51 판의 섬네일3,840 × 3,840 (19.01 MB)AokorokoImprove resolution
2017년 2월 1일 (수) 10:152017년 2월 1일 (수) 10:15 판의 섬네일1,920 × 1,920 (3.38 MB)AokorokoUser created page with UploadWizard

이 파일을 사용하는 문서가 없습니다.

이 파일을 사용하고 있는 모든 위키의 문서 목록

다음 위키에서 이 파일을 사용하고 있습니다:

  • en.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
  • hy.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
  • meta.wikimedia.org에서 이 파일을 사용하고 있는 문서 목록
  • ru.wikipedia.org에서 이 파일을 사용하고 있는 문서 목록
  • www.wikidata.org에서 이 파일을 사용하고 있는 문서 목록

메타데이터