
这个图是将以前弄的平面勾股注水立体化,我没找到以前的贴子,只好先从平面勾股注水说起:
A = 描点(x轴)
B = 描点(x轴)
C = 描点(半圆(A, B))
poly1 = 多边形(A, C, 4)
poly2 = 多边形(C, B, 4)
poly3 = 多边形(B, A, 4)
先画出勾股矩形,如下:

s: 直线(A, B)
t: 垂线(E, s)
d: 垂线(F, s)
J = 交点(t, s)
K = 交点(d, s)
M = 如果(y(D) ≥ y(G), D, G)
f_1: 直线(M, e)
L = 交点(f_1, t)
N = 交点(d, f_1)
q1 = 多边形(J, K, N, L)
根据上边两矩形位置,画出注水矩形范围框。

p = 2.39
g_1: y = p
P = 交点(g_1, q1)
O = 交点(g_1, q1)
q2 = 多边形(J, K, P, O)
q3 = 相交路径(q2, poly1)
q4 = 相交路径(q2, poly2)
设一滑动条p,根据p值确定动态注水矩形,然后与上边两矩形相交,得到的图为注水图形。

J_1 = 描点(线段(H, A), 1 - p / y(M))
J_2 = (x(I), y(J_1))
q5 = 多边形(H, I, J_2, J_1)
同样用滑动条控制,画底边矩形注水图,完成平面图形:

打开3D视图,将我们得到的上述六个图立体化,基本思路就是先将图形立起来,然后再用棱柱命令立体化:
poly1' = 旋转(poly1, π / 2, c)
poly2' = 旋转(poly2, π / 2, c)
poly3' = 旋转(poly3, π / 2, c)
q3' = 旋转(q3, π / 2, c)
q4' = 旋转(q4, π / 2, c)
q5' = 多边形(H', I', N_1, O_1)
u = 棱柱(poly1', -0.4)
v = 棱柱(poly2', -0.4)
w = 棱柱(poly3', -0.4)
v_1 = 棱柱(q4', -0.4)
w_1 = 棱柱(q5', -0.4)
u_1 = 棱柱(q3', -0.4)
