Jump to content

File:Mandelbrot Set Image 01 by Aokoroko.jpg

From Meta, a Wikimedia project coordination wiki

Original file (3,840 × 3,840 pixels, file size: 21.65 MB, MIME type: image/jpeg)

This is a file from the Wikimedia Commons. The description on its description page there is copied below.

Summary

Description
Русский: Участок множества Мандельброта. Координаты центра: -0.5626783725, 0.6567946173, ширина 0.000000075
English: The piece of Mandelbrot set. Coordinates: -0.5626783725, 0.6567946173, width 0.000000075
Date
Source Own work
Author 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.

Licensing

I, the copyright holder of this work, hereby publish it under the following license:
w:en:Creative Commons
attribution share alike
This file is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported license.
You are free:
  • to share – to copy, distribute and transmit the work
  • to remix – to adapt the work
Under the following conditions:
  • attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
  • share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.

This image has been assessed using the Quality image guidelines and is considered a Quality image.

العربية  جازايرية  беларуская  беларуская (тарашкевіца)  български  বাংলা  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î  Lëtzebuergesch  lietuvių  македонски  മലയാളം  मराठी  Bahasa Melayu  Nederlands  Norfuk / Pitkern  polski  português  português do Brasil  rumantsch  română  русский  sicilianu  slovenčina  slovenščina  shqip  српски / srpski  svenska  தமிழ்  తెలుగు  ไทย  Tagalog  toki pona  Türkçe  українська  vèneto  Tiếng Việt  中文  中文(简体)  中文(繁體)  +/−

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

22 February 2013

image/jpeg

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current06:46, 25 April 2017Thumbnail for version as of 06:46, 25 April 20173,840 × 3,840 (21.65 MB)AokorokoImprove resolution and quality
01:05, 1 February 2017Thumbnail for version as of 01:05, 1 February 20171,920 × 1,920 (3.08 MB)AokorokoUser created page with UploadWizard

The following page uses this file:

Global file usage

The following other wikis use this file:

Metadata