Indexへ
(15810)//【15809】→(15820)
------------------------
【タイトル】外部変形・外部エディタでの文字置換
【記事番号】 15809 (*)
【 日時 】09/10/10 21:44
【 発言者 】ai

実際に自分で作りたいというのではなく、
よくわかってないので知りたいと言うだけの質問です、すみません。

外部変形で文字を起点指示で置換しようとした場合なのですが、

1.batファイルにREM #zcをいれたら起点がcc○で書き出される
 ※○部分は数字
 batファイルにREM #zcを入れない場合は左下が起点になる

【データ例】
《batファイルにREM #zc記入》
図面上の文字起点 中中 と 左中

  cn0 3.5 3.5 0 2
  cc4
  ch 0 42.5 140 0 "aaaaaaaa
  cn0 3.5 3.5 0 2
  cc3
  ch -70 -7.5 140 0 "aaaaaaaa

《batファイルにREM #zc未記入》
図面上の文字起点 中中 と 左中

  cn0 3.5 3.5 0 2
  ch -70 25 140 0 "aaaaaaaa
  cn0 3.5 3.5 0 2
  ch -70 -25 140 0 "aaaaaaaa


2.起点位置がそのままでいいならデータを置換して書き戻す際は
  文字だけ書き換えれば指定起点のまま文字が書き換えられる
  (文字長さなどは計算しなくてOK)

※図面上のaaaaaaaaという文字を同じ起点でaに変えたい場合
 書き出したJWC_TEMP.TXTのデータを
   ch 0 42.5 140 0 "aaaaaaaa
        ↓
   ch 0 42.5 140 0 "a
 に書き換えるだけで大丈夫

だと思っているのですがそれで大丈夫でしょうか?

上記だと思って置換用のデータは作たことがあるのですが、
文字置換&起点を指定できるような外部変形を作るなら

起点中・中、文字aaaaaaaa→起点左・中、文字aへの変換の場合
 cc4
 ch 0 42.5 140 0 "aaaaaaaa

1.cc4(起点中・中)→ cc3(起点左・中)に書き換え
2.置換前のデータが起点中・中でとっているので置換後の起点左・中に直す
 水平データでY座標は変わらないのでX座標のみ
 0+140/2 = 70で0の部分を70
3.aaaaaaaaをaに変更

ということで、

 cc4
 ch 70 42.5 140 0 "a

に書き換えればいいのでしょうか?


それから、自分の調べた限りでのREM #zcの動作としては、
寸法図形の文字はREM #zcの有無にかかわらず起点は左下固定
寸法図形解除した後の寸法値はREM #zcがある場合は指定起点で取得
だったのですが、他に特殊な扱いのものってありますか?


あとネット検索してもよくわからなかったのですが、
もしかして外部変形で文字サイズを変更したい場合も文字起点さえ出しておけば
cnの文字サイズ該当部分だけ書き換えればいいのでしょうか?

******************************************************************
JWW_SMPL.BATで確認していたところは下記

《読み込み》
  ◎文字基準点の書込を指定
REM #zc

《書き込み》
  ◎文字種の変更(1〜10)
cn%d
   jww形式(#jww)の場合、次ぎの※印の事項を書き出す
   任意サイズ文字種の書出し(幅 高さ 間隔 ペン番号)
※ cn0 %lg %lg %lg %d
   (jww形式の指定がない場合、任意サイズ文字種は文字幅が近似している
    文字種1〜10で書出す)
   文字フォントを書き出す
※ cn"$<MS 明朝>
   文字フォントと同時に斜体文字を書き出す
※ cn"$<MS 明朝>/

  ◎文字基準点の書込
   「REM #zc」により文字基準点の書込の指定がある場合
   (0:左下 1:中下 2:右下 3:左中 4:中中 5:右中 6:左上 7:中上 8:右上)
   (読込のとき、「cc%d」は「REM #zc」に関係なく有効になる。)
   (文字の座標(x y)は文字基準点の座標値になる。)
cc%d

  ◎文字列
   横文字        ( x y 方向x 方向y "文字列 )
ch %lg %lg %lg %lg "文字列
   縦文字
cv %lg %lg %lg %lg "文字列
   寸法値
cs %lg %lg %lg %lg "文字列
   半径 寸法値
cr %lg %lg %lg %lg "文字列
   直径 寸法値
co %lg %lg %lg %lg "文字列
   角度 寸法値
cp %lg %lg %lg %lg "文字列
   累寸 寸法値
ct %lg %lg %lg %lg "文字列
   日影 真北データ   
ck %lg %lg %lg %lg "文字列
   日影 建物高さデータ 
cz %lg %lg %lg %lg "文字列
   2.5D データ    
c2 %lg %lg %lg %lg "文字列


********************************************************

あと、Sample.jwfで関連しそうかと思って見ていて疑問になったのが

# 文字基準点のずれを設定
#
#    1.文字基準点のずれを使用( 0:使用しない 1:使用する  )
#     |
#     | X方向のずれ寸法(図寸法mm)
#     |  2.  3.  4.
#     | (左) (中) (右)
#     |  |  |  | Y方向のずれ寸法
#     |  |  |  |  5.  6.  7.
#     |  |  |  | (下) (中) (上)
#     |  |  |  |  |  |  |8.文字の基準点を記憶し文字変更等で
#     |  |  |  |  |  |  |その基準点に読取り(0:Off 、1:On)
#     |  |  |  |  |  |  |この設定はプロフィールファイルに記録されない
#     |  |  |  |  |  |  |※文字コマンドのとき[Shift]+[Ctrl]キー
#     |  |  |  |  |  |  | を押しながら[基点]ボタンで On/Off
#     |  |  |  |  |  |  |※文字コマンドで文字の選択後に基準点
#     |  |  |  |  |  |  | の変更を行うと、選択された文字の
#     |  |  |  |  |  |  | 記憶されている基準点が変更される。
#     |  |  |  |  |  |  |※JWC・DXFファイル読込時の基準点の
#     |  |  |  |  |  |  | 初期値は左下になる。
#     ↓  ↓  ↓  ↓  ↓  ↓  ↓  ↓
MOFST =   0 -1.0 0.0 0.0 -1.0 0.0 1.0 0


外部エディタ(NOTEPAD)を使っての置換の場合
8.文字の基準点を記憶し文字変更等でその基準点に読取り(0:Off 、1:On)

【ONにして文字起点中・中でaaaaaをaに置換した場合】
aaaaa ←起点中・中
aaaaa ←起点左・中

 a  ←起点中・中
 a  ←起点左・中

*文字置換の際の起点は文字コマンドで選択している位置
*置換後の文字起点は最初に指定されていた文字位置


【OFFにして文字起点中・中でaaaaaをaに置換した場合】
aaaaa ←起点中・中
aaaaa ←起点左・中

 a  ←起点中・中
 a  ←起点中・中

*文字置換の際の起点は文字コマンドで選択している位置
*置換後の文字起点は文字コマンドで選択している位置

だったのですが、他に何か外部エディタでの置換に関連する条件ってありますか?


因みに同様のデータを外部変形でREM #zc記入、
起点など一切いじらず文字部分のみ書き換えて書き戻しした場合は
8.文字の基準点を記憶し文字変更等でその基準点に読取り(0:Off 、1:On)にかかわらず

 a  ←起点中・中
a   ←起点左・中

でした。


Indexへ
(15809)←【15820】//(15811)
------------------------
【タイトル】Re(1):外部変形・外部エディタでの文字置換
【記事番号】 15820 (15809)
【 日時 】09/10/14 01:00
【 発言者 】ai

別サイトで質疑を話題にあげてくださっていたところがあり、
質問1・2はOKl起点書き換えは文字が水平限定なら可、
文字サイズ変更は任意サイズであればOK、
文字種1〜10の設定そのものを外部変形で変更することはできないとの事でした。

>上記だと思って置換用のデータは作たことがあるのですが,
こちらに関しては自分が作ったように書いてしまいました、すみません。
データ取得・書き戻しコードを教えていただきそれを見て
質疑1・2の内容かなと判断し置換部分そのまま作成といった感じでした。