我正在使用Xamarin Forms制作应用程序。
我想使用SKPath绘制平滑路径(样条曲线),但是我无法找到一个简单的方法来实现它。
目前Skiasharp不支持此功能,除非我自己使路径平滑。
谢谢。
我正在使用Xamarin Forms制作应用程序。
我想使用SKPath绘制平滑路径(样条曲线),但是我无法找到一个简单的方法来实现它。
目前Skiasharp不支持此功能,除非我自己使路径平滑。
谢谢。
public static SKPath CreateSpline(params SKPoint[] Points)
方法生成一个路径,您可以使用它来在点之间绘制样条曲线。您可以在此处查看实现:
https://github.com/PeterWaher/IoTGateway/blob/master/Script/Waher.Script.Graphs/Functions/Plots/Plot2DCurve.cs
示例:
我不确定你具体在问什么,但是有两个地方需要进行平滑处理:
使用SKPaint.IsAntialias
的抗锯齿:
var paint = new SKPaint {
IsAntialias = true
};
canvas.DrawPath (path, paint);
路径曲线:
如果您需要路径中的曲线,例如圆角,您需要使用各种曲线方法。这些方法包括但不限于SKPath.ArcTo()
和SKPath.CubicTo()
:
var path = new SKPath();
path.MoveTo(10, 10);
path.ArcTo(SKRect.Create(10, 10, 30, 30), 0, 45);
路径文档: https://developer.xamarin.com/api/type/SkiaSharp.SKPath/
SKPath.Simplify()
方法:https://developer.xamarin.com/api/member/SkiaSharp.SKPath.Simplify()/ - Matthew