28

OpenGLアプリ(DebianのC ++で開発、Qtを使用)に表示したいいくつかの単純なSVGアートワーク(アイコンやグリフのようなもの)があります。

明らかな解決策は、ImageMagickライブラリを使用してSVGをラスターイメージに変換し、それらをいくつかの適切なポリゴンにテクスチャマッピングすることです(または古き良きglDrawPixelsを使用するだけです)。

ただし、SVGを一連のOpenGL呼び出しに直接変換し、OpenGLの線やポリゴンなどを使用してレンダリングするものがあるかどうか疑問に思っています。誰もがこれを行うことができる何かを知っていますか?

4

5 に答える 5

12

Qtはこれを行うことができます。
QSvgRendererは SVG を取り、それを上にペイントできます。SVG 以外の QGLWidget に何かを描画したい場合QGLWidget
は、abit をいじる必要があるかもしれません。paintEvent()

于 2009-06-22T13:26:25.680 に答える
5

SVGLはこれに対処しているように見えますが、数年間休止しています。それでも、そこに価値のあるコードを見つけることができるかもしれません。

于 2009-06-22T13:27:41.963 に答える
2

Inkscapeには、便利なエクスポートオプションがいくつかあるようです。それらには、DXF、PovRay、EPS、PS(PostScript)、XAML、Latex、OpenDocument Drawing(ODG)が含まれます。おそらく、そのうちの1つにコンバーターがあり、Inkscapeを仲介として使用できます。

特にDXFは、すでに一般的な3D形式であるため、候補となる可能性があります。assimpはDXFをロードするための良い候補です。

于 2009-06-22T13:29:28.170 に答える