Author: 藍邦偉　老師
Date: 6 2 月 2014

單位向量

座標軸

Start

x

y

z

$ O $

Tetrahedron 1

Tetrahedron 2

Octahedron

Cube

Dodecahedron

Isocahedron

Tetrahedron 3

A

B

C

D

t = 1 (slider from 0 to 1, step 0.01)
α = 3.6198128686362394 rad (slider from 0*° to 6.283185307179586, step 0.1*°)
β = 1.3089969389957472 rad (slider from 0 to 6.283185307179586, step 0.1*°)
O = (10.911894369201887, 3.4547052365832225)
A_1: O
Y_{unit}: O + (-1 * sin(α), cos(α) * cos(β))
v = Vector(O, Y_{unit})
X_{unit}: O + (cos(α), sin(α) * cos(β))
u = Vector(O, X_{unit})
Z_{unit}: O + (0, sin(β))
w = Vector(O, Z_{unit})
u_1: -0.5 * u - 0.5 * v - 0.5 * w
L = 2 (slider from 1 to 10, step 1)
yy = Vector(O - L * v, O + L * v)
zz = Vector(O - L * w, O + L * w)
xx = Vector(O - L * u, O + L * u)
c = false
d = false
Q_2: 0.3 * Corner[2] + 0.7 * Corner[1]
Q_3: (x(Q_2), y(Corner[3]))
z_g = Segment(Q_2, Q_3)
poly1, z_h, q_1, q_4, z_i = Polygon(Corner[1], Q_2, Q_3, Corner[4])
A_2: O + u
A_3: O + u + v
A_4: O + v
A_5: O + w
A_6: O + u + w
A_7: O + u + v + w
A_8: O + v + w
a_0 = Segment(A_1, A_2)
a_1 = Segment(A_3, A_2)
a_2 = Segment(A_3, A_4)
a_3 = Segment(A_1, A_4)
a_4 = Segment(A_5, A_6)
a_5 = Segment(A_7, A_6)
a_6 = Segment(A_7, A_8)
a_7 = Segment(A_5, A_8)
a_8 = Segment(A_5, A_1)
a_9 = Segment(A_6, A_2)
a_a = Segment(A_7, A_3)
a_b = Segment(A_8, A_4)
B_2: A_2 + t * u_1
B_3: A_3 + t * u_1
B_4: A_4 + t * u_1
B_5: A_5 + t * u_1
B_6: A_6 + t * u_1
B_7: A_7 + t * u_1
B_8: A_8 + t * u_1
B_1: A_1 + t * u_1
b_0 = Segment(B_1, B_2)
b_1 = Segment(B_3, B_2)
b_2 = Segment(B_3, B_4)
b_3 = Segment(B_1, B_4)
b_4 = Segment(B_5, B_6)
b_5 = Segment(B_7, B_6)
b_6 = Segment(B_7, B_8)
b_7 = Segment(B_5, B_8)
b_8 = Segment(B_5, B_1)
b_9 = Segment(B_6, B_2)
b_a = Segment(B_7, B_3)
b_b = Segment(B_8, B_4)
a = false
b = false
e = false
C_1: 0.5 * B_5 + 0.5 * B_4
C_2: 0.5 * B_5 + 0.5 * B_2
C_3: 0.5 * B_7 + 0.5 * B_2
C_4: 0.5 * B_7 + 0.5 * B_4
C_5: 0.5 * B_7 + 0.5 * B_5
C_6: 0.5 * B_3 + 0.5 * B_1
f = false
M_c: 0.5 * C_1 + 0.5 * C_3
D_1 = Dilate(C_1, 1.4142135623730951, M_c)
D_2 = Dilate(C_2, 1.4142135623730951, M_c)
D_3 = Dilate(C_3, 1.4142135623730951, M_c)
D_4 = Dilate(C_4, 1.4142135623730951, M_c)
D_5 = Dilate(C_5, 1.4142135623730951, M_c)
D_6 = Dilate(C_6, 1.4142135623730951, M_c)
e_0 = Segment(D_3, D_6)
e_1 = Segment(D_1, D_2)
e_2 = Segment(D_3, D_2)
e_3 = Segment(D_3, D_4)
e_4 = Segment(D_1, D_4)
e_5 = Segment(D_1, D_5)
e_6 = Segment(D_2, D_5)
e_7 = Segment(D_3, D_5)
e_8 = Segment(D_4, D_5)
e_9 = Segment(D_4, D_6)
e_a = Segment(D_2, D_6)
e_b = Segment(D_1, D_6)
E_1 = Dilate(B_1, 0.7071067811865475, M_c)
E_2 = Dilate(B_2, 0.7071067811865475, M_c)
E_3 = Dilate(B_3, 0.7071067811865475, M_c)
E_4 = Dilate(B_4, 0.7071067811865475, M_c)
E_5 = Dilate(B_5, 0.7071067811865475, M_c)
E_6 = Dilate(B_6, 0.7071067811865475, M_c)
E_7 = Dilate(B_7, 0.7071067811865475, M_c)
E_8 = Dilate(B_8, 0.7071067811865475, M_c)
c_1 = Segment(E_1, E_6)
c_2 = Segment(E_1, E_8)
c_3 = Segment(E_6, E_8)
c_4 = Segment(E_3, E_8)
c_5 = Segment(E_3, E_1)
c_6 = Segment(E_3, E_6)
d_1 = Segment(E_2, E_4)
d_2 = Segment(E_2, E_5)
d_4 = Segment(E_4, E_5)
d_5 = Segment(E_4, E_7)
d_6 = Segment(E_5, E_7)
d_3 = Segment(E_2, E_7)
j = false
φ = 1.618033988749895
F_1: O + φ / 2 * u + φ / 2 * v + φ / 2 * w
F_2: O - φ / 2 * u + φ / 2 * v + φ / 2 * w
F_3: O - φ / 2 * u - φ / 2 * v + φ / 2 * w
F_4: O + φ / 2 * u - φ / 2 * v + φ / 2 * w
F_5: O + φ / 2 * u + φ / 2 * v - φ / 2 * w
F_6: O - φ / 2 * u + φ / 2 * v - φ / 2 * w
F_7: O - φ / 2 * u - φ / 2 * v - φ / 2 * w
F_8: O + φ / 2 * u - φ / 2 * v - φ / 2 * w
F_a: O + 1 / 2 * v + φ^(2) / 2 * w
F_b: O - 1 / 2 * v + φ^(2) / 2 * w
F_c: O - 1 / 2 * v - φ^(2) / 2 * w
F_d: O + 1 / 2 * v - φ^(2) / 2 * w
F_e: O + 1 / 2 * u + φ^(2) / 2 * v
F_f: O - 1 / 2 * u + φ^(2) / 2 * v
F_g: O - 1 / 2 * u - φ^(2) / 2 * v
F_h: O + 1 / 2 * u - φ^(2) / 2 * v
F_i: O + 1 / 2 * w + φ^(2) / 2 * u
F_j: O - 1 / 2 * w + φ^(2) / 2 * u
F_k: O - 1 / 2 * w - φ^(2) / 2 * u
F_l: O + 1 / 2 * w - φ^(2) / 2 * u
f_1 = Segment(F_a, F_b)
f_2 = Segment(F_3, F_b)
f_3 = Segment(F_4, F_b)
f_4 = Segment(F_a, F_2)
f_5 = Segment(F_a, F_1)
f_6 = Segment(F_2, F_l)
f_7 = Segment(F_3, F_l)
f_8 = Segment(F_4, F_i)
f_9 = Segment(F_1, F_i)
f_a = Segment(F_4, F_h)
f_b = Segment(F_g, F_h)
f_c = Segment(F_g, F_3)
f_d = Segment(F_g, F_7)
f_e = Segment(F_h, F_8)
f_f = Segment(F_c, F_8)
f_g = Segment(F_c, F_7)
f_h = Segment(F_k, F_l)
f_i = Segment(F_k, F_7)
f_j = Segment(F_k, F_6)
f_k = Segment(F_d, F_6)
f_l = Segment(F_d, F_c)
f_m = Segment(F_2, F_f)
f_n = Segment(F_6, F_f)
f_o = Segment(F_e, F_f)
f_p = Segment(F_e, F_1)
f_q = Segment(F_j, F_8)
f_r = Segment(F_j, F_i)
f_s = Segment(F_j, F_5)
f_t = Segment(F_e, F_5)
f_u = Segment(F_d, F_5)
k = false
G_1: O + φ / 2 * v + φ^(2) / 2 * w
G_2: O - φ / 2 * v + φ^(2) / 2 * w
G_3: O - φ / 2 * v - φ^(2) / 2 * w
G_4: O + φ / 2 * v - φ^(2) / 2 * w
G_5: O + φ / 2 * u + φ^(2) / 2 * v
G_6: O - φ / 2 * u + φ^(2) / 2 * v
G_7: O - φ / 2 * u - φ^(2) / 2 * v
G_8: O + φ / 2 * u - φ^(2) / 2 * v
G_a: O + φ / 2 * w + φ^(2) / 2 * u
G_b: O - φ / 2 * w + φ^(2) / 2 * u
G_c: O - φ / 2 * w - φ^(2) / 2 * u
G_d: O + φ / 2 * w - φ^(2) / 2 * u
g_1 = Segment(G_1, G_a)
g_2 = Segment(G_1, G_2)
g_3 = Segment(G_a, G_2)
g_4 = Segment(G_d, G_2)
g_5 = Segment(G_d, G_1)
g_6 = Segment(G_b, G_3)
g_7 = Segment(G_4, G_3)
g_8 = Segment(G_4, G_b)
g_9 = Segment(G_4, G_c)
g_0 = Segment(G_3, G_c)
g_a = Segment(G_1, G_5)
g_b = Segment(G_1, G_6)
g_c = Segment(G_a, G_5)
g_d = Segment(G_6, G_5)
g_e = Segment(G_6, G_d)
g_f = Segment(G_5, G_4)
g_g = Segment(G_6, G_4)
g_h = Segment(G_6, G_c)
g_i = Segment(G_d, G_c)
g_j = Segment(G_7, G_2)
g_k = Segment(G_7, G_d)
g_l = Segment(G_8, G_2)
g_m = Segment(G_8, G_a)
g_n = Segment(G_8, G_7)
g_o = Segment(G_c, G_7)
g_p = Segment(G_3, G_7)
g_q = Segment(G_a, G_b)
g_r = Segment(G_8, G_b)
g_s = Segment(G_5, G_b)
g_u = Segment(G_3, G_8)
l = false
H_0: O + sqrt(6) / 4 * w
H_1: O + sqrt(3) / 3 * u - sqrt(6) / 12 * w
H_2: O - sqrt(3) / 6 * u + 1 / 2 * v - sqrt(6) / 12 * w
H_3: O - sqrt(3) / 6 * u - 1 / 2 * v - sqrt(6) / 12 * w
h_1 = Segment(H_0, H_1)
h_2 = Segment(H_0, H_2)
h_3 = Segment(H_0, H_3)
h_4 = Segment(H_2, H_3)
h_5 = Segment(H_2, H_1)
h_6 = Segment(H_3, H_1)
B_a = Midpoint(B_2, B_5)
B_b = Midpoint(B_3, B_8)
B_c = Midpoint(Midpoint[A_3 + t * u_1, A_5 + t * u_1], Midpoint[A_2 + t * u_1, A_5 + t * u_1])
B_d = Midpoint(Midpoint[A_3 + t * u_1, A_5 + t * u_1], Midpoint[A_3 + t * u_1, A_8 + t * u_1])
b_c = Segment(B_c, B_d)
B_e = Midpoint(b_4)
B_f = Midpoint(b_0)
B_g = Midpoint(b_6)
B_h = Midpoint(b_2)
b_d = Segment(B_c, B_e)
b_e = Segment(B_c, B_f)
b_f = Segment(B_d, B_g)
b_g = Segment(B_d, B_h)
B_i: O + (sqrt(15) / 30 - 0.5) * v + (0.5 - sqrt(15) / 15) * w - (1 - t) * u_1
B_j: O - (sqrt(15) / 30 - 0.5) * v + (0.5 - sqrt(15) / 15) * w - (1 - t) * u_1
B_k: O + (sqrt(15) / 30 - 0.5) * v - (0.5 - sqrt(15) / 15) * w - (1 - t) * u_1
B_l: O - (sqrt(15) / 30 - 0.5) * v - (0.5 - sqrt(15) / 15) * w - (1 - t) * u_1
b_h = Segment(B_c, B_i)
b_i = Segment(B_c, B_k)
b_l = Segment(B_5, B_i)
b_m = Segment(B_6, B_i)
b_n = Segment(B_k, B_1)
b_o = Segment(B_k, B_2)
b_p = Segment(B_j, B_d)
b_q = Segment(B_l, B_d)
b_r = Segment(B_l, B_4)
b_s = Segment(B_l, B_3)
b_t = Segment(B_7, B_j)
b_u = Segment(B_8, B_j)
D_a: O + sqrt(6) / 6 * w
D_b: O + 1 / 4 * u + 1 / 4 * v + sqrt(6) / 12 * w
D_c: O - 1 / 4 * u + 1 / 4 * v + sqrt(6) / 12 * w
D_d: O - 1 / 4 * u - 1 / 4 * v + sqrt(6) / 12 * w
D_e: O + 1 / 4 * u - 1 / 4 * v + sqrt(6) / 12 * w
D_f: O + 1 / 4 * u + 1 / 4 * v - sqrt(6) / 12 * w
D_g: O - 1 / 4 * u + 1 / 4 * v - sqrt(6) / 12 * w
D_h: O - 1 / 4 * u - 1 / 4 * v - sqrt(6) / 12 * w
D_i: O + 1 / 4 * u - 1 / 4 * v - sqrt(6) / 12 * w
M_L = Midpoint(H_2, H_1)
M_K = Midpoint(H_3, H_0)