private void CreateColorMapOnSurface(Color[][] colorMap, IRenderPackage package, TessellationParameters parameters) { const byte gray = 80; geometry.Tessellate(package, parameters); var colorBytes = new List <byte>(); foreach (var colorArr in colorMap) { foreach (var c in colorArr) { colorBytes.Add(c.Blue); colorBytes.Add(c.Green); colorBytes.Add(c.Red); colorBytes.Add(c.Alpha); } } package.SetColors(colorBytes.ToArray()); package.ColorsStride = colorMap.First().Length * 4; TessellateEdges(package, parameters); if (package.LineVertexCount > 0) { package.ApplyLineVertexColors(CreateColorByteArrayOfSize(package.LineVertexCount, gray, gray, gray, 255)); } }
private void CreateColorMapOnSurface(Color[][] colorMap , IRenderPackage package, TessellationParameters parameters) { const byte gray = 80; geometry.Tessellate(package, parameters); var colorBytes = new List<byte>(); foreach (var colorArr in colorMap) { foreach (var c in colorArr) { colorBytes.Add(c.Blue); colorBytes.Add(c.Green); colorBytes.Add(c.Red); colorBytes.Add(c.Alpha); } } package.SetColors(colorBytes.ToArray()); package.ColorsStride = colorMap.First().Length * 4; TessellateEdges(package, parameters); if (package.LineVertexCount > 0) { package.ApplyLineVertexColors(CreateColorByteArrayOfSize(package.LineVertexCount, gray, gray, gray, 255)); } }