Вместо того, чтобы разбивать траекторию, похоже, что вы можете просто использовать кисть с линейным градиентом для цвета обводки контура, чтобы добиться того же эффекта, что и затухание контура. Например, попробуйте установить кисть ниже на вашем пути.
В Xaml:
<Path.Stroke>
<LinearGradientBrush>
<GradientStop Color="#00000000" Offset="0.0"/>
<GradientStop Color="#FF000000" Offset="1.0"/>
</LinearGradientBrush>
</Path.Stroke>
В C #:
var brush = new LinearGradientBrush();
brush.GradientStops.Add(new GradientStop(new Color { A = 0, R = 0, B = 0, G = 0 }, 0.0));
brush.GradientStops.Add(new GradientStop(new Color { A = 255, R = 0, B = 0, G = 0 }, 1.0));
this._path.Stroke = brush;
Кроме того, чтобы ответить на первоначальный вопрос, является ли то, что вы ищете, тем более, у вас есть несколько вариантов, чтобы разделить Путь. Поскольку вы знаете, что данные - это PathGeometry, состоящая из PathFigures, вы можете просто программно получить доступ к сегментам и создать больше объектов Path. Для макета, поскольку каждый путь сам по себе является новым элементом UIE, родительский элемент которого должен измерить и упорядочить его, необходимо поместить все новые пути в панель макета, которая будет держать их в одном и том же относительном положении.
Я думаю, что есть несколько способов сделать это, но один из способов полностью разместить их вместе, это просто выложить их на холст с их Canvas.Top и Canvas.Left (или .Right, .Bottom в зависимости от о том, как вы их раскладываете) установите относительные смещения начала каждого сегмента пути и отрегулируйте точки так, чтобы они были относительно нового верхнего левого угла нового пути. Например, это
<Path Stroke="Black">
<Path.Data>
<PathGeometry>
<PathFigure>
<LineSegment Point="10,10"/>
<LineSegment Point="20,60"/>
<LineSegment Point="70,60"/>
</PathFigure>
</PathGeometry>
</Path.Data>
</Path>
может стать чем-то вроде
<Path Stroke="Black">
<Path.Data>
<PathGeometry>
<PathFigure>
<LineSegment Point="10,10"/>
</PathFigure>
</PathGeometry>
</Path.Data>
</Path>
<Path Stroke="Black" Canvas.Top="10" Canvas.Left="10">
<Path.Data>
<PathGeometry>
<PathFigure>
<LineSegment Point="10,50"/>
</PathFigure>
</PathGeometry>
</Path.Data>
</Path>
<Path Stroke="Black" Canvas.Top="60" Canvas.Left="20">
<Path.Data>
<PathGeometry>
<PathFigure>
<LineSegment Point="50,0"/>
</PathFigure>
</PathGeometry>
</Path.Data>
</Path>
Должно быть понятно, как вы можете сделать это, сконструировав несколько объектов Path с заданным объектом PathGeometry также из C #, так как это может показаться, что вы не делаете этого в XAML из своего вопроса. Дайте мне знать, если это не так, и я могу рассказать подробнее.