CAD日記

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

Jw_cad

Jw_cadのデータ形式をひもとく

投稿日:

Jw_cadはこの業界の誰もが知っているフリーのCADソフト。その歴史は長く、MS-DOS版の初版が1991年だったというのだから、30年以上も経過しており今でも建築業界で使われている生きるレジェンドだ。1997年にWindows版が出てからでも25年も経っているわけでスゲーなぁ。

日本でCADを作ってるメーカーはJw_cadの存在を無視できないので、jwcやjwwの読み書きを可能にしている。データ形式が公開されているから、C++プログラマーならさして手間をかけずにコンバーターを作れる。以下が公開情報。
Jw_cadのデータ形式

色や線種については別記事で書いたので、ここでは図形について記す。図形タイプは以下の7種類のみ。文字で画像配置が可能なので実質8種類。
線 CDataSen、円弧 CDataEnko、点 CDataTen、文字 CDataMoji、寸法 CDataSunpou、ソリッド CDataSolid、ブロック CDataBlock
これらがどんな情報を持っているのかの詳細は上記サイトからわかるとして、以下では概要と特徴について語る。

【線 CDataSen】
始点と終点の座標があるだけ。
【円弧 CDataEnko】
円、円弧、楕円、楕円弧が表現可能。中心点、半径、開始角、終了角が円弧の基本として、そこに傾き角、扁平率、全円フラグがあるから、多様な幾何図形を表現できる。
【点 CDataTen】
点の座標は当然あるとして、仮点フラグ、点の形状、角度、倍率もあり。
【文字 CDataMoji】
サイズの縦横間隔、始点終点座標、角度、フォント、文字列など。寸法値設定フラグがビットフラグになっていて、小数点以下の桁数はφを頭につけるなんて寸法値固有の属性設定がある。Jwwに寸法という構造がないので、このフラグがどんな意味があるのかはよくわからないが、見た目を再現するためには不要な情報だろう。
文字列の先頭に「^@BM」があると画像として認識して、bmpを表現できる。
【寸法 CDataSunpou】
上で寸法の構造はないと言い切ったが、簡易的な寸法はある。線と文字と点をグループ化したもの。寸法矢印が何でサイズがいくつ。。のような寸法固有情報はない。
【ソリッド CDataSolid】
ハッチングや塗りつぶしとも言う。円や円弧や線で囲んだ領域を塗りつぶす。楕円、楕円弧も可能。でも、複数の円弧をつなげた領域は無理なので、このソリッドを複数配置して最終的な塗りつぶし形状を表現することになる。
【ブロック CDataBlock】
1定義複数配置が可能なおなじみの構造。データリストは一般図形用(m_DataList)とブロック図形用で2種類ある。C一般図形用の中にCDataBlockがあって、その参照先の定義がブロック図形用にある。jwcにはなかった構造だが、一般的なCADには必ずある。

こう見ると、シンプルで必要最小限でほどよい情報量だということがわかる。dwgだと比べようがないほどに複雑怪奇なわけで、対比するととても好ましく感じる。情報量が少ないjwwを多いdwgに変換する分には、書くべきコードは少なくて済む。逆の変換をしようとするとタイヘンだろうな。いやいや、複雑な図形タイプは分解しまくればいいのか。

-Jw_cad

執筆者:


comment

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

JW_CADデータを読む

 以前書いた「DWGを読む」に続いての、CADデータを読むシリーズの第2弾です。今回はJW_CADのデータ、つまりJWCとJWWのデータ構造についてです。  JWCは、JW_CAD MS-DOS版のデ …

no image

Jw_cad 8

Jw_cadがこの1月に、約3年振りの改修が行われて、 Version 8.00となったことを今知った。 http://www.jwcad.net/ 変更点のうち、興味深いのは以下3点だ。 ・画面表示 …

no image

Jw_cad の変化

前の記事を書いてから、4ヶ月が経過していた。 久しぶりにJw_cadのサイトをみたら、少しバージョンアップしてた。 5.00e の次は5.01で、今は5.02a 。 Ver6 にはならなかったか。 5 …

no image

JWWデータ形式変更

Jw_cadがバージョンアップして、JWWのデータ形式が変更になりました。 最新バージョンは5.00eですが、データ形式が変更になったのは4.20からのようです。 変更点1:線種および線色の定義を拡大 …

no image

JWWを読む

 やっぱりJWWについても書くことにしました。JWCに触れておいてJWWを語らなければ、片手落ちなのでは、と考えたので。今では、Windows版のほうが圧倒的にユーザー数が多くて、データの流通において …