Class View3DBase
- Namespace
- LightningChartLib.WinForms.Charting.Views.View3D
- Assembly
- LightningChart.WinForms.Charting.NET4.dll
3D view base class.
[TypeConverter(typeof(ExpandableObjectConverter))]
public abstract class View3DBase : ViewBase, IChartNode, IDisposable
- Inheritance
-
View3DBase
- Implements
- Derived
- Inherited Members
Constructors
View3DBase()
Constructor
public View3DBase()
View3DBase(LightningChart)
Constructor.
public View3DBase(LightningChart owner)
Parameters
ownerLightningChartParent.
Properties
AutoSizeMargins
Automatically size margins based on LegendBox position and size.
public bool AutoSizeMargins { get; set; }
Property Value
Border
Border Options for View
public ThinBorder Border { get; set; }
Property Value
Camera
Camera (point of view).
public Camera3D Camera { get; set; }
Property Value
Dimensions
Dimensions (size) of the 3D chart view
public virtual SizeDoubleXYZ Dimensions { get; set; }
Property Value
Lights
List of lights
public virtual Light3DList Lights { get; set; }
Property Value
Methods
AdjustSelectedAnnotationTargetZ(int)
Adjust selected annotation target z value.
protected void AdjustSelectedAnnotationTargetZ(int zChange)
Parameters
zChangeintz change
CalcMarginEffects()
re-calculates the margin area and drawcenter, marks all affected to dirty.
protected override void CalcMarginEffects()
Convert3DWorldCoordToScreenCoord(double, double, double)
Convert a 3D point to screen coordinate.
public PointInt Convert3DWorldCoordToScreenCoord(double x, double y, double z)
Parameters
Returns
- PointInt
Point in screen coordinates.
CreateCamera()
Create camera.
protected virtual void CreateCamera()
CreateDefaultLights()
Create default lights.
public static IEnumerable<Light3D> CreateDefaultLights()
Returns
- IEnumerable<Light3D>
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.CreateDefaultLights
CreateDimensions()
Create dimensions.
protected virtual void CreateDimensions()
DeviceButtonDoubleClicked(UserInteractiveDeviceEventArgs, UserInteractiveDeviceEventType, LightningChart)
User interactive device button has been double clicked. For double click the behavior is almost similar to single click, only raised event differs.
protected override bool DeviceButtonDoubleClicked(UserInteractiveDeviceEventArgs eventArguments, UserInteractiveDeviceEventType eventType, LightningChart chart)
Parameters
eventArgumentsUserInteractiveDeviceEventArgsparam eventArguments M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.DeviceButtonDoubleClicked(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart) eventTypeUserInteractiveDeviceEventTypeparam eventType M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.DeviceButtonDoubleClicked(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart) chartLightningChartparam chart M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.DeviceButtonDoubleClicked(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)
Returns
- bool
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.DeviceButtonDoubleClicked(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
disposingbooltrue if managed resources should be disposed, otherwise false.
GetPanSensitivity()
Get Pan Sensitivity
protected double GetPanSensitivity()
Returns
- double
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.GetPanSensitivity
GetRotationSensitivity()
Get Rotation Sensitivity set as public property.
protected double GetRotationSensitivity()
Returns
- double
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.GetRotationSensitivity
GetZoomPadding()
Getter of the ZoomPadding, supported by Round and 3D Views ZoomPanOptions.
protected override Padding GetZoomPadding()
Returns
- Padding
ZoomPadding of the given view, if supported.
LightsListChanged(object, ListChangedEventArgs)
Lights list changed
protected virtual void LightsListChanged(object sender, ListChangedEventArgs e)
Parameters
senderobjectparam sender M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.LightsListChanged(System.Object,System.ComponentModel.ListChangedEventArgs) eListChangedEventArgsparam e M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.LightsListChanged(System.Object,System.ComponentModel.ListChangedEventArgs)
OnDeserialized(StreamingContext)
OnDeserialized is called just after the object has been deserialized
[OnDeserialized]
protected void OnDeserialized(StreamingContext context)
Parameters
contextStreamingContextContext
Point3DToCoordW(double, double, double, Axis3DBase, Axis3DBase, Axis3DBase)
Convert 3D point coordinates to world coordinates.
protected Vector3 Point3DToCoordW(double x, double y, double z, Axis3DBase xAxis, Axis3DBase yAxis, Axis3DBase zAxis)
Parameters
xdoubleX-value.
ydoubleY-value.
zdoubleZ-value.
xAxisAxis3DBaseX-axis.
yAxisAxis3DBaseY-axis.
zAxisAxis3DBaseZ-axis.
Returns
- Vector3
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.Point3DToCoordW(System.Double,System.Double,System.Double,LightningChartLib.WinForms.Charting.Axes.Axis3DBase,LightningChartLib.WinForms.Charting.Axes.Axis3DBase,LightningChartLib.WinForms.Charting.Axes.Axis3DBase)
PositionOverGraph(CoordXY)
Check is position is over graph.
protected override bool PositionOverGraph(CoordXY coord)
Parameters
coordCoordXYPosition
Returns
- bool
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.PositionOverGraph(LightningChartLib.WinForms.Charting.CoordXY)
RaiseCameraViewChangedEvent()
Raise camera view changed event.
protected virtual void RaiseCameraViewChangedEvent()
RaiseDimensionsChangedEvent()
Raise dimension changed event.
protected virtual void RaiseDimensionsChangedEvent()
SetPredefinedLightingScheme(LightingScheme)
Set a predefined lighting scheme.
public void SetPredefinedLightingScheme(LightingScheme scheme)
Parameters
schemeLightingSchemeLighting scheme.
SetPredefinedLightingSchemeWithoutRefresh(LightingScheme)
Set predefined lighting scheme without refresh.
protected void SetPredefinedLightingSchemeWithoutRefresh(LightingScheme scheme)
Parameters
schemeLightingSchemeparam scheme M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.SetPredefinedLightingSchemeWithoutRefresh(LightningChartLib.WinForms.Charting.LightingScheme)
SortingDirty()
Sorting Dirty
protected virtual void SortingDirty()
UserInteractiveDeviceMoved(UserInteractiveDeviceEventArgs, UserInteractiveDeviceEventType, LightningChart)
User interactive device has been moved.
protected override bool UserInteractiveDeviceMoved(UserInteractiveDeviceEventArgs eventArguments, UserInteractiveDeviceEventType eventType, LightningChart chart)
Parameters
eventArgumentsUserInteractiveDeviceEventArgsparam eventArguments M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.UserInteractiveDeviceMoved(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart) eventTypeUserInteractiveDeviceEventTypeparam eventType M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.UserInteractiveDeviceMoved(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart) chartLightningChartparam chart M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.UserInteractiveDeviceMoved(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)
Returns
- bool
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.UserInteractiveDeviceMoved(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventType,LightningChartLib.WinForms.Charting.LightningChart)
WheelScrolled(UserInteractiveDeviceEventArgs, LightningChart)
Mouse wheel scrolled.
public override bool WheelScrolled(UserInteractiveDeviceEventArgs eventArguments, LightningChart chart)
Parameters
eventArgumentsUserInteractiveDeviceEventArgsparam eventArguments M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.WheelScrolled(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.LightningChart) chartLightningChartparam chart M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.WheelScrolled(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.LightningChart)
Returns
- bool
returns M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.WheelScrolled(LightningChartLib.WinForms.Charting.UserInteractiveDeviceEventArgs,LightningChartLib.WinForms.Charting.LightningChart)
ZoomToFit(ZoomArea3D)
Zooms the view so that the data is visible at maximum possible size.
Area is either the full drawing area inside Margins or area which is further limited by ZoomPadding, depending on case. For more information, see options at ZoomArea3D.
public void ZoomToFit(ZoomArea3D area = ZoomArea3D.DataAndLabelsArea)
Parameters
areaZoomArea3Dparam area M:LightningChartLib.WinForms.Charting.Views.View3D.View3DBase.ZoomToFit(LightningChartLib.WinForms.Charting.ZoomArea3D)
Remarks
This can also be initiated by mouse gesture. See DevicePrimaryButtonDoubleClickAction.