- 注册时间
- 2010-4-21
- 最后登录
- 1970-1-1
- 威望
- 星
- 金币
- 枚
- 贡献
- 分
- 经验
- 点
- 鲜花
- 朵
- 魅力
- 点
- 上传
- 次
- 下载
- 次
- 积分
- 7300
- 在线时间
- 小时
|
楼主 |
发表于 2015-7-13 18:52:44
|
显示全部楼层
用Mathematica10.1检验了下,应该是D
- Block[{A, B, C, D, P, O, pt},
- {A, D, C, B} = PolyhedronData["Tetrahedron", "VertexCoordinates"];
- P = {x, y, z};
- O = {0, 0, 0};
- pt = {x, y, z} /.
- First@Solve[{Volume@Tetrahedron[{P, B, C, D}],
- Volume@Tetrahedron[{P, A, C, D}],
- Volume@Tetrahedron[{P, A, B, C}]}/
- Volume@Tetrahedron[{A, B, C, D}] == {1/4, 1/2, 1/6} &&
- Element[{x, y, z}, Tetrahedron[{A, B, C, D}]], {x, y, z}];
- Print[pt];
- Print[{1/4, 1/6, 1/12, 1/2}.{A, D, C, B} // Simplify];
- RegionMember[Tetrahedron@#, pt] & /@ {{O, A, B, C}, {O, A, C, D}, {O,
- B, C, D}, {O, A, B, D}}
- ]
- Module[{A, B, C, D, E, F, G, H, I, J, H1, H2, H3, H4, P, O, pt},
- {A, D, C, B} = PolyhedronData["Tetrahedron", "VertexCoordinates"];
- P = {Sqrt[3]/8, -(1/24), 0};
- O = {0, 0, 0};
- {E, F, G} = {(A + k B)/(1 + k), (A + k C)/(1 + k), (A + k D)/(
- 1 + k)} /. k -> 3;
- {H, I, J} = {(B + k A)/(1 + k), (B + k C)/(1 + k), (B + k D)/(
- 1 + k)} /. k -> 1;
- {H1, H2} = {(E + k F)/(1 + k), (E + k G)/(1 + k)} /. k -> 1/2;
- {H3, H4} = {(G + k F)/(1 + k), (G + k E)/(1 + k)} /. k -> 7/2;
- Print[{Norm[A - E]/Norm[E - B], Norm[F - G]/Norm[C - D],
- Norm[E - H1]/Norm[H1 - F], Norm[H1 - H2]} // Simplify];
- Graphics3D[{
- {Opacity@0.5, Tetrahedron[{A, B, C, D}]},
- {Thick, Line[{O, #} & /@ {A, B, C, D}]},
- {Red, PointSize@Large, Point[P]},
- {Line[{H1, H2}], Line[{H3, H4}]},
- {Opacity@0.7, Red, Polygon[{E, F, G}], Green, Polygon[{H, I, J}],
- Blue, Polygon[{(D + k A)/(1 + k), (D + k B)/(1 + k), (D + k C)/(
- 1 + k)} /. k -> 5]},
- Text @@@
- Transpose@{{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J",
- "H1", "H2", "H3", "H4"},
- 1.1 {A, B, C, D, E, F, G, H, I, J, H1, H2, H3, H4}}
- }, Boxed -> False, ViewPoint -> {-1, 3, 1}]
- ] // Quiet
复制代码 |
|