没做过,帮你顶,其实这个问题可以google一下

解决方案 »

  1.   

    谢谢power_zh和fuzhe,这个问题我在google找过,满眼洋文!晕倒!!
      

  2.   

    1:利用win32api函数PolyBezier
    2:opengl里面也应该有相应的方法
    3:Bezier曲线实际上就是一个参数曲线x(t) = axt^3 + bxt^2 + cxt + x0
    y(t) = ayt^3 + byt^2 + cy^t + y0
    取四个点,包括起点和终点,再取两个中间点。
    t从0到1,计算常数
    cx = 3 (x1 - x0)
    bx = 3 (x2 - x1) - cx
    ax = x3 - x0 - cx - bxcy = 3 (y1 - y0)
    by = 3 (y2 - y1) - cy
    ay = y3 - y0 - cy - by
    然后取t的值,每取一个值,就计算一个点,这样不就算出来了吗?
    要是想计算量小一点 ,就取t的间隔大一些,然后连起来
    如此而已
      

  3.   

    楼上有人已经把Bezier中经典的de casjau作图法写出来了。我觉得,这个问题关键是求自由线上的离散点到离它最近的Bezier上的离散点(也就是不同的t说对应的点)的距离和。使得距离和最小,也就达到了逼近的目的。其中有不少数学上的处理,能力有限,不多说了。
      

  4.   

    有条件的话,去一下www.cnki.net中国期刊网,上面这样的论文会有的。
      

  5.   

    to: xyzxyz1111(如是我闻) and stamp80(清风扑面) 谢谢指点!我会在仔细考虑的!!
    如果哪位大侠有类似代码拿来参考,小弟不胜感激!!!
      

  6.   

    难道这个问题会在csdn上沉沦吗?等待中…………