I'm writing some code to display BarSeries3D in a certain order. I Have multiple series of 12 values that have the same ZAxis coordinate. (Each 12 values are in the same ZAxis coordiante)
This is the code I wrote (I used the ExampleHorizontalBars3D.cs as a base I made some modifications)
Code: Select all
public void createChart3D()
{
try
{
lightningChartUltimate3.BeginUpdate();
for (int i = 0; i < table3D.Rows.Count; i++)
{
for (int j = 0; j < 12; j++)
{
//Chart A results
BarSeries3D barSeriesChartA = new BarSeries3D(lightningChartUltimate3.View3D, Axis3DBinding.Primary, Axis3DBinding.Primary, Axis3DBinding.Primary);
barSeriesChartA.Title.Text = "";
lightningChartUltimate3.View3D.BarSeries3D.Add(barSeriesChartA);
barSeriesChartA.Values = new BarSeriesValue3D[] { new BarSeriesValue3D(j, Math.Round(Convert.ToDouble(table3D.Rows[i].ItemArray[j])), i, "") };
barSeriesChartA.Material.DiffuseColor = Color.Green;
barSeriesChartA.Material.AmbientColor = Color.Green;
barSeriesChartA.Material.EmissiveColor = Color.Green;
barSeriesChartA.Material.SpecularColor = Color.Green;
//SET THE ALARMS
if (Convert.ToDouble(DtPreAl.Rows[0].ItemArray[i]) <= Convert.ToDouble(table3D.Rows[i].ItemArray[j]))
{
barSeriesChartA.Material.DiffuseColor = Color.Yellow;
barSeriesChartA.Material.AmbientColor = Color.Yellow;
barSeriesChartA.Material.EmissiveColor = Color.Yellow;
barSeriesChartA.Material.SpecularColor = Color.Yellow;
}
if (Convert.ToDouble(DtAl.Rows[0].ItemArray[i]) <= Convert.ToDouble(table3D.Rows[i].ItemArray[j]))
{
barSeriesChartA.Material.DiffuseColor = Color.Orange;
barSeriesChartA.Material.AmbientColor = Color.Orange;
barSeriesChartA.Material.EmissiveColor = Color.Orange;
barSeriesChartA.Material.SpecularColor = Color.Orange;
}
if (Convert.ToDouble(DtDg.Rows[0].ItemArray[i]) <= Convert.ToDouble(table3D.Rows[i].ItemArray[j]))
{
barSeriesChartA.Material.DiffuseColor = Color.Red;
barSeriesChartA.Material.AmbientColor = Color.Red;
barSeriesChartA.Material.EmissiveColor = Color.Red;
barSeriesChartA.Material.SpecularColor = Color.Red;
}
}
}
//Set similar properties for all series
foreach (BarSeries3D bs in lightningChartUltimate3.View3D.BarSeries3D)
{
bs.DetailLevel = 100;
bs.BaseLevel = 0;
bs.Material.SpecularColor = Color.LightGray;
bs.ValueLabelSettings.Visible = true;
bs.ValueLabelSettings.WorldOffset.Y = 3;
}
lightningChartUltimate3.EndUpdate();
}
catch (Exception ex)
{
MessageBoxEx.Show(ex.Message);
}
}
Thank you in advance for your help