Frage

Ich schreibe ein Tool, das eine Reihe von 3D-Daten zu verarbeiten, Dinge zu tun, wie Drehen von Objekten, die Übersetzung, Skalierung und all das gute Material verwendet werden soll. Kennt jemand eine gute Bibliothek, die bereits einige dieser gemeinsamen 3D-Sachen macht?

Ich bin nicht daran interessiert, die Daten zur Zeit bei der Visualisierungen und bin in erster Linie daran interessiert, die Vorgänge bei der Durchführung.

Dinge, die ich weiß, dass ich an dieser Stelle benötigen:

  • 2D / 3D / 4D-Vektoren
    • (Addieren, Subtrahieren, Skalarprodukt, Kreuzprodukt, etc ...)
  • Rotation / Translation / Skalierung mit Matrizen
  • Quaternionen

Ich konnte die Sharp3D Bibliothek suchen, aber es scheint, wie es vielleicht tun, was ich will, aber hasn ‚t wurde in einer langen Zeit aktualisiert. Hat jemand verwendet vor? Alle anderen (besser) Vorschläge?

War es hilfreich?

Lösung

Microsoft.Xna.Framework (Schiff diese XNA) könnte die Arbeit machen.

  

Die XNA Framework Math Bibliothek verfügt über mehr geometrischen Grundtypen, die verwendet werden können Objekte in 2D oder 3D-Raum zu manipulieren. Die primitiven Objekte in dieser Bibliothek stellen die erforderlichen Daten für das Objekt ein geometrisches Objekt oder eine Operation zu repräsentieren. Jeder geometrischer Typ hat eine Reihe von mathematischen Operationen, die für die Art unterstützt werden.

     

Vector

     

Das XNA Framework bietet die Vector2, Vector3 und Vector4 Klassen für die Darstellung und Manipulation von Vektoren. Ein Vektor wird typischerweise verwendet, um eine Richtung und Größe darzustellen. in XNA Framework auch mit den gleichen Speicheranforderungen koordinieren oder einen anderen Datentyp speichern wird, es könne jedoch verwendet werden.

     

Jede Vektor-Klasse verfügt über Methoden zur Durchführung von Standardvektoroperationen wie zum Beispiel:

     
      
  • Dot Produkt
  •   
  • Cross Produkt
  •   
  • Normalisierungs
  •   
  • Transformation
  •   
  • Linear, Cubic, Catmull-Rom oder Hermite Spline-Interpolation.
  •   
     

Matrices

     

Das XNA Framework stellt die Matrix-Klasse für die Transformation der Geometrie. Die Matrix-Klasse verwendet eine Reihenhauptordnung Matrizen zu adressieren, was bedeutet, dass die Zeile vor der Spalte angegeben ist, wenn ein Element aus einer zweidimensionalen Matrix beschreibt. Die Matrix-Klasse stellt Verfahren zum Durchführen einer Standardmatrixoperationen wie beispielsweise die bestimmte oder Inverse einer Matrix berechnet wird, zusätzlich zu Hilfsmethoden zur Erstellung Maßstab, Translation und Rotationsmatrizen.

     

Quaternionen

     

Das XNA Framework bietet die Quaternion Struktur eine effiziente Rotation um einen Vektor um einen bestimmten Winkel zu repräsentieren und zu berechnen.

Andere Tipps

Ich habe es nie benutzt, aber ich nur packte Sharp3D und es scheint gut zu funktionieren (abgesehen von einigen Ausgabe über starke Namen, die ein paar Minuten in Anspruch nahm um zu arbeiten). Mein Eindruck ist, dass es nicht gerade leicht, aber weit davon entfernt auf der schweren Seite zu sein.

In Bezug auf kein aktuelles Updates, es ist nicht wie Mathematik verändert oder etwas ...

Versuchen SciNet Linea unter www.obacs.com . Es ist nicht eine freie Bibliothek aber im Vergleich zu Alternativen es nicht sehr teuer ww

ist

SciNet Linea ist nicht verfügbar, von www.obacs.com mehr. Es kommt nun innerhalb SciNet Math, die viel mehr Fähigkeiten hat. Ich kaufte vor einem Monat eine Kopie für meine Forschung. Ich mag es so weit.

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