Я работаю над c# 3D wpf visual studio 2015
Я создал меня sh с помощью координаты XYZ, количество точек почти 4 миллиона, на основе оси Z Мне нужно раскрасить меня целиком * на 1022 * больше, чем на раскраску карты высот.
нужно раскрасить вот так
это для добавления позиции к Очки:
MeshGeometry3D cube = new MeshGeometry3D();
cube.Positions.Add(new Point3D(X[i], Y[i], Z[i]));
за создание индексов:
cube.TriangleIndices.Add(m);
cube.TriangleIndices.Add(m + 1);
cube.TriangleIndices.Add((m + 1) + line);
cube.TriangleIndices.Add((m + 1) + line);
cube.TriangleIndices.Add((m + 2) + line);
cube.TriangleIndices.Add(m);
myHorizontalGradient.GradientStops.Add(new GradientStop(Colors.LimeGreen, 5));
mGeometry = new GeometryModel3D(cube, new DiffuseMaterial(myHorizontalGradient));
group.Children.Add(mGeometry);
здесь вместо светло-голубого цвета по высоте цвет должен повторяться до конца.
byte rr = 0;
for (int pp = 0; pp < l; pp++) //l is the number of points
{
Color cc = Color.FromArgb(rr, 0, 0, 0);
myHorizontalGradient.GradientStops.Add(new GradientStop(cc, 5));
mGeometry = new GeometryModel3D(cube, new DiffuseMaterial(myHorizontalGradient));
mGeometry.Transform = new Transform3DGroup();
group.Children.Add(mGeometry);
rr++;
if (rr > 255)
{
rr = 0;
}
}
вот как это используется для итерации цвета, теперь я только что попробовал только для красного цвета, но это не сработало