SciChart快速线渲染系列抗锯齿功能不起作用。

3

我尝试将AntiAliasing设置为真实时FIFO线图,但似乎并没有起作用。我需要做其他的事情吗?

这是XAML...

<s:SciChartSurface x:Name="sciChart" Grid.Column="1" GridLinesPanelStyle="{StaticResource GridLinesPanelStyle}" RenderTransformOrigin="0.498,0.48" RenderableSeries="{Binding ChartSeries}">

而背后的代码是...

    private void AddCurveToChart(XyDataSeries<double, double> curveSeries)
    {

        FastLineRenderableSeries renderableCurve = new FastLineRenderableSeries
        {
            DataSeries = curveSeries,
            Stroke = (Color)ColorConverter.ConvertFromString(Strokes[ChartSeries.Count < Strokes.Length ? ChartSeries.Count : Strokes.Length - 1]),
            StrokeThickness = 2,
            AntiAliasing = true,

        };

        ChartSeries.Add(renderableCurve);

        RaisePropertiesChanged("ChartSeries");
    }

然而,正如您从屏幕截图中所看到的那样,我仍然遇到了“锯齿状”问题...

enter image description here

1个回答

2
根据SciChart,您需要使用高质量、DirectX或矢量渲染器插件之一才能获得反锯齿线条。他们指导您访问article以获取有关插件的更多信息。
  • HighSpeedRenderSurface是一个整数坐标、快速、软件渲染器(基于CPU)。产生锯齿状线条,但速度非常快。

  • HighQualityRenderSurface(在专业版和源代码版中提供)是一个浮点坐标的软件渲染器(基于CPU)。产生最佳质量的图像,但比HighSpeed使用更多的CPU资源。

  • Direct3D10RenderSurface(在源代码版中提供)是一个浮点坐标的DirectX10硬件渲染器(基于GPU)。利用像素着色器尽可能地将计算卸载到GPU上。

默认情况下使用的是HighSpeedRenderSurface,这会产生锯齿状的线条。
要启用HighQualityRenderSurface(仅在专业版中可用):
<s:SciChartSurface>
   <s:SciChartSurface.RenderSurface>
      <s:HighQualityRenderSurface/>
   </s:SciChartSurface.RenderSurface>
</s:SciChartSurface>

"Direct3D10RenderSurface 可以这样使用(仅在“源代码版本”中可用):"
<s:SciChartSurface.RenderSurface>
    <s3D:Direct3D10RenderSurface InitializationFailed="OnDirectXInitializationFailed"
                                 RenderingFailed="OnDirectXRenderingFailed"/>
</s:SciChartSurface.RenderSurface>

非常准确!尽管这篇文章已经过时了。HighQualityRenderSurface现在在所有版本中都可用,并且可以通过DirectXHelper.TryApplyDirectX附加属性启用回退到软件。最后,自SCv4起,DirectX在企业版(以前是源代码)和SDK版中可用。谢谢!【SciChart团队】 - Dr. Andrew Burnett-Thompson
成员“RenderSurface”未被识别或无法访问。这是因为我使用的是试用版吗? - komodosp
不应该有区别。试用版和完整版之间没有区别,只是时间限制。 - Dr. Andrew Burnett-Thompson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接