BaseRenderableSeries
定义 Ultrachart 内所有 &% RenderableSeries 的 Base 类。
继承自: ContentControl
实现: IRenderableSeries, IRenderableSeriesBase, IDrawable, IXmlSerializable
构造函数
protected BaseRenderableSeries()
baseRenderableSeries = BaseRenderableSeries()
初始化了 & ##BaseRenderableSeries+# 类的新实例 。
属性
public bool AntiAliasing { get; set; }
value = baseRenderableSeries.AntiAliasing
baseRenderableSeries.AntiAliasing = value
获取或设定此序列是否在绘制时使用 AntiAliasing
public IRenderPassData CurrentRenderPassData { get; set; }
value = baseRenderableSeries.CurrentRenderPassData
baseRenderableSeries.CurrentRenderPassData = value
获取或设置用于此渲染通道的 RenderPassData 实例
public IDataSeries DataSeries { get; set; }
value = baseRenderableSeries.DataSeries
baseRenderableSeries.DataSeries = value
获取或设置与此系列相关的 DataSeries
public virtual bool DisplaysDataAsXy { get; private set; }
value = baseRenderableSeries.DisplaysDataAsXy
baseRenderableSeries.DisplaysDataAsXy = value
如果数据为真, 则数据显示为 XY, e.g 。 如 Scloster 图案, 而非行(时间) 系列
public LineDrawMode DrawNaNAs { get; set; }
value = baseRenderableSeries.DrawNaNAs
baseRenderableSeries.DrawNaNAs = value
获取或设置一个数值,表示此可转换序列将如何处理 double.NaN 。可选选项参见 LineDrawMode 。
public bool IsSelected { get; set; }
value = baseRenderableSeries.IsSelected
baseRenderableSeries.IsSelected = value
Gets or sets the IsSelectedProperty.
internal virtual bool IsValidForDrawing { get; }
value = baseRenderableSeries.IsValidForDrawing
获得一个数值, 表示此 BaseRenderableSeries 是否对绘图有效 。
public bool IsVisible { get; set; }
value = baseRenderableSeries.IsVisible
baseRenderableSeries.IsVisible = value
绘制时获取或设定序列是否可见
public DataTemplate LegendMarkerTemplate { get; set; }
value = baseRenderableSeries.LegendMarkerTemplate
baseRenderableSeries.LegendMarkerTemplate = value
获取或设置 DataTemplate, 定义了 UltrachartLegend 上要渲染的可视性为系列标记
public IPaletteProvider PaletteProvider { get; set; }
value = baseRenderableSeries.PaletteProvider
baseRenderableSeries.PaletteProvider = value
获取或设置可选的 IPaletteProvider 实例, 用于在渲染时覆盖特定的数据点颜色。 更多详情请参见 IPaletteProvider 文档
public IPointMarker PointMarker { get; set; }
value = baseRenderableSeries.PointMarker
baseRenderableSeries.PointMarker = value
直接在 BaseRenderableSeries 上获取或设置 BasePointMarker 实例。当 BasePointMarker 存在时, 将会在序列中的每一数据点绘制标记
public ControlTemplate PointMarkerTemplate { get; set; }
value = baseRenderableSeries.PointMarkerTemplate
baseRenderableSeries.PointMarkerTemplate = value
获取或设置 PointMarker ControlTemplate, 定义了要在该系列的每个数据点上渲染的点标可视性
public ResamplingMode ResamplingMode { get; set; }
value = baseRenderableSeries.ResamplingMode
baseRenderableSeries.ResamplingMode = value
获取或设置绘制此序列时使用的 ResamplingMode
public int ResamplingResolution { get; set; }
value = baseRenderableSeries.ResamplingResolution
baseRenderableSeries.ResamplingResolution = value
获取或设置再模拟分辨率。 默认为 2, 导致 Nyquist 重模拟。 不允许降低值。 更高的值可能导致视觉更准确的渲染, 但牺牲性能 。
public FrameworkElement RolloverMarker { get; }
value = baseRenderableSeries.RolloverMarker
获得缓存框架元素, 用作滚动标记。 由 xaml 中的 ControlTemplate 通过 RolloverMarkerTemplateProperty DependencyProperty 生成 。
public ControlTemplate RolloverMarkerTemplate { get; set; }
value = baseRenderableSeries.RolloverMarkerTemplate
baseRenderableSeries.RolloverMarkerTemplate = value
获取或设置 RolloverMarker ControlTemplate,它定义了RolloverModifier启用后,用户移动鼠标时在系列上所要渲染的可视性.
public Style SelectedSeriesStyle { get; set; }
value = baseRenderableSeries.SelectedSeriesStyle
baseRenderableSeries.SelectedSeriesStyle = value
获取或设置选定系列的样式。
public Color SeriesColor { get; set; }
value = baseRenderableSeries.SeriesColor
baseRenderableSeries.SeriesColor = value
Gets or sets the SeriesColor.
public IServiceContainer Services { get; set; }
value = baseRenderableSeries.Services
baseRenderableSeries.Services = value
获取全Ultrachart中提供服务访问的 ServiceContainer 。 ServiceContainers 是一个每 UltrachartSurface 实例创建的, 并共享到周边组件, 如 AxisBase 、 BaseRenderableSeries 、 ChartModifierBase 实例。 完整的服务列表请参见 ServiceContainer 上的评论 。
public int StrokeThickness { get; set; }
value = baseRenderableSeries.StrokeThickness
baseRenderableSeries.StrokeThickness = value
获取或设置行的 StrokeThickness 。
public IAxis XAxis { get; set; }
value = baseRenderableSeries.XAxis
baseRenderableSeries.XAxis = value
获取或设定此 IRenderableSeries 关联的 XAxs
public string XAxisId { get; set; }
value = baseRenderableSeries.XAxisId
baseRenderableSeries.XAxisId = value
获取或设置此可转换序列所测量的 X- 轴的ID
public IAxis YAxis { get; set; }
value = baseRenderableSeries.YAxis
baseRenderableSeries.YAxis = value
获取或设定此 & # #IRenderableSeries # # 关联的 YAXS
public string YAxisId { get; set; }
value = baseRenderableSeries.YAxisId
baseRenderableSeries.YAxisId = value
获取或设置 Y 轴的ID,该可转换序列的测量值为
public double ZeroLineY { get; set; }
value = baseRenderableSeries.ZeroLineY
baseRenderableSeries.ZeroLineY = value
获取或设置确定 Y 方向下零行的值。 用于设置一列的下方, 或山地上零行
方法
protected void AssertDataPointType<TSeriesPoint>(string dataSeriesType)
baseRenderableSeries.AssertDataPointType(dataSeriesType)
由渲染器内部使用。 确定输入数据类型是当前 BaseRenderableSeries 的正确格式
- dataSeriesType
- 数据序列类型.
protected static bool CheckIsInBounds(double coord, double lowerBound, double upperBound)
result = BaseRenderableSeries.CheckIsInBounds(coord, lowerBound, upperBound)
如果坐标位于所供应的下行和上行之间, 返回 True
- coord
- lowerBound
- upperBound
protected virtual void CreateRolloverMarker()
baseRenderableSeries.CreateRolloverMarker()
从 RolloverMarkerTemplate 属性创建 RolloverMarker
protected double GetChartRotationAngle(IRenderPassData renderPassData)
result = baseRenderableSeries.GetChartRotationAngle(renderPassData)
内部使用:获取图表的自转角度,视母UltrachartSurface是否互换了X和Y轴而定,该角度为0度或90度.
- renderPassData
- The current IRenderPassData
public int GetDatapointWidth(ICoordinateCalculator<double> xCoordinateCalculator, IPointSeries pointSeries, double widthFraction)
result = baseRenderableSeries.GetDatapointWidth(xCoordinateCalculator, pointSeries, widthFraction)
获得用于计算列和 OHLC 栏宽度的数据点宽度
- xCoordinateCalculator
- 当前的x坐标计算器.
- pointSeries
- The current IPointSeries being rendered.
- widthFraction
- 0.0至1.0的宽分,其中0.0为无限小分,0.5取出可得到宽度的一半,1.0表示数据点为点之间的全宽.
public int GetDatapointWidth(ICoordinateCalculator<double> xCoordinateCalculator, IPointSeries pointSeries, double barsAmount, double widthFraction)
result = baseRenderableSeries.GetDatapointWidth(xCoordinateCalculator, pointSeries, barsAmount, widthFraction)
获得用于计算列和 OHLC 栏宽度的数据点宽度
- xCoordinateCalculator
- 当前的x坐标计算器.
- pointSeries
- The current IPointSeries being rendered.
- barsAmount
- 视图中栏数
- widthFraction
- 0.0至1.0的宽分,其中0.0为无限小分,0.5取出可得到宽度的一半,1.0表示数据点为点之间的全宽.
protected HitTestInfo GetHitTestInfo(int nearestDataPointIndex, Point rawPoint, double hitTestRadius, IComparable hitXValue)
result = baseRenderableSeries.GetHitTestInfo(nearestDataPointIndex, rawPoint, hitTestRadius, hitXValue)
- rawPoint
- hitTestRadius
- is used to calculate HitTestInfo.IsHit
- nearestDataPointIndex
- hitXValue
protected virtual bool GetIsValidForDrawing()
result = baseRenderableSeries.GetIsValidForDrawing()
获得一个数值, 表示此 BaseRenderableSeries 是否对绘图有效 。
protected internal IUltrachartSurface GetParentSurface()
result = baseRenderableSeries.GetParentSurface()
获得此 & > BaseRenderableSeries > 的父机 。
protected IPointMarker GetPointMarker()
result = baseRenderableSeries.GetPointMarker()
返回此序列使用的 PointMarker 。
public XmlSchema GetSchema()
result = baseRenderableSeries.GetSchema()
返回一个 XmlSchema, 描述由 WriteXml 方法所生成、 由 ReadXml 方法所消耗的物体的 XML 表示
protected virtual double GetSeriesBodyLowerDataBound(HitTestInfo nearestHitPoint)
result = baseRenderableSeries.GetSeriesBodyLowerDataBound(nearestHitPoint)
当在衍生分类中被覆盖时, 返回一个复合数据点的下值, 该数据点由通过坐标定义
protected virtual double GetSeriesBodyUpperDataBound(HitTestInfo nearestHitPoint)
result = baseRenderableSeries.GetSeriesBodyUpperDataBound(nearestHitPoint)
当在衍生分类中被覆盖时, 返回由通过坐标定义的复合数据点的上值
protected virtual double GetSeriesBodyWidth(HitTestInfo nearestHitPoint)
result = baseRenderableSeries.GetSeriesBodyWidth(nearestHitPoint)
当在衍生类中被覆盖时, 返回由通过坐标定义的单个条宽度
public virtual SeriesInfo GetSeriesInfo(HitTestInfo hitTestInfo)
result = baseRenderableSeries.GetSeriesInfo(hitTestInfo)
将命中试验操作(HitTestInfo)的结果转换为SeriesInfo类,在输出系列值作为约束时,可以用作ViewModel. SeriesInfo被RolloverModifier,CursorModifier和UltrachartLegend等类使用.
- hitTestInfo
public virtual IRange GetXRange()
result = baseRenderableSeries.GetXRange()
返回 X 方向上所隔离的 IDataSeries 的数据范围
public virtual IRange GetYRange(IRange xRange, bool getPositiveRange)
result = baseRenderableSeries.GetYRange(xRange, getPositiveRange)
返回 Y 方向上的同化 IDataSeries 数据范围
public IRange GetYRange(IRange xRange)
result = baseRenderableSeries.GetYRange(xRange)
返回当前所查看的 Y 方向上所隔离的 X- 轴区域的数据范围
protected virtual double GetYZeroCoord()
result = baseRenderableSeries.GetYZeroCoord()
返回一个值,确定 Y 零行在图表上的位置。对于使负数据点变得不同的序列类型,如 FastColumnRenderableSeries 、 FastMountainRenderableSeries 、 FastImpulseRenderableSeries, 都很重要 。
返回值: 表示零行位置的像素值
public HitTestInfo HitTest(Point rawPoint, bool interpolate)
result = baseRenderableSeries.HitTest(rawPoint, interpolate)
在鼠标特定点( X, Y 坐标在母的 X- UltrachartSurface- ) 上执行命中测试, 默认的 X- HitTestRadius- , 返回带有结果的 X- HitTestInfo+ 结构
- rawPoint
- 父的鼠标点为% UltrachartSurface {}
- interpolate
- 如果真有,则使用插值在数据点之间进行命中测试,或者在区域(如果有)进行,或者
返回值: A HitTestInfo struct with the results
public virtual HitTestInfo HitTest(Point rawPoint, double hitTestRadius, bool interpolate)
result = baseRenderableSeries.HitTest(rawPoint, hitTestRadius, interpolate)
使用通过时的鼠标特定点(X, Y 坐标在母 UltrachartSurface 上) 进行命中测试, 返回带有结果的 HitTestInfo 结构
- rawPoint
- 父的鼠标点为% UltrachartSurface {}
- hitTestRadius
- 用于确定鼠标是否超过数据点的半径像素
- interpolate
- 如果真有,则使用插值在数据点之间进行命中测试,或者在区域(如果有)进行,或者
返回值: A HitTestInfo struct with the results
protected abstract void InternalDraw(IRenderContext2D renderContext, IRenderPassData renderPassData)
baseRenderableSeries.InternalDraw(renderContext, renderPassData)
使用 IRenderContext2D 和 IRenderPassData 绘制序列
- renderContext
- 渲染上下文。 这是一个图形对象, 它有绘制线条、 四边形和多边形到屏幕的方法
- renderPassData
- 渲染通过数据。 包含一个重印的 IPointSeries, 屏幕上的点的 IndexRange 和当前 YAKAS 和 XAKIS ICoordinateCalculator, 以转换数据点来显示点 。
protected virtual HitTestInfo InterpolatePoint(Point rawPoint, HitTestInfo nearestHitResult, double hitTestRadius)
result = baseRenderableSeries.InterpolatePoint(rawPoint, nearestHitResult, hitTestRadius)
当插入旗为真时由 Boolean 调用内插函数
- rawPoint
- 鼠标点
- nearestHitResult
- 非插件的 HitTestInfo + 输入
- hitTestRadius
- 值,表示用于考虑系列是否被击中的距离
返回值: Intepolated HitTestInfo
protected virtual bool IsBodyHit(Point pt, Rect boundaries, HitTestInfo nearestHitPoint)
result = baseRenderableSeries.IsBodyHit(pt, boundaries, nearestHitPoint)
当在衍生的类中被覆盖时, 对单个系列列的边框矩形进行命中测试检查
- pt
- boundaries
- nearestHitPoint
protected virtual bool IsHitTest(Point rawPoint, HitTestInfo nearestHitResult, double hitTestRadius, Point previousDataPoint, Point nextDataPoint)
result = baseRenderableSeries.IsHitTest(rawPoint, nearestHitResult, hitTestRadius, previousDataPoint, nextDataPoint)
当在衍生类中被覆盖时, 使用插值对系列进行命中测试
- rawPoint
- nearestHitResult
- hitTestRadius
- previousDataPoint
- nextDataPoint
protected virtual HitTestInfo NearestHitResult(Point mouseRawPoint, double hitTestRadiusInPixels, SearchMode searchMode, bool considerYCoordinateForDistanceCalculation)
result = baseRenderableSeries.NearestHitResult(mouseRawPoint, hitTestRadiusInPixels, searchMode, considerYCoordinateForDistanceCalculation)
由 Boolean 调用, 以获取最接近(非插件) HitTestInfo 到鼠标点
- mouseRawPoint
- 鼠标点
- hitTestRadiusInPixels
- 确定数据点是否超过时使用的半径( 像素)
- searchMode
- 寻取模式.
- considerYCoordinateForDistanceCalculation
- 如果设置为真,则执行一个真实的euclidea距离,以找到最近的命中结果。
返回值: The HitTestInfo result
protected virtual void OnDataSeriesDependencyPropertyChanged(IDataSeries oldDataSeries, IDataSeries newDataSeries)
baseRenderableSeries.OnDataSeriesDependencyPropertyChanged(oldDataSeries, newDataSeries)
当 DataSeries 属性更改 - i.e 时调用。 已设定一个新的 IDataSeries
- oldDataSeries
- 旧的""IDataSeries"
- newDataSeries
- 新版的"IDataSeries"("IDataSeries")
protected virtual void OnDataSeriesDependencyPropertyChanged()
baseRenderableSeries.OnDataSeriesDependencyPropertyChanged()
当 DataSeries 依赖性属性改变时调用 。
protected static void OnInvalidateParentSurface(DependencyObject d, DependencyPropertyChangedEventArgs e)
BaseRenderableSeries.OnInvalidateParentSurface(d, e)
当调用时, 母程序无效 {} {}
- d
- 提这个事件的DependencyObject。
- e
- 包含事件数据的 DependencyPropertyChangedEventArgs 实例 。
public virtual void OnInvalidateParentSurface()
baseRenderableSeries.OnInvalidateParentSurface()
提高导致父 & # # # # #InvalidateUltrachartMessage # # # 无效的% #
protected virtual void OnParentSurfaceViewportSizeChanged()
baseRenderableSeries.OnParentSurfaceViewportSizeChanged()
当母视图窗口大小发生变化时, 在画出通行证之前立即调用
protected virtual void OnResamplingModeChanged()
baseRenderableSeries.OnResamplingModeChanged()
复制模式更改时调用
protected virtual void OnSeriesColorChanged()
baseRenderableSeries.OnSeriesColorChanged()
当 SeriesColor 依赖属性更改时调用。 允许衍生类型进行缓存
public virtual void ReadXml(XmlReader reader)
baseRenderableSeries.ReadXml(reader)
从它的XML 代表生成 BaseRenderableSeries 。
- reader
StockSharp#Xaml#Charting#Visuals#IDrawable#OnDraw(IRenderContext2D, IRenderPassData)
绘制实例时调用
- renderContext
- The IRenderContext2D used for drawing
- renderPassData
- 当前渲染通过数据
protected Point TransformPoint(float x, float y, bool isVerticalChart)
result = baseRenderableSeries.TransformPoint(x, y, isVerticalChart)
如果旗帜为真, 则转出一个点( swaps X, Y)
- x
- X -瓦卢埃
- y
- 雅 - 华丽
- isVerticalChart
- 显示图表方向的旗帜
返回值: 移植点
protected Point TransformPoint(Point point, bool isVerticalChart)
result = baseRenderableSeries.TransformPoint(point, isVerticalChart)
内部使用: 根据当前%% UltrachartSurface%%%%% 是否垂直绘制, 将点转换为点
- point
- isVerticalChart
public HitTestInfo VerticalSliceHitTest(Point rawPoint, bool interpolate)
result = baseRenderableSeries.VerticalSliceHitTest(rawPoint, interpolate)
在鼠标特定点进行点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点
- rawPoint
- 父的鼠标点为% UltrachartSurface {}
- interpolate
- 如果真有,则使用插值在数据点之间进行命中测试,或者在区域(如果有)进行,或者
返回值: A HitTestInfo struct with the results
public virtual void WriteXml(XmlWriter writer)
baseRenderableSeries.WriteXml(writer)
Converts BaseRenderableSeries into its XML representation.
- writer
事件
public event EventHandler SelectionChanged
baseRenderableSeries.SelectionChanged += handler
IsSelected财产变动时引发的事件
字段
public static readonly DependencyProperty AntiAliasingProperty
value = BaseRenderableSeries.AntiAliasingProperty
定义 AntiAliasing DependencyProperty 定义
public static readonly DependencyProperty DataSeriesIndexProperty
value = BaseRenderableSeries.DataSeriesIndexProperty
定义 DataSeriesIndex DependencyProperty 定义
public static readonly DependencyProperty DataSeriesProperty
value = BaseRenderableSeries.DataSeriesProperty
定义 DataSeries DependencyProperty 定义
private const int DefaultDatapointWidth
value = BaseRenderableSeries.DefaultDatapointWidth
仅限点序列时使用的默认数据点宽度
public const double DefaultHitTestRadius
value = BaseRenderableSeries.DefaultHitTestRadius
插值法中用于插值的默认半径,在RoloverModifier中,在未设置时,则不使用PointMarker大小
public static readonly DependencyProperty DrawNaNAsProperty
value = BaseRenderableSeries.DrawNaNAsProperty
Defines the DrawNaNAs DependencyProperty
public static readonly DependencyProperty IsSelectedProperty
value = BaseRenderableSeries.IsSelectedProperty
定义 IsSelected DependencyProperty 定义
public static readonly DependencyProperty IsVisibleProperty
value = BaseRenderableSeries.IsVisibleProperty
Defines the IsVisible DependencyProperty
public static readonly DependencyProperty LegendMarkerTemplateProperty
value = BaseRenderableSeries.LegendMarkerTemplateProperty
定义 LegendMarkerTemplate DependencyProperty 定义
public static readonly DependencyProperty PaletteProviderProperty
value = BaseRenderableSeries.PaletteProviderProperty
定义 PaletteProvider DependencyProperty 定义
public static readonly DependencyProperty PointMarkerProperty
value = BaseRenderableSeries.PointMarkerProperty
定义 PointMarker DependencyProperty 定义
public static readonly DependencyProperty PointMarkerTemplateProperty
value = BaseRenderableSeries.PointMarkerTemplateProperty
定义 PointMarkerTemplate DependencyProperty 定义
public static readonly DependencyProperty ResamplingModeProperty
value = BaseRenderableSeries.ResamplingModeProperty
定义 ResamplingMode DependencyProperty 定义
public static readonly DependencyProperty RolloverMarkerTemplateProperty
value = BaseRenderableSeries.RolloverMarkerTemplateProperty
定义 RolloverMarkerTemplate DependencyProperty 定义
public static readonly DependencyProperty SelectedSeriesStyleProperty
value = BaseRenderableSeries.SelectedSeriesStyleProperty
定义 SelectedSelectedSeriesStyle DependencyProperty 定义
public static readonly DependencyProperty SeriesColorProperty
value = BaseRenderableSeries.SeriesColorProperty
定义 SeriesColor DependencyProperty 定义
public static readonly DependencyProperty StrokeThicknessProperty
value = BaseRenderableSeries.StrokeThicknessProperty
定义 StrokeThickness DependencyProperty 定义
public static readonly DependencyProperty XAxisIdProperty
value = BaseRenderableSeries.XAxisIdProperty
定义 AxisAlignment DependencyProperty 定义
public static readonly DependencyProperty YAxisIdProperty
value = BaseRenderableSeries.YAxisIdProperty
定义 AxisAlignment DependencyProperty 定义
public static readonly DependencyProperty ZeroLineYProperty
value = BaseRenderableSeries.ZeroLineYProperty
Defines the ZeroLineY DependencyProperty