ہم نامی ایک سب سے پہلے پروگرام دیکھا ہے “DrawWorld” ہم جاوا پروگرامنگ مبنی گرافکس متعارف. ایک بنیادی پنراورتی fractal پیدا کرنے کے لئے یہ بنیادی پروگرام تبدیل چلو: El Sierpinski مثلث.
(ملاحظہ کریں اور ایک پنراورتی fractal پیدا)
یہ جن کے اطراف اس کی midpoint کی طرف سے تقسیم کیا گیا ہے ایک مثلث سے تکراری طور پر بنایا گیا ہے کہ ایک fractal ہے. ان نئے پوائنٹس کے ساتھ, اور پچھلے, نئے ترکون گزشتہ کے لئے اسی طرح تعمیر کر رہے ہیں.
ہم نے ایک مثلث اے بی سی سے شروع اور اس کے اطراف کے midpoints ملتی ہے تو (MNP), تکرار کی اگلی سطح پر تین مثلث کے نیچے تعمیر کریں گے: APN, NMC PBM.
El triángulo de Sierpinski tiene una Hausdorff-Besicovitch کے fractal طول و عرض coincidente con su dimensión fractal de homotecia igual a: 1,58496… (W)
ان نئے ترکون میں سے ہر تین میں تقسیم کر رہے ہیں تو, ہم تکراری طور پر ایک نئے اعداد و شمار ہو رہی کریں گے. ہم ایک متغیر کا استعمال کرتے ہوئے کنٹرول کر سکتے ہیں تکرار کی ایک نئی سطح پر پڑے گا (nivel_de_recursividad) ہمارے پروگرام کی.
ہم نے ایک تقریب میں وضاحت کی گئی ہے “paintRecursivo” (میں طریقہ کار کی طرف سے کہا جاتا ہے “پینٹ”) جس نقطہ ہم مثلث بیس پر, اور تکرار. تقریب مثلث کی vertices کا حساب لگاتا ہے, اعداد و شمار پینٹ اور خود تین بار بلاتا ہے, subtriangles میں سے ہر ایک کے لئے ایک.
تقریب میں ہر کال میں تکرار کی قیمت کم کر دیتا ہے, یہ ہے جب صفر فارغ تکرار لے تا کہ.
درآمد java.applet.Applet; درآمد java.awt.Graphics; /** * @ مصنف ہوزے جوآن Aliaga */ عوامی کلاس MainApp توسیع اپلیٹ { دوگنا xp1 = 300; دوگنا yp1 = 300; دوگنا xp2 = 10; دوگنا yp2 = 300; دوگنا sin60 = Math.sin(3.14/3.); INT nivel_de_recursividad = 6; عوامی MainApp() { } عوامی جامد خالی اہم(سلک[] args) { } عوامی صفر پینٹ(گرافکس G){ paintRecursivo(G,nivel_de_recursividad,xp1، yp1، xp2، yp2); } ذاتی صفر paintRecursivo(گرافکس G, INT میں, دوگنا xp12, دوگنا yp12, دوگنا xp22, دوگنا yp22 ) { دوگنا DX =(xp22-xp12)/2.; دوگنا دو =(yp22-yp12)/2.; دوگنا xp32 xp12 DX = 2 * قیمت * sin60; دوگنا yp32=yp12 dy 2*dx*sin60; دوگنا dx1 =(xp22 xp12)/2.; دوگنا dy1 =(yp22 yp12)/2.; دوگنا dx2 =(xp32 xp22)/2.; دوگنا dy2 =(yp32 yp22)/2.; دوگنا dx3 =(xp12 xp32)/2.; دوگنا Dy3 =(yp12 yp32)/2.; اگر(میں<= 0){ g.drawLine((INT)xp12,(INT)yp12,(INT)xp22,(INT)yp22); g.drawLine((INT)xp22,(INT)yp22,(INT)xp32,(INT)yp32); g.drawLine((INT)xp32,(INT)yp32,(INT)xp12,(INT)yp12); } ورنہ{ paintRecursivo(G,I-1، xp12، yp12، dx1، dy1); paintRecursivo(G,I-1، dx1، dy1، xp22، yp22); paintRecursivo(G,I-1، dx3، dy3، dx2، dy2); } } }
Debe estar conectado para enviar un comentario.