我有几个随机大小和应用 RenderTransform 角度的画布对象。在画布里面我有几何对象(线)。
我正在使用宽度和高度绑定来填充父画布对象的路径。
<Path x:Name="gem2_Copy" Stretch="Fill" Stroke="Black" Opacity="0.345" RenderTransformOrigin="0.5,0.5" Width="{Binding ActualWidth, ElementName=canvas}" Height="{Binding ActualHeight, ElementName=canvas}">
<Path.Data>
<PathGeometry>
<PathFigure IsClosed="True" IsFilled="True">
<LineSegment Point="0,0">
</LineSegment>
<LineSegment Point="5,5">
</LineSegment>
<LineSegment Point="0,5">
</LineSegment>
</PathFigure>
</PathGeometry>
</Path.Data>
</Path>
如何检查 PathFigure 是否与其他路径几何相交?我有算法来检查线是否相交但我无法应用它,因为路径点线点总是:0,0 5,5 0,5
我需要全球坐标。如何将路径点转换为全局坐标并考虑到渲染变换角度发生变化以及路径宽度和高度发生变化?
foreach (var figure in geom.Figures)
{
foreach (LineSegment segment in figure.Segments)
{
// I have here 0,0;5,5;0,5
}
}