JavaScript - Triángulo de Sierpinski por puntos

 
Vista:
Imágen de perfil de manuel bg

Triángulo de Sierpinski por puntos

Publicado por manuel bg (4 intervenciones) el 17/01/2022 19:09:36
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="description" content="Curva de Sierpinski">
<title>Curva de Sierpinski</title>
</head>
<body>
<canvas id="milienzo" width="300" height="300" style="border:1px solid #d3d3d3;">
Your browser does not support the HTML5 canvas tag.
</canvas>
<script>
var lienzo = document.getElementById("milienzo");
var ctx = lienzo.getContext("2d");
var iteraciones=10000;
<!-- Los puntos han sido fijados 'a mano' para que resulte un triángulo -->
<!-- isósceles, pero sus coordenadas pueden ser aleatorias -->
x1=150; y1=20;
x2=20; y2=280;
x3=280; y3=280;
<!-- Punto 'semilla' inicial: -->
x0=140; y0=170;
<!-- Cada punto es un rectángulo relleno: -->
for(t=1;t<iteraciones;t++){
nalea=Math.random();<!--número aleatorio para elegir punto-->
if(nalea<1/3){
x0=(x0+x1)/2; y0=(y0+y1)/2;
}
else if(nalea>2/3){
x0=(x0+x3)/2; y0=(y0+y3)/2;
}
else{
x0=(x0+x2)/2; y0=(y0+y2)/2;
}
ctx.fillRect(x0,y0,1,1);
}
</script>
</body>
</html>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder