WPF实现实现3D立方体波浪墙效果立方体波浪墙效果
本文实例为大家分享了WPF实现3D立方体波浪墙效果的具体代码,供大家参考,具体内容如下
实现效果如下:
思路:思路:仿照3D粒子系统,将粒子颗粒的Geometry改造为立方体,鼠标移动时将鼠标位置转为3D场景中的坐标。
步骤:步骤:
1、粒子类、粒子类Particle.cs
public Point3D Position;//位置
public double Width;//长方体底面宽
public double Height;//长方体侧面高
2、粒子系统、粒子系统ParticleSystem.cs
private readonly List<Particle> _particleList;
private readonly GeometryModel3D _particleModel;
private readonly int CUBOIDHEIGHT = 20;
private readonly int MOUSERADIUS = 1000;
private int XParticleCount;
private int YParticleCount;
public Model3D ParticleModel => _particleModel;
public ParticleSystem(int amountX, int amountY, Color color)
{
XParticleCount = amountX;
YParticleCount = amountY;
_particleList = new List<Particle>();
_particleModel = new GeometryModel3D { Geometry = new MeshGeometry3D() };
var material = new DiffuseMaterial(new SolidColorBrush(color));
_particleModel.Material = material;
}
public void SpawnParticle(double size)
{
// 初始化粒子位置和大小
for (int ix = 0; ix < XParticleCount; ix++)
{
for (int iy = 0; iy < YParticleCount; iy++)
{
var p = new Particle