So-net無料ブログ作成
検索選択

Teighaのdwg2018サポート時期 [DWG]

AutoCAD2018がリリースしてしばらく経つ。5年ぶりのdwg変更で2018形式になったわけだが、まだうちのCADの問い合わせでdwgが読めねーじゃねーかという話は聞いていない。永久ライセンスがなくなったので、AutoCAD2018を入手したユーザーは少ないのだろう。とはいえ、時間の問題で導入するユーザーが増えてくるので、2018形式のdwgを読めるようにしておかなければならない。

Teighaの対応がいつかということになる。Teighaのサポートフォーラムで聞いてくれた人がいた。回答は、6月のリリース4.3.0で、2018形式dwgに対応したい。「したい」って書きっぷりが微妙。英文では「We hope...」と書いてあった。6月って言えばあと1~2か月なので、ちょっと無理じゃないか。9月くらいになると予想しておく。

ところで2018形式dwgって何が変わったのか。多くの異尺度対応オブジェクト、ビューポートがある図面を開く保存する操作が速くなるらしい。あと、3Dソリッド、サーフェスがASMというジオメトリモデラが使われるようになったって。前半はレイアウト(ペーパー空間)を使った時の話だし、後半は「なんちゃって3次元」のAutoCADの3次元機能の強化に関わることなので、多くのユーザーに関係ない。

dwg2018形式が決定 [DWG]

オートデスクさんのニュースリリース3月版
ポイントだけ引用する。
>DWG /DXF形式のバージョンが 2013 から 2018 に更新されました。
2013から5年ぶりの変更だ。

他に強化されているのは何かをサマってみる。
・外部参照のパスを簡単に編集できる
・PDFから読み込んで図形になっている文字をSHX文字として認識
・画面の外側に出たオブジェクトを選択する機能を追加
・携帯端末用のモバイル アプリがサブス特典で利用可能

どれもどうでもよく、そしてdwg形式変更につながっていない。
上記はまだ機能強化のほんの一部だと思われるので、情報が出てくるのを待とう。
しかし、2013のときも同じような状況だったんじゃないか。。。

そうなってくるとOmegaという開発コードは何だったのかってことになる。
ギリシャ文字の最後の文字のOmegaってことだから、2013形式の最後なのかと思っていたが、別の考え方をすると2018形式が最後のデータ形式になるってことなのか。それともAutoCADというネーミングの最後のバージョンなのか。

Teighaを使う日本企業 [DWG]

ODA Members of JAPANという記事を2008年に書いた。
56社の日本企業がOpen Design Allianceと契約していたという実態だった。
それから約8年経ってどうなっているかを明らかにしてみる。

以下、ODA Memberリストから引用。
※2015/12/13現在で、アルファベット順
※URLに「.jp」が含まれるものを抜き出した
※リンク切れは除いた

[Founding Members](1社/全38社中)
アンドール株式会社
[Commercial Level Members](69社/全757社中)
アイサンテクノロジー株式会社
アルファテック株式会社
株式会社オルタテック
株式会社建築ピボット
株式会社エーエスエー・システムズ
アジア航測株式会社
株式会社ビィーシステム
ベルソフトウェア株式会社
株式会社ビーガル
株式会社ビッグバン
株式会社ボルク電子
株式会社C&Gシステムズ
株式会社シーセット
株式会社シビルソフト開発
株式会社コンピュータシステム研究所
株式会社シーピーユー
株式会社シーワークス
株式会社デザイン・クリエィション
株式会社エリジオン
株式会社フォーラムエイト
株式会社フレスコ
株式会社富士通九州システムズ
株式会社富士通システムズ・ウエスト
福井コンピュータ株式会社
五大開発株式会社
株式会社日立産業制御ソリューションズ
株式会社日立製作所
ホンダエンジニアリング株式会社
iCAD株式会社
株式会社インフォマティクス
株式会社アイ・エス・テクノロジー
IS株式会社
伊藤忠テクノソリューションズ株式会社
株式会社ジャパンテクニカルソフトウェア
青森日揮プランテック株式会社
川田テクノシステム株式会社
株式会社建設システム
株式会社構造計画研究所
倉敷紡績株式会社
倉敷機械株式会社
ラティス・テクノロジー株式会社
株式会社ライブステップ
株式会社マイクロアーツ
三菱電機エンジニアリング株式会社
株式会社ムトーエンジニアリング
株式会社ニコン・トリンブル
株式会社NTTファシリティーズ
株式会社NYKシステムズ
株式会社OSK
株式会社ピースネット
株式会社フォトロン
株式会社ルートプロ
株式会社三英技研
佐鳥電機株式会社
シグマ株式会社
新東工業株式会社
株式会社ステップス・アヘッド
株式会社システムアイ
株式会社システムズナカシマ
タクテックス株式会社
株式会社タイワ
太陽工業株式会社
株式会社テクノソリューションズ
日本ユニシス・エクセリューションズ株式会社
株式会社ワコム
株式会社横河技術情報
株式会社四電工
株式会社ワイ・エス・エス
株式会社図研

こうやってリストアップしてみるとけっこうな数の日本企業が
Teighaを使っていることがわかる。
70社もあって、そこでレベルは違うにせよ、DXF,DWGを解析する仕事に
取り組んでいる人間がいるってわけだ。
おもしろい。

Teighaラスター出力の実力 [DWG]

CAD日記らしく、最近注力しているTeighaについて。
今さらながらTeighaについて軽く説明してみよう。
Teighaは、AutoCADクローンCADのエンジンとしての長い歴史があるものだが、
おいらが注力しているのはDWGの変換エンジンとしての利用。
CADがDWGを読み込んだり書き込んだりするのに、DWGの中身がわからなきゃ
話にならんわけで、それを助けてくれるコンポーネントなのだ。
CADにこだわる必要もなくて、何らかのアプリがCADの国際的デファクトスタンダード
であるAutoCADのDWGを解釈したいってのもある。
AutoCADが国際的な事実上の標準である一方、日本ではそうでもなくて国産CADが
まだまだ生き残れているってのもあって、それゆえにおいらがメシを食えている
ってのもある。

さて、Teighaのラスター出力である。
昔DWGビューアを作ったことがあり、ビューアで画面で見るだけじゃ
つまらんと思って、ラスター(BMP、JPEG、PNG)で出力できるようにしてみた。
紙への印刷もって考えたんだけど、その奥の深さに辟易して半端な状態に
なっているということは、今回の話には関係ない。
BMPにするのが簡単にできたので、BMPをあるツールを使ってJPEGやPNGに
変換できるようにしたのだった。

最近PDFがいろんなところで注目されているという話を少し前にした。
複合機でスキャンしたデータがPDFになるってのが話しの入り口だ。
(JPEGやTIFFにすることもできるが扱いやすさからPDFがよく選ばれる)
そのPDFをアプリでプログラム的に読み取ろうとするとき、壁がある。
PDFはAdobe Readerや何らかのフリーソフトがあれば見れるけれども、アプリとして
その中身を閲覧するには、PDFレンダリングエンジンが必要でそんなものがタダで
そこらに落ちているものではなかったりする。

そこで登場するのがTeighaなのだ。
TeihaはPDFレンダリングエンジンとしてVisual Integrity社の技術を取り込んでいて、
PDFを扱うことができる。
Teighaはタダってわけではないので、手軽に使えないけれども、おいらが長いこと
使っていたものなので、おいらにとっては手軽ってこと。
PDFに注力しはじめたのはCADの世界がけっこうはやくて、CAD図面にPDFを
配置して下書きとして使おうっていう発想があったのだ。

そこでおいらが実装したのが以下の処理だ。
空のDWGにPDFを配置して、PDFで全体表示してラスターファイルとして保存する。
今回調査したところ、saveRasterImageでBMPだけでなくJPEG、TIFF、PNG、GIFにも
変換できることがわかった。
なるべくTeighaだけで完結させたかったのだが、以下いくつかの問題が表面化した。
・解像度(DPI)が指定できない
・TIFFのG4のような白黒2値化を行う際のしきい値が指定できない
この2つの問題をクリアするべく、Teighaの調査をタラタラとやっていたのだが、
最終的にはできないという結論にたどり着いた。

「BMPをあるツールを使ってJPEGやPNGに変換できるようにした」ということを上で書いた。
そのツールがImageKitだ。
これまたタダってわけではないけれども、昔からちょこちょこ使っていたものだったので、
とっかかりはつかむことができた。
ImageKitで解像度と2値化の際のしきい値設定を行う方法がわかった。
ということで、TeighaでBMP化して、ImageKitでファイルタイプ、解像度、2値化のしきい値
設定を行う仕様とした。

ここで新たな問題が出た。
Teighaによる出力結果をImageKitで処理するために、一時ファイルを作るように
したのだが一時ファイル読み書きでディスクIOが発生してオーバーヘッドがかかる?
Teighaの出力結果はsaveRasterImageを使う限りファイルにしかならないが、
convertRasterImageを使うと何やらメモリーストリームみたいなクラスで受けることが
できた。
一方、ImageKitはファイルからの入力(IKFileLoad)以外に、メモリーからの
入力(IKFileLoadMem)ができることがわかり、その引数がHANDLEだった。
OdMemoryStream→OdBinaryData→GlobalAllocしたメモリーのHANDLE
TeighaとImageKitのあいだをオンメモリーでつなぐことができたのだった。

一時ファイルを作って変換するものとオンメモリーで変換するものの時間を計ってみた。
たいして時間に違いが出なかった。。。
そう、具体的に問題が出たということではなく、懸念事項があったというだけの話
だったのだ。
でもまあ、いろいろと勉強になったのは確かでおもしろいテーマでもあった。

ともあれ、PDFのラスター化について一定の結論が出たのだった。
Teighaは仕事でもあり、趣味でもあるってところか。

超ニッチだけどTeighaが使えるってことが広まってきたか [DWG]

おいらのCAD人生においてTeighaは重要な位置づけであり、
今後しばらくはミニバブルが来たような状態になるのではないかと、
期待も含めて予想している。
まず、Teigha=ティーガだということを知っている人が少ない。
ティーガは何なのかを知っている人も少ない。
ティーガをTeighaと書ける人は日本で10人くらいかもしれない。

長年こつこつと研究を重ねてきたわけだけれども、CADを知らない人に
注目されるようになったきっかけはPDFだ。
AutoCADがPDFアンダーレイという図形を追加したので、CADでも
PDFをレンダリングできなきゃいけなくなったのだ。
PDFがISO標準になったことも関係して、Adobeだけのものではなくなり
世界中のソフトウェア開発メーカーがこぞって参入してきている。
PDFはベクトルデータを表現できるので、CADデータと似ている。
Teighaは、PDFをレンダリングする力があるってのがポイントだ。
PDFをAcrobatなしで、きれいな状態で画面に表示したいっていう要求が
身近で2件発生したので、ちょちょいとそんなアプリをつくってみた。
Teighaの開発元であるOpenDesignAllianceは、PDFを扱うエンジンとして
Visual Integrity社 のコンポーネントを使っている。

PDFとは別の話しとして、本来の目的であるAutoCADデータの解析がある。
外部参照と聞いてピンとくる人は、CAD業界には多くいる。
外部参照の参照方法には、相対パス・絶対パス・パスなしの3種類がある。
あるDWGファイルを別のフォルダに移動した場合、相対パスとパスなしの
外部参照がリンク切れを起こしてしまうので、何とかしたいって話だった。
1.DWGファイルを開く
2.ブロックテーブルを一個ずつ確認していく
3.ブロックが外部参照かどうかを判定する
4.外部参照パスが絶対パスでなければ、DWGファイルパスと合わせて絶対パスを作る
5.ブロックの外部参照パスに絶対パスをセットする
6.別名のDWGファイルとして保存する
こんなレベルのことは、おいらがこれまでやってきたことを抜き出すだけでよいので、
おちゃのこさいさいだったりするんだけれども、Teighaをはじめて使う人だったら、
たっぷりの時間が必要なんだろうな。
依頼者には、サイゼリヤのボトルワインマグナムを要求しておいたが、
ちょいと安売りしすぎたかと後悔しはじめているところだ。

他に、こんなのも売れるだろうというTeighaの技術を挙げておく。
・ブロックのクリップ(別名XCLIP)が有効な状態でブロック分解する
・PDFアンダーレイを画像イメージに変換して、機能が低いCADでも読めるようにする
・画層ごとの一覧をサムネイル表示する
・レイアウト(ペーパー空間)の図面ををモデルの図面に変換する

Teighaを使いこなしているランキング1位 in Japanは、おいらだと思う。
超ニッチなのも間違いないから、母数が100人くらいだ。
DWGをそこそこ読み書きできるCADが100個くらいだからという根拠。
もっとTeighaの技術が評価されるようになるべく、世にその成果物を
出していって、さらには母数の100人が300人500人と広がっていくように、
Teighaのエバンジェリスト(伝道者)になってみたいものだ。
nice!(9)  コメント(0)  トラックバック(0) 
共通テーマ:仕事

TeighaのPDFサポートその後 [DWG]

TeighaのPDFサポートのその後の話です。
Teigha(旧OpenDWG)のベースの契約だけではPDFを扱うことが
できないため、追加契約が必要となる。
デモ版での基本的動作の確認がとれため、追加契約を行い、
仮実装が完了したので報告する。

PDF Support Moduleと呼ばれ、追加契約に年間$500が必要となる。
ベース契約の開始時期により、その$500の支払いは変化する。
実例で言えば、ベース契約の開始が9月であるところ、
PDF Support Moduleの申し込みが12月だったので、むこう9ヵ月間の
月割りで$500×9/12=375ドルとなった。
そして、今年9月の契約更新のときは、まるまる$500が上乗せされる。

PDF Support Moduleの実体。
DLL版しかないので、現状LIB版を使っている場合は注意が必要。
LIB版はないのかと問い合わせたら、使っている外部モジュール
(Visual Integrity社)の関係で、ないという返事だった。
Teighaには、3.9.1とか4.0.1というバージョンがあるところ、
PDF Support Moduleは、原則最新版の4.0.1でしか公開されてない。
どうしても3.8.1で使いたいと要求してみたら、Webにアップしてくれたので、
言えば何とかなるのかもしれない。

デモ版では、PDFに電子透かしが入っていて、モジュール初期化
処理の度にメッセージボックスが表示されるという制限があるところ、
正式版ではこれら制限がなくなっていることを確認した。

世にはPDFを扱うためのライブラリが多くある模様。
でも、CADベンダーだったらDXF,DWGを扱うためのTeighaを
すでに契約しているわけだから、Teighaの追加契約がお得だ。
これがあれば、AutoCADのPDFアンダーレイを自社CADに取り込むことが
できて、さらには自社CADにPDFアンダーレイ的な図形を追加する
という構想があるなら、ベストチョイスになる。
CADのデファクトと電子文書のデファクトを両方ゲットできるのだ。

ワイプアウト [DWG]

ワイプアウトなんて言葉は、日本語ではなじみがない。
拭き取る、一掃するという意味で、サーフィンにおいては波に煽られて
ひっくり返ることらしい。

AutoCADのワイプアウト(WIPEOUT)の話題。
領域を隠す図形である。
昔はAutoCAD標準の機能ではなく、Expressツールを別に入れないと
使えないものだったが、今では標準で使うことができる。
閉じた連続線によって構成されていて、その領域の下にある図形を隠す。
輪郭図形は線だけで、円弧や曲線では表現できない。
下にあるっていうのがミソで、上にある場合は図形を隠さない。
上か下かは表示順序によって制御される。

データ構造的な話。
DXFリファレンスでは、10,20,30が挿入点で、11,21,31と12,22,32ベクトル点と
書かれているが、これらは無視してよい。
重要なのは、91のクリップ境界の頂点数と14,24の頂点座標である。
この頂点座標だけでワイプアウトは表現できる。
どうして意味のない座標があるかというと、ワイプアウトが
画像イメージの派生エンティティだからだ。
領域の中に画像を描くか、何も描かないかの違いだから、
いっしょくたにしたようだ。

画像とワイプアウトが似たもの同士というわけだが、違和感を感じる。
前述の挿入点とベクトル点だけでなく、画像固有と考えられる明るさ・
コントラスト・フェードなんて情報がワイプアウトで使えたところで
何の意味もない。
ワイプアウトは、シンプルに座標列があるだけでいいんだから、
独立した図形としたほうがよかったのではないだろうか。

DXFハンドブック 第2版 [DWG]

10年振りの改定版が出ているのに気付いたので早速購入。
なかなか売ってないかなと思ったら、会社近くのくまざわ書店にて発見。
価格は高いがその価値あり。

DXFハンドブック 第2版

DXFハンドブック 第2版

  • 作者: 落合 重紀
  • 出版社/メーカー: オーム社
  • 発売日: 2013/11/30
  • メディア: 単行本(ソフトカバー)

このシリーズの本を買うのは3冊目。
20年程前に某CADのDXFコンバータの担当になり、情報が極度に
少ない中この本に出会い、辞書替わり使い始めたのだった。
最初は何のことやらよくわからなかったわけだが、この本のおかげで
今ではたいていのことが頭に入っている感じ。
とは言え、知らないこともいくつかあるわけで、それを補うために
今でもこのシリーズの第1版は、会社の机の上の目立つところに
配置してある。

今回のこの2版、1版よりも一回り大きくなっていて、絵が増えていて、
ところにより小さい字で多くの情報が出ている。
ザッとみたところ、書き加えられているところがたくさんありそうだ。

ここはCAD日記なわけで、AutoCADやDWGについて書くべく
立ち上げたわけだから、ここらでこの本からテーマをもらって、
ちょいと掘り下げた記事でも書いてみるかと、少し気持ちが高ぶってきた。

TeighaのPDFサポート [DWG]

AutoCADがPDFアンダーレイ(PDFUNDERLAY)を配置できるように
なったのは、AutoCAD2010からだった。
CAD図面の下書きとして、ラスターイメージ(JPEGやTIFF)を配置する
ことは前からできていたことだったが、電子ペーパーのデファクトで
あるPDFでもそれを可能にしたということだ。

久しぶりのTeighaの話題である。
Teighaは、OpenDesignAlliance(以下ODA)が提供しているAutoCADの
DXF・DWGファイルを解析するためのライブラリで、解析結果を
自社CADなどのデータに変換することを目的としている。
TieghaがPDFをサポートし始めたというのは、数年前から知っていたが、
そこには3つ問題があった。
1.年間$500の追加費用がかかる
2.試しに使ってみてどんなものかを確認することができない
3.ドキュメントが全部英語で書かれている

先日、軽い気持ちでODAのサイトをのぞいたら2つ目の問題が解消していた。
デモ版が用意されていたのだ。
デモ版実装の手順は、以下の通り。
1.ダウンロードしたモジュールを実行ファイルフォルダに配置する
2.ソースコード中のodInitialize()の後に以下1行を追加する
 odrxDynamicLinker()->loadModule(L"PdfModuleVI.tx");
3.プロジェクトをビルドする
デモ版だけあって、以下の制限事項があった。
・loadModuleの度にメッセージボックスが表示される
・PDFに透かしが表示される。
金を払っていないのだから、これくらいは当たり前だろう。

PDFを画像化する目途がたった。
画像ファイルにしてしまえば、某CADに画像として配置することが
できて、AutoCADのPDFアンダーレイを読み込んだことになる。
もしPDFのレンダリングする機能が使えるなら、画像化などせずに
PDFのままCADに取り込んでしまうことも考えられる。
つまり、某CADにおいてもAutoCADのPDFアンダーレイと同等の
図形を追加して、変換してしまおうというわけだ。

これはいける感じだ。
以下4つの具体的な提案をして、関係者にアピールしてみよう。
1.PMツールの変換対象図形にPDFアンダーレイを追加する
2.某CADの変換対象図形にPDFアンダーレイを追加する
3.某CADの新しい図形として下書きPDFを追加する
4.某グループウェアのPDFをサムネイル画像に変換する機能
 今のめんどうな処理からTeighaを利用したものに変える

これだけメリットがあれば、年間$500(日本円で約5.4万円)は
安いものだ。(1人の1日分の人件費より安い)
英語の問題は、気合と根気で何とかなるだろう。
久しぶりにプログラマの血が騒いできた。

Teigha3.8 [DWG]

AutoCAD 2013が出てから半年ちょっとが経過。
3年ごとのデータ変更の年だったわけだが、まだ2013形式のDWGは
世にそれほど出回っていない。
なぜなら、2013形式データを読み書きできるのはAutoCADをはじめとした
Autdesk製品だけしかないからだ。

Teighaは、AutoCADデータ(DWG,DXF,DWF)を読み書きするための
コンポーネントライブラリで、非AutodeskのCADベンダーならどこでも
使っているものである。
年間3000ドルで、使用権を得られるのはたいへんリーズナブルだ
3.8というバージョンで2013形式に対応する。
この11月末には、その準備が整うようだ。

毎年リリースされるAutoCAD、高額なバージョンアップ費用、
2次元機能についていえば大して強化する余地のない状況。
果たして、どれだけのユーザーがAutoCAD2013を使っているだろう。
毎年の恒例行事として、新しいAutoCADをインストールして、
ただその行為自体に満足しているだけのような気がする。
デスクトップにあるAutoCAD2013のショートカットが、なんだか
むなしく見えてくる。