CanonicalizePolyhedron[poly]
给出多面体 poly 的标准表示,其中包含共享坐标和内外边界.
CanonicalizePolyhedron
CanonicalizePolyhedron[poly]
给出多面体 poly 的标准表示,其中包含共享坐标和内外边界.
更多信息
- CanonicalizePolyhedron 用于从各种表示和描述中获取多面体的简单标准表示.
- CanonicalizePolyhedron 将多面体转换为最优的标准形式 Polyhedron[{p1,p2,…},{outer1,outer2inner2,…}].
- 点 pi 是非交叉多边形面的顶点,并按 Sort 顺序排序.
- 外边界 outeri 是由多边形面 {fi1,fi2,…} 组成的闭合曲面,可能在边处相交.
- 内边界 inneri 是由多边形面 {fj1,fj2,…} 组成的闭合曲面,可能在边处相交.
范例
打开所有单元 关闭所有单元基本范例 (1)
给出 Polyhedron 的标准形式:
𝒫 = Polyhedron[{{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}, {{0, 1, 0}, {1, 0, 0}, {0, 0, 0}}, {{0, 0, 1}, {0, 0, 0}, {1, 0, 0}}, {{0, 0, 0}, {0, 0, 1}, {0, 1, 0}}}];CanonicalizePolyhedron[𝒫]Graphics3D[%]范围 (3)
CanonicalizePolyhedron 适用于多面体:
Polyhedron[{{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}, {{0, 1, 0}, {1, 0, 0}, {0, 0, 0}}, {{0, 0, 1}, {0, 0, 0}, {1, 0, 0}}, {{0, 0, 0}, {0, 0, 1}, {0, 1, 0}}}];CanonicalizePolyhedron[%]CanonicalizePolyhedron[Tetrahedron[]]CanonicalizePolyhedron[Octahedron[]]Polyhedron[{{0, 0, 0}, {0, 3, 0}, {3, 3, 0}, {3, 0, 0}, {0, 0, 3}, {0, 3, 3}, {3, 3, 3}, {3, 0, 3}, {1, 1, 1}, {1, 2, 1}, {2, 2, 1}, {2, 1, 1}, {1, 1, 2}, {1, 2, 2}, {2, 2, 2}, {2, 1, 2}}, {{2, 3, 4, 1}, {1, 4, 8, 5}, {4, 3, 7, 8}, {3, 2, 6, 7}, {2, 1, 5, 6}, {5, 8, 7, 6}} -> {{{10, 11, 12, 9}, {9, 12, 16, 13}, {12, 11, 15, 16}, {11, 10, 14, 15}, {10, 9, 13, 14}, {13, 16, 15, 14}}}];CanonicalizePolyhedron[%]Graphics3D[{Opacity[0.5], %}]Polyhedron[{{0, 0, 0}, {1, 0, 0}, {0, 1, 0}, {0, 0, 1}, {1, 1, 1}, {2, 1, 1}, {1, 2, 1}, {1, 1, 2}}, {{1, 2, 3}, {1, 2, 4}, {2, 3, 4}, {1, 3, 4}, {5, 6, 7}, {5, 6, 8}, {6, 7, 8}, {5, 7, 8}}];CanonicalizePolyhedron[%]应用 (1)
𝒞𝒫 = CanonicalizePolyhedron[Polyhedron[{{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}, {{0, 1, 0}, {1, 0, 0}, {0, 0, 0}}, {{0, 0, 1}, {0, 0, 0}, {1, 0, 0}}, {{0, 0, 0}, {0, 0, 1}, {0, 1, 0}}}]]Graphics3D[{GraphicsComplex[𝒞𝒫[[1]], Polyhedron[𝒞𝒫[[2]]]]}]属性和关系 (5)
使用 CanonicalizePolyhedron 获取 PolyhedronCoordinates:
𝒫 = Polyhedron[{{0, 0, 0}, {0, 1, 0}, {1, 1, 0}, {1, 0, 0}, {0, 0, 1}, {0, 1, 1}, {1, 1, 1},
{1, 0, 1}}, {{2, 3, 4, 1}, {1, 4, 8, 5}, {4, 3, 7, 8}, {3, 2, 6, 7}, {2, 1, 5, 6}, {5, 8, 7, 6}}];First[CanonicalizePolyhedron[𝒫]]PolyhedronCoordinates[𝒫]柏拉图式实体的 CanonicalizePolyhedron 是一个多面体:
CanonicalizePolyhedron[Icosahedron[]]简单多面体的 CanonicalizePolyhedron 保留多面体坐标数:
𝒫 = Polyhedron[{{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}, {{0, 1, 0}, {1, 0, 0}, {0, 0, 0}}, {{0, 0, 1}, {0, 0, 0}, {1, 0, 0}}, {{0, 0, 0}, {0, 0, 1}, {0, 1, 0}}}];SimplePolyhedronQ[𝒫]Length[PolyhedronCoordinates[#]]& /@ {𝒫, CanonicalizePolyhedron[𝒫]}OuterPolyhedron 给出外多面体的标准表示:
OuterPolyhedron[Polyhedron[{{-Sqrt[1 + 2/Sqrt[5]], 0, Root[1 - 20*#1^2 + 80*#1^4 & , 3, 0]},
{Sqrt[1 + 2/Sqrt[5]], 0, Root[1 - 20*#1^2 + 80*#1^4 & , 2, 0]},
{Root[1 - 20*#1^2 + 80*#1^4 & , 1, 0], (-3 - Sqrt[5])/4, Root[1 - 20*#1^2 + 80*#1^4 & , 3, 0]},
{R ... },
{11, 12, 8, 16, 7}, {12, 6, 20, 4, 8}, {6, 2, 13, 18, 20}, {2, 5, 19, 17, 13},
{4, 20, 18, 10, 15}, {18, 13, 17, 9, 10}, {17, 19, 3, 14, 9}, {3, 7, 16, 1, 14},
{16, 8, 4, 15, 1}, {22, 23, 24}, {23, 22, 21}, {24, 21, 22}, {21, 24, 23}}]]InnerPolyhedron 给出内多面体的标准表示:
InnerPolyhedron[Polyhedron[{{-Sqrt[1 + 2/Sqrt[5]], 0, Root[1 - 20*#1^2 + 80*#1^4 & , 3, 0]},
{Sqrt[1 + 2/Sqrt[5]], 0, Root[1 - 20*#1^2 + 80*#1^4 & , 2, 0]},
{Root[1 - 20*#1^2 + 80*#1^4 & , 1, 0], (-3 - Sqrt[5])/4, Root[1 - 20*#1^2 + 80*#1^4 & , 3, 0]},
{R ... },
{11, 12, 8, 16, 7}, {12, 6, 20, 4, 8}, {6, 2, 13, 18, 20}, {2, 5, 19, 17, 13},
{4, 20, 18, 10, 15}, {18, 13, 17, 9, 10}, {17, 19, 3, 14, 9}, {3, 7, 16, 1, 14},
{16, 8, 4, 15, 1}, {22, 23, 24}, {23, 22, 21}, {24, 21, 22}, {21, 24, 23}}]]相关指南
-
▪
- 多面体
文本
Wolfram Research (2019),CanonicalizePolyhedron,Wolfram 语言函数,https://reference.wolfram.com/language/ref/CanonicalizePolyhedron.html.
CMS
Wolfram 语言. 2019. "CanonicalizePolyhedron." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/CanonicalizePolyhedron.html.
APA
Wolfram 语言. (2019). CanonicalizePolyhedron. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/CanonicalizePolyhedron.html 年
BibTeX
@misc{reference.wolfram_2026_canonicalizepolyhedron, author="Wolfram Research", title="{CanonicalizePolyhedron}", year="2019", howpublished="\url{https://reference.wolfram.com/language/ref/CanonicalizePolyhedron.html}", note=[Accessed: 10-September-2026]}
BibLaTeX
@online{reference.wolfram_2026_canonicalizepolyhedron, organization={Wolfram Research}, title={CanonicalizePolyhedron}, year={2019}, url={https://reference.wolfram.com/language/ref/CanonicalizePolyhedron.html}, note=[Accessed: 10-September-2026]}