■44523 / ) |
Re[7]: 外部変形で寸法図形は出来ない?
|
□投稿者/ O.M (3回)-(2014/09/24(Wed) 20:20:30)
| 2014/09/24(Wed) 22:26:45 編集(投稿者) 2014/09/24(Wed) 22:25:51 編集(投稿者)
oyajiさんの公開している階段作図のデータをそのまま外部変形用のデータにのっけてみたのですが、 (検証の為、勝手に試させていただきました、申し訳ありません) データを書き入れようとしたところ、 セル個々の文字を結合して一文字にする部分でエラーが発生する箇所がありました。 (想定外のデータがあるのではないかと思うのですが、どこかはわかりませんでした) その部分に関しては、エラーを無視して継続する処理を入れることで動きました。 直したデータをあげました。 http://nekobasu83.webdeki-bbs.com/nekobasu83_tree_r_21.html
※あげているのは自作部分のみのデータです。 検証の為、oyajiさんのデータを使用して作成いたしましたデータは検証後に破棄いたしました、oyajiさんの作成のデータをあげるようなことは絶対にしないのでご安心ください。
上記エラー部分を治したVBAデータを使用したところ、oyajiさんが作成したデータそのままで利用できました。
外部変形は、msg、座標ファイルはmszではあるのですが、 mszのまま書き込んでもjww側で自動でmsgに修正してくれるようなので (私の作成したコードも、データ判別せず無差別ににtextに書き入れるので、形式の違うデータがまざっていても反応しない為動く) なんなら全く修正しなくてもいいみたいです。
寸法図形で書き上がりません、という部分に関してはどのような状態を指しているのかわからないのですが、 oyajiさんのデータを確認したところ、「寸法図形の寸法地の値を算出していない」ので、その点が座標ファイルと外部変形の仕様の違いにひっかかってるのではないかと思います。
Excelのデータをかき変えないで対処する方法ですが、外部変形でデータを記入した後に、記入したデータを移動コマンドですこし動かせばいいです。
《勘違い訂正》****** jwwで、寸法図形を移動させた場合、数値が自動更新されます。 あっているかわからないですが座標ファイルはおそらく、座標ファイルを読み込んで書き入れる時に、移動させたのと同等の扱いになっていて数値が自動更新されるのではないかと考えています。
また、寸法コマンド実行→上部に表示される設定ボタンを押す→「寸法図形を複写・パラメトリック変形等で原寸寸法設定に変更」にチェックを押し、書き入れたデータを移動させれば自動で現在指定している寸法設定に書き換わります。
※有効桁数を2桁→3桁に変えた場合、チェックナシなら有効桁数2桁のまま数値だけ修正、 チェックありなら有効桁数3桁になって数値も修正されます。
*********
寸法値が自動で修正されるので、座標ファイルで作図したのと同じような状態になります。
座標ファイルだと、記入時にjww側で寸法図形の数値を自動算出するようなのですが、外部変形の場合は計算して数値を指定しないといけないようです。 ※外部変形の書き込み時に自動更新して計算する機能があれば、計算しなくてもいいかとは思うのですが、外部変形にその機能はおそらくなかったと思うので…ちがってたらごめんなさい。
# msz 0.000000 -1150.000000 1800.000000 -1150.000000 cs 900.000000 -1150.000000 0.000000 0.000000 "0 ←この部分が外部変形では自動計算されないっぽい # msz 1800.000000 -1150.000000 3000.000000 -1150.000000 cs 2400.000000 -1150.000000 0.000000 0.000000 "0 # msz 3000.000000 -1150.000000 3000.000000 -1150.000000 cs 3000.000000 -1150.000000 0.000000 0.000000 "0 #
Excelで計算して対処する場合は、2点間の距離を算出し、端数はRoundやRoundDawnで四捨五入や切り捨てをして、数値をととのえるようにすればいいかと思います。
別件で、以前も書いた気がしますが、oyajiさんが〃で指定している寸法図形データは、jwwの正式なデータではありません。 文字データを寸法値(cs)で指定しなければいけないところを、横文字(ch)で指定しており、寸法図形認識されていません。 jwwに書き入れた後のデータは、自動で修正されて単なる横文字データになっているようです。
※寸法図形認識されていた場合は、上述の「寸法図形を複写・パラメトリック変形等で原寸寸法設定に変更」チェックして移動等を実行した際に、〃が数値に代わってしまうので、寸法図形と認識されていないほうが都合はいいようです。
実際のデータで話をすると
msz -655.000000 1090.909091 -655.000000 1272.727273 ch -705.000000 1145.454545 0.000000 90.000000 "〃
のようになってますが、文字データしか記入されず
msz -655.000000 1090.909091 -655.000000 1272.727273
の部分は、全く意味がないです。
その部分だけの座標ファイルを作成して書き込んでみたら、線の部分は書き込まれないのがわかるかと思います。
jwwのデータに関しては、下記になっています。
◎文字列 横文字 ( 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 "文字列
◎寸法図形データ ( "msg" + 寸法線データ + 寸法値データ ) jww形式の書出しの場合、寸法図形は次の形式で書き出される。 jww形式以外では、寸法線と寸法値は、それぞれ独立した線データと 寸法値データとして書き出される。 (座標ファイルのときの寸法図形は"msg"が"msz"になる) msg %lg %lg %lg %lg ( x1 y1 x2 y2 ) cs %lg %lg %lg %lg "文字列
|
|