長方體在水平平面上的垂直投影面積
Author: Codex
Date: 2026-06-01

長方體長邊長度；拖曳滑桿可改變長方體尺寸

長方體寬邊長度；拖曳滑桿可改變投影面積

長方體高度；拖曳滑桿可改變側面投影貢獻

繞 x 軸的傾斜角，範圍 0 到 90 度

繞 y 軸的傾斜角，範圍 0 到 90 度

長方體中心；由高度 c 推導，使長方體浮在投影平面上方

長邊方向單位向量，由 β 控制繞 y 軸傾斜

寬邊方向單位向量，由 α 與 β 共同決定

高邊方向單位向量，代表長方體的垂直邊方向

長方體底面頂點 A

長方體底面頂點 B

長方體底面頂點 C

長方體底面頂點 D

A 沿高度方向得到的上方頂點 E

B 沿高度方向得到的上方頂點 F

C 沿高度方向得到的上方頂點 G

D 沿高度方向得到的上方頂點 H

頂點 A 在水平平面 z=0 上的垂直投影點

頂點 B 在水平平面 z=0 上的垂直投影點

頂點 C 在水平平面 z=0 上的垂直投影點

頂點 D 在水平平面 z=0 上的垂直投影點

頂點 E 在水平平面 z=0 上的垂直投影點

頂點 F 在水平平面 z=0 上的垂直投影點

頂點 G 在水平平面 z=0 上的垂直投影點

頂點 H 在水平平面 z=0 上的垂直投影點

水平投影平面 z=0，作為觀察投影面積的地面

長方體垂直投影到水平平面的投影多邊形

投影多邊形的藍色外框；使用外包六邊形呈現實際投影區域

長方體底面，半透明綠色面

長方體頂面，半透明藍灰色面

長方體前側面，半透明紫色面

長方體左側面，半透明紅色面

長方體後側面，半透明橘色面

長方體右側面，半透明粉紅色面

長方體所有外框邊線，模仿截圖的粗黑輪廓

A 到投影點 A_p 的垂直虛線

B 到投影點 B_p 的垂直虛線

C 到投影點 C_p 的垂直虛線

D 到投影點 D_p 的垂直虛線

E 到投影點 E_p 的垂直虛線

F 到投影點 F_p 的垂直虛線

G 到投影點 G_p 的垂直虛線

H 到投影點 H_p 的垂直虛線

標示長方體高度方向的一條主要邊

長邊方向參考線，用於理解 a 的方向

寬邊方向參考線，用於理解 b 的方向

高邊方向參考線，用於理解 c 的方向

垂直投影面積；由三組相鄰面的投影貢獻相加得到

動態顯示投影面積

動態顯示長、寬、高滑桿值

動態顯示 α、β 角度滑桿值

a: 4
b: 2.6
c: 2.2
α: 36°
β: 42°
O: (0, 0, c + 1.2)
u: (cos(β), sin(α) sin(β), -cos(α) sin(β))
v: (0, cos(α), sin(α))
w: (sin(β), -sin(α) cos(β), cos(α) cos(β))
A: O + a / 2 u + b / 2 v - c / 2 w
B: O - a / 2 u + b / 2 v - c / 2 w
C: O - a / 2 u - b / 2 v - c / 2 w
D: O + a / 2 u - b / 2 v - c / 2 w
E: A + c w
F: B + c w
G: C + c w
H: D + c w
A_{p}: (x(A), y(A), 0)
B_{p}: (x(B), y(B), 0)
C_{p}: (x(C), y(C), 0)
D_{p}: (x(D), y(D), 0)
E_{p}: (x(E), y(E), 0)
F_{p}: (x(F), y(F), 0)
G_{p}: (x(G), y(G), 0)
H_{p}: (x(H), y(H), 0)
P_{proj}: Polygon({C_{p}, D_{p}, H_{p}, E_{p}, F_{p}, B_{p}})
projectionArea: a b cos(α) cos(β) + a c sin(α) + b c cos(α) sin(β)
groundPlane: Polygon({(-4.5, -3.5, 0), (5.0, -3.5, 0), (5.0, 3.5, 0), (-4.5, 3.5, 0)})
projectionText: Text("投影面積 = " + projectionArea, (-4.1, 3.15, 0.05))
dimensionText: Text("a = " + a + "   b = " + b + "   c = " + c, (-4.1, 2.75, 0.05))
angleText: Text("α = " + α + "   β = " + β, (-4.1, 2.35, 0.05))
face_{bottom} = Polygon(A, B, C, D)
face_{top} = Polygon(E, F, G, H)
face_{front} = Polygon(A, B, F, E)
face_{left} = Polygon(B, C, G, F)
face_{back} = Polygon(C, D, H, G)
face_{right} = Polygon(D, A, E, H)
cuboidEdges = Polyline(A, B, C, D, A, E, F, B, F, G, C, G, H, D, H, E)
projectionOutline = Polyline(C_{p}, D_{p}, H_{p}, E_{p}, F_{p}, B_{p}, C_{p})
drop_{A} = Segment(A, A_{p})
drop_{B} = Segment(B, B_{p})
drop_{C} = Segment(C, C_{p})
drop_{D} = Segment(D, D_{p})
drop_{E} = Segment(E, E_{p})
drop_{F} = Segment(F, F_{p})
drop_{G} = Segment(G, G_{p})
drop_{H} = Segment(H, H_{p})
heightEdge = Segment(A, E)
aAxisGuide = Segment(O, O + a / 2 u)
bAxisGuide = Segment(O, O + b / 2 v)
cAxisGuide = Segment(O, O + c / 2 w)