请教高手一个较难的图形绘制算法!!!!!!!

ghjghjghjdg 2013-01-18 11:33:48
求一算法的实现,在二维平面上点一系列离散点,例如起始点是(x1,y1)当我点第二个点(x2,y2)的时候,我需要用三次Bezier曲线的样条插值算法,在他们之间获取他们之间连接点的坐标集合,然后我会将这些点绘制在图上把两点圆滑的连接起来,然后再点第三个点,这时是以第二个点为起点,以此类推,现在求取得这些插值点集合的高效算法实现。
...全文
253 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ghjghjghjdg 2013-01-30
不能用PATH,要自己画,不然不会问了
回复
destruction666 2013-01-30
干嘛把全部点算出?算出关键的几个点 然后用path路径画法去画不行么?
回复
ghjghjghjdg 2013-01-23
回复
ghjghjghjdg 2013-01-22
样条插值的程序实现就木有人会吗
回复
ghjghjghjdg 2013-01-22
没数学好点的兄弟吗
回复
公孙二狗 2013-01-21
那就去看贝塞尔曲线的算法,一个一个的算吧
回复
raistlic 2013-01-21
Bezier曲线 的算法没有接触过, Graphics2D 的设计不是“点阵”而是“矢量”的(虽然最后具体到屏幕上还是点阵),这一点从Shape接口的方法设计上就可以看出来,——应该可以直接把算法/公式写进 Shape 接口的实现类的方法里,比如这个方法:

boolean contains(double x, double y) {

  // 这里只要验证 x,y 是不是在你的公式的解集内(是不是在点1和点2的解集内/点2和点3的解集内... ...),代入验证就行了
}
“在二维平面上点一系列离散点” 可以作为一个 List<Point>,用来建立你的 Shape 子类型的实例。 任何实现了 Shape 接口的类型都可以直接传入 Graphics2D 的 draw() 方法内。 因为对你说的算法没接触过,说的不对勿怪。
回复
笑莫问 2013-01-21
回复
ghjghjghjdg 2013-01-21
自己顶一下。。。
回复
weiryou10 2013-01-21
来看高手解答
回复
润物wu声 2013-01-18
不懂,帮不了楼主。。。。
回复
相关推荐
发帖
Java SE
创建于2007-09-28

6.1w+

社区成员

Java 2 Standard Edition
申请成为版主
帖子事件
创建了帖子
2013-01-18 11:33
社区公告
暂无公告