SciChart WPF 3D Charts > 3D Chart Types > The Free Surface 3D Chart Types > The Ellipsoid 3D Chart Type
The Ellipsoid 3D Chart Type

Examples for the 3D Free Surface Mesh Chart can be found in the SciChart WPF Examples Suite which can be downloaded from the SciChart Website or our SciChart.WPF.Examples Github Repository.

NEW to SciChart WPF 3D v5.2!

Ellipsoid 3D Charts are provided by the EllipsoidDataSeries3D type.

 

 

 

The location of the EllipsoidDataSeries3D is defined by following properties:

  • EllipsoidDataSeries3D.OffsetX – a location of the Ellipsoid by the X-Axis
  • EllipsoidDataSeries3D.OffsetY – a location of the Ellipsoid by the Y-Axis
  • EllipsoidDataSeries3D.OffsetZ – a location of the Ellipsoid by the Z-Axis

 

The size of the EllipsoidDataSeries3D is defined by following properties:

  • EllipsoidDataSeries3D.A – a radius of the Ellipsoid along the X-Axis
  • EllipsoidDataSeries3D.B – a radius of the Ellipsoid along the Y-Axis
  • EllipsoidDataSeries3D.C – a radius of the Ellipsoid along the Z-Axis

Declaring an Ellipsoid 3D Series with random values in the offset map

<s3D:SciChart3DSurface x:Name="sciChart" Grid.Column="1" WorldDimensions="200,200,200" BorderThickness="0">
      <s3D:SciChart3DSurface.Camera>
        <s3D:Camera3D ZoomToFitOnAttach="True"/>
      </s3D:SciChart3DSurface.Camera>
      <s3D:SciChart3DSurface.RenderableSeries>
        <s3D:FreeSurfaceRenderableSeries3D x:Name="ellipsoidMeshRenderableSeries"
                                             DrawMeshAs="SolidMesh"
                                             Stroke="#77228B22"
                                             ContourStroke="#77228B22"
                                             StrokeThickness="2.0"
                                             LightingFactor="{Binding ElementName=lightingFactorSlider, Path=Value, Mode=TwoWay}"
                                             Opacity="{Binding ElementName=opacitySlider, Path=Value, Mode=TwoWay}"
                                             MeshColorPalette="{StaticResource HeightColorMap}"
                                             PaletteMinimum="0.0, 6.0, 0.0" PaletteMaximum="0.0, 7, 0.0" />
      </s3D:SciChart3DSurface.RenderableSeries>
      <s3D:SciChart3DSurface.XAxis>
        <s3D:NumericAxis3D />
      </s3D:SciChart3DSurface.XAxis>
      <s3D:SciChart3DSurface.YAxis>
        <s3D:NumericAxis3D />
      </s3D:SciChart3DSurface.YAxis>
      <s3D:SciChart3DSurface.ZAxis>
        <s3D:NumericAxis3D />
      </s3D:SciChart3DSurface.ZAxis>
</s3D:SciChart3DSurface>
private void OnLoaded(object sender, RoutedEventArgs routedEventArgs)
{
    int countU = 40;
    int countV = 20;
    var meshDataSeries = new EllipsoidDataSeries3D<double>(countU, countV)
    {
        SeriesName = "Ellipsoid Mesh",
        A = 6,
        B = 6,
        C = 6
    };
    var random = new Random(0);
    for (var u = 0; u < countU; u++)
    {
        for (int v = 0; v < countV; v++)
        {
            var weight = v < 2 || v > countV - 3
                ? 0.0
                : 1.0f - Math.Abs(v / (float)countV * 2.0f - 1.0f);
            var offset = (float)random.NextDouble();
            meshDataSeries[v, u] = offset * weight;
        }
    }
    ellipsoidMeshRenderableSeries.DataSeries = meshDataSeries;
}