CAD日記

主にAutoCADのことについて書いているけど、近頃は投資系ネタに注力している。自動売買、仮想通貨、PC関係、プログラミングなど。@caddiary

ソフト開発 DWG

Teigha改めODAでDWGをDXFに変換するプログラムをつくってみよう!【Part.1】

投稿日:2019年1月13日 更新日:

Teigha改めODA(Open Design Alliance)は有料のライブラリー。商用利用するならば、最低でも年間1500ドル(初年度2000ドル)を要する。この場合、配布本数が100本に限られてしまうので、無制限に配布できる年間3000ドル(初年度5000ドル)の契約をすることになるだろう。
一方、商用利用しない場合なら無料または安価に利用できる。60日間のお試しなら無料。教育目的なら1年間無料。組織内で使うなら年間100ドル(初年度250ドル)で2年間使い続けられる。
くわしくは、以下のサイトを参照されたし。
Membership Options

【開発環境】
Visual Studio Community 2017
C++ によるデスクトップ開発
x86用とx64用のVisual C++ MFC
以上、無料で構築可能。とは言え、CADに関わるビジネスユースだったら有料版のVisual Studioを使えるか。。

【ODA(Teigha改め)モジュール】
Kernel and Drawing (2019 Update 2)
Drawings_vc15_amd64dll.zip
Drawings_vc15_amd64dlldbg.zip
Kernel_vc15_amd64dll.zip
Kernel_vc15_amd64dlldbg.zip
Windows 64bitのみを対象とする。もちろん32bit用もあるが、これから作るアプリなら64bitだけでよいはず。
Visual Studio 2017用を対象とする。2005以降すべてが用意されている。
dll版をreleaseとDebugを対象とする。スタティックリンクするmtとmdも用意されているが、実装面での制約がいろいろあって面倒。

【フォルダ構成】
ODATest ※任意のフォルダ
└─SampleExe ※これから作るアプリケーション
└─ODA2019upd2 ※ODAモジュールを配置(zipを解凍する場所。4つのzip内にはヘッダーやソースコードなどが重複しているので、解凍時に上書きしてよい。)

【Visula Studioで新規プロジェクト作成】
Visual C++ ⇒ MFC/ATL ⇒ MFCアプリケーションとして、ODATest内にSampleExeという名前を指定する。ウイザードであれこれ出てくるので、ダイアログベースとして、共有DLLでMFCを使用とする。その他こまかい設定についてはご自由に。なるべくシンプルにしたほうが余計な問題に遭遇せずに済む。

【プロジェクトのダイアログリソース】
以下のように、変換元ファイルを選択して変換実行できるというシンプルなインターフェースとする。

変換先は同一パスで拡張子だけ異なるようにすることで、面倒なインターフェースをつくる必要がない。
同じDWGでバージョン違いを保存するなんてことも今後考えられるが、それは後々の話ということで。

というプランで、ODAモジュールを除いたVC++のサンプルコードを公開するつもり。ODAモジュールの利用を最小限にしてわかりやすいサンプルコードにするのがタイヘンそう。はじめてODAを使うって人が、とっかかりがよくなることを目指すわけだ。ODAとしてやらなければいけないことはけっこういろいろあって、ずいぶん前にやったことを思い出す必要があるので、脳が衰え気味のアラフィフオヤジとしてはけっこうな作業になる。

Part.2はこちら。

-ソフト開発, DWG

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.

関連記事

no image

ODA Members of JAPAN

Open Design Allianceに参加している日本の企業をピックアップしてみた。 AutoCADのファイルフォーマットであるDXF,DWGを読み書きする アプリケーションを保有している日本企業 …

no image

VC2015のプロジェクトを久しぶりにビルドしたらエラーになったけど。。

エラーはこんな感じ。

iTextSharpのバージョンとライセンスが難しい

iTextSharpがPDFを作るオープンソースであることはよく知られているが、そのバージョンとライセンスについてくわしく調べようとすると深みにはまる。 バージョンについて。 4系、5系、7系があって …

no image

円弧をポリラインに変換

以前書いた記事「ポリラインのふくらみ」を実践する日がやってきた。 複数のつながった円弧を1つのポリラインに変換する。 AutoCADのポリラインは、点列を線分でつなぐだけのものではない。 途中にふくら …

PDFアレコレはこんなところが落としどころかね

この3連休はPDFiumを使ったサンプルアプリ作成に取り組んでいて、まぁそこそこの感じにできあがったのでここらでいったん完成としておく。