Gibt es einen effizienten Weg, um eine A3D-Szene in ein 2D-verbessertes Metadium umzuwandeln?

StackOverflow https://stackoverflow.com/questions/6043202

  •  15-11-2019
  •  | 
  •  

Frage

Ich entwickle eine CAD-Anwendung mit Delphi2010 und OpenGL.Momentan arbeite ich an einem Modul, um die aktuelle Ansicht in eine Bilddatei zu exportieren.

Dies ist ziemlich strandhforward für Raster-Formate (Render-Szene zum Offscreen-Puffer der gewünschten Abmessungen, schreiben Sie den Puffer auf die Festplatte), aber ich möchte auch in der Lage sein, einen achse ausgerichteten 2D-Ansicht meiner Szene in ein Vektorformat zu exportieren.Vorzugsweise Winows EMF.

Ich dachte darüber nach, meine Transformationen und Projektion in der Software zu berechnen, oder missbrauchen GleigEedback-Funktionalität.Da ich meine eigene Z-Pufferung umsetzen müsste, scheint dieser Ansatz eher mühsam zu sein, ganz zu schweigen von den Performance-Problemen, die ich möglicherweise ohne Hardwarebeschleunigung erregen könnte.

Da mein Google-Fu nicht zu einem Ergebnis führte, möchte ich fragen, ob jemand von Ihnen Erfahrung mit diesem Problem hat (OpenGL-3D-Szene in 2D-VectorImage konvertieren), oder wenn es eine 3RD-Partei-Bibliothek gibtbekannt, um dies zu implementieren.

War es hilfreich?

Lösung

This is a very hard task, it involves analytical hidden lines removal, polygon splitting and Z-sorting for final output as explained here: http://www.cs.drexel.edu/~david/Classes/CS430/HWs/p214-weiler.pdf

Andere Tipps

There is a C library that does this. It can output PostScript, PDF and SVG. It supports smooth shading too.

While you probably won't be able to use it directly, it might give you some ideas:

http://www.geuz.org/gl2ps/

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top