Арыгінальны файл (3840 × 3840 піксэляў, памер файла: 21,65 Мб, тып MIME: image/jpeg)

Апісаньне

Апісаньне
Русский: Участок множества Мандельброта. Координаты центра: -0.5626783725, 0.6567946173, ширина 0.000000075
English: The piece of Mandelbrot set. Coordinates: -0.5626783725, 0.6567946173, width 0.000000075
Дата
Крыніца Уласны твор
Аўтар 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.5626783725; ordi=0.6567946173; size=0.000000075;
q:array[0..255]of byte=(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,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,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,'Mandelbrot01.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+101)/255)); pal[a][2]:=round(127+127*sin(2*pi*(a+101)/255)); pal[a][1]:=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:be-tarask:Creative Commons
пазначэньне аўтарства распаўсюджваць на тых жа ўмовах
Гэты файл ліцэнзаваны згодна з умовамі ліцэнзіі Creative Commons Attribution-Share Alike 3.0 Unported.
Вы можаце свабодна:
  • дзяліцца – капіяваць, распаўсюджваць і перадаваць гэты твор
  • ствараць вытворныя творы – адаптаваць твор
Пры выкананьні наступных умоваў:
  • пазначэньне аўтарства – Вы мусіце пазначыць аўтарства, падаць спасылку на ліцэнзію і пазначыць, ці былі зробленыя зьмены. Вы можаце зрабіць гэта любым разумным спосабам, але не такім чынам, каб склалася ўражаньне, што ліцэнзіят падтрымлівае вас ці выкарыстаньне вамі гэтага твору.
  • распаўсюджваць на тых жа ўмовах – Калі вы зьмяняеце, трансфармуеце ці грунтуецеся на гэтым матэрыяле, вы мусіце распаўсюджваць ваш унёсак паводле той жа ці сумяшчальнай ліцэнзіі, што і арыгінал.


العربية  جازايرية  беларуская  беларуская (тарашкевіца)  български  বাংলা  català  čeština  Cymraeg  Deutsch  Schweizer Hochdeutsch  Zazaki  Ελληνικά  English  Esperanto  español  eesti  euskara  فارسی  suomi  français  galego  עברית  हिन्दी  hrvatski  magyar  հայերեն  Bahasa Indonesia  italiano  日本語  Jawa  ქართული  кыргызча  한국어  kurdî  Latina  Lëtzebuergesch  lietuvių  македонски  മലയാളം  मराठी  Bahasa Melayu  Nederlands  Norfuk / Pitkern  polski  português  português do Brasil  qaraqalpaqsha  rumantsch  română  русский  sicilianu  slovenčina  slovenščina  shqip  српски / srpski  svenska  தமிழ்  తెలుగు  ไทย  Tagalog  toki pona  Türkçe  українська  Oʻzbekcha  vèneto  Tiếng Việt  中文  中文(简体)  中文(繁體)  +/−

Подпісы

Дадайце аднарадковае тлумачэньне, што зь сябе ўяўляе гэты файл

Элемэнты, выяўленыя на гэтым файле

адлюстроўвае

Гісторыя файла

Націсьніце на дату/час, каб паглядзець, як тады выглядаў файл.

Дата і часМініятураПамерыУдзельнікКамэнтар
цяперашняя09:46, 25 красавіка 2017Мініятура вэрсіі ад 09:46, 25 красавіка 20173840 × 3840 (21,65 Мб)AokorokoImprove resolution and quality
04:05, 1 лютага 2017Мініятура вэрсіі ад 04:05, 1 лютага 20171920 × 1920 (3,08 Мб)AokorokoUser created page with UploadWizard

Ніводная старонка не выкарыстоўвае гэты файл.

Глябальнае выкарыстаньне файла

Гэты файл выкарыстоўваецца ў наступных вікі:

Мэтазьвесткі