Cubo y octaedro

La relación entre el cubo y el octaedro. Las caras de uno son los vértices del otro y viceversa. Los dos tienen el mismo número de aristas.

Arista

Radio

Octaedro pequeño

Cubo

Octaedro grande

RA = 1 (slider from 0 to 1, step 1)
p = 1.1755705045849463
t = 1.7320508075688772
c = 1.4142135623730951
n = 4 (slider from 3 to 5, step 1)
L = 5 (slider from 1 to 6, step 0.1)
ar = If(n ≟ 3, L / t, If[n ≟ 4, L / c, If[n ≟ 5, L / p]])
des = If(RA ≟ 0, L, If[RA ≟ 1, ar])
O: (0, 0, 0)
ci = Circle(O, des, xOyPlane)
A = Point(ci)
A' = Rotate(A, (360 * ° / n), O)
A'' = Rotate(A', (360 * ° / n), O)
v = 0.6 (slider from -2 to 2, step 0.2)
b = Distance(A, A')
arista = Distance(A, A')
radio = Distance(O, A'')
P06, B, C, D, E, F, caraAA'A''B, caraABFC, caraAA'DC, caraA'A''ED, caraA''BFE, caraCDEF, aristaAB, aristaAA', aristaA'A'', aristaA''B, aristaAC, aristaBF, aristaCF, aristaCD, aristaA'D, aristaDE, aristaA''E, aristaEF = Cube(A, A', A'')
G = Midpoint(C, A')
H = Midpoint(F, A)
p08, I, J, K, caraGHO, caraHKO, caraHIK, caraGHI, caraGIJ, caraGJO, caraJKO, caraIJK, aristaHO, aristaGH, aristaGO, aristaHK, aristaKO, aristaHI, aristaIK, aristaGI, aristaGJ, aristaIJ, aristaJO, aristaJK = Octahedron(H, G, O)
a = 2 (slider from 0 to 2, step 0.01)
M = Midpoint(E, A)
P07 = Dilate(p08, a, M)
d = true
e = true
f = true
texto1: "Arista del cubo " + L + ""
v5: (5 * v)
texto2: "Velocidad de giro " + v5 + ""