Table of Contents

Class View3D

Namespace
LightningChartLib.WinForms.Charting.Views.View3D
Assembly
LightningChart.WinForms.Charting.NET4.dll

3D view class.

[TypeConverter(typeof(ExpandableObjectConverter))]
public class View3D : View3DBase, IChartNode, IDisposable
Inheritance
View3D
Implements
Inherited Members

Constructors

View3D()

Constructor.

public View3D()

View3D(LightningChart)

Constructor.

public View3D(LightningChart owner)

Parameters

owner LightningChart

Parent.

Properties

Annotations

List of 3D annotations.

public Annotation3DList Annotations { get; set; }

Property Value

Annotation3DList

BarSeries3D

3D bar series list.

public BarSeries3DList BarSeries3D { get; set; }

Property Value

BarSeries3DList

BarViewOptions

Bar view options 3D.

public BarViewOptions3D BarViewOptions { get; set; }

Property Value

BarViewOptions3D

ClipContents

Clip series and Mesh model inside space limited axis ranges.

public bool ClipContents { get; set; }

Property Value

bool

DataCursor

Data cursor shows series data value at or near mouse position.

public DataCursor3D DataCursor { get; set; }

Property Value

DataCursor3D

FrameBox

Framebox that shows the graph area, in extension to walls.

public FrameBox FrameBox { get; set; }

Property Value

FrameBox

LegendBox

Legend box for 3D view.

public LegendBox3D LegendBox { get; set; }

Property Value

LegendBox3D

MeshModels

Mesh model list.

public MeshModelList MeshModels { get; set; }

Property Value

MeshModelList

OrientationArrows

Orientation arrows options.

public OrientationArrowsOptions3D OrientationArrows { get; set; }

Property Value

OrientationArrowsOptions3D

PointLineSeries3D

3D point line series list.

public PointLineSeries3DList PointLineSeries3D { get; set; }

Property Value

PointLineSeries3DList

Polygons

List of 3D polygons.

public Polygon3DList Polygons { get; set; }

Property Value

Polygon3DList

Rectangles

Rectangle3D list.

public Rectangle3DList Rectangles { get; set; }

Property Value

Rectangle3DList

SurfaceGridSeries3D

Surface grid series list.

public SurfaceGridSeries3DList SurfaceGridSeries3D { get; set; }

Property Value

SurfaceGridSeries3DList

SurfaceMeshSeries3D

Surface mesh series list.

public SurfaceMeshSeries3DList SurfaceMeshSeries3D { get; set; }

Property Value

SurfaceMeshSeries3DList

VolumeModels

Volume model list.

public VolumeModelList VolumeModels { get; set; }

Property Value

VolumeModelList

WallOnBack

Back wall.

public WallXY WallOnBack { get; set; }

Property Value

WallXY

WallOnBottom

Bottom wall (floor).

public WallXZ WallOnBottom { get; set; }

Property Value

WallXZ

WallOnFront

Front wall.

public WallXY WallOnFront { get; set; }

Property Value

WallXY

WallOnLeft

Left wall.

public WallYZ WallOnLeft { get; set; }

Property Value

WallYZ

WallOnRight

Right wall.

public WallYZ WallOnRight { get; set; }

Property Value

WallYZ

WallOnTop

Top wall (ceiling).

public WallXZ WallOnTop { get; set; }

Property Value

WallXZ

WaterfallSeries3D

Waterfall series list.

public WaterfallSeries3DList WaterfallSeries3D { get; set; }

Property Value

WaterfallSeries3DList

XAxisPrimary3D

Primary X-axis for 3D view.

public virtual AxisX3D XAxisPrimary3D { get; set; }

Property Value

AxisX3D

XAxisSecondary3D

Secondary X-axis for 3D view.

public virtual AxisX3D XAxisSecondary3D { get; set; }

Property Value

AxisX3D

YAxisPrimary3D

Primary Y-axis for 3D view.

public virtual AxisY3D YAxisPrimary3D { get; set; }

Property Value

AxisY3D

YAxisSecondary3D

Secondary Y-axis for 3D view.

public virtual AxisY3D YAxisSecondary3D { get; set; }

Property Value

AxisY3D

ZAxisPrimary3D

Primary Z-axis for 3D view.

public virtual AxisZ3D ZAxisPrimary3D { get; set; }

Property Value

AxisZ3D

ZAxisSecondary3D

Secondary Z-axis for 3D view.

public virtual AxisZ3D ZAxisSecondary3D { get; set; }

Property Value

AxisZ3D

ZoomPanOptions

Zoom, pan and rotation options.

public ZoomPanOptions3D ZoomPanOptions { get; set; }

Property Value

ZoomPanOptions3D

Methods

Convert3DWorldCoordToSeriesValue(SeriesBase3D, double, double, double)

Converts 3D world space coordinate to series value, using the axes bound to the series.

public PointDouble3D Convert3DWorldCoordToSeriesValue(SeriesBase3D series, double x, double y, double z)

Parameters

series SeriesBase3D

Series

x double

X-coordinate.

y double

Y-coordinate.

z double

Z-coordinate.

Returns

PointDouble3D

Series value

Convert3DWorldCoordsToScreenCoords(CoordXYZ[])

Convert 3D world coordinates into screen coordinates.

public PointInt[] Convert3DWorldCoordsToScreenCoords(CoordXYZ[] coordsW)

Parameters

coordsW CoordXYZ[]

3D world coordinates.

Returns

PointInt[]

Screen coordinates.

ConvertSeriesPointsTo3DWorldCoords(SeriesBase3D, SeriesPoint3D[])

Converts series points to 3D world space coordinates, using the axes bound to the series.

public CoordXYZ[] ConvertSeriesPointsTo3DWorldCoords(SeriesBase3D series, SeriesPoint3D[] points)

Parameters

series SeriesBase3D

Series.

points SeriesPoint3D[]

Points to convert.

Returns

CoordXYZ[]

3D world space coordinate.

ConvertSeriesPointsTo3DWorldCoords(SeriesBase3D, SeriesPointCompact3D[])

Converts series points to 3D world space coordinates, using the axes bound to the series.

public CoordXYZ[] ConvertSeriesPointsTo3DWorldCoords(SeriesBase3D series, SeriesPointCompact3D[] points)

Parameters

series SeriesBase3D

Series.

points SeriesPointCompact3D[]

Array of SeriesPointCompact3D to convert.

Returns

CoordXYZ[]

3D world space coordinate.

ConvertSeriesPointsTo3DWorldCoords(SeriesBase3D, SeriesPointCompactColored3D[])

Converts series points to 3D world space coordinates, using the axes bound to the series.

public CoordXYZ[] ConvertSeriesPointsTo3DWorldCoords(SeriesBase3D series, SeriesPointCompactColored3D[] points)

Parameters

series SeriesBase3D

Series.

points SeriesPointCompactColored3D[]

Array of SeriesPointCompactColored3D to convert.

Returns

CoordXYZ[]

3D world space coordinate.

ConvertSeriesPointsToScreenCoords(SeriesBase3D, SeriesPoint3D[])

Converts series points to screen coordinates, using the axes bound to the series.

public PointInt[] ConvertSeriesPointsToScreenCoords(SeriesBase3D series, SeriesPoint3D[] points)

Parameters

series SeriesBase3D

3D series.

points SeriesPoint3D[]

Array of SeriesPoint3D to convert.

Returns

PointInt[]

Array of screen coordinates.

ConvertSeriesPointsToScreenCoords(SeriesBase3D, SeriesPointCompact3D[])

Converts compact series points to screen coordinates, using the axes bound to the series.

public PointInt[] ConvertSeriesPointsToScreenCoords(SeriesBase3D series, SeriesPointCompact3D[] points)

Parameters

series SeriesBase3D

3D series.

points SeriesPointCompact3D[]

Array of SeriesPointCompact3D to convert.

Returns

PointInt[]

Array of screen coordinates.

ConvertSeriesPointsToScreenCoords(SeriesBase3D, SeriesPointCompactColored3D[])

Converts compact colored series points to screen coordinates, using the axes bound to the series.

public PointInt[] ConvertSeriesPointsToScreenCoords(SeriesBase3D series, SeriesPointCompactColored3D[] points)

Parameters

series SeriesBase3D

3D series.

points SeriesPointCompactColored3D[]

Array of SeriesPointCompactColored3D to convert.

Returns

PointInt[]

Array of screen coordinates.

ConvertSeriesValueRangesTo3DWorldRanges(SeriesBase3D, double, double, double)

Converts series value range to 3D world space range, using the axes bound to the series.

public PointDouble3D ConvertSeriesValueRangesTo3DWorldRanges(SeriesBase3D series, double xValueRange, double yValueRange, double zValueRange)

Parameters

series SeriesBase3D

Series.

xValueRange double

X-range.

yValueRange double

Y-range.

zValueRange double

Z-range.

Returns

PointDouble3D

3D world space ranges.

ConvertSeriesValueTo3DWorldCoord(SeriesBase3D, double, double, double)

Converts series value to 3D world space coordinate, using the axes bound to the series.

public PointDouble3D ConvertSeriesValueTo3DWorldCoord(SeriesBase3D series, double x, double y, double z)

Parameters

series SeriesBase3D

Series.

x double

X-value.

y double

Y-value.

z double

Z-value.

Returns

PointDouble3D

3D world space coordinate.

ConvertSeriesValueToScreenCoord(SeriesBase3D, double, double, double)

Converts series value to screen coordinate, using the axes bound to the series.

public PointInt ConvertSeriesValueToScreenCoord(SeriesBase3D series, double x, double y, double z)

Parameters

series SeriesBase3D

Series.

x double

X-value.

y double

Y-value.

z double

Z-value.

Returns

PointInt

Screen coordinate.

DeviceButtonClicked(UserInteractiveDeviceEventArgs, UserInteractiveDeviceEventType, LightningChart)

User interactive device button has been clicked.

protected override bool DeviceButtonClicked(UserInteractiveDeviceEventArgs eventArguments, UserInteractiveDeviceEventType eventType, LightningChart chart)

Parameters

eventArguments UserInteractiveDeviceEventArgs
param eventArguments M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonClicked(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)
eventType UserInteractiveDeviceEventType
param eventType M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonClicked(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)
chart LightningChart
param chart M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonClicked(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)

Returns

bool
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonClicked(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)

DeviceButtonDown(UserInteractiveDeviceEventArgs, UserInteractiveDeviceEventType, LightningChart)

Mouse button has been clicked down.

protected override bool DeviceButtonDown(UserInteractiveDeviceEventArgs eventArguments, UserInteractiveDeviceEventType eventType, LightningChart chart)

Parameters

eventArguments UserInteractiveDeviceEventArgs
param eventArguments M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonDown(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)
eventType UserInteractiveDeviceEventType
param eventType M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonDown(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)
chart LightningChart
param chart M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonDown(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)

Returns

bool
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonDown(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)

DeviceButtonUp(UserInteractiveDeviceEventArgs, UserInteractiveDeviceEventType, LightningChart)

Mouse button has been released.

protected override bool DeviceButtonUp(UserInteractiveDeviceEventArgs eventArguments, UserInteractiveDeviceEventType eventType, LightningChart chart)

Parameters

eventArguments UserInteractiveDeviceEventArgs
param eventArguments M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonUp(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)
eventType UserInteractiveDeviceEventType
param eventType M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonUp(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)
chart LightningChart
param chart M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonUp(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)

Returns

bool
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.DeviceButtonUp(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)

Dispose(bool)

Clean up any resources being used.

protected override void Dispose(bool disposing)

Parameters

disposing bool

true if managed resources should be disposed, otherwise false.

Get3DSeriesOfAxis(Axis3DBase)

Get list of series having this axis bound as X-, Y- or Z-axis, primary or secondary.

public List<SeriesBase3D> Get3DSeriesOfAxis(Axis3DBase axis)

Parameters

axis Axis3DBase

3D axis.

Returns

List<SeriesBase3D>

List of series.

GetAll3DSeries()

Get all 3D series.

public List<SeriesBase3D> GetAll3DSeries()

Returns

List<SeriesBase3D>

List of 3D series.

GetAll3DSurfaceSeries()

Get all 3D surface series.

public List<SurfaceSeries3DBase> GetAll3DSurfaceSeries()

Returns

List<SurfaceSeries3DBase>

List of 3D surface series.

GetAllBut3DSurfaceSeries()

Get all 3D but surface series.

public List<SeriesBase3D> GetAllBut3DSurfaceSeries()

Returns

List<SeriesBase3D>

List of all 3D but surface series.

GetAxes()

Get list of axes.

public List<Axis3DBase> GetAxes()

Returns

List<Axis3DBase>

List of axes.

GetWalls()

Get list of walls.

public List<WallBase> GetWalls()

Returns

List<WallBase>

List of walls.

HandleDeviceButtonDownAction(UserInteractiveDeviceEventArgs, bool, UserInteractiveObject)

Handle mouse down.

protected override bool HandleDeviceButtonDownAction(UserInteractiveDeviceEventArgs eventArguments, bool bIsOutsideGraphArea, UserInteractiveObject item)

Parameters

eventArguments UserInteractiveDeviceEventArgs
param eventArguments M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.HandleDeviceButtonDownAction(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,System.Boolean,LightningChartLib.WinForms.Charting.UserInteractiveObject)
bIsOutsideGraphArea bool
param bIsOutsideGraphArea M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.HandleDeviceButtonDownAction(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,System.Boolean,LightningChartLib.WinForms.Charting.UserInteractiveObject)
item UserInteractiveObject
param item M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.HandleDeviceButtonDownAction(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,System.Boolean,LightningChartLib.WinForms.Charting.UserInteractiveObject)

Returns

bool
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.HandleDeviceButtonDownAction(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,System.Boolean,LightningChartLib.WinForms.Charting.UserInteractiveObject)

HandleMarginsChanged()

Handler gets Graph segment information

protected override void HandleMarginsChanged()

IsPositionOverGraphArea(int, int, bool)

Finds out if the given position is over graph area.

public bool IsPositionOverGraphArea(int x, int y, bool useDIP = false)

Parameters

x int

X-coordinate.

y int

Y-coordinate.

useDIP bool

Use DIP for input point.

Returns

bool

True if is over

MovePoint(Axis3DBinding, PointDouble3D, PointFloatXY, MovementDimension, bool)

Move 3D point to screen coordinate on directions based on the basis.

public PointDouble3D MovePoint(Axis3DBinding axisBinding, PointDouble3D startPoint, PointFloatXY destinationScreenCoordinate, MovementDimension dimension, bool useDIP = true)

Parameters

axisBinding Axis3DBinding

Tell which axises to use for moving: Primary or Secondary.

startPoint PointDouble3D

Point with axis values.

destinationScreenCoordinate PointFloatXY

Point in screen coordinates to which direction startPoint will be moved.

dimension MovementDimension

Tells dimension on which to move the point.

useDIP bool

Use DIPs as coordinates.

Returns

PointDouble3D
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.MovePoint(LightningChartLib.WinForms.Charting.Axis3DBinding,LightningChartLib.WinForms.Charting.PointDouble3D,LightningChartLib.WinForms.Charting.PointFloatXY,LightningChartLib.WinForms.Charting.MovementDimension,System.Boolean)

OnDeserialized(StreamingContext)

OnDeserialized is called just after the object has been deserialized

[OnDeserialized]
protected void OnDeserialized(StreamingContext context)

Parameters

context StreamingContext

Context

PositionOverGraph(CoordXY)

Position over Graph.

protected override bool PositionOverGraph(CoordXY coord)

Parameters

coord CoordXY

Position

Returns

bool
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.PositionOverGraph(LightningChartLib.WinForms.Charting.CoordXY)

RaiseCameraViewChangedEvent()

Raise camera view changed event.

protected override void RaiseCameraViewChangedEvent()

RaiseDimensionsChangedEvent()

Raise dimension changed event.

protected override void RaiseDimensionsChangedEvent()

SortingDirty()

Virtual method that is called when walls sorting becomes dirty. Before this the sorting dirtiness was kept (and still is) using m_bSortingDirty. We need to know when the sorting becomes dirty so that we can mark the FrameBox dirty, as there is little point doing the check on every frame.

protected override void SortingDirty()

ToString()

Convert class description to string.

public override string ToString()

Returns

string

Class description as a string.

UserInteractiveDeviceMoved(UserInteractiveDeviceEventArgs, UserInteractiveDeviceEventType, LightningChart)

User interactive device has been moved.

protected override bool UserInteractiveDeviceMoved(UserInteractiveDeviceEventArgs eventArguments, UserInteractiveDeviceEventType eventType, LightningChart chart)

Parameters

eventArguments UserInteractiveDeviceEventArgs
param eventArguments M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.UserInteractiveDeviceMoved(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)
eventType UserInteractiveDeviceEventType
param eventType M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.UserInteractiveDeviceMoved(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)
chart LightningChart
param chart M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.UserInteractiveDeviceMoved(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)

Returns

bool
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.UserInteractiveDeviceMoved(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)

WheelScrolled(UserInteractiveDeviceEventArgs, LightningChart)

Wheel scrolled.

public override bool WheelScrolled(UserInteractiveDeviceEventArgs eventArguments, LightningChart chart)

Parameters

eventArguments UserInteractiveDeviceEventArgs
param eventArguments M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.WheelScrolled(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.LightningChart)
chart LightningChart
param chart M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.WheelScrolled(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.LightningChart)

Returns

bool
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3D.WheelScrolled(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.LightningChart)

Events

CameraViewChanged

Camera viewpoint has changed.

public event View3D.CameraViewChangedHandler CameraViewChanged

Event Type

View3D.CameraViewChangedHandler

DimensionsChanged

3D world dimensions have changed.

public event View3D.DimensionsChangedHandler DimensionsChanged

Event Type

View3D.DimensionsChangedHandler