标签: vector-graphics

哪个更好?为什么?RaphaelJS或HTML5 Canvas?

我在互联网上找到了一个甚至可以与IE6一起使用的矢量库!

http://raphaeljs.com/index.html

太奇妙了.

现在我的问题是它比即将推出的HTML5 <canvas>更好吗?我要问的唯一原因是,微软实现一个不需要插件才能运行的<canvas>可能还需要几年的时间.

在互联网上的所有IE用户摆脱他们的旧浏览器之前,它甚至会更长,这样我们甚至可以证明使用HTML5 <canvas>.

我只是坚持标准,但由于MS的浏览器开发速度缓慢,这个问题需要花费太长时间.

思考?

javascript html5 vector vector-graphics

14
推荐指数
3
解决办法
2万
查看次数

在分段三次Bézier路径中插入点的算法

我正在寻找一种算法,在Bézier曲线上插入一个新的控制点,而不会变形.

有没有人知道Bézier算法的库或参考(插入,优化,de Casteljau ...)?

algorithm bezier vector-graphics

14
推荐指数
1
解决办法
4628
查看次数

矢量图形泛洪填充算法?

我正在研究一个简单的绘图应用程序,我需要一个算法来填充洪水.
用户工作流程将如下所示(类似于Flash CS,更简单):

  1. 用户在工作区上绘制直线.这些被视为矢量,可以在绘制后进行选择和移动.
  2. 用户选择填充工具,然后单击绘图区域.如果该区域在每个方向上都被线包围,则对该区域应用填充.

如果在应用填充后移动线条,则相应地更改填充区域.

任何人都有一个好主意,如何实现这样的算法?主要任务基本上是确定一个点周围的线段.(以某种方式存储此信息,移动线条)

编辑:解释图像:(画布中当然可以有其他行,对填充算法无关紧要)

在此输入图像描述

EDIT2:更困难的情况:

在此输入图像描述

EDIT3:我找到了一种用孔填充多边形的方法 http://alienryderflex.com/polygon_fill/,现在的主要问题是,我如何找到我的多边形?

language-agnostic geometry vector-graphics actionscript-3 flood-fill

13
推荐指数
1
解决办法
3281
查看次数

从给定轴按角度排序点?

如何通过逆时针增加给定轴向量的角度对点/向量数组进行排序?

例如:

示例配置

如果0是轴向量,我希望排序的数组按顺序排列2, 3, 1.

我有理由相信它可以用交叉产品,自定义比较器和std::sort().

c++ algorithm math geometry vector-graphics

13
推荐指数
2
解决办法
7969
查看次数

如何将JavaFX节点导出到SVG图像?

换句话说,我正在尝试用JavaFX做一些事情,就像Batik允许你用Swing做的那样.

我希望能够捕获JavaFX UI中任意节点的外观,就像Node.snapshot()一样,除了我需要像SVG这样的矢量格式的图像,而不是光栅图像.(并且将我的节点的光栅快照插入到SVG图像中是不够的;它需要是一个适当的,可缩放的矢量图像.)

这是一个长期项目,所以我甚至愿意实现我自己的GraphicsContext,或者JavaFX的保留模式API中的等价物.

有谁知道有没有办法做到这一点?我希望在JavaFX中甚至可以做什么?

java svg javafx vector-graphics

13
推荐指数
2
解决办法
4700
查看次数

如何设置EaselJS图形和形状的z-index

我在画布上有EaselJS Shapes然后我开始绘制每个刻度的图形.目前正在形状上绘制图形.有没有办法定义z-index,以便每个帧都在Graphics上绘制Shapes?

任何帮助将非常感激.

animation canvas vector-graphics easeljs createjs

13
推荐指数
1
解决办法
2万
查看次数

如何旋转2d矢量?

我有这个:

static double[] RotateVector2d(double x, double y, double degrees)
{
    double[] result = new double[2];
    result[0] = x * Math.Cos(degrees) - y * Math.Sin(degrees);
    result[1] = x * Math.Sin(degrees) + y * Math.Cos(degrees);
    return result;
}
Run Code Online (Sandbox Code Playgroud)

我打电话的时候

RotateVector2d(1.0, 0, 180.0)
Run Code Online (Sandbox Code Playgroud)

结果是: [-0.59846006905785809, -0.80115263573383044]

该怎么做才能得到结果[-1, 0]呢?

我究竟做错了什么?

c# rotation vector-graphics

13
推荐指数
3
解决办法
4万
查看次数

正在为android搜索"PaintCode"

是否有任何矢量绘图应用程序可以为iOS和Android生成本机代码?我想要一个为iOS和Android制作UI控件和按钮的工具(在Xamarin中).我可以使用PaintCode for iOS 制作出色的动态对象,但是对于Android版本,我必须使用其他一些Android工具重新创建它,所以我基本上都做了两次.我很想找到一种方法来创建一些动态控件/按钮,可以在Xamarin iOS和Xamarin Android中使用.

android vector-graphics ios xamarin paintcode

13
推荐指数
1
解决办法
2708
查看次数

在绘图应用程序中分离模型和视图/控制器

我正在使用矢量绘图应用程序(在java中),我正在努力解决我的模型类和视图/控制器类之间的分离.

一些背景:

您可以绘制不同的形状:
矩形,线条和饼图段

有4种工具可以在画布上操纵形状:
缩放工具,移动工具,旋转工具和变形工具

对于这个问题,变形工具是最有趣的一个:它允许您通过拖动其中一个点并调整其他属性来更改形状,如下图所示:

操纵形状的不同选项

这些转换规则对于每个形状都是不同的,我认为它们是模型业务逻辑的一部分,但在某种程度上它们需要暴露给视图/控制器(工具类),以便它们可以应用正确的形状.

此外,形状通过不同的值在内部表示: - 矩形存储为中心,宽度,高度,旋转 - 该行存储为起点和终点 - 饼图段存储为中心,半径,角度1,角度2

我计划在未来添加更多形状,如星星,气泡或箭头,每个都有自己的控制点.

我还计划在未来添加更多工具,例如旋转或缩放形状组.

每个工具的控制点都不同.例如,使用缩放工具时,您无法抓取中心点,但每个缩放控制点需要与一个轴点(或多个让用户选择)相关联.

对于像矩形,直线和饼图这样的简单形状,控制点对于类的每个实例都是相同的,但是期货形状如贝塞尔曲线路径或星形(具有可配置的尖峰数)将为每个实例提供不同数量的控制点.

那么问题是什么是建模和实施这些控制点的好方法?

由于它们对于每个工具略有不同并且携带一些工具/控制器特定数据,因此它们以某种方式属于工具/控制器.但由于它们也特定于每种类型的形状并且具有非常重要的域逻辑,因此它们也属于该模型.

我想避免在添加一个工具或形状时为每个工具/形状组合添加特殊类型的控制点的组合爆炸.


更新:再举一个例子:将来我可能会想到一个我想要支持的新形状:弧形.它类似于饼段,但看起来有点不同,拖动控制点时表现完全不同.

为了实现这一点,我希望能够创建一个实现我的Shape接口的ArcShape类并完成.

弧形的行为

java oop model-view-controller user-interface vector-graphics

13
推荐指数
2
解决办法
902
查看次数

XCode:来自PDF质量不佳的矢量图像

对于我的iOS Swift项目,我使用矢量化的pdf文件,XCode从这些文件呈现@ 1x,@ 2x,@ 3x图像.

矢量化PDF文件的XCode配置

当我将PDF生成的图像质量与相同大小的普通PNG图像进行比较时,我发现它们之间的质量差异很大.从理论上讲,下图中第一行和第三行的质量应该相同,因为我的iPhone 6上的54x40 PDF应该使用普通的视网膜显示器渲染和使用108x80图像.不幸的是质量远非平等.

在此输入图像描述

任何人都可以向我解释这些差异来自哪里,也许我可以如何提高生成图像的质量?

提前致谢.

vector-graphics ios xcode7

13
推荐指数
3
解决办法
3434
查看次数