File:Sierpinski-Curve-2.png
Από Wikimedia Commons
Μετάβαση στην πλοήγηση
Πήδηση στην αναζήτηση
Sierpinski-Curve-2.png (512 × 512 εικονοστοιχεία, μέγεθος αρχείου: 2 KB, τύπος MIME: image/png)
File information
Δομημένα δεδομένα
Λεζάντες
ΠεριγραφήSierpinski-Curve-2.png |
English: Sierpinski Curves (fractals) of orders 1 and 2. Drawn by a Java program I did myself. |
Ημερομηνία | |
Πηγή | Έργο αυτού που το ανεβάζει |
Δημιουργός | User:Nol Aders |
Pseudocode
[επεξεργασία]points = [] // Array dels punts
max_order = 8 // Nombre d'ordres a avaluar
// Punts inicials
points <- Point.new(0, -1, :top) // Amunt
points <- Point.new(1, 0, :right) // Dreta
points <- Point.new(0, 1, :bottom) // Avall
points <- Point.new(-1, 0, :left) // Esquerra
// Crear cada ordre a partir dels punts de l'anterior
for order in 1..max_order
// Els punts actuals ja no surten al nou ordre
current = points.clone
points.clear
// La distància depèn de l'ordre
d = sd = 0.5 / (2 ** (order - 1))
// Crear punt nou a partir de cada punt de l'ordre anterior
for point in corrent
px = point.x
py = point.y
case point.type
when :top // Amunt
points <- Point.new(px - d - sd, py - sd, :top)
points <- Point.new(px - d, py, :right)
points <- Point.new(px + d, py, :left)
points <- Point.new(px + d + sd, py - sd, :top)
when :right // Dreta
points <- Point.new(px + sd, py - d - sd, :right)
points <- Point.new(px, py - d, :bottom)
points <- Point.new(px, py + d, :top)
points <- Point.new(px + sd, py + d + sd, :right)
when :bottom // Avall
points <- Point.new(px + d + sd, py + sd, :bottom)
points <- Point.new(px + d, py, :left)
points <- Point.new(px - d, py, :right)
points <- Point.new(px - d - sd, py + sd, :bottom)
when :left // Esquerra
points <- Point.new(px - sd, py + d + sd, :left)
points <- Point.new(px, py + d, :top)
points <- Point.new(px, py - d, :bottom)
points <- Point.new(px - sd, py - d - sd, :left)
end
end
end
Pascal src code
[επεξεργασία]uses GraphABC;
procedure RLine(x, y, x1, y1: real) := Line(Round(x), Round(y), Round(x1), Round(y1));
function GetAngle(x, y, x2, y2: real): real;
begin
var angle := Abs(RadToDeg(ArcTan((y2 - y) / (x2 - x))));
if (x2 = x) and (y2 = y) then
Result := 0
else
if x2 > x then
if y2 > y then Result := angle else Result := 360 - angle
else
if y2 > y then Result := 180 - angle else Result := 180 + angle;
end;
procedure Draw(x, y, x1, y1: real; inverted: boolean);
begin
var angle := GetAngle(x, y, x1, y1);
var s := 1 - 2 * Ord(inverted);
var r := Sqrt(Sqr(x1 - x) + Sqr(y1 - y)) / 2;
var ang1 := DegToRad(angle - 60 * s);
var xA := x + r * Cos(ang1);
var yA := y + r * Sin(ang1);
var ang2 := DegToRad(angle - 120 * s);
var xB := x1 + r * Cos(ang2);
var yB := y1 + r * Sin(ang2);
if 2 * r < 8 then
begin
RLine(x, y, xA, yA);
RLine(xA, yA, xB, yB);
RLine(xB, yB, x1, y1);
end
else
begin
Draw(x, y, xA, yA, not inverted);
Draw(xA, yA, xB, yB, inverted);
Draw(xB, yB, x1, y1, not inverted);
end;
end;
begin
Draw(100, 100, 400, 450, false);
end.
This math image could be re-created using vector graphics as an SVG file. This has several advantages; see Commons:Media for cleanup for more information. If an SVG form of this image is available, please upload it and afterwards replace this template with
{{vector version available|new image name}} .
It is recommended to name the SVG file “Sierpinski-Curve-2.svg”—then the template Vector version available (or Vva) does not need the new image name parameter. |
Παραχωρείται η άδεια προς αντιγραφή, διανομή και/ή τροποποίηση αυτού του εγγράφου υπό τους όρους της Άδειας Ελεύθερης Τεκμηρίωσης GNU, Έκδοση 1.2 ή οποιασδήποτε νεότερης έκδοσης δημοσιευμένης από το Ίδρυμα Ελεύθερου Λογισμικού· χωρίς Απαράλαχτους Τομείς, χωρίς Κείμενα Εξωφύλλου, και χωρίς Κείμενα Οπισθοφύλλου. Αντίγραφο της άδειας περιλαμβάνεται στην σελίδα με τίτλο GNU Free Documentation License.http://www.gnu.org/copyleft/fdl.htmlGFDLGNU Free Documentation Licensetruetrue |
Το αρχείο διανέμεται υπό την άδεια Creative Commons Αναφορά προέλευσης-Παρόμοια διανομή 3.0 Μη εισαγόμενη | ||
| ||
Αυτή η ετικέτα άδειας χρήσης προστέθηκε στο αρχείο ως μέρους της αναθεώρησης της άδειας GFDL .http://creativecommons.org/licenses/by-sa/3.0/CC BY-SA 3.0Creative Commons Attribution-Share Alike 3.0truetrue |
Ιστορικό αρχείου
Πατήστε σε μια ημερομηνία/ώρα για να δείτε το αρχείο όπως εμφανιζόταν εκείνη την χρονική στιγμή.
Ημερομηνία/Ώρα | Μικρογραφία | Διαστάσεις | Χρήστης | Σχόλιο | |
---|---|---|---|---|---|
τρέχον | 15:39, 9 Ιανουαρίου 2007 | 512 × 512 (2 KB) | Dbc334 (συζήτηση | Συνεισφορά) | cleared and compressed | |
21:16, 2 Ιουλίου 2005 | 512 × 512 (23 KB) | Nol Aders (συζήτηση | Συνεισφορά) | Sierpinski Curves (fractals) of orders 1 and 2 |
Δεν μπορείτε να αντικαταστήσετε αυτό το αρχείο.
Χρήση αρχείου
Οι ακόλουθες 2 σελίδες χρησιμοποιούν προς αυτό το αρχείο:
Καθολική χρήση αρχείου
Τα ακόλουθα άλλα wiki χρησιμοποιούν αυτό το αρχείο:
- Χρήση σε de.wikipedia.org
- Χρήση σε el.wikipedia.org
- Χρήση σε en.wikipedia.org
- Χρήση σε es.wikipedia.org
- Χρήση σε fr.wikipedia.org
- Χρήση σε it.wikipedia.org
- Χρήση σε it.wiktionary.org
- Χρήση σε nl.wikipedia.org
- Χρήση σε ru.wikipedia.org
- Χρήση σε uk.wikipedia.org