关于GDI+中曲线画法函数问题
GDI+中画曲线有几个函数。一个是GdipDrawCurve,一个是GdipDrawClosedCurve。后者是画闭合曲线。默认张力值为0.5。但绘图以后发现有一个问题,闭合曲线绘制完以后,起始点和结束点之间的曲线基本等同于直线,这是不是本身函数算法的问题?我用三次样条函数和贝塞尔函数做出来的跟直接调用这个API函数差不多。是你头尾两点的距离比其他的大而已。
不信你给出正方形的4个顶点,闭合曲线就是对称的。 楼上说的,我也知道。不过看图中最上面的闭合曲线,就是包含15、18这两个点的那根闭合曲线,下面的尖角特别明显。就是说用GdipDrawClosedCurve做曲线平滑的时候,是不是只考虑对前面的点进行样条平滑,而不考虑后面的点,所以最后连接而成的闭合曲线,初始曲线和最后曲线连接时候就显得夹角特别尖锐。如果是这样,有没有其他更好的函数使得整根曲线更加圆滑? 这和首尾点没关系。
比如右上包含数字13的闭合曲线,大概是 (140,100)->(50,0)->(0,40)->(75,50)-> 四个点,无论选哪里做首尾点,都不影响曲线。 http://download.csdn.net/detail/veron_04/4814790
补充:VB , API