SVG文件的变形。贝齐尔曲线?

时间:2012-03-30 09:02:26

标签: opengl svg 2d bezier elliptic-curve

我有一个SVG文件。此文件显示卡通人物的轮廓(2D角色)。 我的问题是,我可以创建一个程序,它允许用户与大纲进行交互并对其进行变形。 一个例子是,用鼠标拉动角色手臂的轮廓,手臂变大。

我认为Bezier Curves和Elliptical Arcs是一个解决方案。我也想知道我是否使用OPENGL,我可能会更灵活。

3 个答案:

答案 0 :(得分:1)

您需要与自己打交道的互动方面。最近有一个OpenGL扩展NV_path_rendering,它使得SVG和其他矢量格式的精确,硬件加速渲染变得非常简单。 SDK包含至少一个显示与控制点交互的示例,这可能为您提供一个良好的起点。显然,这将要求您/最终用户拥有支持扩展的GPU。 Here's a video开发人员解释扩展及其可以做的事情。

答案 1 :(得分:0)

  

我也想知道我是否使用OPENGL,我可能会更灵活。

OpenGL不会以任何方式使事情变得更容易。 OpenGL是一个绘图API,而不是某种魔术场景和几何管理器。所有它给你的是点,线和三角形以及方法来定义如何将它们绘制到帧缓冲区。

与用户的交互完全超出了OpenGL的范围。

答案 2 :(得分:0)

iscriptdesign允许您创建交互式图形,但您需要自己编程/编写脚本。