CAD-Viewer



  • Hallo,

    in einem Projekt sollen Studenten einen "einfachen" CAD Viewer programmieren, welcher CAD Dateien einliest und grafisch (2D, 3D) darstellt.

    Nun habe ich allerdings wenig Ahnung von der Materie und suche über dieses Forum hier ein paar Informationen.

    Wie aufwendig wäre solch ein Projekt? Da CAD und OpenGL ja recht nahe beieinander liegen (oder irre ich mich da?), gibt es eventuell schon Funktionen für solch ein Programm?

    Ich würde mich sehr über einige Antworten zu dem Thema freuen.

    MfG der Bär 😉



  • Hi,

    das aufwändigste daran ist wohl, das Dateiformat der entsprechenden CAD Datei zu erhalten. So weit ich weiss gehen die entsprechenden Hersteller damit aus gutem Grund nicht gerade hausieren.

    Wenn das geklärt ist dürfte die Komplexität der Aufgabe vom Vorwissen in 3D- und GUI-Programmierung abhängen.

    Ciao,
    Stefan



  • Hallo,

    ich denke, dass ersteinmal die 2 "allgemeinen" Formate STEP und IGES ausprogrammiert werden sollen. Das sich auch diese von Hersteller zu Hersteller unterscheiden ist leider ein anderes Problem.

    Aber schonmal danke für Deine Antwort.



  • Kommt darauf an welche Funktionalität der Viewer nachher besitzen soll.
    Je mehr grafische Elemente und Einstellungsmöglichkeiten desto komplizierter wirds.



  • Hallo,

    die Funktionalität soll "nur" darin bestehen, CAD-Dateien, wie z.B. STEP einzulesen und in einem Fenster anzuzeigen. Matürlich wäre es dann noch nett, wenn sich das Modell drehen und heranzoomen ließe, aber das sind ja Standardfunktionen.

    MfG Lars



  • Ich hatte mich mal mit so etwas beschäftig. Es sei gesagt das es dir verdammt wichtig sein sollte einen Iges bzw. Step-Viewer zu programmieren.Wenn nicht dann lass es lieber!
    Es gibt aber noch andere Cad-Formate die "etwas" einfacher sind zB. DXF oder STL für 3D. Zu welchen genauen Zweck soll das Ganze dienen?



  • Jo DXF lässt sich da schon leichter auslesen, damit habe ich selber erst gearbeitet.
    Ob du das mit OpenGL, DirectX oder sonst was umsetzt ist deine Sache. Allerdings stimmt es, das wohl die meisten CAD-Programme auf OpenGL beruhen. Wie schnell du das umsetzt, kommt darauf an, wieviel Erfahrung du schon mit OpenGL hast.

    Ansonsten gibts auch so ein ActiveX-Steuerelement, was diverse Formate anzeigt von jpeg bis CAD-Dateien^^ Das gänge am schnellsten *gg*



  • AutoVue heißt das PlugIn, musst mal googlen wirst einiges zu finden



  • Ahh, danke für das Plugin. Das schaue ich mir gleich einmal an. In dem FH Projekt in dem ich arbeite, gehts um verschiedene CAD Programme und ihre teilweise Falschdarstellung von z.B. STEP Dateien, die in fremder Software erstellt wurden.

    Aus diesem Grund hielten wir es für ratsam, mal einen Studenten einen einfachen Viewer basteln zu lassen.

    Lars



  • wenn sich die STEP Formate der versch. Hersteller unterscheiden wirds wohl schwierig. Allerdings hat man wohl über die FH eine größere Chance an die Datenblätter zu den Formaten zu kommen als privat. Bin mal gespannt was dabei rauskommt ^^



  • DXF lässt sich da schon leichter auslesen

    Lesen schon aber auswerten?



  • Hallo,

    ich habe gerade mal nach AutoVue gegoogelt und es scheint wirklich ein interessantes Programm zu sein. Allerdings ist es in dem Fall kein ActiveX Element, sondern ein fertiges Produkt, dass ich erwerben kann, oder irre ich mich da?

    MfG Lars



  • „Ahh, danke für das Plugin. Das schaue ich mir gleich einmal an. In dem FH Projekt in dem ich arbeite, gehts um verschiedene CAD Programme und ihre teilweise Falschdarstellung von z.B. STEP Dateien, die in fremder Software erstellt wurden.

    Aus diesem Grund hielten wir es für ratsam, mal einen Studenten einen einfachen Viewer basteln zu lassen. „

    Wenn nur das der Grund ist, dann lass es doch lieber. Oder meint ihr wirklich ihr bekommt das besser hin?
    Ich nehme mal das die Fehler insbesondere bei der 3D Darstellung auftreten.
    Bei Iges und Step hat man es vorwiegend mit BSpline-Flächen, RBspline-Flächen und NRBSpline-Flächen zu tun die werden dann noch lustig mit allerlei anderen Linienzügen oder Spline getrimmt. Das ist ein riesen Spaß mit Flächen 2,3 und 4 grades.
    Und wenn man damit fertig ist da stellt man fest das Iges noch etwa 100 weitere Objektypen definiert.
    Cad-Schnittstellen sind sehr kompliziert und werden deswegen von den vielen Anwendungsentwicklern meist als Fremdlizenzen integriert.
    Wie gesagt ich hatte mal angefangen ein Iges-Viewer zu programmieren hatte es aber aus Zeitmangel einstellt.
    Wenn ihr das trotzdem vor habt dann besorge dir erst mal die Dokumentationen über die Schnittstellen dann wist ihr was auf euch zukommt.
    Ihr könnt euch aber auch Opencascade anschauen. Dort ist ein Igesviewer mit bei. Leider ist das Ganze so umfangreich und verstrickt das ich es vorgezogen habe einen selbst zu basteln.



  • das AutoVue ist ein ganzes Paket. Die liefern einige Beispielprogramme mit, wo die Verwendung gezeigt wird. Aber das ganze liegt dort halt auch als ActiveX-Steuerelement rum. Das muss man in der Registry eintragen(die DLL) und dann kann man es z.B. in Visual C++ "einfach" benutzen. Für Ausbildungssachen is das Teil auch kostenlos, nur bei kommerzieller Anwendung brauchst wohl ne Lizenz.

    DXF auswerten geht doch mal noch. Kommt aber auch drauf an was man will. Ansonsten gibts für die CAD-Anbinung extra Bibliotheken, ziemlich umfangreiche. Die kann man auch benutzen, wenn man die Datei nicht per Hand auslesen will.


Anmelden zum Antworten