Характерные для объекта плоскости отсечения
Задайте плоскость отсечения, характерную для определённого объекта.
In[1]:=
![Click for copyable input](assets.ru/object-specific-clip-planes/In_7.png)
Graphics3D[{Sphere[{0, 0, 0}],
Style[Sphere[{1, 0, 0}],
ClipPlanes -> InfinitePlane[{{0, 0, -1}, {0, 1, 0}, {1, 0, 0}}]]}]
Out[1]=
![](assets.ru/object-specific-clip-planes/O_20.png)
Задайте плоскость отсечения для списка объектов.
In[2]:=
![Click for copyable input](assets.ru/object-specific-clip-planes/In_8.png)
spheres1 =
Table[Sphere[2 {Quotient[n, 3], Mod[n, 3], 0}], {n, 0, 9, 2}];
spheres2 =
Table[Sphere[2 {Quotient[n, 3], Mod[n, 3], 0}], {n, 1, 8, 2}];
In[3]:=
![Click for copyable input](assets.ru/object-specific-clip-planes/In_9.png)
plane1 = InfinitePlane[{{0, 0, 0.4}, {1, 0, 0.4}, {0, 1, 0.4}}];
plane2 = InfinitePlane[{{0, 0, -0.4}, {0, 1, -0.4}, {1, 0, -0.4}}];
In[4]:=
![Click for copyable input](assets.ru/object-specific-clip-planes/In_10.png)
Graphics3D[{Cyan, Style[spheres1, ClipPlanes -> plane1], Yellow,
Style[spheres2, ClipPlanes -> plane2]}]
Out[4]=
![](assets.ru/object-specific-clip-planes/O_21.png)
Используйте плоскость отсечения для визуализации очистки помехонасыщенного облака точек.
код на языке Wolfram Language целиком
In[6]:=
![Click for copyable input](assets.ru/object-specific-clip-planes/In_12.png)
Manipulate[
Graphics3D[{Point[bunny],
Style[noise,
ClipPlanes ->
Dynamic[InfinitePlane[{{0, 0, z}, {1, 0, z}, {0, 1, z}}]]]},
PlotRange -> {{-.1, .1}, {-0.1, .1}, {0, 0.2}}], {z, 0, 0.2}]
![](assets.ru/object-specific-clip-planes/swf_4.png)