我目前正在使用Input中的X点实现圆的可视化。
我不知道这是否是最好的方法(不要犹豫告诉我任何其他可能性),但是要意识到,我正在创建具有这些不同点的路径,然后使用“ Flatten”功能平滑曲线:
For Each Point As Point3D In ptsLocal
graphic_points(index).X = (panel.Width / 2) + (Point.z * facteur)
graphic_points(index).Y = (panel.Width / 2) - (Point.y * facteur)
Draw_ringPoint(graphic, Brushes.Gray, graphic_points(index).X, graphic_points(index).Y, 4, IdsPts(index))
index += 1
Next
graphic_points(index).X = graphic_points(0).X
graphic_points(index).Y = graphic_points(0).Y
Dim myPath As New GraphicsPath
'Dim translateMatrix As New Matrix
'translateMatrix.Translate(0, 10)
myPath.AddCurve(graphic_points)
'graphic.DrawPath(New Pen(Color.Cyan, 2), myPath)
myPath.Flatten()
graphic.DrawPath(New Pen(Color.BlueViolet, 2), myPath)
如您所见,我在最后添加点“ 0”以关闭曲线,这是我的结果:
如您所见,除了最后一点和第一个点之间的连接之外,结果还不错。
我如何使这种连接顺畅?还是有其他解决方案可以实现这种可视化?
编辑:
使用DrawClosedCurve方法后,结果看起来更好,但是如您所见,最后一个连接仍然有问题(使用最后一个连接点):
并且没有最后一个连接点: