Author: Rafael Losada Liste

X

Y

Z

8 C

6 V

Tetraedro:

Octaedro:

Cubo:

Dodecaedro:

Icosaedro:

4 C

4 V

6 C

8 V

12 C

20 V

20 C

12 V

12 A

6 A

12 A

30 A

30 A

Ejes

Proyección

Sólo sombra

Grafo

D

F

C

A

E

B

B

A

C

D

B

A

E

F

C

H

D

G

J

I

M

N

C

F

Q

P

R

B

K

L

H

A

G

E

D

O

S

T

A

B

J

C

L

D

E

F

K

I

H

G

Rayos luz

Cadena

BM = (-0.24887, 0.60393)
x0 = 3
AM = (0.97427, -0.07038)
d = 3.84 (slider from 2 to 10, step 0.01)
O_r = (0, 0)
mira2 = Ellipse(O_r - (0.0, 0.95), O_r + (0.0, 0.95), 1.0)
B = Point(mira2)
mira1 = Ellipse(O_r - (0.95, 0.0), O_r + (0.95, 0.0), 1.0)
A = Point(mira1)
U_1 = (1, 0)
φ2 = Angle(U_1, O_r, AM)
φ = Angle(U_1, O_r, A)
Escala = 1.9 (slider from 1 to 4, step 0.1)
O = (11.890754380000002, -7.3659714)
P = (3.6127329800000023, -3.758429)
y0: (x(P - O) / Escala - x0 * sin(φ2)) / cos(φ2)
M_3 = (0, 1)
θ2 = Angle(M_3, O_r, BM)
MM2: {{sin(φ2), -cos(φ2) * sin(θ2), 0.0}, {cos(φ2), sin(φ2) * sin(θ2), 0.0}, {0.0, cos(θ2), 1.0}}
k2: (0.0, cos(θ2)) * Escala
j2: (cos(φ2), sin(φ2) * sin(θ2)) * Escala
i2: (sin(φ2), -cos(φ2) * sin(θ2)) * Escala
z0: (y(P - O) / Escala + x0 * cos(φ2) * sin(θ2) - (x(P - O) / Escala - x0 * sin(φ2)) * tan(φ2) * sin(θ2)) / cos(θ2)
d11: sqrt(x0^(2.0) + y0^(2.0) + z0^(2.0))
C: O - d * (x0 * i2 + y0 * j2 + z0 * k2) / d11
θ = Angle(M_3, O_r, B)
MM1: {{sin(φ), -cos(φ) * sin(θ), 0.0}, {cos(φ), sin(φ) * sin(θ), 0.0}, {0.0, cos(θ), 1.0}}
MM: MM1 * Invert[MM2]
MV1 = Join({{1.0, 1.0, -1.0}} * MM)
xCV1: (x0 * d * d11 - Element[MV1, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV1, 2.0] * y0 + Element[MV1, 3.0] * z0)) / (x0 * (Element[MV1, 1.0] - x0) + y0 * (Element[MV1, 2.0] - y0) + z0 * (Element[MV1, 3.0] - z0))
yCV1: (Element[MV1, 2.0] - y0) / (Element[MV1, 1.0] - x0) * (xCV1 - x0) + y0
zCV1: (Element[MV1, 3.0] - z0) / (Element[MV1, 1.0] - x0) * (xCV1 - x0) + z0
fi = 1.618033988749895
MicoV12 = Join({{-(fi), 0.0, -1.0}} * MM)
xCicoV12: (x0 * d * d11 - Element[MicoV12, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV12, 2.0] * y0 + Element[MicoV12, 3.0] * z0)) / (x0 * (Element[MicoV12, 1.0] - x0) + y0 * (Element[MicoV12, 2.0] - y0) + z0 * (Element[MicoV12, 3.0] - z0))
zCicoV12: (Element[MicoV12, 3.0] - z0) / (Element[MicoV12, 1.0] - x0) * (xCicoV12 - x0) + z0
yCicoV12: (Element[MicoV12, 2.0] - y0) / (Element[MicoV12, 1.0] - x0) * (xCicoV12 - x0) + y0
MicoV11 = Join({{-(fi), 0.0, 1.0}} * MM)
xCicoV11: (x0 * d * d11 - Element[MicoV11, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV11, 2.0] * y0 + Element[MicoV11, 3.0] * z0)) / (x0 * (Element[MicoV11, 1.0] - x0) + y0 * (Element[MicoV11, 2.0] - y0) + z0 * (Element[MicoV11, 3.0] - z0))
zCicoV11: (Element[MicoV11, 3.0] - z0) / (Element[MicoV11, 1.0] - x0) * (xCicoV11 - x0) + z0
yCicoV11: (Element[MicoV11, 2.0] - y0) / (Element[MicoV11, 1.0] - x0) * (xCicoV11 - x0) + y0
MicoV10 = Join({{fi, 0.0, -1.0}} * MM)
xCicoV10: (x0 * d * d11 - Element[MicoV10, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV10, 2.0] * y0 + Element[MicoV10, 3.0] * z0)) / (x0 * (Element[MicoV10, 1.0] - x0) + y0 * (Element[MicoV10, 2.0] - y0) + z0 * (Element[MicoV10, 3.0] - z0))
zCicoV10: (Element[MicoV10, 3.0] - z0) / (Element[MicoV10, 1.0] - x0) * (xCicoV10 - x0) + z0
yCicoV10: (Element[MicoV10, 2.0] - y0) / (Element[MicoV10, 1.0] - x0) * (xCicoV10 - x0) + y0
MicoV9 = Join({{fi, 0.0, 1.0}} * MM)
xCicoV9: (x0 * d * d11 - Element[MicoV9, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV9, 2.0] * y0 + Element[MicoV9, 3.0] * z0)) / (x0 * (Element[MicoV9, 1.0] - x0) + y0 * (Element[MicoV9, 2.0] - y0) + z0 * (Element[MicoV9, 3.0] - z0))
zCicoV9: (Element[MicoV9, 3.0] - z0) / (Element[MicoV9, 1.0] - x0) * (xCicoV9 - x0) + z0
yCicoV9: (Element[MicoV9, 2.0] - y0) / (Element[MicoV9, 1.0] - x0) * (xCicoV9 - x0) + y0
MicoV8 = Join({{-1.0, -(fi), 0.0}} * MM)
xCicoV8: (x0 * d * d11 - Element[MicoV8, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV8, 2.0] * y0 + Element[MicoV8, 3.0] * z0)) / (x0 * (Element[MicoV8, 1.0] - x0) + y0 * (Element[MicoV8, 2.0] - y0) + z0 * (Element[MicoV8, 3.0] - z0))
zCicoV8: (Element[MicoV8, 3.0] - z0) / (Element[MicoV8, 1.0] - x0) * (xCicoV8 - x0) + z0
yCicoV8: (Element[MicoV8, 2.0] - y0) / (Element[MicoV8, 1.0] - x0) * (xCicoV8 - x0) + y0
MicoV7 = Join({{-1.0, fi, 0.0}} * MM)
xCicoV7: (x0 * d * d11 - Element[MicoV7, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV7, 2.0] * y0 + Element[MicoV7, 3.0] * z0)) / (x0 * (Element[MicoV7, 1.0] - x0) + y0 * (Element[MicoV7, 2.0] - y0) + z0 * (Element[MicoV7, 3.0] - z0))
zCicoV7: (Element[MicoV7, 3.0] - z0) / (Element[MicoV7, 1.0] - x0) * (xCicoV7 - x0) + z0
yCicoV7: (Element[MicoV7, 2.0] - y0) / (Element[MicoV7, 1.0] - x0) * (xCicoV7 - x0) + y0
MicoV6 = Join({{1.0, -(fi), 0.0}} * MM)
xCicoV6: (x0 * d * d11 - Element[MicoV6, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV6, 2.0] * y0 + Element[MicoV6, 3.0] * z0)) / (x0 * (Element[MicoV6, 1.0] - x0) + y0 * (Element[MicoV6, 2.0] - y0) + z0 * (Element[MicoV6, 3.0] - z0))
zCicoV6: (Element[MicoV6, 3.0] - z0) / (Element[MicoV6, 1.0] - x0) * (xCicoV6 - x0) + z0
yCicoV6: (Element[MicoV6, 2.0] - y0) / (Element[MicoV6, 1.0] - x0) * (xCicoV6 - x0) + y0
MicoV5 = Join({{1.0, fi, 0.0}} * MM)
xCicoV5: (x0 * d * d11 - Element[MicoV5, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV5, 2.0] * y0 + Element[MicoV5, 3.0] * z0)) / (x0 * (Element[MicoV5, 1.0] - x0) + y0 * (Element[MicoV5, 2.0] - y0) + z0 * (Element[MicoV5, 3.0] - z0))
zCicoV5: (Element[MicoV5, 3.0] - z0) / (Element[MicoV5, 1.0] - x0) * (xCicoV5 - x0) + z0
yCicoV5: (Element[MicoV5, 2.0] - y0) / (Element[MicoV5, 1.0] - x0) * (xCicoV5 - x0) + y0
MicoV4 = Join({{0.0, -1.0, -(fi)}} * MM)
xCicoV4: (x0 * d * d11 - Element[MicoV4, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV4, 2.0] * y0 + Element[MicoV4, 3.0] * z0)) / (x0 * (Element[MicoV4, 1.0] - x0) + y0 * (Element[MicoV4, 2.0] - y0) + z0 * (Element[MicoV4, 3.0] - z0))
zCicoV4: (Element[MicoV4, 3.0] - z0) / (Element[MicoV4, 1.0] - x0) * (xCicoV4 - x0) + z0
yCicoV4: (Element[MicoV4, 2.0] - y0) / (Element[MicoV4, 1.0] - x0) * (xCicoV4 - x0) + y0
MicoV3 = Join({{0.0, -1.0, fi}} * MM)
xCicoV3: (x0 * d * d11 - Element[MicoV3, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV3, 2.0] * y0 + Element[MicoV3, 3.0] * z0)) / (x0 * (Element[MicoV3, 1.0] - x0) + y0 * (Element[MicoV3, 2.0] - y0) + z0 * (Element[MicoV3, 3.0] - z0))
zCicoV3: (Element[MicoV3, 3.0] - z0) / (Element[MicoV3, 1.0] - x0) * (xCicoV3 - x0) + z0
yCicoV3: (Element[MicoV3, 2.0] - y0) / (Element[MicoV3, 1.0] - x0) * (xCicoV3 - x0) + y0
MicoV2 = Join({{0.0, 1.0, -(fi)}} * MM)
xCicoV2: (x0 * d * d11 - Element[MicoV2, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV2, 2.0] * y0 + Element[MicoV2, 3.0] * z0)) / (x0 * (Element[MicoV2, 1.0] - x0) + y0 * (Element[MicoV2, 2.0] - y0) + z0 * (Element[MicoV2, 3.0] - z0))
zCicoV2: (Element[MicoV2, 3.0] - z0) / (Element[MicoV2, 1.0] - x0) * (xCicoV2 - x0) + z0
yCicoV2: (Element[MicoV2, 2.0] - y0) / (Element[MicoV2, 1.0] - x0) * (xCicoV2 - x0) + y0
MicoV1 = Join({{0.0, 1.0, fi}} * MM)
xCicoV1: (x0 * d * d11 - Element[MicoV1, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MicoV1, 2.0] * y0 + Element[MicoV1, 3.0] * z0)) / (x0 * (Element[MicoV1, 1.0] - x0) + y0 * (Element[MicoV1, 2.0] - y0) + z0 * (Element[MicoV1, 3.0] - z0))
zCicoV1: (Element[MicoV1, 3.0] - z0) / (Element[MicoV1, 1.0] - x0) * (xCicoV1 - x0) + z0
yCicoV1: (Element[MicoV1, 2.0] - y0) / (Element[MicoV1, 1.0] - x0) * (xCicoV1 - x0) + y0
MV20 = Join({{0.0, fi, 1.0 - fi}} * MM)
xCV20: (x0 * d * d11 - Element[MV20, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV20, 2.0] * y0 + Element[MV20, 3.0] * z0)) / (x0 * (Element[MV20, 1.0] - x0) + y0 * (Element[MV20, 2.0] - y0) + z0 * (Element[MV20, 3.0] - z0))
zCV20: (Element[MV20, 3.0] - z0) / (Element[MV20, 1.0] - x0) * (xCV20 - x0) + z0
yCV20: (Element[MV20, 2.0] - y0) / (Element[MV20, 1.0] - x0) * (xCV20 - x0) + y0
MV19 = Join({{0.0, -(fi), 1.0 - fi}} * MM)
xCV19: (x0 * d * d11 - Element[MV19, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV19, 2.0] * y0 + Element[MV19, 3.0] * z0)) / (x0 * (Element[MV19, 1.0] - x0) + y0 * (Element[MV19, 2.0] - y0) + z0 * (Element[MV19, 3.0] - z0))
zCV19: (Element[MV19, 3.0] - z0) / (Element[MV19, 1.0] - x0) * (xCV19 - x0) + z0
yCV19: (Element[MV19, 2.0] - y0) / (Element[MV19, 1.0] - x0) * (xCV19 - x0) + y0
MV18 = Join({{fi - 1.0, 0.0, -(fi)}} * MM)
xCV18: (x0 * d * d11 - Element[MV18, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV18, 2.0] * y0 + Element[MV18, 3.0] * z0)) / (x0 * (Element[MV18, 1.0] - x0) + y0 * (Element[MV18, 2.0] - y0) + z0 * (Element[MV18, 3.0] - z0))
zCV18: (Element[MV18, 3.0] - z0) / (Element[MV18, 1.0] - x0) * (xCV18 - x0) + z0
yCV18: (Element[MV18, 2.0] - y0) / (Element[MV18, 1.0] - x0) * (xCV18 - x0) + y0
MV17 = Join({{1.0 - fi, 0.0, -(fi)}} * MM)
xCV17: (x0 * d * d11 - Element[MV17, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV17, 2.0] * y0 + Element[MV17, 3.0] * z0)) / (x0 * (Element[MV17, 1.0] - x0) + y0 * (Element[MV17, 2.0] - y0) + z0 * (Element[MV17, 3.0] - z0))
zCV17: (Element[MV17, 3.0] - z0) / (Element[MV17, 1.0] - x0) * (xCV17 - x0) + z0
yCV17: (Element[MV17, 2.0] - y0) / (Element[MV17, 1.0] - x0) * (xCV17 - x0) + y0
MV16 = Join({{-(fi), 1.0 - fi, 0.0}} * MM)
xCV16: (x0 * d * d11 - Element[MV16, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV16, 2.0] * y0 + Element[MV16, 3.0] * z0)) / (x0 * (Element[MV16, 1.0] - x0) + y0 * (Element[MV16, 2.0] - y0) + z0 * (Element[MV16, 3.0] - z0))
zCV16: (Element[MV16, 3.0] - z0) / (Element[MV16, 1.0] - x0) * (xCV16 - x0) + z0
yCV16: (Element[MV16, 2.0] - y0) / (Element[MV16, 1.0] - x0) * (xCV16 - x0) + y0
MV15 = Join({{1.0 - fi, 0.0, fi}} * MM)
xCV15: (x0 * d * d11 - Element[MV15, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV15, 2.0] * y0 + Element[MV15, 3.0] * z0)) / (x0 * (Element[MV15, 1.0] - x0) + y0 * (Element[MV15, 2.0] - y0) + z0 * (Element[MV15, 3.0] - z0))
zCV15: (Element[MV15, 3.0] - z0) / (Element[MV15, 1.0] - x0) * (xCV15 - x0) + z0
yCV15: (Element[MV15, 2.0] - y0) / (Element[MV15, 1.0] - x0) * (xCV15 - x0) + y0
MV14 = Join({{fi - 1.0, 0.0, fi}} * MM)
xCV14: (x0 * d * d11 - Element[MV14, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV14, 2.0] * y0 + Element[MV14, 3.0] * z0)) / (x0 * (Element[MV14, 1.0] - x0) + y0 * (Element[MV14, 2.0] - y0) + z0 * (Element[MV14, 3.0] - z0))
zCV14: (Element[MV14, 3.0] - z0) / (Element[MV14, 1.0] - x0) * (xCV14 - x0) + z0
yCV14: (Element[MV14, 2.0] - y0) / (Element[MV14, 1.0] - x0) * (xCV14 - x0) + y0
MV13 = Join({{-(fi), fi - 1.0, 0.0}} * MM)
xCV13: (x0 * d * d11 - Element[MV13, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV13, 2.0] * y0 + Element[MV13, 3.0] * z0)) / (x0 * (Element[MV13, 1.0] - x0) + y0 * (Element[MV13, 2.0] - y0) + z0 * (Element[MV13, 3.0] - z0))
zCV13: (Element[MV13, 3.0] - z0) / (Element[MV13, 1.0] - x0) * (xCV13 - x0) + z0
yCV13: (Element[MV13, 2.0] - y0) / (Element[MV13, 1.0] - x0) * (xCV13 - x0) + y0
MV12 = Join({{0.0, fi, fi - 1.0}} * MM)
xCV12: (x0 * d * d11 - Element[MV12, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV12, 2.0] * y0 + Element[MV12, 3.0] * z0)) / (x0 * (Element[MV12, 1.0] - x0) + y0 * (Element[MV12, 2.0] - y0) + z0 * (Element[MV12, 3.0] - z0))
zCV12: (Element[MV12, 3.0] - z0) / (Element[MV12, 1.0] - x0) * (xCV12 - x0) + z0
yCV12: (Element[MV12, 2.0] - y0) / (Element[MV12, 1.0] - x0) * (xCV12 - x0) + y0
MV11 = Join({{fi, fi - 1.0, 0.0}} * MM)
xCV11: (x0 * d * d11 - Element[MV11, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV11, 2.0] * y0 + Element[MV11, 3.0] * z0)) / (x0 * (Element[MV11, 1.0] - x0) + y0 * (Element[MV11, 2.0] - y0) + z0 * (Element[MV11, 3.0] - z0))
zCV11: (Element[MV11, 3.0] - z0) / (Element[MV11, 1.0] - x0) * (xCV11 - x0) + z0
yCV11: (Element[MV11, 2.0] - y0) / (Element[MV11, 1.0] - x0) * (xCV11 - x0) + y0
MV10 = Join({{fi, 1.0 - fi, 0.0}} * MM)
xCV10: (x0 * d * d11 - Element[MV10, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV10, 2.0] * y0 + Element[MV10, 3.0] * z0)) / (x0 * (Element[MV10, 1.0] - x0) + y0 * (Element[MV10, 2.0] - y0) + z0 * (Element[MV10, 3.0] - z0))
zCV10: (Element[MV10, 3.0] - z0) / (Element[MV10, 1.0] - x0) * (xCV10 - x0) + z0
yCV10: (Element[MV10, 2.0] - y0) / (Element[MV10, 1.0] - x0) * (xCV10 - x0) + y0
MV9 = Join({{0.0, -(fi), fi - 1.0}} * MM)
xCV9: (x0 * d * d11 - Element[MV9, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV9, 2.0] * y0 + Element[MV9, 3.0] * z0)) / (x0 * (Element[MV9, 1.0] - x0) + y0 * (Element[MV9, 2.0] - y0) + z0 * (Element[MV9, 3.0] - z0))
zCV9: (Element[MV9, 3.0] - z0) / (Element[MV9, 1.0] - x0) * (xCV9 - x0) + z0
yCV9: (Element[MV9, 2.0] - y0) / (Element[MV9, 1.0] - x0) * (xCV9 - x0) + y0
r = 0.44 (slider from 0 to 2, step 0.01)
MV8 = Join({{-1.0, -1.0, -1.0}} * MM)
xCV8: (x0 * d * d11 - Element[MV8, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV8, 2.0] * y0 + Element[MV8, 3.0] * z0)) / (x0 * (Element[MV8, 1.0] - x0) + y0 * (Element[MV8, 2.0] - y0) + z0 * (Element[MV8, 3.0] - z0))
zCV8: (Element[MV8, 3.0] - z0) / (Element[MV8, 1.0] - x0) * (xCV8 - x0) + z0
yCV8: (Element[MV8, 2.0] - y0) / (Element[MV8, 1.0] - x0) * (xCV8 - x0) + y0
MV7 = Join({{-1.0, -1.0, 1.0}} * MM)
xCV7: (x0 * d * d11 - Element[MV7, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV7, 2.0] * y0 + Element[MV7, 3.0] * z0)) / (x0 * (Element[MV7, 1.0] - x0) + y0 * (Element[MV7, 2.0] - y0) + z0 * (Element[MV7, 3.0] - z0))
zCV7: (Element[MV7, 3.0] - z0) / (Element[MV7, 1.0] - x0) * (xCV7 - x0) + z0
yCV7: (Element[MV7, 2.0] - y0) / (Element[MV7, 1.0] - x0) * (xCV7 - x0) + y0
MV6 = Join({{-1.0, 1.0, -1.0}} * MM)
xCV6: (x0 * d * d11 - Element[MV6, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV6, 2.0] * y0 + Element[MV6, 3.0] * z0)) / (x0 * (Element[MV6, 1.0] - x0) + y0 * (Element[MV6, 2.0] - y0) + z0 * (Element[MV6, 3.0] - z0))
zCV6: (Element[MV6, 3.0] - z0) / (Element[MV6, 1.0] - x0) * (xCV6 - x0) + z0
yCV6: (Element[MV6, 2.0] - y0) / (Element[MV6, 1.0] - x0) * (xCV6 - x0) + y0
MV5 = Join({{-1.0, 1.0, 1.0}} * MM)
xCV5: (x0 * d * d11 - Element[MV5, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV5, 2.0] * y0 + Element[MV5, 3.0] * z0)) / (x0 * (Element[MV5, 1.0] - x0) + y0 * (Element[MV5, 2.0] - y0) + z0 * (Element[MV5, 3.0] - z0))
zCV5: (Element[MV5, 3.0] - z0) / (Element[MV5, 1.0] - x0) * (xCV5 - x0) + z0
yCV5: (Element[MV5, 2.0] - y0) / (Element[MV5, 1.0] - x0) * (xCV5 - x0) + y0
MV4 = Join({{1.0, -1.0, -1.0}} * MM)
xCV4: (x0 * d * d11 - Element[MV4, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV4, 2.0] * y0 + Element[MV4, 3.0] * z0)) / (x0 * (Element[MV4, 1.0] - x0) + y0 * (Element[MV4, 2.0] - y0) + z0 * (Element[MV4, 3.0] - z0))
zCV4: (Element[MV4, 3.0] - z0) / (Element[MV4, 1.0] - x0) * (xCV4 - x0) + z0
yCV4: (Element[MV4, 2.0] - y0) / (Element[MV4, 1.0] - x0) * (xCV4 - x0) + y0
MV2 = Join({{1.0, 1.0, 1.0}} * MM)
xCV2: (x0 * d * d11 - Element[MV2, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV2, 2.0] * y0 + Element[MV2, 3.0] * z0)) / (x0 * (Element[MV2, 1.0] - x0) + y0 * (Element[MV2, 2.0] - y0) + z0 * (Element[MV2, 3.0] - z0))
zCV2: (Element[MV2, 3.0] - z0) / (Element[MV2, 1.0] - x0) * (xCV2 - x0) + z0
yCV2: (Element[MV2, 2.0] - y0) / (Element[MV2, 1.0] - x0) * (xCV2 - x0) + y0
MV3 = Join({{1.0, -1.0, 1.0}} * MM)
xCV3: (x0 * d * d11 - Element[MV3, 1.0] * (y0^(2.0) + z0^(2.0) + d * d11) + x0 * (Element[MV3, 2.0] * y0 + Element[MV3, 3.0] * z0)) / (x0 * (Element[MV3, 1.0] - x0) + y0 * (Element[MV3, 2.0] - y0) + z0 * (Element[MV3, 3.0] - z0))
zCV3: (Element[MV3, 3.0] - z0) / (Element[MV3, 1.0] - x0) * (xCV3 - x0) + z0
yCV3: (Element[MV3, 2.0] - y0) / (Element[MV3, 1.0] - x0) * (xCV3 - x0) + y0
CV6: O + xCV6 * i2 + yCV6 * j2 + zCV6 * k2
CV7: O + xCV7 * i2 + yCV7 * j2 + zCV7 * k2
r_{13} = Segment(CV7, CV6)
u = Vector(O_r, O)
yz: Escala * cos(θ)
k: (0.0, cos(θ)) * Escala
i: (sin(φ), -cos(φ) * sin(θ)) * Escala
j: (cos(φ), sin(φ) * sin(θ)) * Escala
a11: y0^(2.0) + z0^(2.0) + 2.0 * x0
b11: x0^(2.0) + y0^(2.0) + z0^(2.0)
H = (-1, -5)
I = (1, -5)
Mira1, Mira2, Mira3, Mira4 = Intersect(mira1, mira2)
c = Circle(O, Escala)
b = Line(O, yAxis)
k_{13} = Segment(Mira3, Mira2)
l = Segment((-1.0, 0.0), U_1)
m = Segment((0.0, -1.0), M_3)
V1: O + i + j - k
V2: O + i + j + k
V3: O + i - j + k
V4: O + i - j - k
V5: O - i + j + k
V6: O - i + j - k
V7: O - i - j + k
V8: O - i - j - k
octV1 = Midpoint(V1, V3)
octV2 = Midpoint(V1, V5)
octV3 = Midpoint(V8, V5)
octV4 = Midpoint(V3, V8)
octV5 = Midpoint(V3, V5)
octV6 = Midpoint(V1, V8)
cub1M = Midpoint(V1, V2)
cub2M = Midpoint(V3, V2)
cub4M = Midpoint(V1, V6)
cub5M = Midpoint(V7, V8)
cub1Ang = Angle(V3, cub1M, V4)
cubV2b = If(cub1Ang < 180.0°, V2, V3)
cubV1b = If(cub1Ang < 180.0°, V1, V4)
cub1: {Polygon[V3, V4, cubV1b, cubV2b]}
cub3Ang = Angle(V6, cub1M, V5)
cubV2c = If(cub3Ang < 180.0°, V2, V5)
cubV1c = If(cub3Ang < 180.0°, V1, V6)
cub3: {Polygon[V6, V5, cubV2c, cubV1c]}
cub5Ang = Angle(V5, cub5M, V6)
cubV5b = If(cub5Ang < 180.0°, V5, V7)
cubV6b = If(cub5Ang < 180.0°, V6, V8)
cub5: {Polygon[V8, V7, cubV5b, cubV6b]}
cub6Ang = Angle(V4, cub5M, V3)
cubV7b = If(cub6Ang < 180.0°, V7, V3)
cubV8b = If(cub6Ang < 180.0°, V8, V4)
cub6: {Polygon[V4, V3, cubV7b, cubV8b]}
cub2Ang = Angle(V5, cub2M, V7)
cubV3b = If(cub2Ang < 180.0°, V3, V7)
cubV2d = If(cub2Ang < 180.0°, V2, V5)
cub2: {Polygon[V7, V5, cubV2d, cubV3b]}
cub4Ang = Angle(V4, cub4M, V8)
octA1 = Segment(octV1, octV2)
octA2 = Segment(octV3, octV2)
octA3 = Segment(octV3, octV4)
octA4 = Segment(octV1, octV4)
octA5 = Segment(octV1, octV5)
octA6 = Segment(octV2, octV5)
octA7 = Segment(octV3, octV5)
octA8 = Segment(octV4, octV5)
octA9 = Segment(octV1, octV6)
octA10 = Segment(octV2, octV6)
octA11 = Segment(octV3, octV6)
octA12 = Segment(octV4, octV6)
tetA1 = Segment(V1, V3)
tetA2 = Segment(V1, V8)
tetA3 = Segment(V3, V8)
tetA4 = Segment(V3, V5)
tetA5 = Segment(V1, V5)
tetA6 = Segment(V8, V5)
cubA1 = Segment(V1, V2)
cubA2 = Segment(V2, V3)
cubA3 = Segment(V3, V4)
cubA4 = Segment(V4, V1)
cubA5 = Segment(V1, V6)
cubA6 = Segment(V6, V8)
cubA7 = Segment(V8, V4)
cubA8 = Segment(V2, V5)
cubA9 = Segment(V5, V7)
cubA10 = Segment(V7, V3)
cubA11 = Segment(V6, V5)
cubA12 = Segment(V7, V8)
cubV1d = If(cub4Ang < 180.0°, V1, V4)
cubV6c = If(cub4Ang < 180.0°, V6, V8)
cub4: {Polygon[V8, V4, cubV1d, cubV6c]}
tet1Ang = Angle(V5, V1, V3)
tetV1 = If(tet1Ang < 180.0°, V1, V3)
tet1: {Polygon[V5, V3, tetV1]}
tet2Ang = Angle(V5, V8, V1)
tetV8 = If(tet2Ang < 180.0°, V8, V5)
tet2: {Polygon[V5, V1, tetV8]}
tet3Ang = Angle(V8, V5, V3)
tetV5 = If(tet3Ang < 180.0°, V5, V3)
tet3: {Polygon[V8, V3, tetV5]}
tet4Ang = Angle(V8, V3, V1)
tetV3 = If(tet4Ang < 180.0°, V3, V1)
tet4: {Polygon[V8, V1, tetV3]}
oct1Ang = Angle(octV2, octV1, octV5)
octV1b = If(oct1Ang < 180.0°, octV1, octV2)
oct2Ang = Angle(octV3, octV2, octV5)
octV2b = If(oct2Ang < 180.0°, octV2, octV3)
oct3Ang = Angle(octV4, octV3, octV5)
octV3b = If(oct3Ang < 180.0°, octV3, octV4)
oct4Ang = Angle(octV1, octV4, octV5)
octV4b = If(oct4Ang < 180.0°, octV4, octV1)
oct5Ang = Angle(octV6, octV1, octV2)
octV1c = If(oct5Ang < 180.0°, octV1, octV2)
oct6Ang = Angle(octV3, octV6, octV2)
octV6b = If(oct6Ang < 180.0°, octV6, octV3)
oct7Ang = Angle(octV6, octV3, octV4)
octV3c = If(oct7Ang < 180.0°, octV3, octV4)
oct8Ang = Angle(octV6, octV4, octV1)
octV4c = If(oct8Ang < 180.0°, octV4, octV1)
oct1: {Polygon[octV1b, octV2, octV5]}
oct2: {Polygon[octV2b, octV3, octV5]}
oct3: {Polygon[octV3b, octV4, octV5]}
oct4: {Polygon[octV4b, octV1, octV5]}
oct5: {Polygon[octV1c, octV2, octV6]}
oct6: {Polygon[octV6b, octV2, octV3]}
oct7: {Polygon[octV3c, octV4, octV6]}
oct8: {Polygon[octV4c, octV1, octV6]}
IcoV1: O + 0.0 * i + j + fi * k
IcoV2: O + 0.0 * i + j - fi * k
IcoV3: O + 0.0 * i - j + fi * k
IcoV4: O + 0.0 * i - j - fi * k
IcoV5: O + i + fi * j + 0.0 * k
IcoV6: O + i - fi * j + 0.0 * k
IcoV7: O - i + fi * j + 0.0 * k
IcoV8: O - i - fi * j + 0.0 * k
IcoV9: O + fi * i + 0.0 * j + k
IcoV10: O + fi * i + 0.0 * j - k
IcoV11: O - fi * i + 0.0 * j + k
IcoV12: O - fi * i + 0.0 * j - k
icoA04 = Segment(IcoV7, IcoV11)
icoA06 = Segment(IcoV11, IcoV12)
icoA08 = Segment(IcoV7, IcoV12)
icoA11 = Segment(IcoV11, IcoV8)
icoA13 = Segment(IcoV8, IcoV12)
icoA19 = Segment(IcoV7, IcoV2)
icoA21 = Segment(IcoV2, IcoV12)
icoA23 = Segment(IcoV4, IcoV12)
icoA25 = Segment(IcoV4, IcoV2)
icoA27 = Segment(IcoV4, IcoV8)
icoA29 = Segment(IcoV5, IcoV2)
icoA01 = Segment(IcoV5, IcoV7)
icoA02 = Segment(IcoV5, IcoV1)
icoA03 = Segment(IcoV1, IcoV7)
icoA05 = Segment(IcoV9, IcoV5)
icoA09 = Segment(IcoV5, IcoV10)
icoA10 = Segment(IcoV9, IcoV10)
icoA12 = Segment(IcoV2, IcoV10)
icoA07 = Segment(IcoV9, IcoV1)
icoA14 = Segment(IcoV4, IcoV10)
icoA15 = Segment(IcoV1, IcoV11)
icoA16 = Segment(IcoV3, IcoV1)
icoA17 = Segment(IcoV3, IcoV11)
icoA18 = Segment(IcoV3, IcoV8)
icoA20 = Segment(IcoV6, IcoV8)
icoA22 = Segment(IcoV6, IcoV3)
icoA24 = Segment(IcoV9, IcoV3)
icoA26 = Segment(IcoV9, IcoV6)
icoA28 = Segment(IcoV6, IcoV10)
icoA30 = Segment(IcoV6, IcoV4)
ico1Ang = Angle(IcoV3, IcoV9, IcoV6)
icoV9b = If(ico1Ang < 180.0°, IcoV9, IcoV6)
ico2Ang = Angle(IcoV3, IcoV6, IcoV8)
icoV6b = If(ico2Ang < 180.0°, IcoV6, IcoV8)
ico3Ang = Angle(IcoV3, IcoV8, IcoV11)
icoV8b = If(ico3Ang < 180.0°, IcoV8, IcoV11)
ico4Ang = Angle(IcoV3, IcoV11, IcoV1)
icoV11b = If(ico4Ang < 180.0°, IcoV11, IcoV1)
ico5Ang = Angle(IcoV3, IcoV1, IcoV9)
icoV1b = If(ico5Ang < 180.0°, IcoV1, IcoV9)
ico6Ang = Angle(IcoV9, IcoV10, IcoV6)
icoV10b = If(ico6Ang < 180.0°, IcoV10, IcoV6)
ico7Ang = Angle(IcoV6, IcoV10, IcoV4)
icoV10c = If(ico7Ang < 180.0°, IcoV10, IcoV4)
ico8Ang = Angle(IcoV6, IcoV4, IcoV8)
icoV4b = If(ico8Ang < 180.0°, IcoV4, IcoV8)
ico9Ang = Angle(IcoV8, IcoV4, IcoV12)
icoV4c = If(ico9Ang < 180.0°, IcoV4, IcoV12)
ico10Ang = Angle(IcoV8, IcoV12, IcoV11)
icoV12b = If(ico10Ang < 180.0°, IcoV12, IcoV11)
ico11Ang = Angle(IcoV11, IcoV12, IcoV7)
icoV12c = If(ico11Ang < 180.0°, IcoV12, IcoV11)
ico12Ang = Angle(IcoV11, IcoV7, IcoV1)
icoV7b = If(ico12Ang < 180.0°, IcoV7, IcoV11)
ico13Ang = Angle(IcoV1, IcoV7, IcoV5)
icoV7c = If(ico13Ang < 180.0°, IcoV7, IcoV1)
ico14Ang = Angle(IcoV1, IcoV5, IcoV9)
icoV5b = If(ico14Ang < 180.0°, IcoV5, IcoV1)
ico15Ang = Angle(IcoV9, IcoV5, IcoV10)
icoV5c = If(ico15Ang < 180.0°, IcoV5, IcoV9)
ico16Ang = Angle(IcoV10, IcoV2, IcoV4)
icoV2b = If(ico16Ang < 180.0°, IcoV2, IcoV4)
ico17Ang = Angle(IcoV4, IcoV2, IcoV12)
icoV2c = If(ico17Ang < 180.0°, IcoV2, IcoV4)
ico18Ang = Angle(IcoV2, IcoV7, IcoV12)
icoV7d = If(ico18Ang < 180.0°, IcoV7, IcoV12)
ico19Ang = Angle(IcoV5, IcoV7, IcoV2)
icoV7e = If(ico19Ang < 180.0°, IcoV7, IcoV5)
ico20Ang = Angle(IcoV5, IcoV2, IcoV10)
icoV2d = If(ico20Ang < 180.0°, IcoV2, IcoV5)
ico01: {Polygon[IcoV6, IcoV3, icoV9b]}
ico02: {Polygon[IcoV8, IcoV3, icoV6b]}
ico03: {Polygon[IcoV11, IcoV3, icoV8b]}
ico4: {Polygon[IcoV1, IcoV3, icoV11b]}
ico5: {Polygon[IcoV9, IcoV3, icoV1b]}
ico6: {Polygon[IcoV6, IcoV9, icoV10b]}
ico7: {Polygon[IcoV4, IcoV6, icoV10c]}
ico8: {Polygon[IcoV8, IcoV6, icoV4b]}
ico9: {Polygon[IcoV8, IcoV12, icoV4c]}
ico10: {Polygon[IcoV8, IcoV11, icoV12b]}
ico11: {Polygon[IcoV7, IcoV11, icoV12c]}
ico12: {Polygon[IcoV1, IcoV11, icoV7b]}
ico13: {Polygon[IcoV1, IcoV5, icoV7c]}
ico14: {Polygon[IcoV1, IcoV9, icoV5b]}
ico15: {Polygon[IcoV10, IcoV9, icoV5c]}
ico16: {Polygon[IcoV10, IcoV4, icoV2b]}
ico17: {Polygon[IcoV12, IcoV4, icoV2c]}
ico18: {Polygon[IcoV12, IcoV2, icoV7d]}
ico19: {Polygon[IcoV5, IcoV2, icoV7e]}
ico20: {Polygon[IcoV5, IcoV10, icoV2d]}
icoA15M = Midpoint(IcoV1, IcoV11)
V15: O - (fi - 1.0) * i + fi * k
A13 = Segment(V5, V15)
icoA03M = Midpoint(IcoV1, IcoV7)
V12: O + fi * j - (1.0 - fi) * k
A12 = Segment(V5, V12)
A11 = Segment(V12, V2)
icoA07M = Midpoint(IcoV9, IcoV1)
V14: O + (fi - 1.0) * i + fi * k
A1 = Segment(V2, V14)
A2_1 = Segment(V14, V15)
icoA05M = Midpoint(IcoV9, IcoV5)
V11: O + fi * i - (1.0 - fi) * j
A10 = Segment(V2, V11)
icoA01M = Midpoint(IcoV5, IcoV7)
V20: O - (fi - 1.0) * k + fi * j
A20 = Segment(V12, V20)
A9 = Segment(V11, V1)
A19 = Segment(V20, V1)
A21 = Segment(V14, V3)
icoA10M = Midpoint(IcoV9, IcoV10)
V10: O + fi * i + (1.0 - fi) * j
A29 = Segment(V11, V10)
A30 = Segment(V10, V3)
A28 = Segment(V10, V4)
icoA14M = Midpoint(IcoV4, IcoV10)
V18: O + (fi - 1.0) * i - fi * k
A8 = Segment(V1, V18)
A27 = Segment(V4, V18)
A18 = Segment(V20, V6)
icoA21M = Midpoint(IcoV2, IcoV12)
V17: O - (fi - 1.0) * i - fi * k
A7 = Segment(V18, V17)
A17 = Segment(V17, V6)
A6 = Segment(V17, V8)
icoA27M = Midpoint(IcoV4, IcoV8)
V19: O - (fi - 1.0) * k - fi * j
A26 = Segment(V4, V19)
A25 = Segment(V19, V8)
icoA08M = Midpoint(IcoV12, IcoV7)
V13: O - fi * i - (1.0 - fi) * j
A16 = Segment(V6, V13)
A14 = Segment(V13, V5)
icoA13M = Midpoint(IcoV8, IcoV12)
V16: O - (fi - 1.0) * j - fi * i
A5 = Segment(V8, V16)
A15 = Segment(V16, V13)
A3_1 = Segment(V15, V7)
A4 = Segment(V16, V7)
icoA20M = Midpoint(IcoV8, IcoV6)
V9: O - fi * j + (-1.0 + fi) * k
A24 = Segment(V9, V19)
A22 = Segment(V3, V9)
A23 = Segment(V9, V7)
dodM9: (V1 + V11 + V2 + V12 + V20) / 5.0
dod9Ang = Angle(V11, dodM9, V1)
V2b = If(dod9Ang < 180.0°, V2, V11)
V12b = If(dod9Ang < 180.0°, V12, V11)
V20b = If(dod9Ang < 180.0°, V20, V1)
dodM1: (V15 + V14 + V2 + V12 + V5) / 5.0
dod1Ang = Angle(V12, dodM1, V5)
V2c = If(dod1Ang < 180.0°, V2, V12)
V14b = If(dod1Ang < 180.0°, V14, V12)
V15b = If(dod1Ang < 180.0°, V15, V5)
dodM3: (V15 + V5 + V13 + V16 + V7) / 5.0
dod3Ang = Angle(V5, dodM3, V13)
V15c = If(dod3Ang < 180.0°, V15, V5)
V7b = If(dod3Ang < 180.0°, V7, V5)
V16b = If(dod3Ang < 180.0°, V16, V13)
dodM4: (V13 + V6 + V20 + V12 + V5) / 5.0
dod4Ang = Angle(V20, dodM4, V6)
V12c = If(dod4Ang < 180.0°, V12, V20)
V5b = If(dod4Ang < 180.0°, V5, V20)
V13b = If(dod4Ang < 180.0°, V13, V6)
dodM12: (V1 + V6 + V20 + V18 + V17) / 5.0
dod12Ang = Angle(V1, dodM12, V18)
V20c = If(dod12Ang < 180.0°, V20, V1)
V6b = If(dod12Ang < 180.0°, V6, V1)
V17b = If(dod12Ang < 180.0°, V17, V18)
dodM5: (V13 + V16 + V6 + V8 + V17) / 5.0
dod5Ang = Angle(V16, dodM5, V13)
V6c = If(dod5Ang < 180.0°, V6, V13)
V17c = If(dod5Ang < 180.0°, V17, V13)
V8b = If(dod5Ang < 180.0°, V8, V16)
dodM8: (V2 + V14 + V3 + V10 + V11) / 5.0
dod8Ang = Angle(V10, dodM8, V11)
V2d = If(dod8Ang < 180.0°, V2, V11)
V14c = If(dod8Ang < 180.0°, V14, V11)
V3b = If(dod8Ang < 180.0°, V3, V10)
dodM2: (V9 + V7 + V3 + V14 + V15) / 5.0
dodM6: (V9 + V16 + V7 + V8 + V19) / 5.0
dodM7: (V9 + V4 + V3 + V10 + V19) / 5.0
dodM11: (V8 + V19 + V4 + V17 + V18) / 5.0
dodM10: (V1 + V18 + V4 + V10 + V11) / 5.0
dod2Ang = Angle(V15, dodM2, V7)
V14d = If(dod2Ang < 180.0°, V14, V15)
V3c = If(dod2Ang < 180.0°, V3, V15)
V9b = If(dod2Ang < 180.0°, V9, V7)
dod6Ang = Angle(V19, dodM6, V9)
V8c = If(dod6Ang < 180.0°, V8, V19)
V16c = If(dod6Ang < 180.0°, V16, V19)
V7c = If(dod6Ang < 180.0°, V7, V9)
dod7Ang = Angle(V4, dodM7, V10)
V3d = If(dod7Ang < 180.0°, V3, V10)
V9c = If(dod7Ang < 180.0°, V9, V10)
V19b = If(dod7Ang < 180.0°, V19, V4)
dod11Ang = Angle(V18, dodM11, V4)
V17d = If(dod11Ang < 180.0°, V17, V18)
V8d = If(dod11Ang < 180.0°, V8, V18)
V19c = If(dod11Ang < 180.0°, V19, V4)
dod10Ang = Angle(V1, dodM10, V11)
V18b = If(dod10Ang < 180.0°, V18, V1)
V4b = If(dod10Ang < 180.0°, V4, V1)
V10b = If(dod10Ang < 180.0°, V10, V11)
dod9: {Polygon[V2b, V12b, V20b, V1, V11]}
dod01: {Polygon[V2c, V14b, V15b, V5, V12]}
dod03: {Polygon[V15c, V7b, V16b, V13, V5]}
dod4: {Polygon[V12c, V5b, V13b, V6, V20]}
dod12: {Polygon[V20c, V6b, V17b, V18, V1]}
dod5: {Polygon[V6c, V17c, V8b, V16, V13]}
dod8: {Polygon[V2d, V14c, V3b, V10, V11]}
dod02: {Polygon[V14d, V3c, V9b, V7, V15]}
dod6: {Polygon[V8c, V16c, V7c, V9, V19]}
dod7: {Polygon[V3d, V9c, V19b, V4, V10]}
dod11: {Polygon[V17d, V8d, V19c, V4, V18]}
dod10: {Polygon[V18b, V4b, V10b, V11, V1]}
A19' = Segment(V20, V1)
carasOcta = false
verticesOcta = false
carasTetra = false
verticesTetra = false
carasCubo = false
verticesCubo = false
carasDod = false
verticesDod = false
carasIco = true
verticesIco = true
aristasOcta = false
aristasTetra = false
aristasCubo = false
aristasDod = false
aristasIco = true
verEjes = false
C_1 = (-1, -2)
D = (1, -2)
E = (1, -4)
F = (-1, -4)
CV3: O + xCV3 * i2 + yCV3 * j2 + zCV3 * k2
CV2: O + xCV2 * i2 + yCV2 * j2 + zCV2 * k2
CV1: O + xCV1 * i2 + yCV1 * j2 + zCV1 * k2
CV4: O + xCV4 * i2 + yCV4 * j2 + zCV4 * k2
CV5: O + xCV5 * i2 + yCV5 * j2 + zCV5 * k2
CV8: O + xCV8 * i2 + yCV8 * j2 + zCV8 * k2
rV3 = Segment(P, CV3)
rV2 = Segment(P, CV2)
rV5 = Segment(P, CV5)
rV7 = Segment(P, CV7)
rV4 = Segment(P, CV4)
rV8 = Segment(P, CV8)
rV6 = Segment(P, CV6)
rV1 = Segment(P, CV1)
proyecta = true
f = Segment(CV3, CV5)
h = Segment(CV7, CV2)
CoctV5 = Intersect(f, h)
d_{13} = Segment(CV3, CV8)
i_{13} = Segment(CV7, CV4)
CoctV4 = Intersect(d_{13}, i_{13})
n = Segment(CV2, CV6)
p = Segment(CV5, CV1)
q = Segment(CV8, CV5)
k_1 = Segment(CV3, CV1)
l_1 = Segment(CV4, CV2)
CoctV1 = Intersect(k_1, l_1)
CoctV2 = Intersect(n, p)
CoctV3 = Intersect(q, r_{13})
m_1 = Segment(CV8, CV1)
n_1 = Segment(CV6, CV4)
CoctV6 = Intersect(m_1, n_1)
h_2 = Segment(P, CoctV5)
i_2 = Segment(P, CoctV4)
j_2 = Segment(P, CoctV1)
k_2 = Segment(P, CoctV3)
l_2 = Segment(P, CoctV2)
m_2 = Segment(P, CoctV6)
t_2 = Segment(P, CV3)
a_3 = Segment(P, CV5)
b_3 = Segment(P, CV8)
c_3 = Segment(P, CV1)
CicoV1: O + xCicoV1 * i2 + yCicoV1 * j2 + zCicoV1 * k2
e_3 = Segment(P, CicoV1)
CicoV2: O + xCicoV2 * i2 + yCicoV2 * j2 + zCicoV2 * k2
f_3 = Segment(P, CicoV2)
CicoV3: O + xCicoV3 * i2 + yCicoV3 * j2 + zCicoV3 * k2
g_3 = Segment(P, CicoV3)
CicoV4: O + xCicoV4 * i2 + yCicoV4 * j2 + zCicoV4 * k2
h_3 = Segment(P, CicoV4)
CicoV5: O + xCicoV5 * i2 + yCicoV5 * j2 + zCicoV5 * k2
i_3 = Segment(P, CicoV5)
CicoV6: O + xCicoV6 * i2 + yCicoV6 * j2 + zCicoV6 * k2
j_3 = Segment(P, CicoV6)
CicoV7: O + xCicoV7 * i2 + yCicoV7 * j2 + zCicoV7 * k2
k_3 = Segment(P, CicoV7)
CicoV8: O + xCicoV8 * i2 + yCicoV8 * j2 + zCicoV8 * k2
l_3 = Segment(P, CicoV8)
CicoV9: O + xCicoV9 * i2 + yCicoV9 * j2 + zCicoV9 * k2
m_3 = Segment(P, CicoV9)
CicoV10: O + xCicoV10 * i2 + yCicoV10 * j2 + zCicoV10 * k2
n_3 = Segment(P, CicoV10)
CicoV11: O + xCicoV11 * i2 + yCicoV11 * j2 + zCicoV11 * k2
p_3 = Segment(P, CicoV11)
CicoV12: O + xCicoV12 * i2 + yCicoV12 * j2 + zCicoV12 * k2
q_3 = Segment(P, CicoV12)
CV14: O + xCV14 * i2 + yCV14 * j2 + zCV14 * k2
i_5 = Segment(P, CV14)
j_5 = Segment(P, CV3)
k_5 = Segment(P, CV7)
l_5 = Segment(P, CV2)
m_5 = Segment(P, CV5)
n_5 = Segment(P, CV6)
p_5 = Segment(P, CV1)
q_5 = Segment(P, CV8)
r_5 = Segment(P, CV4)
CV15: O + xCV15 * i2 + yCV15 * j2 + zCV15 * k2
s_5 = Segment(P, CV15)
CV17: O + xCV17 * i2 + yCV17 * j2 + zCV17 * k2
t_5 = Segment(P, CV17)
CV18: O + xCV18 * i2 + yCV18 * j2 + zCV18 * k2
a_6 = Segment(P, CV18)
CV19: O + xCV19 * i2 + yCV19 * j2 + zCV19 * k2
b_6 = Segment(P, CV19)
CV20: O + xCV20 * i2 + yCV20 * j2 + zCV20 * k2
c_6 = Segment(P, CV20)
CV12: O + xCV12 * i2 + yCV12 * j2 + zCV12 * k2
d_6 = Segment(P, CV12)
CV9: O + xCV9 * i2 + yCV9 * j2 + zCV9 * k2
e_6 = Segment(P, CV9)
CV11: O + xCV11 * i2 + yCV11 * j2 + zCV11 * k2
f_6 = Segment(P, CV11)
CV13: O + xCV13 * i2 + yCV13 * j2 + zCV13 * k2
g_6 = Segment(P, CV13)
CV16: O + xCV16 * i2 + yCV16 * j2 + zCV16 * k2
h_6 = Segment(P, CV16)
CV10: O + xCV10 * i2 + yCV10 * j2 + zCV10 * k2
i_6 = Segment(P, CV10)
solo = false
libre = false
papelAncho = 18.7
papelAlto = 18.7
T = (3.5, 1.2)
lista1: {Polygon[T, T + (papelAncho, 0.0), T + (papelAncho, -(papelAlto)), T + (0.0, -(papelAlto))]}
B1 = 12.277276780000003 (slider from 3.5 to 22.2, step 0.01)
B2_1 = 18.848157580000002 (slider from 3.5 to 22.2, step 0.01)
B3_1 = 5.319873580000002 (slider from 3.5 to 22.2, step 0.01)
B4 = 11.987384980000002 (slider from 3.5 to 22.2, step 0.01)
B5 = 18.97699838 (slider from 3.5 to 22.2, step 0.01)
B6 = 5.223242980000002 (slider from 3.5 to 22.2, step 0.01)
B7 = 7.091434580000002 (slider from 3.5 to 22.2, step 0.01)
B8 = 17.108806780000002 (slider from 3.5 to 22.2, step 0.01)
B9 = 7.220275380000002 (slider from 3.5 to 22.2, step 0.01)
B10 = 17.076596580000004 (slider from 3.5 to 22.2, step 0.01)
B11 = 8.508683380000003 (slider from 3.5 to 22.2, step 0.01)
B12 = 15.530506980000002 (slider from 3.5 to 22.2, step 0.01)
B13 = 8.701944580000003 (slider from 3.5 to 22.2, step 0.01)
B14 = 15.852608980000003 (slider from 3.5 to 22.2, step 0.01)
B15 = 5.223242980000002 (slider from 3.5 to 22.2, step 0.01)
B16 = 18.880367780000004 (slider from 3.5 to 22.2, step 0.01)
B17 = 5.319873580000002 (slider from 3.5 to 22.2, step 0.01)
B18 = 18.912577980000002 (slider from 3.5 to 22.2, step 0.01)
B19 = 7.639007980000002 (slider from 3.5 to 22.2, step 0.01)
B20 = 5.223242980000002 (slider from 3.5 to 22.2, step 0.01)
B21 = 14.854092780000002 (slider from 3.5 to 22.2, step 0.01)
B22 = 17.237647580000004 (slider from 3.5 to 22.2, step 0.01)
B23 = 9.056256780000002 (slider from 3.5 to 22.2, step 0.01)
B24 = 5.191032780000002 (slider from 3.5 to 22.2, step 0.01)
B25 = 18.944788180000003 (slider from 3.5 to 22.2, step 0.01)
B26 = 18.97699838 (slider from 3.5 to 22.2, step 0.01)
B27 = 18.944788180000003 (slider from 3.5 to 22.2, step 0.01)
B28 = 10.505715780000003 (slider from 3.5 to 22.2, step 0.01)
B29 = 9.925932180000002 (slider from 3.5 to 22.2, step 0.01)
B30 = 12.373907380000002 (slider from 3.5 to 22.2, step 0.01)
B31 = 5.255453180000003 (slider from 3.5 to 22.2, step 0.01)
B32 = 11.987384980000002 (slider from 3.5 to 22.2, step 0.01)
B33 = 5.223242980000002 (slider from 3.5 to 22.2, step 0.01)
B34 = 6.543861180000002 (slider from 3.5 to 22.2, step 0.01)
B35 = 7.606797780000003 (slider from 3.5 to 22.2, step 0.01)
B36 = 18.912577980000002 (slider from 3.5 to 22.2, step 0.01)
B37 = 16.529023180000003 (slider from 3.5 to 22.2, step 0.01)
B38 = 14.306519380000003 (slider from 3.5 to 22.2, step 0.01)
B39 = 11.987384980000002 (slider from 3.5 to 22.2, step 0.01)
B40 = 8.862995580000002 (slider from 3.5 to 22.2, step 0.01)
B41 = 18.944788180000003 (slider from 3.5 to 22.2, step 0.01)
B42 = 5.223242980000002 (slider from 3.5 to 22.2, step 0.01)
B43 = 15.433876380000003 (slider from 3.5 to 22.2, step 0.01)
B44 = 5.287663380000002 (slider from 3.5 to 22.2, step 0.01)
B45 = 5.3842939800000025 (slider from 3.5 to 22.2, step 0.01)
B46 = 8.379842580000002 (slider from 3.5 to 22.2, step 0.01)
B47 = 18.848157580000002 (slider from 3.5 to 22.2, step 0.01)
B48 = 18.944788180000003 (slider from 3.5 to 22.2, step 0.01)
B49 = 16.11029058 (slider from 3.5 to 22.2, step 0.01)
B50 = 12.309486980000003 (slider from 3.5 to 22.2, step 0.01)
D1 = -15.9660948 (slider from -17.5 to 1.2, step 0.01)
D2 = -3.9516902 (slider from -17.5 to 1.2, step 0.01)
D3 = -12.068660600000001 (slider from -17.5 to 1.2, step 0.01)
D4 = -0.08646619999999988 (slider from -17.5 to 1.2, step 0.01)
D5 = -11.875399400000001 (slider from -17.5 to 1.2, step 0.01)
D6 = -4.1771616 (slider from -17.5 to 1.2, step 0.01)
D7 = -4.1771616 (slider from -17.5 to 1.2, step 0.01)
D8 = -3.9839004 (slider from -17.5 to 1.2, step 0.01)
D9 = -12.0042402 (slider from -17.5 to 1.2, step 0.01)
D10 = -11.9076096 (slider from -17.5 to 1.2, step 0.01)
D11 = -2.2123394 (slider from -17.5 to 1.2, step 0.01)
D12 = -2.0512884 (slider from -17.5 to 1.2, step 0.01)
D13 = -14.0334828 (slider from -17.5 to 1.2, step 0.01)
D14 = -13.7758012 (slider from -17.5 to 1.2, step 0.01)
D15 = -6.657347000000001 (slider from -17.5 to 1.2, step 0.01)
D16 = -6.4640858 (slider from -17.5 to 1.2, step 0.01)
D17 = -9.4596344 (slider from -17.5 to 1.2, step 0.01)
D18 = -8.8798508 (slider from -17.5 to 1.2, step 0.01)
D19 = -13.3570686 (slider from -17.5 to 1.2, step 0.01)
D20 = -11.875399400000001 (slider from -17.5 to 1.2, step 0.01)
D21 = -14.4522154 (slider from -17.5 to 1.2, step 0.01)
D22 = -13.0671768 (slider from -17.5 to 1.2, step 0.01)
D23 = -1.8902374 (slider from -17.5 to 1.2, step 0.01)
D24 = -4.1771616 (slider from -17.5 to 1.2, step 0.01)
D25 = -6.5929266 (slider from -17.5 to 1.2, step 0.01)
D26 = -9.4918446 (slider from -17.5 to 1.2, step 0.01)
D27 = -3.8872698 (slider from -17.5 to 1.2, step 0.01)
D28 = -0.9883517999999999 (slider from -17.5 to 1.2, step 0.01)
D29 = -14.709897 (slider from -17.5 to 1.2, step 0.01)
D30 = -15.9660948 (slider from -17.5 to 1.2, step 0.01)
D31 = -9.9105772 (slider from -17.5 to 1.2, step 0.01)
D32 = -0.08646619999999988 (slider from -17.5 to 1.2, step 0.01)
D33 = -6.818398 (slider from -17.5 to 1.2, step 0.01)
D34 = -3.3396964000000002 (slider from -17.5 to 1.2, step 0.01)
D35 = -2.6954924 (slider from -17.5 to 1.2, step 0.01)
D36 = -11.810979 (slider from -17.5 to 1.2, step 0.01)
D37 = -2.6632822 (slider from -17.5 to 1.2, step 0.01)
D38 = -1.3748741999999998 (slider from -17.5 to 1.2, step 0.01)
D39 = -0.022045799999999876 (slider from -17.5 to 1.2, step 0.01)
D40 = -1.9868679999999999 (slider from -17.5 to 1.2, step 0.01)
D41 = -8.0101754 (slider from -17.5 to 1.2, step 0.01)
D42 = -4.2737922 (slider from -17.5 to 1.2, step 0.01)
D43 = -2.0190782 (slider from -17.5 to 1.2, step 0.01)
D44 = -7.9135448 (slider from -17.5 to 1.2, step 0.01)
D45 = -12.133081 (slider from -17.5 to 1.2, step 0.01)
D46 = -13.7758012 (slider from -17.5 to 1.2, step 0.01)
D47 = -3.9516902 (slider from -17.5 to 1.2, step 0.01)
D48 = -11.7465586 (slider from -17.5 to 1.2, step 0.01)
D49 = -13.58254 (slider from -17.5 to 1.2, step 0.01)
D50 = -15.9660948 (slider from -17.5 to 1.2, step 0.01)
E1: (B1, D1)
E2: (B2_1, D2)
E3: (B3_1, D3)
E4: (B4, D4)
E5: (B5, D5)
E6: (B6, D6)
E7: (B7, D7)
E8: (B8, D8)
E9: (B9, D9)
E10: (B10, D10)
E11: (B11, D11)
E12: (B12, D12)
E13: (B13, D13)
E14: (B14, D14)
E15: (B15, D15)
E16: (B16, D16)
E17: (B17, D17)
E18: (B18, D18)
E19: (B19, D19)
E20: (B20, D20)
E21: (B21, D21)
E22: (B22, D22)
E23: (B23, D23)
E24: (B24, D24)
E25: (B25, D25)
E26: (B26, D26)
E27: (B27, D27)
E28: (B28, D28)
E29: (B29, D29)
E30: (B30, D30)
E31: (B31, D31)
E32: (B32, D32)
E33: (B33, D33)
E34: (B34, D34)
E35: (B35, D35)
E36: (B36, D36)
E37: (B37, D37)
U: (B38, D38)
E39: (B39, D39)
E40: (B40, D40)
E41: (B41, D41)
E42: (B42, D42)
E43: (B43, D43)
E44: (B44, D44)
E45: (B45, D45)
E46: (B46, D46)
E47: (B47, D47)
E48: (B48, D48)
E49: (B49, D49)
E50: (B50, D50)
p_7 = Segment(E5, E2)
c_8 = Segment(E5, E1)
d_8 = Segment(E5, E3)
e_8 = Segment(E5, E4)
f_8 = Segment(E1, E6)
g_8 = Segment(E2, E6)
h_8 = Segment(E6, E3)
i_8 = Segment(E6, E4)
j_8 = Segment(E1, E2)
k_8 = Segment(E1, E3)
l_8 = Segment(E3, E4)
m_8 = Segment(E2, E4)
n_8 = Segment(E7, E8)
p_8 = Segment(E8, E10)
q_8 = Segment(E9, E10)
r_8 = Segment(E7, E9)
s_8 = Segment(E8, E9)
t_8 = Segment(E7, E10)
a_9 = Segment(E11, E12)
b_9 = Segment(E12, E14)
c_9 = Segment(E14, E13)
d_9 = Segment(E11, E13)
e_9 = Segment(E15, E17)
f_9 = Segment(E17, E18)
g_9 = Segment(E16, E18)
h_9 = Segment(E16, E15)
i_9 = Segment(E11, E15)
j_9 = Segment(E12, E16)
k_9 = Segment(E18, E14)
l_9 = Segment(E17, E13)
m_9 = Segment(E19, E29)
n_9 = Segment(E20, E19)
p_9 = Segment(E20, E31)
q_9 = Segment(E31, E30)
r_9 = Segment(E29, E30)
s_9 = Segment(E29, E32)
t_9 = Segment(U, E32)
a_{10} = Segment(E21, U)
b_{10} = Segment(E30, E21)
c_{10} = Segment(E31, E33)
d_{10} = Segment(E33, E22)
e_{10} = Segment(E21, E22)
f_{10} = Segment(E19, E23)
g_{10} = Segment(E23, E28)
h_{10} = Segment(E32, E28)
i_{10} = Segment(E22, E36)
j_{10} = Segment(E36, E37)
k_{10} = Segment(U, E37)
l_{10} = Segment(E28, E27)
m_{10} = Segment(E37, E27)
n_{10} = Segment(E33, E24)
p_{10} = Segment(E24, E34)
q_{10} = Segment(E20, E34)
r_{10} = Segment(E23, E35)
s_{10} = Segment(E35, E34)
t_{10} = Segment(E24, E26)
a_{11} = Segment(E26, E25)
b_{11} = Segment(E25, E35)
c_{11} = Segment(E26, E36)
d_{11} = Segment(E25, E27)
e_{11} = Segment(E39, E42)
f_{11} = Segment(E39, E44)
g_{11} = Segment(E39, E43)
h_{11} = Segment(E39, E40)
i_{11} = Segment(E39, E41)
j_{11} = Segment(E40, E42)
k_{11} = Segment(E42, E44)
l_{11} = Segment(E44, E43)
m_{11} = Segment(E43, E41)
n_{11} = Segment(E41, E40)
p_{11} = Segment(E50, E48)
q_{11} = Segment(E50, E47)
r_{11} = Segment(E50, E46)
s_{11} = Segment(E50, E49)
t_{11} = Segment(E50, E45)
a_{12} = Segment(E46, E45)
b_{12} = Segment(E45, E49)
c_{12} = Segment(E49, E48)
d_{12} = Segment(E48, E47)
e_{12} = Segment(E47, E46)
f_{12} = Segment(E41, E47)
g_{12} = Segment(E41, E48)
h_{12} = Segment(E40, E48)
i_{12} = Segment(E40, E49)
j_{12} = Segment(E42, E49)
k_{12} = Segment(E42, E45)
l_{12} = Segment(E43, E46)
m_{12} = Segment(E43, E47)
n_{12} = Segment(E44, E45)
p_{12} = Segment(E44, E46)
C1: C + (z0 * i2 + z0 * j2 - (x0 + y0) * k2) * d11 * r / sqrt(2.0 * z0^(2.0) + (x0 + y0)^(2.0)) * Escala
C2: C - (z0 * i2 + z0 * j2 - (x0 + y0) * k2) * d11 * r / sqrt(2.0 * z0^(2.0) + (x0 + y0)^(2.0)) * Escala
C3: C + (x0 * j2 + x0 * k2 - (z0 + y0) * i2) * d11 * r / sqrt(2.0 * x0^(2.0) + (z0 + y0)^(2.0)) * Escala
C4: C - (x0 * j2 + x0 * k2 - (z0 + y0) * i2) * d11 * r / sqrt(2.0 * x0^(2.0) + (z0 + y0)^(2.0)) * Escala
C5: C + (y0 * i2 + y0 * k2 - (z0 + x0) * j2) * d11 * r / sqrt(2.0 * y0^(2.0) + (x0 + z0)^(2.0)) * Escala
luz = Conic(C1, C2, C3, C4, C5)
a = Line(O, j)
g = Line(O, i)
j_{13} = Line(O, k)
xyzP: O + x0 * i2 + y0 * j2 + z0 * k2
luz1 = Dilate(luz, 0.05, P)
luz2 = Dilate(luz, 0.045, P)
luz3 = Dilate(luz, 0.04, P)
luz4 = Dilate(luz, 0.035, P)
luz5 = Dilate(luz, 0.03, P)
luz6 = Dilate(luz, 0.025, P)
luz7 = Dilate(luz, 0.02, P)
luz8 = Dilate(luz, 0.015, P)
luz9 = Dilate(luz, 0.01, P)
luz10 = Dilate(luz, 0.0050, P)
CC1: x0 * xCV1 + y0 * yCV1 + z0 * zCV1 + d * d11
CC2: x0 * (xCV1 + d * x0 / d11) + y0 * (yCV1 + d * y0 / d11) + z0 * (zCV1 + d * z0 / d11)
e = Segment(CoctV4, CoctV5)
p_1 = Segment(CoctV5, CoctV3)
q_1 = Segment(CoctV5, CoctV2)
r_1 = Segment(CoctV5, CoctV1)
s_1 = Segment(CoctV4, CoctV3)
t_1 = Segment(CoctV3, CoctV2)
a_2 = Segment(CoctV2, CoctV1)
b_2 = Segment(CoctV4, CoctV1)
c_2 = Segment(CoctV4, CoctV6)
d_2 = Segment(CoctV3, CoctV6)
e_2 = Segment(CoctV1, CoctV6)
f_2 = Segment(CoctV2, CoctV6)
g_2 = Segment(CV3, CV8)
n_2 = Segment(CV3, CV5)
p_2 = Segment(CV3, CV1)
q_2 = Segment(CV8, CV5)
r_2 = Segment(CV5, CV1)
s_2 = Segment(CV8, CV1)
s = Segment(CV7, CV3)
c_1 = Segment(CV7, CV5)
g_1 = Segment(CV5, CV2)
h_1 = Segment(CV3, CV2)
t = Segment(CV7, CV8)
a_1 = Segment(CV3, CV4)
b_1 = Segment(CV5, CV6)
d_1 = Segment(CV2, CV1)
e_1 = Segment(CV8, CV6)
f_1 = Segment(CV6, CV1)
i_1 = Segment(CV1, CV4)
j_1 = Segment(CV8, CV4)
d_3 = Segment(CV3, CV14)
j_6 = Segment(CV14, CV15)
k_6 = Segment(CV15, CV7)
l_6 = Segment(CV7, CV9)
m_6 = Segment(CV9, CV3)
n_6 = Segment(CV3, CV10)
c_7 = Segment(CV9, CV19)
n_7 = Segment(CV10, CV4)
r_7 = Segment(CV19, CV4)
q_6 = Segment(CV14, CV2)
s_7 = Segment(CV2, CV11)
t_7 = Segment(CV10, CV11)
t_6 = Segment(CV7, CV16)
d_7 = Segment(CV16, CV8)
e_7 = Segment(CV19, CV8)
p_6 = Segment(CV15, CV5)
r_6 = Segment(CV5, CV12)
s_6 = Segment(CV2, CV12)
a_7 = Segment(CV16, CV13)
b_7 = Segment(CV5, CV13)
m_7 = Segment(CV8, CV17)
q_7 = Segment(CV11, CV1)
a_8 = Segment(CV4, CV18)
f_7 = Segment(CV13, CV6)
h_7 = Segment(CV12, CV20)
g_7 = Segment(CV18, CV17)
i_7 = Segment(CV17, CV6)
j_7 = Segment(CV6, CV20)
k_7 = Segment(CV20, CV1)
l_7 = Segment(CV18, CV1)
r_3 = Segment(CicoV3, CicoV8)
s_3 = Segment(CicoV3, CicoV6)
t_3 = Segment(CicoV3, CicoV9)
a_4 = Segment(CicoV3, CicoV1)
b_4 = Segment(CicoV3, CicoV11)
d_4 = Segment(CicoV8, CicoV6)
c_4 = Segment(CicoV8, CicoV11)
e_4 = Segment(CicoV11, CicoV1)
f_4 = Segment(CicoV1, CicoV9)
g_4 = Segment(CicoV9, CicoV6)
b_5 = Segment(CicoV11, CicoV12)
e_5 = Segment(CicoV11, CicoV7)
f_5 = Segment(CicoV8, CicoV12)
h_5 = Segment(CicoV8, CicoV4)
s_4 = Segment(CicoV1, CicoV7)
t_4 = Segment(CicoV1, CicoV5)
a_5 = Segment(CicoV9, CicoV10)
c_5 = Segment(CicoV9, CicoV5)
h_4 = Segment(CicoV7, CicoV12)
n_4 = Segment(CicoV7, CicoV2)
p_4 = Segment(CicoV7, CicoV5)
k_4 = Segment(CicoV12, CicoV4)
m_4 = Segment(CicoV12, CicoV2)
d_5 = Segment(CicoV6, CicoV4)
g_5 = Segment(CicoV6, CicoV10)
l_4 = Segment(CicoV2, CicoV4)
r_4 = Segment(CicoV4, CicoV10)
i_4 = Segment(CicoV2, CicoV10)
j_4 = Segment(CicoV10, CicoV5)
q_4 = Segment(CicoV5, CicoV2)
rayos = true
J = (0.874865980000002, -0.4407783999999999)
K = (1.6157005800000022, -1.4392946)
L = (0.48834358000000205, -2.5344414)
N = (-0.220280819999998, -3.91948)
Q = (0.810445580000002, -4.563684)
R = (2.6142167800000022, -4.3060024)
S = (2.6142167800000022, -6.2064042)
V = (1.164757780000002, -6.431875600000001)
W = (-0.220280819999998, -7.6880734)
Z = (-0.477962419999998, -9.2663732)
A_1 = (0.48834358000000205, -10.297099600000001)
B_1 = (1.583490380000002, -9.395214000000001)
D_1 = (2.968528980000002, -10.297099600000001)
E_1 = (2.3243249800000023, -11.97203)
F_1 = (0.810445580000002, -11.9398198)
G_1 = (-0.510172619999998, -12.326342200000001)
H_1 = (-0.510172619999998, -14.065693000000001)
I_1 = (0.874865980000002, -14.999788800000001)
J_1 = (1.744541380000002, -16.481458)
q_{12} = Segment(J, K)
r_{12} = Segment(K, L)
s_{12} = Segment(L, N)
t_{12} = Segment(N, Q)
a_{13} = Segment(Q, R)
b_{13} = Segment(R, S)
c_{13} = Segment(S, V)
e_{13} = Segment(V, W)
f_{13} = Segment(W, Z)
g_{13} = Segment(Z, A_1)
h_{13} = Segment(A_1, B_1)
l_{13} = Segment(B_1, D_1)
m_{13} = Segment(D_1, E_1)
n_{13} = Segment(E_1, F_1)
p_{13} = Segment(F_1, G_1)
q_{13} = Segment(G_1, H_1)
s_{13} = Segment(H_1, I_1)
t_{13} = Segment(I_1, J_1)
G = (2.485375980000002, -0.15088659999999987)
b_8 = Segment(J, G)
K_1 = (0.10182118000000201, -17.6732354)
a_{14} = Segment(K_1, J_1)
cadena = false
L_1 = (0.32729258000000305, -0.4407784)
M_1 = (-0.3169114199999987, -2.3411801999999957)
b_{14} = Segment(L_1, M_1)
N_1 = (1.0681271800000014, -3.5007474)
c_{14} = Segment(M_1, N_1)
O_1 = (-0.05922981999999721, -4.660314599999998)
d_{14} = Segment(N_1, O_1)
P_1 = (1.583490380000004, -5.7554614000000015)
e_{14} = Segment(O_1, P_1)
Q_1 = (0.2628721800000037, -7.172710199999994)
f_{14} = Segment(P_1, Q_1)
R_1 = (1.3258087800000056, -8.074595799999988)
g_{14} = Segment(Q_1, R_1)
S_1 = (-0.1880706199999962, -9.073112)
h_{14} = Segment(R_1, S_1)
T_1 = (1.519069980000001, -10.007207800000002)
i_{14} = Segment(S_1, T_1)
V_1 = (0.10182118000000312, -10.780252599999999)
j_{14} = Segment(T_1, V_1)
W_1 = (1.64791078, -11.649928000000003)
k_{14} = Segment(V_1, W_1)
Z_1 = (0.19845178000000419, -12.584023799999999)
l_{14} = Segment(W_1, Z_1)
A_2 = (1.8089617799999995, -14.194533800000004)
m_{14} = Segment(Z_1, A_2)
B_2 = (0.4239231800000052, -0.8273007999999997)
C_2 = (1.261388380000002, -1.8902374000000002)
n_{14} = Segment(B_2, C_2)
D_2 = (0.35950278000000213, -2.5988618)
E_2 = (1.3902291800000048, -3.4041168)
p_{14} = Segment(D_2, E_2)
F_2 = (0.9714965800000026, -4.885786000000003)
G_2 = (1.937802580000001, -6.1741940000000035)
q_{14} = Segment(F_2, G_2)
H_2 = (1.1003373800000051, -7.494812200000004)
I_2 = (2.356535180000006, -8.75101)
r_{14} = Segment(H_2, I_2)
s_{14} = Segment(C_2, D_2)
t_{14} = Segment(E_2, F_2)
a_{15} = Segment(G_2, H_2)
J_2 = (1.3258087800000053, -10.297099600000001)
b_{15} = Segment(I_2, J_2)
K_2 = (0.5527639800000038, -1.4070844)
L_2 = (1.5834903800000026, -2.5666515999999993)
c_{15} = Segment(K_2, L_2)
M_2 = (0.6493945800000012, -3.4363269999999986)
d_{15} = Segment(L_2, M_2)
N_2 = (1.6801209800000034, -4.7891553999999985)
e_{15} = Segment(M_2, N_2)
O_2 = (0.8748659800000014, -6.045353200000001)
f_{15} = Segment(N_2, O_2)
P_2 = (0.6816047800000007, -0.7950905999999995)
Q_2 = (1.4546495800000017, -2.8565433999999996)
g_{15} = Segment(P_2, Q_2)
R_2 = (-0.155860419999998, -3.7906392)
h_{15} = Segment(Q_2, R_2)
S_2 = (1.8733821800000021, -5.2078880000000005)
i_{15} = Segment(R_2, S_2)
T_2 = (0.262872180000002, -7.5270224)
j_{15} = Segment(S_2, T_2)
U_2 = (1.744541380000002, -8.718799800000001)
k_{15} = Segment(T_2, U_2)
V_2 = (0.16624158000000203, -9.9749976)
l_{15} = Segment(U_2, V_2)
W_2 = (1.486859780000002, -11.198985200000001)
m_{15} = Segment(V_2, W_2)
Z_2 = (0.359502780000002, -12.8094952)
n_{15} = Segment(W_2, Z_2)
A_3 = (2.6142167800000022, -13.3892788)
p_{15} = Segment(Z_2, A_3)
B_3 = (0.874865980000002, -14.323374600000001)
q_{15} = Segment(A_3, B_3)
C_3 = (1.905592380000002, -15.869464200000001)
r_{15} = Segment(B_3, C_3)
D_3 = (0.48834358000000205, -17.0934518)
s_{15} = Segment(C_3, D_3)
icoL10: {-(2.0 * fi + 1.0), -(fi), 0.0}
icoL1: {fi + 1.0, -(fi + 1.0), fi + 1.0}
icoL11: {-(2.0 * fi + 1.0), fi, 0.0}
icoL12: {-(fi + 1.0), fi + 1.0, fi + 1.0}
icoL13: {0.0, 2.0 * fi + 1.0, fi}
icoL14: {fi + 1.0, fi + 1.0, fi + 1.0}
icoL15: {2.0 * fi + 1.0, fi, 0.0}
icoL16: {fi, 0.0, -(2.0 * fi + 1.0)}
icoL18: {-(fi + 1.0), fi + 1.0, -(fi + 1.0)}
icoL19: {0.0, 2.0 * fi + 1.0, -(fi)}
icoL2: {0.0, -(2.0 * fi + 1.0), fi}
icoL20: {fi + 1.0, fi + 1.0, -(fi + 1.0)}
icoL3: {-(fi + 1.0), -(fi + 1.0), fi + 1.0}
icoL4: {-(fi), 0.0, 2.0 * fi + 1.0}
icoL5: {fi, 0.0, 2.0 * fi + 1.0}
icoL6: {2.0 * fi + 1.0, -(fi), 0.0}
icoL7: {fi + 1.0, -(fi + 1.0), -(fi + 1.0)}
icoL8: {0.0, -(2.0 * fi + 1.0), -(fi)}
icoL9: {-(fi + 1.0), -(fi + 1.0), -(fi + 1.0)}
icoL17: {-(fi), 0.0, -(2.0 * fi + 1.0)}
MM': MM2 * Invert[MM1]
M = Join({{x0, y0, z0}} * MM')
icoM1: 1.0 - acos((Element[M, 1.0] * Element[icoL1, 1.0] + Element[M, 2.0] * Element[icoL1, 2.0] + Element[M, 3.0] * Element[icoL1, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL1, 1.0]^(2.0) + Element[icoL1, 2.0]^(2.0) + Element[icoL1, 3.0]^(2.0)))) / 3.141592653589793
icoM2: 1.0 - acos((Element[M, 1.0] * Element[icoL2, 1.0] + Element[M, 2.0] * Element[icoL2, 2.0] + Element[M, 3.0] * Element[icoL2, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL2, 1.0]^(2.0) + Element[icoL2, 2.0]^(2.0) + Element[icoL2, 3.0]^(2.0)))) / 3.141592653589793
icoM3: 1.0 - acos((Element[M, 1.0] * Element[icoL3, 1.0] + Element[M, 2.0] * Element[icoL3, 2.0] + Element[M, 3.0] * Element[icoL3, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL3, 1.0]^(2.0) + Element[icoL3, 2.0]^(2.0) + Element[icoL3, 3.0]^(2.0)))) / 3.141592653589793
icoM4: 1.0 - acos((Element[M, 1.0] * Element[icoL4, 1.0] + Element[M, 2.0] * Element[icoL4, 2.0] + Element[M, 3.0] * Element[icoL4, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL4, 1.0]^(2.0) + Element[icoL4, 2.0]^(2.0) + Element[icoL4, 3.0]^(2.0)))) / 3.141592653589793
icoM5: 1.0 - acos((Element[M, 1.0] * Element[icoL5, 1.0] + Element[M, 2.0] * Element[icoL5, 2.0] + Element[M, 3.0] * Element[icoL5, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL5, 1.0]^(2.0) + Element[icoL5, 2.0]^(2.0) + Element[icoL5, 3.0]^(2.0)))) / 3.141592653589793
icoM6: 1.0 - acos((Element[M, 1.0] * Element[icoL6, 1.0] + Element[M, 2.0] * Element[icoL6, 2.0] + Element[M, 3.0] * Element[icoL6, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL6, 1.0]^(2.0) + Element[icoL6, 2.0]^(2.0) + Element[icoL6, 3.0]^(2.0)))) / 3.141592653589793
icoM7: 1.0 - acos((Element[M, 1.0] * Element[icoL7, 1.0] + Element[M, 2.0] * Element[icoL7, 2.0] + Element[M, 3.0] * Element[icoL7, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL7, 1.0]^(2.0) + Element[icoL7, 2.0]^(2.0) + Element[icoL7, 3.0]^(2.0)))) / 3.141592653589793
icoM8: 1.0 - acos((Element[M, 1.0] * Element[icoL8, 1.0] + Element[M, 2.0] * Element[icoL8, 2.0] + Element[M, 3.0] * Element[icoL8, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL8, 1.0]^(2.0) + Element[icoL8, 2.0]^(2.0) + Element[icoL8, 3.0]^(2.0)))) / 3.141592653589793
icoM9: 1.0 - acos((Element[M, 1.0] * Element[icoL9, 1.0] + Element[M, 2.0] * Element[icoL9, 2.0] + Element[M, 3.0] * Element[icoL9, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL9, 1.0]^(2.0) + Element[icoL9, 2.0]^(2.0) + Element[icoL9, 3.0]^(2.0)))) / 3.141592653589793
icoM10: 1.0 - acos((Element[M, 1.0] * Element[icoL10, 1.0] + Element[M, 2.0] * Element[icoL10, 2.0] + Element[M, 3.0] * Element[icoL10, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL10, 1.0]^(2.0) + Element[icoL10, 2.0]^(2.0) + Element[icoL10, 3.0]^(2.0)))) / 3.141592653589793
icoM11: 1.0 - acos((Element[M, 1.0] * Element[icoL11, 1.0] + Element[M, 2.0] * Element[icoL11, 2.0] + Element[M, 3.0] * Element[icoL11, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL11, 1.0]^(2.0) + Element[icoL11, 2.0]^(2.0) + Element[icoL11, 3.0]^(2.0)))) / 3.141592653589793
icoM12: 1.0 - acos((Element[M, 1.0] * Element[icoL12, 1.0] + Element[M, 2.0] * Element[icoL12, 2.0] + Element[M, 3.0] * Element[icoL12, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL12, 1.0]^(2.0) + Element[icoL12, 2.0]^(2.0) + Element[icoL12, 3.0]^(2.0)))) / 3.141592653589793
icoM13: 1.0 - acos((Element[M, 1.0] * Element[icoL13, 1.0] + Element[M, 2.0] * Element[icoL13, 2.0] + Element[M, 3.0] * Element[icoL13, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL13, 1.0]^(2.0) + Element[icoL13, 2.0]^(2.0) + Element[icoL13, 3.0]^(2.0)))) / 3.141592653589793
icoM14: 1.0 - acos((Element[M, 1.0] * Element[icoL14, 1.0] + Element[M, 2.0] * Element[icoL14, 2.0] + Element[M, 3.0] * Element[icoL14, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL14, 1.0]^(2.0) + Element[icoL14, 2.0]^(2.0) + Element[icoL14, 3.0]^(2.0)))) / 3.141592653589793
icoM15: 1.0 - acos((Element[M, 1.0] * Element[icoL15, 1.0] + Element[M, 2.0] * Element[icoL15, 2.0] + Element[M, 3.0] * Element[icoL15, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL15, 1.0]^(2.0) + Element[icoL15, 2.0]^(2.0) + Element[icoL15, 3.0]^(2.0)))) / 3.141592653589793
icoM16: 1.0 - acos((Element[M, 1.0] * Element[icoL16, 1.0] + Element[M, 2.0] * Element[icoL16, 2.0] + Element[M, 3.0] * Element[icoL16, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL16, 1.0]^(2.0) + Element[icoL16, 2.0]^(2.0) + Element[icoL16, 3.0]^(2.0)))) / 3.141592653589793
icoM17: 1.0 - acos((Element[M, 1.0] * Element[icoL17, 1.0] + Element[M, 2.0] * Element[icoL17, 2.0] + Element[M, 3.0] * Element[icoL17, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL17, 1.0]^(2.0) + Element[icoL17, 2.0]^(2.0) + Element[icoL17, 3.0]^(2.0)))) / 3.141592653589793
icoM18: 1.0 - acos((Element[M, 1.0] * Element[icoL18, 1.0] + Element[M, 2.0] * Element[icoL18, 2.0] + Element[M, 3.0] * Element[icoL18, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL18, 1.0]^(2.0) + Element[icoL18, 2.0]^(2.0) + Element[icoL18, 3.0]^(2.0)))) / 3.141592653589793
icoM19: 1.0 - acos((Element[M, 1.0] * Element[icoL19, 1.0] + Element[M, 2.0] * Element[icoL19, 2.0] + Element[M, 3.0] * Element[icoL19, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL19, 1.0]^(2.0) + Element[icoL19, 2.0]^(2.0) + Element[icoL19, 3.0]^(2.0)))) / 3.141592653589793
icoM20: 1.0 - acos((Element[M, 1.0] * Element[icoL20, 1.0] + Element[M, 2.0] * Element[icoL20, 2.0] + Element[M, 3.0] * Element[icoL20, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[icoL20, 1.0]^(2.0) + Element[icoL20, 2.0]^(2.0) + Element[icoL20, 3.0]^(2.0)))) / 3.141592653589793
dodL1: {0.0, fi + 2.0, 3.0 * fi + 1.0}
dodL12: {0.0, fi + 2.0, -(3.0 * fi + 1.0)}
dodL2: {0.0, -(fi + 2.0), 3.0 * fi + 1.0}
dodL11: {0.0, -(fi + 2.0), -(3.0 * fi + 1.0)}
dodL9: {fi + 2.0, 3.0 * fi + 1.0, 0.0}
dodL7: {fi + 2.0, -(3.0 * fi + 1.0), 0.0}
dodL4: {-(fi + 2.0), 3.0 * fi + 1.0, 0.0}
dodL6: {-(fi + 2.0), -(3.0 * fi + 1.0), 0.0}
dodL8: {3.0 * fi + 1.0, 0.0, fi + 2.0}
dodL10: {3.0 * fi + 1.0, 0.0, -(fi + 2.0)}
dodL3: {-(3.0 * fi + 1.0), 0.0, fi + 2.0}
dodL5: {-(3.0 * fi + 1.0), 0.0, -(fi + 2.0)}
dodN1: 1.0 - acos((Element[M, 1.0] * Element[dodL1, 1.0] + Element[M, 2.0] * Element[dodL1, 2.0] + Element[M, 3.0] * Element[dodL1, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL1, 1.0]^(2.0) + Element[dodL1, 2.0]^(2.0) + Element[dodL1, 3.0]^(2.0)))) / 3.141592653589793
dodN2: 1.0 - acos((Element[M, 1.0] * Element[dodL2, 1.0] + Element[M, 2.0] * Element[dodL2, 2.0] + Element[M, 3.0] * Element[dodL2, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL2, 1.0]^(2.0) + Element[dodL2, 2.0]^(2.0) + Element[dodL2, 3.0]^(2.0)))) / 3.141592653589793
dodN3: 1.0 - acos((Element[M, 1.0] * Element[dodL3, 1.0] + Element[M, 2.0] * Element[dodL3, 2.0] + Element[M, 3.0] * Element[dodL3, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL3, 1.0]^(2.0) + Element[dodL3, 2.0]^(2.0) + Element[dodL3, 3.0]^(2.0)))) / 3.141592653589793
dodN4: 1.0 - acos((Element[M, 1.0] * Element[dodL4, 1.0] + Element[M, 2.0] * Element[dodL4, 2.0] + Element[M, 3.0] * Element[dodL4, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL4, 1.0]^(2.0) + Element[dodL4, 2.0]^(2.0) + Element[dodL4, 3.0]^(2.0)))) / 3.141592653589793
dodN5: 1.0 - acos((Element[M, 1.0] * Element[dodL5, 1.0] + Element[M, 2.0] * Element[dodL5, 2.0] + Element[M, 3.0] * Element[dodL5, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL5, 1.0]^(2.0) + Element[dodL5, 2.0]^(2.0) + Element[dodL5, 3.0]^(2.0)))) / 3.141592653589793
dodN6: 1.0 - acos((Element[M, 1.0] * Element[dodL6, 1.0] + Element[M, 2.0] * Element[dodL6, 2.0] + Element[M, 3.0] * Element[dodL6, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL6, 1.0]^(2.0) + Element[dodL6, 2.0]^(2.0) + Element[dodL6, 3.0]^(2.0)))) / 3.141592653589793
dodN7: 1.0 - acos((Element[M, 1.0] * Element[dodL7, 1.0] + Element[M, 2.0] * Element[dodL7, 2.0] + Element[M, 3.0] * Element[dodL7, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL7, 1.0]^(2.0) + Element[dodL7, 2.0]^(2.0) + Element[dodL7, 3.0]^(2.0)))) / 3.141592653589793
dodN8: 1.0 - acos((Element[M, 1.0] * Element[dodL8, 1.0] + Element[M, 2.0] * Element[dodL8, 2.0] + Element[M, 3.0] * Element[dodL8, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL8, 1.0]^(2.0) + Element[dodL8, 2.0]^(2.0) + Element[dodL8, 3.0]^(2.0)))) / 3.141592653589793
dodN9: 1.0 - acos((Element[M, 1.0] * Element[dodL9, 1.0] + Element[M, 2.0] * Element[dodL9, 2.0] + Element[M, 3.0] * Element[dodL9, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL9, 1.0]^(2.0) + Element[dodL9, 2.0]^(2.0) + Element[dodL9, 3.0]^(2.0)))) / 3.141592653589793
dodN10: 1.0 - acos((Element[M, 1.0] * Element[dodL10, 1.0] + Element[M, 2.0] * Element[dodL10, 2.0] + Element[M, 3.0] * Element[dodL10, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL10, 1.0]^(2.0) + Element[dodL10, 2.0]^(2.0) + Element[dodL10, 3.0]^(2.0)))) / 3.141592653589793
dodN11: 1.0 - acos((Element[M, 1.0] * Element[dodL11, 1.0] + Element[M, 2.0] * Element[dodL11, 2.0] + Element[M, 3.0] * Element[dodL11, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL11, 1.0]^(2.0) + Element[dodL11, 2.0]^(2.0) + Element[dodL11, 3.0]^(2.0)))) / 3.141592653589793
dodN12: 1.0 - acos((Element[M, 1.0] * Element[dodL12, 1.0] + Element[M, 2.0] * Element[dodL12, 2.0] + Element[M, 3.0] * Element[dodL12, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[dodL12, 1.0]^(2.0) + Element[dodL12, 2.0]^(2.0) + Element[dodL12, 3.0]^(2.0)))) / 3.141592653589793
cuboL1: {1.0, 0.0, 0.0}
cuboL5: {-1.0, 0.0, 0.0}
cuboL3: {0.0, 1.0, 0.0}
cuboL6: {0.0, -1.0, 0.0}
cuboL2: {0.0, 0.0, 1.0}
cuboL4: {0.0, 0.0, -1.0}
cuboM1: 1.0 - acos((Element[M, 1.0] * Element[cuboL1, 1.0] + Element[M, 2.0] * Element[cuboL1, 2.0] + Element[M, 3.0] * Element[cuboL1, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[cuboL1, 1.0]^(2.0) + Element[cuboL1, 2.0]^(2.0) + Element[cuboL1, 3.0]^(2.0)))) / 3.141592653589793
cuboM2: 1.0 - acos((Element[M, 1.0] * Element[cuboL2, 1.0] + Element[M, 2.0] * Element[cuboL2, 2.0] + Element[M, 3.0] * Element[cuboL2, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[cuboL2, 1.0]^(2.0) + Element[cuboL2, 2.0]^(2.0) + Element[cuboL2, 3.0]^(2.0)))) / 3.141592653589793
cuboM3: 1.0 - acos((Element[M, 1.0] * Element[cuboL3, 1.0] + Element[M, 2.0] * Element[cuboL3, 2.0] + Element[M, 3.0] * Element[cuboL3, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[cuboL3, 1.0]^(2.0) + Element[cuboL3, 2.0]^(2.0) + Element[cuboL3, 3.0]^(2.0)))) / 3.141592653589793
cuboM4: 1.0 - acos((Element[M, 1.0] * Element[cuboL4, 1.0] + Element[M, 2.0] * Element[cuboL4, 2.0] + Element[M, 3.0] * Element[cuboL4, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[cuboL4, 1.0]^(2.0) + Element[cuboL4, 2.0]^(2.0) + Element[cuboL4, 3.0]^(2.0)))) / 3.141592653589793
cuboM5: 1.0 - acos((Element[M, 1.0] * Element[cuboL5, 1.0] + Element[M, 2.0] * Element[cuboL5, 2.0] + Element[M, 3.0] * Element[cuboL5, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[cuboL5, 1.0]^(2.0) + Element[cuboL5, 2.0]^(2.0) + Element[cuboL5, 3.0]^(2.0)))) / 3.141592653589793
cuboM6: 1.0 - acos((Element[M, 1.0] * Element[cuboL6, 1.0] + Element[M, 2.0] * Element[cuboL6, 2.0] + Element[M, 3.0] * Element[cuboL6, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[cuboL6, 1.0]^(2.0) + Element[cuboL6, 2.0]^(2.0) + Element[cuboL6, 3.0]^(2.0)))) / 3.141592653589793
tetL1: {1.0, 1.0, 1.0}
tetL2: {-1.0, 1.0, -1.0}
tetL3: {-1.0, -1.0, 1.0}
tetL4: {1.0, -1.0, -1.0}
tetM1: 1.0 - acos((Element[M, 1.0] * Element[tetL1, 1.0] + Element[M, 2.0] * Element[tetL1, 2.0] + Element[M, 3.0] * Element[tetL1, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[tetL1, 1.0]^(2.0) + Element[tetL1, 2.0]^(2.0) + Element[tetL1, 3.0]^(2.0)))) / 3.141592653589793
tetM2: 1.0 - acos((Element[M, 1.0] * Element[tetL2, 1.0] + Element[M, 2.0] * Element[tetL2, 2.0] + Element[M, 3.0] * Element[tetL2, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[tetL2, 1.0]^(2.0) + Element[tetL2, 2.0]^(2.0) + Element[tetL2, 3.0]^(2.0)))) / 3.141592653589793
tetM3: 1.0 - acos((Element[M, 1.0] * Element[tetL3, 1.0] + Element[M, 2.0] * Element[tetL3, 2.0] + Element[M, 3.0] * Element[tetL3, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[tetL3, 1.0]^(2.0) + Element[tetL3, 2.0]^(2.0) + Element[tetL3, 3.0]^(2.0)))) / 3.141592653589793
tetM4: 1.0 - acos((Element[M, 1.0] * Element[tetL4, 1.0] + Element[M, 2.0] * Element[tetL4, 2.0] + Element[M, 3.0] * Element[tetL4, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[tetL4, 1.0]^(2.0) + Element[tetL4, 2.0]^(2.0) + Element[tetL4, 3.0]^(2.0)))) / 3.141592653589793
octL1: {1.0, 1.0, 1.0}
octL5: {1.0, 1.0, -1.0}
octL4: {1.0, -1.0, 1.0}
octL8: {1.0, -1.0, -1.0}
octL2: {-1.0, 1.0, 1.0}
octL6: {-1.0, 1.0, -1.0}
octL3: {-1.0, -1.0, 1.0}
octL7: {-1.0, -1.0, -1.0}
octM1: 1.0 - acos((Element[M, 1.0] * Element[octL1, 1.0] + Element[M, 2.0] * Element[octL1, 2.0] + Element[M, 3.0] * Element[octL1, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[octL1, 1.0]^(2.0) + Element[octL1, 2.0]^(2.0) + Element[octL1, 3.0]^(2.0)))) / 3.141592653589793
octM2: 1.0 - acos((Element[M, 1.0] * Element[octL2, 1.0] + Element[M, 2.0] * Element[octL2, 2.0] + Element[M, 3.0] * Element[octL2, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[octL2, 1.0]^(2.0) + Element[octL2, 2.0]^(2.0) + Element[octL2, 3.0]^(2.0)))) / 3.141592653589793
octM3: 1.0 - acos((Element[M, 1.0] * Element[octL3, 1.0] + Element[M, 2.0] * Element[octL3, 2.0] + Element[M, 3.0] * Element[octL3, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[octL3, 1.0]^(2.0) + Element[octL3, 2.0]^(2.0) + Element[octL3, 3.0]^(2.0)))) / 3.141592653589793
octM4: 1.0 - acos((Element[M, 1.0] * Element[octL4, 1.0] + Element[M, 2.0] * Element[octL4, 2.0] + Element[M, 3.0] * Element[octL4, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[octL4, 1.0]^(2.0) + Element[octL4, 2.0]^(2.0) + Element[octL4, 3.0]^(2.0)))) / 3.141592653589793
octM5: 1.0 - acos((Element[M, 1.0] * Element[octL5, 1.0] + Element[M, 2.0] * Element[octL5, 2.0] + Element[M, 3.0] * Element[octL5, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[octL5, 1.0]^(2.0) + Element[octL5, 2.0]^(2.0) + Element[octL5, 3.0]^(2.0)))) / 3.141592653589793
octM6: 1.0 - acos((Element[M, 1.0] * Element[octL6, 1.0] + Element[M, 2.0] * Element[octL6, 2.0] + Element[M, 3.0] * Element[octL6, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[octL6, 1.0]^(2.0) + Element[octL6, 2.0]^(2.0) + Element[octL6, 3.0]^(2.0)))) / 3.141592653589793
octM7: 1.0 - acos((Element[M, 1.0] * Element[octL7, 1.0] + Element[M, 2.0] * Element[octL7, 2.0] + Element[M, 3.0] * Element[octL7, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[octL7, 1.0]^(2.0) + Element[octL7, 2.0]^(2.0) + Element[octL7, 3.0]^(2.0)))) / 3.141592653589793
octM8: 1.0 - acos((Element[M, 1.0] * Element[octL8, 1.0] + Element[M, 2.0] * Element[octL8, 2.0] + Element[M, 3.0] * Element[octL8, 3.0]) / sqrt((Element[M, 1.0]^(2.0) + Element[M, 2.0]^(2.0) + Element[M, 3.0]^(2.0)) * (Element[octL8, 1.0]^(2.0) + Element[octL8, 2.0]^(2.0) + Element[octL8, 3.0]^(2.0)))) / 3.141592653589793
AristasDodecaedro: {Segment[V2, V14], Segment[V2, V11], Segment[V12, V2], Segment[V5, V12], Segment[V5, V15], Segment[V13, V5], Segment[V16, V13], Segment[V6, V13], Segment[V17, V6], Segment[V20, V6], Segment[V20, V1], Segment[V14, V15], Segment[V12, V20], Segment[V14, V3], Segment[V3, V9], Segment[V9, V7], Segment[V9, V19], Segment[V19, V8], Segment[V4, V19], Segment[V4, V18], Segment[V10, V3], Segment[V10, V4], Segment[V11, V10], Segment[V15, V7], Segment[V16, V7], Segment[V8, V16], Segment[V17, V8], Segment[V18, V17], Segment[V1, V18], Segment[V11, V1]}
AristasIcosaedro: {Segment[IcoV5, IcoV7], Segment[IcoV5, IcoV1], Segment[IcoV1, IcoV7], Segment[IcoV7, IcoV11], Segment[IcoV9, IcoV5], Segment[IcoV11, IcoV12], Segment[IcoV9, IcoV1], Segment[IcoV7, IcoV12], Segment[IcoV5, IcoV10], Segment[IcoV9, IcoV10], Segment[IcoV11, IcoV8], Segment[IcoV2, IcoV10], Segment[IcoV8, IcoV12], Segment[IcoV4, IcoV10], Segment[IcoV1, IcoV11], Segment[IcoV3, IcoV1], Segment[IcoV3, IcoV11], Segment[IcoV3, IcoV8], Segment[IcoV7, IcoV2], Segment[IcoV6, IcoV8], Segment[IcoV2, IcoV12], Segment[IcoV6, IcoV3], Segment[IcoV4, IcoV12], Segment[IcoV9, IcoV3], Segment[IcoV4, IcoV2], Segment[IcoV9, IcoV6], Segment[IcoV4, IcoV8], Segment[IcoV6, IcoV10], Segment[IcoV5, IcoV2], Segment[IcoV6, IcoV4]}
AristasCubo: {Segment[V2, V1], Segment[V3, V7], Segment[V5, V6], Segment[V7, V8], Segment[V2, V3], Segment[V3, V4], Segment[V4, V1], Segment[V1, V6], Segment[V8, V6], Segment[V4, V8], Segment[V2, V5], Segment[V5, V7]}
AristasOctaedro: {Segment[octV1, octV2], Segment[octV2, octV6], Segment[octV3, octV6], Segment[octV4, octV6], Segment[octV3, octV2], Segment[octV3, octV4], Segment[octV1, octV4], Segment[octV1, octV5], Segment[octV2, octV5], Segment[octV3, octV5], Segment[octV4, octV5], Segment[octV1, octV6]}
AristasTetraedro: {Segment[V1, V3], Segment[V1, V8], Segment[V3, V8], Segment[V3, V5], Segment[V1, V5], Segment[V8, V5]}