如何在 wpf GeometryModel3D 中绘制钻石?
How to draw diamond in wpf GeometryModel3D?
我无法画出正确的钻石形状。
0,1,0
-1,0,-1 1,0,-1
-1,0, 1 1,0, 1
0,-1,0
这是我对菱形顶点 (0 1 0) 和底点 (0 -1 0) 以及 y = 0 处的正方形的处理方法,然后用 TriangleIndices
将它们全部连接起来.
我的代码:
<MeshGeometry3D x:Key="diamond"
Positions="
0, 1, 0
-1, 0,-1 1, 0,-1
-1, 0, 1 1, 0, 1
-1, 0,-1 -1, 0, 1
1, 0, 1 1, 0,-1
0,-1, 0
"
TriangleIndices="
0 1 2 0 3 4
0 5 6 0 7 8
9 1 2 9 3 4
9 5 6 9 7 8
1 2 3 4 5 6
7 8 9 1 2 5
5 6 8 1 2 4
1 2 6 1 2 8
5 6 7 1 5 6
1 3 5 0 2 3
" />
这是我对图片的最终结果
如您所见,并非所有三角形都已绘制,我也不知道为什么。我知道我在 XAML 属性中添加了很多 TriangleIndices 但仍然没有完整的菱形。
所以经过多次尝试,这成功了。但是我还是不明白一件事
TriangleIndices
中的0 1 2和0 2 1一样吗?
<MeshGeometry3D x:Key="Diamond"
Positions="
0, 1, 0
-1, 0,-1 1, 0,-1
-1, 0, 1 1, 0, 1
0,-1, 0
"
TriangleIndices="
0 1 2, 0 3 1, 0 4 3, 0 2 4,
5 2 1, 5 1 3, 5 3 4, 5 4 2
" />
我无法画出正确的钻石形状。
0,1,0
-1,0,-1 1,0,-1
-1,0, 1 1,0, 1
0,-1,0
这是我对菱形顶点 (0 1 0) 和底点 (0 -1 0) 以及 y = 0 处的正方形的处理方法,然后用 TriangleIndices
将它们全部连接起来.
我的代码:
<MeshGeometry3D x:Key="diamond"
Positions="
0, 1, 0
-1, 0,-1 1, 0,-1
-1, 0, 1 1, 0, 1
-1, 0,-1 -1, 0, 1
1, 0, 1 1, 0,-1
0,-1, 0
"
TriangleIndices="
0 1 2 0 3 4
0 5 6 0 7 8
9 1 2 9 3 4
9 5 6 9 7 8
1 2 3 4 5 6
7 8 9 1 2 5
5 6 8 1 2 4
1 2 6 1 2 8
5 6 7 1 5 6
1 3 5 0 2 3
" />
这是我对图片的最终结果
如您所见,并非所有三角形都已绘制,我也不知道为什么。我知道我在 XAML 属性中添加了很多 TriangleIndices 但仍然没有完整的菱形。
所以经过多次尝试,这成功了。但是我还是不明白一件事
TriangleIndices
中的0 1 2和0 2 1一样吗?
<MeshGeometry3D x:Key="Diamond"
Positions="
0, 1, 0
-1, 0,-1 1, 0,-1
-1, 0, 1 1, 0, 1
0,-1, 0
"
TriangleIndices="
0 1 2, 0 3 1, 0 4 3, 0 2 4,
5 2 1, 5 1 3, 5 3 4, 5 4 2
" />