RSJWWの要望
作者様
RSSJWWを使わせて頂いています。
sketchupとのやりとりが大変便利になりました。
ありがとうがざいます。
sketchupで取り込んだ立面図を、コンポーネント化してモデルの面に張付けながら3Dをおこして、
いくのですが、sketchupに取り込む際にコンポーネントに変換して、貼り付け先(水平・鉛直など)も選択できるようにできないでしょうか。
宜しくお願い致します。
take 13:08 2015.07.27 Mon
takeさんこんにちは。
出来るかどうかわかりませんが、取り組んでみます。
Hino 23:11 2015.07.27 Mon
昨年にRSjwwに出会い、自分なりの使い方を研究しております。JWとSUの連動は本当に感動しています。

大変恐縮ですが、二つ、要望があります。
@
更新履歴に、#2012/11/14 補助線を無視するようにしたっとありますが、補助線も実線として読み取りが可能なように出来ないでしょうか。JW上では非表示扱いで、SUへは面貼可能となればと思っています。
A
SU読み取り時にグループ化とありますが、jwの各レイヤ毎で、SU時のグループ化が行えないでしょうか。現在は、JWの各レイヤ毎にRSjwwを起動し、SUで読み、その繰り返しをして、各レイヤ毎のグループ化を行っております。
宜しくお願い致します。
特命係長 21:00 2016.01.25 Mon
特命係長さんこんにちは。
補助線は扱いを選択できるようにしてみます。
それとレイヤ別のグループ化も、takeさんの件と合わせて何か考えてみます。
Hino 12:44 2016.01.26 Tue
早速のコメントありがとうございます。
補助線の件ですが、何とか調べてlt9 lc9の記述を変えてみました。
レイヤ別のグループ化はかなり難易度が高いと思いますので、お願い致します。
特命係長 15:07 2016.01.26 Tue
日々、楽しく図面を書いております。
一つ、新たな要望?・アイディア?・わがまま?が
生まれましたので、お時間がある時に見て頂ければと
思います。

徹底解説の2.5Dのページ(P322)には【レイヤ名に
「#lh**.*」 を記入するとそのレイヤ内のデータ高さ・
奥行き「***.*,0」を指定したことになる】

っと言うのを見つけました。
RSjwwでは #lvの認識は確認しているのですが、
#lhの認識は難しいでしょうか。

これが、可能になると、レイヤ毎に高さ・奥行が定義され、図中に2.5D文字を無くなる?っと思いました。

また、RSjwwでデータを吐き出した後、高さ・奥行きの
設定が出来ていなかったりして、何度も出戻っています。
その設定忘れも無くなり、作業効率アップになればと思います。

ベースはレイヤ・グループの#lh○,○記述で、
図中は、個別的指定とし、最小限の文字情報の管理が
出来れば最高です。

宜しくお願い致します。
特命係長 16:17 2016.02.08 Mon
特命係長さんこんばんは。
なるほど#lhは使ったことがありませんが、解説本で見かけたことはありました。

改めて見てみると、ふたつ目の高さ座標はゼロで固定なのですね。

そして個別指定がある場合は個別指定が優先し、レイヤ名で与えられた高さは加算されない、ということのようです。

やってみます。
Hino 23:31 2016.02.08 Mon
「#lh」の件いいですね。知りませんでした。
「#lh5」は「5,0」
「#lh5,3」は「5,3」
という意味ですね。JWCADでの入力が簡素化出来て、とてもいいですね。
私も1標入れさせていただきます。
ゆう 08:43 2016.02.09 Tue
ゆうさんこんにちは。
手元にあった少し古い解説書では「#lh5,3」というコンマ区切りの奥行き指定の記述が無かったのですが、試してみると出来ますね。
この仕様でやってみます。
Hino 12:41 2016.02.09 Tue
お手数をおかけします。
無理されませんように、お時間のあるときに
チャレンジしてください。<m(__)m>
ゆう 15:58 2016.02.09 Tue
新たな要望?・確認(現在でも出来ているかもしれませんが…)が生まれましたので、お時間があります時に見ていただければと思います。

1.RSJww_sample_lvのデータで、JWWの線色がそのままSUへ変換されていますが、新規で書いている図面の色設定がSUへ変換されません。全て同一の初期色となります。#lh・#lv・2.5D文字の指定が問題なのか、JWW側か、SU側か何か理由や使い方がありましたら教えていただければと思います。

2.一度グループ名・レイヤ名に#lhや#lvを設定した環境を環境ファイルとして登録したら、カンマが入っている関係で、ずれてしまう現象が起きますが、何か対策がありますでしょうか。

3.JWWからSUへの変換は、各グループ毎で行うしか方法はないのでしょうか。
1階 2階 3階の各階ごとにグループに分けていて、#lvのグループ名で高さを制御しています。変換する際には、各レイヤ毎に表示・非表示をして、必要な階のみで変換しています。
3階建てだと3回の作業があります。これを1回で各グループの情報も変換出来ればと思います。
特命係長 23:34 2016.11.21 Mon
確認しました


1について
線色がそのまま渡っているのではなく、特殊文字列で線色を指定します。
線色指定がなければマテリアルを与えていない線としてSUに渡ります。
例(RSJww_Sample_lv.jwwより)→「@TXlc6lt1ly2,16744448,1」
「@TX」がマテリアル等指定のヘッダです。
@TXに続く「lc6lt1ly2」は対象としたい線の属性を指定します。
lc6→線色6
lt1→線種1
ly2→2レイヤ
これに半角コンマで区切って、ソリッド色コード、透明度の指定が出来ます。
上記で言えば「16744448」がソリッド色コードで、JWでキーボードの「TAB」を4回押してソリッド図形をクリックすると、そのソリッドの色コードがクリップボードにコピーされるのでそれを貼り付けるなりすると楽です。
最後の透明度は「1」が不透明で、「0」が透明です。


2について
なるほどこれはJWW本体のjwf書き出し仕様に起因してますね。
さて、どうしたものでしょう
試してみても#lhは「..」も全角コンマ「,」も効かないようです。
JWの2.5Dでプレビューできなくなるのは不本意なので、作図する際に「jwf読み込み」ではなく、「環境設定済みのjwwファイルを開く」で対応するのが現実的かと思います。


3について
RSJww_Sumiyoshi.jwwは2階建て情報を重ねて書いてあるので一度の変換で完了しますが、こういうことではないですか
Hino 15:06 2016.11.22 Tue
丁寧なご回答ありがとうございます。
線色の設定で実線の場合は上手くいきました。ただ、線種が破線等(実線以外)の設定が上手くいきません。SUでの読み込み時の生成可能な面を張るのYesとすれば面は張れますが、ソリッド色の設定は反映されません。何か設定が上手くないのでしょうか。

@TXlc6lt1ly2,16744448,1で設定した場合は、その線がSUではZ方向に立ち上がって面が張れますが、生成可能な面を張るをYesとした場合は、上下の面はデフォルトの色となります。これを、@TXlc6lt1ly2,16744448,1で指定した色に依存する事は可能でしょうか?現在は、全ての矩形図に@TXlc6lt1ly2,16744448,1の指定と、同色のソリッドで埋めています。

どうぞよろしくお願いいたします。
特命係長 19:45 2016.11.26 Sat
JWWの円をSUに変換した場合、生成可能な面を張るがNoになっているにもかかわらず、上下に面が張られます。また、生成可能な面を張るをYesにして読み込むと、フリーズに近い時間がかかります。円と矩形を一括で読み込む事が出来ず、別々にしております。調整が出来ましたらお願いいたします。
特命係長 19:56 2016.11.26 Sat
検証してみました。

自動で面を張るのはSUの内部命令を流用していて、マテリアルを指定できないのが玉に瑕です。
私として任意色の面を張るのはソリッドまたは線形ソリッドを使うことを前提としていまして、線にマテリアルを与えられるようにしているのは、平面図などのデータを有効利用するためなんです。

それから破線にマテリアルを与えるときは「lt1」のところを「lt2」とするなどして線種を指定すれば、こちらでは反映されました。

円の上下に面が貼られるのは他ならぬただの手抜きです
配管を自在に立ち上げられるようにしようと思った時、SU内部のフォローミーを使うと激しく楽に実装できたものですから
上下の円でポリゴン数は増えていますけど頂点数は増えていないので、SUの描画速度にはあまり影響ないんじゃないかと思って放置してます

生成可能な面を張る機能を使うよりも、JWでプレビューが出来るのでソリッド図形を使うほうが良いかもしれません。
Hino 12:37 2016.11.27 Sun
「ソリッドまたは線形ソリッドを使うことを前提」という事ですね。ありがとうございます。他の考え方にて対応してみます。

lt1やlt2の具合がまだ上手くいきませんが、もう少しいろいろとやってみます。

円の上下面は自動でしたか。
SUで生成可能な面を張るの機能に頼らない、モデリングとしたいと思います。

SUへの面と線色変換の考え方がわかりました。
いろいろとありがとうございました。

また、何かありましたらよろしくお願いいたします。
特命係長 14:20 2016.11.27 Sun
レイヤ名に「#lh」で高さを指定し、スケッチアップにRSJで連動させる件です。

「#lh○,○スラブ」と、高さ情報の後に文字を入れた場合、問題なくスケッチアップに吐き出すことが出来ました。
ですが反対に、「スラブ#lh○,○」とした場合、高さ情報は反映されませんでした。

後者でも、上手くスケッチアップに高さ情報を吐き出すことは可能でしょうか。

例えば、「"スラブ"#lh○,○」など何かしらの記号を用いて、#以前の文字を無効とするなど。
特命係長 14:00 2017.06.16 Fri
出来たっぽいです

[Link]

rbファイルのみです。
「#lv」「#lh」の前に任意の文字列があっても解釈するようにしました。

ただJW本体でプレビューできない仕様なので、ここだけの限定版です
Hino 22:28 2017.06.16 Fri
早速のUPありがとうございます。
問題なく文字のリンクが確認できました。
JWWのプレビューには問題がありますが、
JWWやSU上の管理上、各レイヤに項目が付けられるので、非常に分かりやすいです。

一点、気になることがあります。
これは、以前も今回のも同じですが、
SUでの読み込み設定で、全体をグループ化を
Yesにして読み込むと、各レイヤの振り分けがおかしくなる事があります。
全体のグループ化をNoとした場合のレイヤの
振り分けは完璧です。

PC環境 win7 su pro 2016

何か対応できることがありましたら、教えていただければと思います。

お忙しいところ恐縮ですが、よろしくお願いいたします。
特命係長 10:41 2017.06.19 Mon
作者様、こんにちは。
たびたびRSjwwを便利に使わせていただいております。ありがとうございます。

今回、やや異常な動作をするケースとそのポイントがわかりましたのでご報告させていただきます。

環境:
Windows 10
Jw-CAD 8.03a
SketchUp 2017 Pro

(おそらく)空白だけの文字列を変換しようとして、以下のようなエラーが出て、インポートが行われない、というものです。

-----------

FileName
c:/jww/RSjww.txt(2017/07/21 20:02:25)

Errorline:
Intersection: fail
3dTextFail[26] 3dTextFail[27] 3dTextFail[28] 3dTextFail[29] 3dTextFail[30] 3dTextFail[31] 3dTextFail[32] 3dTextFail[33] 3dTextFail[34]

Total 0.0325sec

-----------


RSjww.txtの途中を抜粋しますがこのような感じです。
----------
#
ly7
lc3
-983.605769229234 1760.38461538461 -983.605769229234 -1119.61538461539
936.39423077077 1760.38461538461 936.39423077077 -1119.61538461539
-4183.60576922923 160.384615384613 4136.39423077077 160.384615384613
lc9
lt9
4136.39423077077 0.38461538461263 -4183.60576922923 0.38461538461263
cn6
cc0
ch 761.39423077077 -124.615384615383 125 0 "
ch 447.822802200767 -124.615384615383 250 0 "積
ch 259.251373620771 -124.615384615383 125 0 "
ch 70.6799450507674 -124.615384615383 125 0 "
ch -242.891483519236 -124.615384615383 250 0 "面
ch -431.462912089239 -124.615384615383 125 0 "
ch -620.034340659231 -124.615384615383 125 0 "
ch -933.605769229234 -124.615384615383 250 0 "倍
ch -341.73076922923 195.384615384613 875 0 "131.053
#
lg0 00
lgn0
----------

このうち、以下のような行が問題のようです。
ch 761.39423077077 -124.615384615383 125 0 "

" の後が空白1個になっています。


ためしにRSjww.rb内のtextを取得しているところで、空白の場合は '_' に置き換えるようにしてみたところ、(余分に'_'が表示される以外は)問題がなくなりました。

RSjww.rb 913行目〜
text = tmp2[1]
text.rstrip! # 末尾の空白除去
if text.length == 0 then
text = "_"
end
#任意文字種

例外自体は、textが空白文字の場合に
group.transform!(transform)
のところで発生するようです。

文字列に空白しか入っていないケースでは、スキップするような感じになれば良いのかもしれないです。

以上、ご参考になれば幸いです。
よろしくお願いいたします。
はむ! 20:27 2017.07.21 Fri
はむ!さんご報告ありがとうございます。
レアケースですけど、ふいに起きたら面倒ですね
特命係長さんから報告のあったグループ分けの件と、そしてこの件と、ちょっと見直してみます。
Hino 22:35 2017.07.21 Fri
とりあえず、半角文字だけで構成された文字列を無視するようにして、別件ですけど補助線で書かれた円弧が補助線は無視する設定のときも変換されてしまう不具合を修正しました。

[Link]
Hino 14:41 2017.08.06 Sun
いつも楽しく使っています。
今までは矩形図形のみを扱っていましたが、
円弧部を変換しましたら、立体になってくれません。現状での対応は可能でしょうか。
過去のプログラム更新履歴では分かりませんでしたので、こちらに書かせて頂きます。
先のコメントに「補助線で書かれた円弧が…」っとありましたら、前回時において何かの
調整が入りましたでしょうか。
よろしくお願いいたします。
特命係長 16:43 2017.09.06 Wed
特命係長さん
前回の調整も関係あるかもしれません。
ちょっと見直してみます
Hino 12:52 2017.09.07 Thu
見直して驚きました。

円弧は2.5Dに対応していなくて、その旨テキストにも書いてありました

なぜ私はこれを先送りしたのか忘却の彼方に。

ということで、対応しました

[Link]

ちょっと今はまだ円弧を分割した線がバキバキです。
Hino 20:59 2017.09.08 Fri
更新しました。
・2.5D円弧のレイヤ別グループ化
・同上スムージング
・同上二重描画の解消

↓こちらから。本体rbのみです。
[Link]
Hino 11:33 2017.09.09 Sat
お名前

コメント(リンクは貼れません)