Appearance
座標ファイルの書式仕様(lg/ly/lc/ch/ci ほか)
このページでできるようになること
Jw_cadの座標ファイル(テキスト形式の図形データ)の 書式仕様 を体系的に理解できるようになります。lg(レイヤグループ)/ ly(レイヤ)/ lc(線色)/ lt(線種)/ lw(線幅)/ cn(文字種)といった 書込設定コード から、線・円・円弧・文字・寸法・点・ソリッド・ブロック・曲線まで、各図形種別の書式と引数を一通り把握できます。テキストエディタで座標ファイルを直接編集して、CSVデータからの一括作図、社内標準部品のテキスト管理、Git/差分ツールでのバージョン管理ができるようになります。
背景: 座標ファイルは「書込設定行 →
#(区切り) → 図形データ行」のシンプルな2ブロック構造です。1行1要素・空白区切りという最小の文法のため、ExcelのCONCAT・PythonスクリプトなどでもJw_cad用の図形データを生成できます。
このコマンドで扱う書式
座標ファイルのコード体系を3グループに整理します。詳しい操作(読込・書込)は別記事に委譲し、この記事では 各コードの書式・引数・例 に集中します。
| 分類 | コード | 役割 |
|---|---|---|
| 書込設定 | lg / ly / lc / lc10 / lt / lw / cn / cn0 / cn"$<フォント> | 図形を作図するときの属性を設定 |
| 一般的な図形 | (無印) / ci | 線・円・円弧・楕円 |
| 文字・寸法値 | cc / ch / cv / cs / cr / co / cp / ct / ck / cz / c2 | 横文字・縦文字・寸法値・日影・2.5D |
| 特殊な図形 | pn / pt / msz / pl / BL / sl / sc / se / so / sg | 点・寸法図形・曲線・ブロック・ソリッド |
委譲: 座標ファイルの 読込・書込の操作手順 は → 座標ファイル(読込・書込)。2.5Dデータ書式(c2)の詳細運用 は → 2.5D機能 ※準備中。
全体構造(書込設定 + 図形データ)
座標ファイルは 「書込設定」と「図形データ」を # で区切る 2ブロック構造です。
lg0
ly0
lc2
lt1
lw8
cn4
cn"$<MS ゴシック>
#
-5 0 5 0#より上: ファイル書込み時点の 作図設定#より下: 図形データ本体
ファイル読込時は、図形データ行の直前にある 線色・線種・文字種 が反映されます。複数の属性を切り替えるときは、図形行と図形行の間に設定行を挟みます。
lc2
lt1
-5 0 5 0
lc4
lt4
-5 10 5 101本目は 線色2・線種1、2本目は線色・線種行を間に挟んだことで 線色4・線種4 で作図されます。
Tips: 設定行は 直前の図形データに対してだけ 効くわけではなく、それ以降の図形に継続して 反映されます。一度切り替えたら、次に切り替えるまで同じ属性で描かれ続けます。
書込設定コード
lg|レイヤグループ設定
書式: lg値 例: lg0, lgA
書込みレイヤグループの番号を指定します。値は 0〜9 a〜f の16進数1桁です。
背景: 座標ファイル読込での作図は 現在の書込レイヤグループ に対して行われるため、
lgは読込時にはほとんど使われません。書込み時に「当時のレイヤグループ」を記録するメタ情報として埋め込まれます。
ly|レイヤ設定
書式: ly値 例: ly0, lyF
書込みレイヤの番号を指定します。値は 0〜9 a〜f の16進数1桁です。lg と同じく、読込時には現在の書込みレイヤに作図されます。
lc|線色設定
書式: lc値 例: lc2, lc4
線色番号を指定します。値は 1〜9。読込時にこの設定があると、その線色で作図されます。記述がない場合は 現在の書込線色 が使われます。
lc10|作図線色(任意色)
書式: lc10 数値 例: lc10 16776960(青)
ソリッド図形などの 任意色(フルカラー) を指定します。数値は以下の式で算出します。
数値 = 赤(0–255) + 緑(0–255) × 256 + 青(0–255) × 65536例: 純赤 = 255 / 純緑 = 65280 / 純青 = 16711680 / 黒 = 0 / 白 = 16777215
lt|線種設定
書式: lt値 例: lt1, lt15
線種番号を指定します。
| 範囲 | 種類 |
|---|---|
| 1〜9 | 通常線種 |
| 11〜15 | ランダム線 |
| 16〜20 | 倍長線種 |
記述がない場合は 現在の書込線種 が使われます。
lw|線幅設定
書式: lw値 例: lw8, lw34
線幅の設定です。線幅は線色に依存する ため、読込時にこの値を変えても作図結果には影響しないとされます。値は元の線幅に 4.234 を掛けて整数化したものになる仕様です。
要確認: 「線幅 × 4.234(小数点以下四捨五入)」の換算式は s-projects 由来。バージョンによる挙動差は実機で確認します。
cn|文字種
書式: cn値 例: cn4
文字種番号を指定します。値は 1〜10。読込時にこの設定があると、その文字種で文字が作図されます。
cn0|任意サイズ文字
書式: cn0 文字幅 文字高さ 文字間隔 線色番号 例: cn0 3.5 3.5 0 2
任意サイズ文字を指定します。固定の文字種(cn1〜cn10)ではなく、寸法を直接指定したい場合に使います。
cn"$<フォント名>|フォント
書式: cn"$<フォント名> 例: cn"$<MS ゴシック>
文字のフォントを指定します。記述がない場合は現在のフォントで作図されます。
要確認: フォント名のスペース有無、半角/全角の混在ルールは s-projects 抜粋からは断定できないため、実機で書込・読込を往復して確認します。
一般的な図形データ
線
書式: x1 y1 x2 y2 例: -5 0 5 0
| 引数 | 意味 |
|---|---|
| x1, y1 | 始点座標 |
| x2, y2 | 終点座標 |
行頭にコード文字がない(数字から始まる)行は 線データ として扱われます。書込時の慣例として、行頭に 半角スペース が1つ入っています。
ci|円
書式: ci x y 半径 例: ci 0 0 10
| 引数 | 意味 |
|---|---|
| x, y | 中心座標 |
| 半径 | 円の半径 |
ci|円弧・楕円
書式: ci x y 半径 開始角度 終了角度 扁平率 傾き角度 例: ci 0 0 10 0 90 1 0
| 引数 | 意味 |
|---|---|
| x, y | 中心座標 |
| 半径 | 円弧の半径 |
| 開始角度 / 終了角度 | 反時計回り(度) |
| 扁平率 | 1で真円、0〜1で扁平 |
| 傾き角度 | 楕円の長軸の角度(度) |
例の ci 0 0 10 0 90 1 0 は、原点を中心とする半径10の真円の0〜90度(左上の四半円)になります。
Tips:
ciは引数の数で 円 / 円弧・楕円 を自動判別します。3つなら円、7つなら円弧・楕円です。
文字データ
cc|文字基準点
書式: cc値 例: cc4
文字の基準点位置を指定します。
| 値 | 位置 |
|---|---|
| 6 = 左上 | 7 = 中上 |
| 3 = 左中 | 4 = 中中 |
| 0 = 左下 | 1 = 中下 |
ch|横文字
書式: ch x1 y1 x2 y2 "文字列 例: ch -11 0 22 0 "あいうえお
| 引数 | 意味 |
|---|---|
| x1, y1 | 基準点座標 |
| x2, y2 | 文字作図方向の座標(基準点を原点としたときの相対座標) |
| "文字列 | 表示する文字列 |
x2, y2 は 「基準点を (0, 0) としたときの座標」 で記述します。先頭の " が文字列の開始を示します。
cv|縦文字
書式: cv x1 y1 x2 y2 "文字列 例: cv 0 11 0 -22 "あいうえお
ch の縦書き版です。引数の意味は同じです。
cs|寸法値
書式: cs x1 y1 x2 y2 "文字列 例: cs 0 0 4.25 0 "10
「寸法」コマンドで作図された寸法値テキストです。寸法値は縦書きの概念がなく、すべて横文字 で扱われます。円周の寸法値も cs になります。
cr|半径寸法値
書式: cr x1 y1 x2 y2 "文字列 例: cr 0 0 6.5 0 "R10
半径寸法のテキストです。引数構成は cs と同じ。
co|直径寸法値
書式: co x1 y1 x2 y2 "文字列 例: co 0 0 8.75 0 "φ20
直径寸法のテキストです。
cp|角度寸法値
書式: cp x1 y1 x2 y2 "文字列 例: cp 0 0 6.5 0 "45°
角度寸法のテキストです。
ct|累寸寸法値
書式: ct x1 y1 x2 y2 "文字列 例: ct 0 0 4.25 0 "10
累進寸法(積み上げ寸法)のテキストです。
ck|日影真北データ
書式: ck x1 y1 x2 y2 "文字列 例: ck -5.625 0 11.25 0 "90.000000
日影図用の真北角度データ。座標は ch と同じ。
cz|日影建物高さデータ
書式: cz x1 y1 x2 y2 "文字列 例: cz -3.75 0 7.5 0 "10.000
日影図用の建物高さデータ。
c2|2.5Dデータ
書式: c2 x1 y1 x2 y2 "文字列 例: c2 -3.75 0 7.5 0 "10 , 0
2.5D機能用の高さ・厚みデータです。文字列部分に 高さ , 厚み を記述します。
委譲: 2.5D機能の使い方そのものは → 2.5D機能 ※準備中
特殊な図形データ
pn|点の色番号
書式: pn値 例: pn3
点の色番号を指定します。値は 1〜9。記述がない場合は 現在の書込線色 が使われます。
pt|点
書式: pt x y 例: pt 0 0
実点を指定座標に作図します。
pt|点マーカデータ
書式: pt x y 倍率 角度 マーカコード 例: pt 0 0 1 0 -7
点マーカ(特殊シンボル)を作図します。マーカコードは以下のとおりです。
| コード | マーカ |
|---|---|
| 1 | blanked arrow |
| 2 | blanked box |
| 3 | blanked dot |
| 4 | dimension origin |
| 5 | filled box |
| 6 | filled arrow |
| 7 | filled dot |
| 8 | integral symbol |
| 9 | open arrow |
| 10 | slash |
| 11 | unfilled arrow |
| -1 | asterisk |
| -2 | circle |
| -3 | dot |
| -4 | plus |
| -5 | square |
| -6 | triangle |
| -7 | X |
msz|寸法図形データ
書式(複数行):
msz
x1 y1 x2 y2
cs x1 y1 x2 y2 "寸法値例:
msz
0 0 10 0
cs 0 0 4.25 0 "10msz は 寸法線(線データ) + 寸法値(cs) を一体として保持する形式です。
pl|曲線データ
書式(複数行 + # で終端):
pl
x1 y1 x2 y2
x2 y2 x3 y3
x3 y3 x4 y4
︙
#連続する線分を1つの曲線データとしてまとめる形式です。終端に # を記述します。
BL|ブロックデータ
書式(# で終端):
BL x y "ブロック名
#例:
BL 0 0 "ブロック1
#ブロック(部品)を指定座標に配置するデータです。
sl|線形ソリッド図形
書式: sl x1 y1 x2 y2 例: sl -5 0 5 0
太い線として塗り潰される線形ソリッドです。
sl|三角形ソリッド図形
書式: sl x1 y1 x2 y2 x3 y3 例: sl -5 0 5 0 0 5
3頂点で構成される三角形ソリッドです。
sl|四角形ソリッド
書式: sl x1 y1 x2 y2 x3 y3 x4 y4 例: sl -5 0 5 0 5 10 -5 10
4頂点で構成される四角形ソリッドです。
Tips:
slは引数の数で 線形 / 三角形 / 四角形 を自動判別します。4個=線形、6個=三角形、8個=四角形です。
sc|円ソリッド図形
書式: sc x y 半径 扁平率 傾き角度 開始角度 円弧角度 ソリッド形状 例: sc 0 0 10 1 0 0 6.283 100
円・扇形・弓形・円外側のソリッドを指定します。角度はすべてラジアン です。
| ソリッド形状 | 結果 |
|---|---|
| 100(10以上) | 円 |
| 5 | 弓形 |
| 0(5以外の一桁) | 扇形 |
| -1 | 円外側(円弧角度がπ/2を超えると扇形になる) |
se|円周ソリッド図形
書式: se x y 半径 扁平率 傾き角度 開始角度 円弧角度 ソリッド形状 例: se 0 0 10 1 0 0 6.283 100
円周(弧)のソリッドです。角度はすべて ラジアン。
| ソリッド形状 | 結果 |
|---|---|
| 100(10以上) | 円 |
| 0(10未満) | 円弧 |
so|円環ソリッド図形(扁平率一定)
書式: so x y 半径 扁平率 傾き角度 開始角度 円弧角度 内円半径 例: so 0 0 10 0.5 0 0 6.283 6
ドーナツ形のソリッドです。扁平率を保ちます。
sg|円環ソリッド図形(幅一定)
書式: sg x y 半径 扁平率 傾き角度 開始角度 円弧角度 内円半径 例: sg 0 0 10 0.5 0 0 6.283 6
so と同じ円環ですが、幅一定 で描画されます。
派生パターン
パターンA: 単純な作図(線・円のみ)
lc2
lt1
#
0 0 100 0
100 0 100 50
100 50 0 50
0 50 0 0
ci 50 25 20矩形と円を一発で作図する最小構成例です。# の前で書込み属性(線色2・線種1)を1セット定義し、# 以降は線4本+円1個。
パターンB: 線色を切り替えながら描く
lc2
lt1
#
0 0 100 0
lc4
lt2
0 10 100 10
lc6
0 20 100 201本目は線色2・線種1、2本目は線色4・線種2に切替、3本目は線色6・線種2のまま継続。直近の設定が継続される ことを利用すれば、同じ線色で描く図形は属性行を繰り返さなくて済みます。
パターンC: 文字+寸法値の混在
cn4
cc4
ch 50 100 20 0 "図面タイトル
cs 0 -10 4.25 0 "100横文字(タイトル)と寸法値を1ファイルに収める例。基準点を中中(cc4)に設定しておくことで、文字位置の制御が直感的になります。
パターンD: ソリッドで塗り潰し図形
lc10 16711680
sl 0 0 100 0 100 50 0 50
sc 50 25 20 1 0 0 6.283 100任意色(青)で四角形ソリッドと円ソリッドを描く例。lc10 の数値が色を直接指定します。
実務での使い方 ★PERSC独自
CSVから一括作図する
エクセル・CSVに整理された大量の点座標(測量結果・プラント計器位置など)を、pt x y 形式の行に変換すれば、座標ファイルとして一発で作図できます。エクセルなら以下のような数式で行を生成できます。
="pt "&A2&" "&B2A列にX座標、B列にY座標を入れて数式をコピーするだけで、pt x y の行が大量生成されます。これをテキストファイルとして保存し、Jw_cad で「ファイル名設定」→「ファイル読込」すれば数百点が瞬時に打てます。
Pythonで座標ファイル生成
繰り返しの多い図形(パンチングメタル・スリーブ配置・通り芯グリッドなど)はPythonでループ生成すると非常に速くなります。書式は単純なテキストなので、print(f" {x1} {y1} {x2} {y2}") を回すだけで線が大量に作れます。
Gitでバージョン管理する
座標ファイルは テキスト形式 なので、Git・SVNなどのバージョン管理ツールで差分管理ができます。社内標準部品(建具・設備シンボル)を座標ファイル化してリポジトリで管理すれば、誰がいつどの部品を更新したかが追えるようになります。バイナリの図形登録ファイルではできない運用です。
寸法値テキストだけ一括差し替え
cs 行の文字列だけを正規表現で置換すれば、寸法値の単位変更・表記揺れ修正 が一括でできます。例: "10 → "10mm のような追記、"45° → "45度 のような変換が、テキストエディタの一括置換で完了します。
PERSCの推奨: 座標ファイルを部品化する場合、ファイル冒頭に コメント行(
#で始まる作図設定の前にメモ) を入れる流派もありますが、Jw_cad の#は構造的な区切り文字なので、コメントは別ファイル(README)で管理 するのが安全です。
つまずきポイント・対処 ★PERSC独自
Q: ファイル読込で何も描かれない
→ # の区切り行が抜けている 可能性があります。書込設定と図形データの間に # が必須です。# がないと、Jw_cad は全行を設定行と解釈し、図形を描かずに終わります。
Q: 線色を変えたつもりが反映されない
→ lc 行が図形行の後にある 可能性があります。lc は 後続の図形 に効くので、変えたい図形の 直前 に置く必要があります。
Q: 文字が全角・半角で文字化けする
→ フォント指定(cn"$<フォント名>)が現在の環境にないフォント を指している可能性があります。MS ゴシックなど、Windowsに必ずあるフォントに置き換えてください。
Q: ソリッドの色が変わらない
→ lc10 の数値計算を間違えている 可能性があります。「赤 + 緑×256 + 青×65536」の式で計算してください。例: 純赤=255、純緑=65280、純青=16711680。
Q: 円弧の角度がおかしい
→ ci の引数(円弧)と sc/se の引数(ソリッド)で角度の単位が違います。ci は 度、sc/se/so/sg は ラジアン。混同に注意してください。
Q: 寸法図形の中の線が二重に描かれる
→ msz ブロック内で線データを書きつつ、ブロック外でも同じ線を書いている 可能性があります。寸法図形は msz 内ですべて完結させてください。
Q: pt で点が見えない
→ 点の色(pn)が背景色と同じ か、画面表示で点が小さすぎる可能性があります。pn で目立つ色を指定するか、画面表示倍率を上げて確認してください。
Q: 座標ファイルの中身を覚えきれない
→ 一度 Jw_cad で対象図形を描いてから「ファイル書込」すれば、正解の書式が自動生成 されます。書式を暗記するより、実際に書込んで雛形を得る → そこから編集 が最速です。
関連項目
- 座標ファイル(読込・書込) — コマンド本体の操作
- 距離指定点 — 始点からの距離で点を打つ
- 長さ取得(線長・2点長・間隔取得ほか) — 長さを寸法ボックスへ流し込み
- 角度取得(線角・鉛直・X軸・2点角ほか) — 角度を傾きボックスへ流し込み
- 基本設定 一般(1) ※準備中 — 外部エディタの設定
- DXF読込・書出 ※準備中 — 業界標準フォーマット
- 図形登録 ※準備中 — バイナリ部品としての登録
- 2.5D機能 ※準備中 — c2 データの活用
- 求積図の作り方(座標法) ※準備中 — 座標ファイル活用例
まとめ
- 座標ファイルは 書込設定行 →
#→ 図形データ行 の2ブロック構造 - 書込設定:
lg(レイヤG)/ly(レイヤ)/lc(線色)/lt(線種)/lw(線幅)/cn(文字種) - 一般図形: 数字始まりが線、
ciが円・円弧・楕円 - 文字:
ch(横)/cv(縦)/cs cr co cp ct(寸法値各種)/ck cz c2(日影・2.5D) - 特殊:
pt(点)/msz(寸法図形)/pl(曲線)/BL(ブロック)/sl sc se so sg(ソリッド) - 角度の単位は
ciが度、ソリッド系(sc/se/so/sg)はラジアン で混在 - 線色・線種等の設定は 後続の図形に継続 して効く
- CSVからの一括作図、Pythonでの大量生成、Gitでのバージョン管理が テキスト形式の利点
- 書式を暗記するより、実機で書込んで雛形を得る → 編集 が最速