Jw_cadの使い方をまとめてみました。

Jw_cadの「外部変形」とは?RubyやPythonを使って作図を自動化するマクロの基礎

Jw_cadの外部変形についてお探しですね。

広告

Jw_cadで繰り返し作業を楽にする「外部変形」の使い方

Jw_cadで図面を描いていると、同じような線や寸法線、測点、文字を何度も入力することがありますよね。

そんなとき、「Excelの座標データから自動で図面が作れたらいいのに」「この繰り返し作業、なんとかならないかな」と思ったことはありませんか?

そこで便利なのが、Jw_cadの「外部変形」という機能です。

外部変形を使うと、RubyやPythonといったプログラムを使って、線や文字、寸法値などを自動で描くことができます。

この記事では、外部変形の基本的な仕組みから、座標ファイルとの関係、RubyやPythonを使った自動化の流れ、そして初心者がつまずきやすいポイントまで、わかりやすく説明していきます。

1. Jw_cadの「外部変形」って何?

外部変形とは、Jw_cadの標準機能だけでなく、外部のプログラムを使って図形を加工したり、新しく作ったりできる仕組みのことです。

他のCADソフトでいう「マクロ」や「スクリプト」に近いものだと考えるとわかりやすいでしょう。

Jw_cadでは、メニューからバッチファイル(BATファイル)を実行して、そこからRubyやPython、Perlなどのプログラムを動かす方法がよく使われます。

外部変形を使えば、選んだ図形を読み取って別の図形に変えたり、座標データをもとに線や円、文字、寸法値を自動で描いたりできるんです。

外部変形の便利なところは、Jw_cadの画面操作と、プログラムによる計算処理を組み合わせられる点です。

例えば、測量の座標データや建物の寸法がExcelにまとまっている場合、その数値をプログラムで読み込んで、Jw_cadが理解できる形式に変換すれば、手入力なしで線形や寸法線、測点名、注記文字などを配置できます。

単純な繰り返し作業ほど効果が大きく、図面を修正するときの入力ミスも減らせます。

ただし、外部変形は「ボタンを押せばすべて自動でやってくれる魔法の機能」ではありません。

Jw_cadが扱うテキスト形式の図形データを理解して、どの座標に何を描くのか、自分で設計する必要があります。

最初は難しく感じるかもしれませんが、基本は「データを読む」→「座標や文字を計算する」→「Jw_cad用のデータを書き出す」という流れです。

この基本を押さえておけば、RubyでもPythonでも、考え方は大きく変わりません。

2. 外部変形でできることと座標ファイルの関係

Jw_cadでExcelなどの数値データから自動で図面を描きたいとき、外部変形のほかに「座標ファイル」を使う方法もあります。

座標ファイルは、テキストファイルに線や文字の情報を書いて、それをJw_cadに読み込ませて作図する機能です。

外部変形と座標ファイルは完全に同じものではありませんが、どちらもテキストベースで図形データを扱うので、考え方には共通点があります。

初心者の方がまず仕組みを理解したいなら、座標ファイルで簡単な線や文字を描いてみるのがおすすめです。

例えば、Jw_cadでは座標値を並べることで線を表現できます。

シンプルに言うと、線は「始点のX座標 始点のY座標 終点のX座標 終点のY座標」という形で指定します。

文字や寸法値は専用の書き方で、座標、向き、文字の内容などを指定します。

実際には線の色や種類、レイヤー、文字の大きさなども関係してきますが、最初からすべて覚える必要はありません。

まずは「数値を並べた行が線になる」「文字指定の行が注記や寸法値になる」というイメージを持つと理解しやすくなります。

簡単な例として、横線と寸法値のような文字を出すデータは、次のような考え方で作れます。

実際の外部変形では、これをRubyやPythonが自動で書き出す形にします。

“`txt
10 10 5000 10
cs 2500 300 1 0 “4990
“`

この例では、1行目で座標(10,10)から(5000,10)まで線を引くイメージです。

2行目のような文字・寸法値系の指定では、配置する位置、向き、表示する文字を指定します。

Jw_cadの書き方には細かいルールがあるので、実際に使うときはJw_cadに付属しているサンプルの外部変形や「JWW_SMPL.BAT」などを見ながら進めると安心です。

特に寸法線そのものをきちんと自動で描きたい場合は、寸法補助線、寸法線、寸法値、矢印や端部記号をどう表現するか、細かく分解して考える必要があります。

Excelとの相性が良いのも、外部変形や座標ファイルの大きなメリットです。

Excelで始点・終点・寸法値・文字を計算して、その結果をテキストとして貼り付けるだけでも、ある程度の自動作図は実現できます。

さらにPythonを使えば、CSVファイルを読み込んでJw_cad用のテキストを作ることもできます。

つまり、最初は座標ファイルで手動読み込みを試してみて、慣れてきたら外部変形としてJw_cadのメニューから実行できる形に発展させていくのが現実的な進め方です。

3. RubyやPythonで外部変形を動かす基本の仕組み

Jw_cadの外部変形は、一般的に「BATファイル」と「スクリプトファイル」の組み合わせで作ります。

BATファイルとはWindowsのバッチファイルのことで、Jw_cadから呼び出される入口の役割を持っています。

BATファイルの中でRubyやPythonのスクリプトを実行して、そのスクリプトがJw_cadの一時データを読み書きするという流れです。

Rubyがよく使われてきたのは、昔からJw_cad外部変形のサンプルが多くて、参考にできる情報を見つけやすいからです。

一方で、最近はPythonでCSV処理やExcel連携をしたい人も増えていて、Pythonでも外部変形を作ることは十分可能です。

基本的な流れはこうです。

Jw_cad側で外部変形を実行すると、選択した図形や作図条件が一時ファイルに渡されます。

外部プログラムがその内容を処理して、Jw_cadに戻すための作図データを書き出します。

既にある図形を変換する外部変形では、Jw_cad上で対象図形を選んでから処理します。

逆に、ExcelやCSVの座標から新しい図形を作るだけなら、選択図形を使わずに、CSVを読み込んで線や文字を生成する方式も考えられます。

どちらの場合も、最終的にはJw_cadが理解できるテキスト形式に落とし込むことが重要です。

PythonでCSVから線を作る考え方は、とてもシンプルな形なら次のようになります。

実際に使うにはファイルの場所、文字コード、エラー処理、レイヤー指定などを整える必要がありますが、構造を理解するための例として見てください。

“`python
import csv

with open(“input.csv”, encoding=”utf-8″) as f, open(“output.txt”, “w”, encoding=”shift_jis”) as out:
reader = csv.DictReader(f)
for row in reader:
x1 = row[“x1”]
y1 = row[“y1”]
x2 = row[“x2”]
y2 = row[“y2″]
out.write(f”{x1} {y1} {x2} {y2}\n”)
“`

この例では、CSVにあるx1、y1、x2、y2を読み込んで、Jw_cadで線として読める形のテキストを出力しています。

Rubyでも同じように、CSVを読み込んで文字列として作図命令を書き出せば、考え方は同じです。

大事なのは、プログラミング言語そのものよりも、Jw_cadが必要とする出力形式を正しく作れるかどうかです。

Rubyは既存の外部変形サンプルを参考にしやすく、PythonはExcel・CSV・数値計算との連携がしやすいという違いがあるので、自分の業務データに合わせて選ぶといいでしょう。

外部変形を実行するBATファイルでは、Pythonを呼び出すなら「python script.py」のような命令を書きます。

ただし、実際にはPythonのインストール場所や環境変数、Jw_cadのフォルダ構成によって動作が変わることがあります。

会社のパソコンではPythonのインストールに制限がある場合もあるので、他の人に配布する予定があるなら、実行環境を揃える工夫が必要です。

個人で使うだけなら、まずは決まったフォルダにBAT、スクリプト、CSVを置いて、確実に動く最小構成を作るところから始めると失敗が少なくなります。

4. 自動作図マクロを作るときの注意点と学習の進め方

Jw_cadの外部変形で作図を自動化するときは、いきなり複雑な図面全体を自動生成しようとしないことが大切です。

例えば「道路線形、測点、寸法線、注記、表題まで全部を一度に作る」と考えると、必要な情報が多すぎて途中で挫折しやすくなります。

最初は、Excelの2点座標から線を1本描く、次に複数本の線を描く、その次に文字を配置する、最後に寸法線らしい見た目を組み立てる、という順番で段階的に進めるのが現実的です。

特に注意したいのは、Jw_cad上の座標単位、縮尺、レイヤー、線の色、文字サイズです。

プログラム側で正しい座標を出していても、図面の縮尺や文字種の設定と合っていなければ、文字が大きすぎたり、寸法値が意図しない場所に出たりします。

また、測量座標のように数値が大きいデータをそのままCADに入れる場合、図面原点との関係も考える必要があります。

自動化では「計算が正しいこと」と「図面として見やすいこと」は別問題なので、出力後の見た目を確認しながら調整する工程が欠かせません。

学習の順番

おすすめの学習手順はこんな感じです。

1. **まずJw_cadの座標ファイル機能で線と文字を手入力**して、どの書き方がどの図形になるのか確認する
2. **Excelの数式で同じ形式のテキストを作って**、コピーして読み込んでみる
3. **PythonやRubyでCSVを読み込んで**、同じテキストを自動生成するようにする
4. **BATファイルを用意して**、Jw_cadの外部変形として呼び出せるようにする

こうすれば、手作業の座標貼り付けから一歩進んだマクロ化ができます。

自動化しやすい処理、しにくい処理

外部変形で自動化しやすい処理には、一定の規則があります。

反対に、現場ごとに判断が変わる作図や、図面の見た目を人が細かく調整している部分は、完全自動化よりも半自動化のほうが向いています。

例えば、次のような作業は外部変形と相性が良いです。

– CSVやExcelにある座標から、線分・ポリライン状の図形・測点名を作図する
– 始点と終点の差から寸法値を計算して、指定位置に文字として配置する
– 選んだ図形の属性や座標を読み取って、一定のルールで補助線や注記を追加する

実務で使うときの注意点

外部変形を実務で使う場合は、出力結果を必ず目で確認する運用にしておくべきです。

プログラムは入力データが間違っていても、そのまま正しそうな図形を描いてしまうことがあります。

CSVの列がずれている、単位がmmではなくmになっている、座標の符号が逆になっている、といったミスは自動作図では発見が遅れがちです。

入力チェック、ログ出力、サンプル図面での検証を行って、最初から本番図面に適用しないことが安全です。

まとめ

Jw_cadの外部変形は、仕組みを理解すればRubyでもPythonでも十分に活用できます。

ポイントは、Jw_cad独自の作図データ形式を覚えて、ExcelやCSVの数値をその形式へ変換する流れを作ることです。

最初は座標ファイルで小さく試して、次にスクリプトで自動生成して、最後にBAT経由で外部変形化するという段階を踏めば、寸法線や測点などの定型作図を効率化できます。

手作業をすべて置き換えるのではなく、繰り返しが多くてミスが起きやすい部分から自動化することが、Jw_cadの外部変形を実務で役立てる近道です。

ぜひ、できるところから少しずつ試してみてください。


広告

この記事をシェアする

記事一覧へ戻る

関連記事 Relation Entry

関連する記事はまだありません。