Mostrando entradas con la etiqueta ERROR. Mostrar todas las entradas
Mostrando entradas con la etiqueta ERROR. Mostrar todas las entradas

lunes, 11 de diciembre de 2023

, , , , , , ,

POLIEDROS polyhedron(pyr_points,pyr_triangles)

 



Un poliedro toma dos parámetros importantes: puntos y triángulosEl parámetro de puntos es una lista de coordenadas X,Y,Z. Estos serán los vértices del objeto poliedro. Por ejemplo, considere una forma de pirámide. Habrá cuatro puntos, uno en cada esquina de la base más un punto en la parte superior. Por ejemplo:




Los puntos serían:


0= [25,25,0]

1= [25,0,0]

2= [0,0,0]

3= [0,25,0]

4= [12.5,12.5,25]   Ápice de la pirámide


la primera parte de la fórmula con los puntos quedaría así

pyr_points=[ [25,25,0],[25,0,0],

   [0,0,0],[0,25,0],  /* apex */ [12.5,12.5,25] ];


NOTA: no hace falta poner /* apex */  pero se pone para tener una noción del punto mas alto de la referencia, al tener /* */ esto significa que es una anotación sin valor alguno dentro de la operación

simplificado, quedaría así, con el mismo resultado


pyr_points=[ [25,25,0],[25,0,0],

   [0,0,0],[0,25,0], [12.5,12.5,25] ];


Luego hay que trazar los triángulos


Puedes pensar que cada uno de estos puntos tiene un número que comienza con cero. Entonces [ 25,25,0] es el punto 0. El punto máximo (o superior) de [12.5,12.5,25] es el punto 4.

por ejemplo el  0,1,4 







El parámetro de los triángulos es otra lista de tripletes, pero no son coordenadas X, Y, Z. En cambio, son los puntos de la lista de puntos que forman triángulos. Aquí está el resto de la pirámide:

Los triángulos serían


 0,1,4

1,2,4

2,3,4

3,0,4

LA BASE VEMOS QUE ES UN CUADRADO, SE TOMA ENTONCES COMO SI FUERAN 2 TRIÁNGULOS

1,0,3

2,1,3










La fórmula de los triángulos quedaría así: 


pyr_triangles=[ [0,1,4], [1,2,4],

   [2,3,4],[3,0,4],[1,0,3],[2,1,3]];


Finalmente definimos el poliedro 


polyhedron(pyr_points,pyr_triangles);



La fórmula final nos quedaría así


pyr_points=[ [25,25,0],[25,0,0],

   [0,0,0],[0,25,0], /* apex */ [12.5,12.5,25] ];


   pyr_triangles=[ [0,1,4], [1,2,4],

   [2,3,4],[3,0,4],[1,0,3],[2,1,3]];


polyhedron(pyr_points,pyr_triangles);




ERROR:

SUPONGAMOS QUE NO PONEMOS LOS TRIÁNGULOS DE LA BASE, ENTONCES LO QUE PASARÍA ES QUE QUEDA HUECO POR ESE LADO

NÓTESE LA DIFERENCIA DE COLOR DE LA BASE






Share:
Read More

lunes, 4 de diciembre de 2023

, , ,

MOVER translate ( [ x, y, z ] )

 


Primero ubicamos el cuerpo que queremos mover, y entonces debemos escribir la orden encima de él, porque ya hemos visto que se lee de abajo hacia arriba

Para mover un objeto se utiliza  translate y como hay que poner coordenadas, va entre paréntesis y corchetes 

translate ( [ X,Y,Z ] )

ABRIMOS UN HUECO ENCIMA DE LA FIGURA

1.


SE QUIERE MOVER EL CUBO TURQUESA

POR LO QUE LA ORDEN SE TIENE QUE PONER ENCIMA

(COMO CUANDO SE QUISO PONER EL COLOR)




2.

PARA MOVER SE USA  translate  
y luego abrir parentesis y luego corchetes

translate ( [ ] )




3
LAS COORDENADAS VAN DENTRO DE LOS CORCHETES
SOLAMENTE SE QUISO MOVER SOBRE EL EJE X PERO EN NEGATIVO, PARA QUE SE VAYA PARA ATRAS
LAS OTRAS COORDENADAS LAS PUSO EN CERO 



IMPORTANTE:

EL translate siempre tiene que estar encima de un objeto, no encima de una definición

Para darse cuenta, hay que ver el   PUNTO Y COMA ,  si hay otra cosa por encima del objeto, que tenga un sino va a dar error , aunque esa definición entre dentro del objeto

ASÍ ESTÁ BIEN

Quiero construir un prisma igual al anterior pero desplazado, pongo el translate, justo encima de 

cube( [ ] );





ASÍ DA ERROR 

Si me equivoco y lo coloco encima de todo, dará error

A pesar de que todo pertenezca a un mismo objeto, el ; es el límite para ejecutar la acción, en este caso, actuaría sobre el cubeface=10;  que no es ni un objeto ni un módulo, solamente es una expresión.

Por lo tanto, daría error





Share:
Read More