webentwicklung-frage-antwort-db.com.de

Open Source CAD-Zeichnungsbibliothek (dwg) in C #

Kennt jemand eine Open Source DWG-Bibliothek (Autocad Drawing) in C #?

25
Mac

Die große Hürde beim DWG-Format besteht darin, dass sich das Binärformat alle 3 Jahre ändert - und es soll sich im März 2009 erneut ändern. Es wird verschlüsselt und die Spezifikationen dafür werden nicht veröffentlicht. Es ist eine massiv komplizierte Bibliothek mit vielen dunklen Gassen, die selbst AutoDesk unbekannt ist (sie haben es vor Jahren erworben).

Nicht Open Source, sondern die Open Design Alliance ... (von ihrer Website) ...

ist eine gemeinnützige Mitgliedschaft Konsortium von Softwareunternehmen, Entwickler und Benutzer verpflichten sich zu Förderung des offenen Austauschs von CAD Daten jetzt und in der Zukunft. Im Neben dem Setzen von Standards für CAD Datenformate, die ODA konzentriert sich auch auf die praktische Angelegenheit der Entwicklung Software-Bibliotheken von außergewöhnlichen Qualität, die es ODA-Mitgliedern ermöglicht, Anwendungen entwickeln, die für .__ geeignet sind. Lesen und Schreiben der beliebten DWG und DGN CAD Dateiformate.

Die Kosten hängen davon ab, wofür Sie die Bibliotheken verwenden, aber die Basiskosten für einen Entwickler betragen 100 U $/Jahr, wobei eine Beitrittsgebühr von 250 U $ anfällt. Vergleichen Sie das mit AutoDesk's RealDWG bei 2500 $/Jahr und 5000 $ für das 1. Jahr, dann ist es ein Schnäppchen. Die RealDWG-Lizenz ist übrigens pro Produkt. Die ODA-Lizenzen sind etwas günstiger und ermöglichen es Ihnen, mehr als ein Produkt mit derselben Lizenz herzustellen. Sie können für den Quellcode bezahlen, aber er kostet eine Bombe - weniger, als wenn Sie ihn selbst entwickeln

Wenn Sie nur 1 Produkt haben, wird RealDWG möglicherweise für Sie geeignet sein, aber es ist nur Windows - Bonus, es hat eine .NET-API an denen die ODA noch arbeiten ... die .NET-APIs der ODA (es gibt 2) sind etabliert. Die ODA-Produkte werden für eine Reihe von Betriebssystemen zusammengestellt, darunter Windows (32-Bit), SGI, Solaris, Windows (64-Bit), Macintosh, HP, Windows CE, Linux, IBM AIX.

Ich finde es auf jeden Fall ein enormes Rad, das man neu erfinden muss.

Es gibt einige Bibliotheken von Drittanbietern mit begrenzten spezifischen API-Funktionen, um nach diesen zu suchen, wenn Ihre Anforderungen sehr spezifisch sind.

Es ist auch erwähnenswert, dass AutoDesk seit Jahren in mehr oder weniger kontinuierlichen Rechtsstreitigkeiten mit der ODA tätig ist. Wenn Sie sich entscheiden, mit ihnen zu konkurrieren, ist dies eine weitere Komplexität, auf die Sie sich freuen müssen. UPDATE: Diese Zeiten sind ziemlich vorbei.

Ich entwickle auch ein Produkt, das mit DWG-Dateien kommuniziert. Ich gehe den kommerziellen Weg, weil der damit verbundene Zeit-, Kosten- und Arbeitsaufwand für mich absolut unwirtschaftlich ist. UPDATE: Ich habe es getan. tvCAD.tv basiert auf RealDwg

Update Juli 2018

Obwohl ich RealDwg für tvCAD verwendet habe, würde ich wahrscheinlich die ODA-Bibliotheken verwenden, wenn ich dieses Projekt heute starten würde. Das Erstellen des RealDwg-Installationsprogramms war ein Albtraum . Die RealDwg-Installationsgröße entspricht etwa dem 10-fachen der ODA-Installationsgröße. Yah, ernsthaft. 

Die Dominanz von Autodesk auf dem AutoCAD-Markt nimmt ab, es ist nicht mehr die Wahl von IBM. Ich kann tvCAD in Zukunft in die ODA-Bibliotheken umwandeln - es würde nicht viel mehr Schmerz kosten, um mich dazu zu drängen. Die Lizenzkosten sind vergleichbar.

In der Vergangenheit war die Unterstützung durch die ODA für besser als die in der Autodesk-Umgebung, abgesehen von der aktiven und fantastischen Peer-Unterstützung in den Foren, die im AutoCAD-Tag-Wiki erwähnt wird, das für alle Plattformen recht universell ist. .NET-Code von RealDwg kann mit den ODA-Bibliotheken wortwörtlich verwendet werden. Dito mit .NET-Plugins für AutoCAD/BricsCAD usw.

29
CAD bloke

Es gibt keine Open-Source-Lösungen, es gibt einige kommerzielle, darunter eine .NET-Komponente namens CadLib, die von Wout Ware bereitgestellt wird: http://www.woutware.com/cadlib.html .

3
Wout

Die einfachste Route ist das Konvertieren von dwg in dxf ascii. Es ist ziemlich einfach, ascii dxf abzufragen.

1
keith
1
Sebastian

Wenn Sie die Dxf-Route hinuntergehen, würde ich netDXF vorschlagen. Es ist Open Source und funktionierte gut für meine begrenzten Anforderungen, obwohl es keine Unterstützung für mehrzeilige Texte gibt und der Autor sagt, dass es einige andere Dinge gibt, die er nicht unterstützen wird, da sie autodesk gehören.

1

Es gab einmal einen Versuch, den .dwg-Parser von Art Haas (aus dem Pythoncad-Projekt) auf c # zu portieren. Ich kann den Link Geldautomat nicht finden, aber es war vor ein paar Jahren. Das Erstellen einer plattformübergreifenden Open-Source-DWG-Bibliothek steht für VectorSection ganz oben auf meiner Liste. Lassen Sie mich also wissen, was Sie herausfinden!

0
Eric Wilhelm

Die einzige Open Source, die ich kenne, ist LibreDwg, und ich glaube nicht, dass es abgeschlossen ist. Es ist nie wirklich sehr weit gekommen.

Ich kenne eine, die praktisch kostenlos ist. Sie heißt Ivan CAD Library 2012 und befindet sich auf www.ivancad.com. 

Es könnte Ihre Bedürfnisse sehr gut erfüllen.

0
John