Image:3D Julia-set (IFS 001).jpg

Un article de Wikipédia, l'encyclopédie libre.

Ci-dessous, retrouvez page de description du fichier provenant de Commons.

Julia set, a fractal, here in three dimensions. The image was created from using a "iterated function system". This is not a quaternion - only three parameters; x, y, z was used in the reversed formula Z = sqrt(ZC). In 2D the root function rotates to half the previous angle and scales to the root of the previous length. I developed a method to do this using three parameters, (see formula in C-code below).

See also:

External link:

  • Download a demo program that creates images like this, (and more) from: 3djulia.htm



Image: User:Solkoll.
Public domain This image has been released into the public domain by its author, Solkoll. This applies worldwide.

In some countries this may not be legally possible; if so:
Solkoll grants anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.


العربية | Български | Deutsch | Ελληνικά | English | Español | Français | Italiano | 日本語 | 한국어 | Polski | Русский | Српски / Srpski | Svenska | தமிழ் | Українська | ‪中文(繁體)‬ | ‪中文(简体)‬  +/-


More 3D fractals from my tool:

All freaktal images are from self-written tools. Linear fractals from my : "3D IFS studio" and "3D DTIFS" (dragon trees), non-linear IFS from "3D RJIFS" (3D rev Julia).

See also: Solkoll & Solkoll 2D


[edit] Source-code:

C-code snippet:
// Notes:
// All variables are declared as "float" or "double".
// x, y, z is the 3D variable "Z".
// a, b, c is the 3D constant "C" (the Julia-coordinate).
// RND is a random float in the range 0 - 1, define it like this:
// #define RND ( ( float ) rand ( ) / RAND_MAX )
// Here the function:
x -= a;
y -= b;
z -= c;
length = sqrtl ( x*x + y*y + z*z );
root = sqrtl ( length );
if ( length == fabsl ( x ) )
{
if ( x < 0.0f )
{
angle = RND * pi * 2.0f;
y = cosl ( angle ) * root;
z = sinl ( angle ) * root;
x = 0.0f;
}
else
{
x = root;
}
}
else if ( length > 0.0f )
{
x = ( ( x - length ) / 2.0f ) + length;
y = y / 2.0f;
z = z / 2.0f;
length = root / sqrtl ( x*x + y*y + z*z );
x *= length;
y *= length;
z *= length;
}
// This is the IFS: randomly select any of the two roots :)
if ( int ( RND * 2 ) )
{
x = - x;
y = - y;
z = - z;
}
If you like to get more information about this function?
then write at: User talk:Solkoll or drop me a wikimail.

Historique du fichier

Cliquer sur une date et une heure pour voir le fichier tel qu’il était à ce moment-là

Date et heureDimensionsUtilisateurCommentaire
actuel26 mars 2005 à 13:10600×600 (94 Kio)Solkoll ('''Julia set''', here in three dimensions, not a quartenion - only three parameters; x, y, z was used, (reversed technolog) in a "iterated function system". '''See also:''' * w:en:Julia set * w:en:Iterated function system {{Solkoll 3D}} )

La page ci-dessous contient cette image :