本文整理汇总了C#中OxyPlot.ScreenPoint.DistanceTo方法的典型用法代码示例。如果您正苦于以下问题:C# ScreenPoint.DistanceTo方法的具体用法?C# ScreenPoint.DistanceTo怎么用?C# ScreenPoint.DistanceTo使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OxyPlot.ScreenPoint
的用法示例。
在下文中一共展示了ScreenPoint.DistanceTo方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetSeriesFromPoint
/// <summary>
/// Gets a series from the specified point.
/// </summary>
/// <param name="point">The point.</param>
/// <param name="limit">The limit.</param>
/// <returns>The nearest series.</returns>
public Series.Series GetSeriesFromPoint(ScreenPoint point, double limit = 100)
{
double mindist = double.MaxValue;
Series.Series nearestSeries = null;
foreach (var series in this.Series.Reverse().Where(s => s.IsVisible))
{
var thr = series.GetNearestPoint(point, true) ?? series.GetNearestPoint(point, false);
if (thr == null)
{
continue;
}
// find distance to this point on the screen
double dist = point.DistanceTo(thr.Position);
if (dist < mindist)
{
nearestSeries = series;
mindist = dist;
}
}
if (mindist < limit)
{
return nearestSeries;
}
return null;
}
示例2: GetSeriesFromPoint
/// <summary>
/// Gets a series from the specified point.
/// </summary>
/// <param name="point">
/// The point.
/// </param>
/// <param name="limit">
/// The limit.
/// </param>
/// <returns>
/// The nearest series.
/// </returns>
public Series.Series GetSeriesFromPoint(ScreenPoint point, double limit)
{
double mindist = double.MaxValue;
Series.Series closest = null;
foreach (var s in this.VisibleSeries.Reverse())
{
var ts = s as ITrackableSeries;
if (ts == null)
{
continue;
}
var thr = ts.GetNearestPoint(point, true) ?? ts.GetNearestPoint(point, false);
if (thr == null)
{
continue;
}
// find distance to this point on the screen
double dist = point.DistanceTo(thr.Position);
if (dist < mindist)
{
closest = s;
mindist = dist;
}
}
if (mindist < limit)
{
return closest;
}
return null;
}