File:Translucent Jessen icosahedron.svg
De Wikimedia Commons, el repositorio multimedia libre
Ir a la navegación
Ir a la búsqueda
![File:Translucent Jessen icosahedron.svg](https://upload.wikimedia.org/wikipedia/commons/thumb/5/51/Translucent_Jessen_icosahedron.svg/512px-Translucent_Jessen_icosahedron.svg.png?20211007071540)
Tamaño de esta previsualización PNG del archivo SVG: 512 × 512 píxeles. Otras resoluciones: 240 × 240 píxeles | 480 × 480 píxeles | 768 × 768 píxeles | 1024 × 1024 píxeles | 2048 × 2048 píxeles.
Archivo original (archivo SVG, nominalmente 512 × 512 píxeles, tamaño de archivo: 910 bytes)
Información del archivo
Datos estructurados
Leyendas
Leyendas
Añade una explicación corta acerca de lo que representa este archivo
Translucent Jessen icosahedron
Resumen
[editar]DescripciónTranslucent Jessen icosahedron.svg |
English: Translucent Jessen icosahedron |
Fecha | |
Fuente | Trabajo propio |
Autor | David Eppstein |
Source code
[editar]import numpy, svg3d, pyrr, math
def rot(a,b,c): return [(a,b,c),(b,c,a),(c,a,b)]
def orthants(V): return [[i for i in range(len(V)) if V[i][0]*x >= 0 and V[i][1]*y >= 0 and V[i][2]*z >= 0] for x in [-1,1] for y in [-1,1] for z in [-1,1]]
def wide(V): def isbase(i,j): for k in [0,1,2]: if V[i][k] in [1,-1]: if V[j][k] != 0: return False elif V[i][k] == 0: if V[j][k] not in [2,-2]: return False else: if V[i][k]*V[j][k] < 0: return False return True return [[i]+[j for j in range(len(V)) if isbase(i,j)] for i in range(len(V))]
def get_faces(): f = math.sqrt(2.0) / 2.0 verts = numpy.float32(rot(2,1,0)+rot(2,-1,0)+rot(-2,-1,0)+rot(-2,1,0)) triangles = numpy.int32(orthants(verts)+wide(verts)) return 7.5 * verts[triangles]
def generate_svg(filename): view = pyrr.matrix44.create_look_at( eye=[66, 36, 108], target=[0, 0, 0], up=[0, 1, 0] ) projection = pyrr.matrix44.create_perspective_projection( fovy=15, aspect=1, near=10, far=200 ) camera = svg3d.Camera(view, projection)
style = dict( fill="#D8F0FF", fill_opacity="0.8", stroke="black", stroke_linejoin="round", stroke_width="0.005", )
mesh = svg3d.Mesh(get_faces(), style=style) view = svg3d.View(camera, svg3d.Scene([mesh])) svg3d.Engine([view]).render(filename)
generate_svg("jessen.svg")
Licencia
[editar]Yo, el titular de los derechos de autor de esta obra, la publico en los términos de la siguiente licencia:
![]() ![]() |
Este archivo está disponible bajo la licencia Creative Commons Dedicación de Dominio Público CC0 1.0 Universal. |
La persona que ha asociado una obra a este documento lo dedica al dominio público mediante la cesión mundial de sus derechos bajo la ley de derechos de autor y todos los derechos legales adyacentes propios de dicha, en el ámbito permitido por ley. Puedes copiar, modificar, distribuir y reproducir el trabajo, incluso con objetivos comerciales, sin pedir aprobación del autor.
http://creativecommons.org/publicdomain/zero/1.0/deed.enCC0Creative Commons Zero, Public Domain Dedicationfalsefalse |
Historial del archivo
Haz clic sobre una fecha y hora para ver el archivo tal como apareció en ese momento.
Fecha y hora | Miniatura | Dimensiones | Usuario | Comentario | |
---|---|---|---|---|---|
actual | 07:15 7 oct 2021 | ![]() | 512 × 512 (910 bytes) | David Eppstein (discusión | contribs.) | Uploaded own work with UploadWizard |
No puedes sobrescribir este archivo.
Usos del archivo
La siguiente página usa este archivo:
Uso global del archivo
Las wikis siguientes utilizan este archivo:
- Uso en en.wikipedia.org
- Uso en es.wikipedia.org
- Uso en it.wikipedia.org
- Uso en ja.wikipedia.org
Metadatos
Este archivo contiene información adicional, probablemente añadida por la cámara digital o el escáner usado para crearlo o digitalizarlo.
Si el archivo ha sido modificado desde su estado original, pueden haberse perdido algunos detalles.
Anchura | 512 |
---|---|
Altura | 512 |
Categorías ocultas: