Когда я рисую геометрию, содержащую небольшой перекрывающийся сегмент линии, она рисуется дольше, чем ожидалось. Есть идеи, почему и как это исправить? Спасибо!
баллы: (0,0) (0, 10) (0, 10,1) (0,10) (10,10) (10, 0) )
код и результат:
Код: Выделить всё
var figure = new PathFigure();
var segment = new PolyLineSegment();
Point point = new Point(0, 0);
segment.Points.Add(point);
**point = new Point(0, 10);
segment.Points.Add(point);
point = new Point(0, 10.1);
segment.Points.Add(point);
point = new Point(0, 10);
segment.Points.Add(point);**
point = new Point(10, 10);
segment.Points.Add(point);
point = new Point(10, 0);
segment.Points.Add(point);
figure.Segments.Add(segment);
if (segment.Points.Count > 0)
figure.StartPoint = segment.Points[0];
figure.IsClosed = true;
pathGeom.Figures.Add(figure);
Если добавить еще один отрезок линии с точками (0, 11) (10, 11), вы увидите точку (0 ,11) находится над точкой (0, 10.1) в приведенной выше геометрии.
Код и результат:
Код: Выделить всё
var figure2 = new PathFigure();
var segment2 = new PolyLineSegment();
point = new Point(0, 11);
segment2.Points.Add(point);
point = new Point(10, 11);
segment2.Points.Add(point);
figure2.Segments.Add(segment2);
if (segment2.Points.Count > 0)
figure2.StartPoint = segment2.Points[0];
figure2.IsClosed = false;
pathGeom.Figures.Add(figure2);
Подробнее здесь: https://stackoverflow.com/questions/792 ... ortionally