标签: vector-graphics

使用OpenGL(和OpenGL ES)渲染SVG

我目前正在研究使用OpenGL和OpenGL ES从SVG文件渲染矢量图形的可能性.我打算以Windows和Android为目标.我理想的解决方案是拥有一个最小的C库,从给定的SVG文件生成多边形三角剖分.然后,这将生成标准的OpenGL或OpenGL ES调用,并在重绘时使用显示列表或vbo进行优化.我只需绘制一个显示列表,在翻译和旋转后绘制矢量图像,允许我将其与其他OpenGL调用混合.

到目前为止,我看到建议首先使用QT或开罗. - 这不是一个选项,因为我希望在没有膨胀库的情况下管理我自己的OpenGL上下文(在我想要实现的内容中).这也不适合Android.

第二个选项是使用渲染到纹理的库.虽然这可能适用于静态矢量图形,但对于经常进行缩放和旋转的游戏来说,它不是一种有效或可行的选择.

第三,有可能使用OpenVG.OpenVG规范(ShivaVG等)有一些开源实现,但我还没有找到一个能够在运行时从给定的SVG文件生成适当的OpenVG调用的库,我无法看到如何优化它我们可能希望使用显示列表或vbo.

这三种方法都受到限制.我认为最有希望的选择是在没有其他解决方案的情况下使用OpenVG实现.所以我的问题是,是否有任何图书馆可以做我想要的,或接近我想要的?如果没有,有什么理由不是吗?尝试从头开始这样做会更好吗?

opengl svg android opengl-es vector-graphics

55
推荐指数
5
解决办法
2万
查看次数

找到多边形的质心?

为了获得中心,我已经尝试为每个顶点添加总数,除以顶点数.

我也试图找到最顶端,最底部 - >获得中点...找到最左边,最右边,找到中点.

这两个都没有返回完美的中心,因为我依靠中心来缩放多边形.

我想缩放我的多边形,所以我可以在它们周围放置一个边框.

找到多边形的质心的最佳方法是多边形可能是凹的,凸的并且有许多不同长度的边?

c c++ vector vector-graphics

45
推荐指数
3
解决办法
6万
查看次数

HTML5画布矢量图形?

请告诉我你知道HTML5 Canvas中用于绘制和处理矢量图形的库吗?

谢谢!!!

html5 canvas vector-graphics

43
推荐指数
2
解决办法
5万
查看次数

有没有Android Drawable设计师?

我想在我的Android应用程序中使用更多矢量绘图.提供图像并不像我希望的那样具有空间效率或可扩展性.

Android提供了一系列Drawable文件格式,例如ShapeDrawable,可以组合在一起LayeredDrawable.如果有一个设计师用于可视化结果,进行绘图并处理所有生成的文件,那么在这条路径上走得很远就会很好.

C#WPF有Expression Blend,Adobe有Flash CS4,而iPhone有Opacity.所以我的问题是,是否有适用于Android的设计师或绘图工具?

注意:其他问题已经讨论过在Android中使用SVG.Android没有对SVG的本机支持,因此唯一的方法是使用外部库.我想避免这种情况,并且要求使用开发人员方面的工具.SVG到Drawable转换器会很好,但我不知道.

graphics android vector-graphics drawable

40
推荐指数
1
解决办法
8491
查看次数

如何在按钮单击时更改矢量可绘制路径的颜色

随着新的Android支持更新,矢量drawables获得向后兼容性.我有一个带有各种路径的矢量图像.我希望通过单击按钮或基于输入值以编程方式更改路径的颜色.是否可以访问矢量路径的name参数?然后改变颜色.

android vector vector-graphics android-vectordrawable

37
推荐指数
5
解决办法
4万
查看次数

Android中的矢量图形

我正在开发一个显示其他人的图像数据库的应用程序.他们拥有的图像都是矢量图形,可以转换为任何格式,但是将它们保存为矢量格式是好的,因为用户可能想要放大.

问题是,是否有一种在Android中显示矢量图形的内置方法?格式无关紧要 - 我们可以转换.我们正在考虑的当前格式是PDF,但鉴于没有本机PDF支持,我必须做一些非常复杂的事情才能使其正常工作(例如,通过NDK 将poppler集成到我的应用程序中).另一种方法是将矢量图形转换为更简单的格式(JPG,GIF),但我宁愿避免这种情况.

android vector-graphics

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

方向两点

一些高中数学概念已被遗忘,所以我在这里问.

如果我有两点p1(x1,y1),p2(x2,y2)的方向P1-->p2,这是p1指向p2.由向量表示这个方向,它是Vector(x2-x1,y2-y1)Vector(x1-x2, y1-y2)

顺便说一下,规范化矢量的目的是什么?

math vector vector-graphics vectorization

31
推荐指数
2
解决办法
5万
查看次数

使用GoogleMap BitmapDescriptor的VectorDrawable

BitmapDescriptor在创建MarkerOptions使用VectorDrawableAPI 5.0+的图标时遇到谷歌地图问题

用于创建的方法:

@NonNull
private BitmapDescriptor getBitmapDescriptor(int id) {
    return BitmapDescriptorFactory.fromResource(id);
}
Run Code Online (Sandbox Code Playgroud)

id参数包含png drawable时,一切都很好,但是如果我VectorDrawable在xml中定义它,那么当googleMap.addMarker(marker)(BitmapDescriptor不是null)时,App总会崩溃.

11-05 10:15:05.213 14536-14536/xxx.xxxxx.app E/AndroidRuntime: FATAL EXCEPTION: main
    Process: xxx.xxxxx.app, PID: 14536
    java.lang.NullPointerException
        at com.google.a.a.ae.a(Unknown Source)
        at com.google.maps.api.android.lib6.d.dn.<init>(Unknown Source)
        at com.google.maps.api.android.lib6.d.dm.a(Unknown Source)
        at com.google.maps.api.android.lib6.d.ag.<init>(Unknown Source)
        at com.google.maps.api.android.lib6.d.eu.a(Unknown Source)
        at com.google.android.gms.maps.internal.j.onTransact(SourceFile:167)
        at android.os.Binder.transact(Binder.java:380)
        at com.google.android.gms.maps.internal.IGoogleMapDelegate$zza$zza.addMarker(Unknown Source)
        at com.google.android.gms.maps.GoogleMap.addMarker(Unknown Source)
        at xxx.xxxxx.app.ui.details.DetailActivity.lambda$initGoogleMaps$23(DetailActivity.java:387)
        at xxx.xxxxx.app.ui.details.DetailActivity.access$lambda$10(DetailActivity.java)
        at xxx.xxxxx.app.ui.details.DetailActivity$$Lambda$13.onMapReady(Unknown Source)
        at com.google.android.gms.maps.SupportMapFragment$zza$1.zza(Unknown Source)
        at com.google.android.gms.maps.internal.zzl$zza.onTransact(Unknown Source)
        at android.os.Binder.transact(Binder.java:380) …
Run Code Online (Sandbox Code Playgroud)

android google-maps vector-graphics

31
推荐指数
4
解决办法
1万
查看次数

如何在eps文件的每个对象中替换另一种颜色?

我有一个我需要编辑的矢量图像,我有inkscape.我想要做的是用另一组调色板替换一组调色板.例如,我的图像有一个调色板,有几种颜色的橙色,绿色和蓝色.如果我想用另一种颜色替换调色板的橙色部分,我该怎么办?

vector-graphics inkscape color-palette

30
推荐指数
1
解决办法
4万
查看次数

三次贝塞尔曲线和二次贝塞尔曲线及其用例有什么区别?

我最近一直在玩帆布,并使用与这些曲线相关的方法绘制了几种形状(泪滴,花瓣,云,岩石).话虽如此,我似乎无法弄清楚这些不同曲线的用例之间的区别.

我知道三次贝塞尔曲线有2个控制点,一个起始点和一个端点,其中二次贝塞尔曲线有一个控制点,一个起点和一个端点.但是,在绘制形状时,我似乎无法轻易决定使用哪一个或何时结合使用它们.

如何知道在不同的绘制形状点使用哪种曲线?

math graphics bezier curve vector-graphics

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