Indexへ
(5741)// 【5745】→(5746) ------------------------ 【タイトル】線記号変形の線ソリッドに線幅
【記事番号】 5745 (*)
【 日時 】05/10/27 15:28
【 発言者 】takagi
線記号変形のサンプルに線ソリッドがあるのですが、線幅の指定はできるのでしょうか?
外部変形等では線幅を持った線ソリッドを作図できるものがありますが、線記号変形、又はJww本体での作図方法が分かりません。
教えていただけませんか。
Indexへ
(5745)← 【5746】→(5750) ------------------------ 【タイトル】Re(1):線記号変形の線ソリッドに線幅
【記事番号】 5746 (5745 )
【 日時 】05/10/27 15:35
【 発言者 】joker
【 リンク 】http://www.atsmile.com/jw/
▼takagiさん:
>線記号変形のサンプルに線ソリッドがあるのですが、線幅の指定はできるのでしょうか?
>外部変形等では線幅を持った線ソリッドを作図できるものがありますが、線記号変形、又はJww本体での作図方法が分かりません。
>教えていただけませんか。
線記号変形では出来ないみたいですが、JWWの多角形からの線ソリッドでは
出来るようですよ。
下記のCabaさんのサイトを参考にして下さい。
「Caba's house」
http://homepage1.nifty.com/caba/
「Jw_cad応用実験part3」
http://homepage1.nifty.com/caba/t3/
Indexへ
(5746)← 【5750】→(5751) ------------------------ 【タイトル】Re(2):線記号変形の線ソリッドに線幅
【記事番号】 5750 (5746 )
【 日時 】05/10/27 16:37
【 発言者 】takagi
▼jokerさん:
確認しました。
まるで裏技ですね。
解説の方法以外にも、線属性ツールバーに数字が表示されている状態で線形・円周にチェックを入れてあれば線幅をもった線ソリッドが作図されました。
ただ、始点と終点が結ばれてしまうので、後でその線を消すために曲線属性化のチェックをはずしておかなければなりませんが。
Indexへ
(5750)← 【5751】→(5752) ------------------------ 【タイトル】線記号変形では
【記事番号】 5751 (5750 )
【 日時 】05/10/27 17:10
【 発言者 】takagi
線記号変形には解説にない裏技の様なものは無いのでしょうか?
四角コマンドの様に対角2点指示で線幅を持った線ソリッドの四角が描けるような線記号変形を作りたいのですが。
Indexへ
(5751)← 【5752】→(5753) ------------------------ 【タイトル】Re(1):外変で線・円 を 線ソリッド 円周ソリッドに変換
【記事番号】 5752 (5751 )
【 日時 】05/10/27 18:29
【 発言者 】コジマ
▼takagiさん:
>線記号変形には解説にない裏技の様なものは無いのでしょうか?
>四角コマンドの様に対角2点指示で線幅を持った線ソリッドの四角が描けるような線記号変形を作りたいのですが。
現在の仕様の線記号変形では無理だと思います。
外部変形ならば、線幅が設定された
線及び円を 範囲選択してソリッドに変換できます。
(線幅は保持されます。)
矩形コマンドで四角を描いたあと、ソリッドに一括変換するのが一番速い方法かと思います。
以下の外部変形の実行には mswin32 版 Ruby のインストールが必要です。
以下で入手できます。
http://www61.tok2.com/home2/gravelroad/libraries.html
◎バッチファイル(ファイル名 線円→ソリッド変更.bat)
以下の文をコピペしたあと、全角スペースを半角スペースに一括置換してください。
@REM 線・円をソリッドに変更
@echo off
REM #jww
REM #cd
REM #ht10
REM #ht30
REM #zz
REM #zc
REM #zw
REM #h1
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -Ks 線円→ソリッド変更.rb temp.txt > jwc_temp.txt
◎スクリプトファイル(ファイル名 線円→ソリッド変更.rb)
以下の文をコピペしたあと、全角スペースを半角スペースに一括置換してください。
include Math
require 'vr/vruby'
require 'vr/vrcontrol'
frm=VRLocalScreen.newform
def frm.construct
move 200,100,300,300
$a=chooseColorDialog.to_s
end
frm.create.show
puts "hd"
while ARGF.gets
xy=split
if xy[0]=~/^hq/
elsif xy[0]=~/^\d|^-/
puts ["lc10",$a].join("\s")
print "sl"+" "+$_
elsif xy[0]=~/^ci/
puts ["lc10",$a].join("\s")
xy.collect!{|item|item.to_f}
xy[0]="se"
if xy.size==4
xy[4]="1"
xy[5]="0"
xy[6]=0
xy[7]=2*PI
xy[8]="100"
else
if xy[4]>xy[5]
xy[5]+=360
end
xy[4],xy[6],xy[5],xy[7],xy[8]=
xy[6],xy[4]*2*PI/360,xy[7]*2*PI/360,
(xy[5]-xy[4])*2*PI/360,"0" if xy[4]!=xy[5]
(xy[4],xy[6],xy[5],xy[7],xy[8]=
xy[6],xy[4]*2*PI/360,xy[7]*2*PI/360,
((xy[5]+360)-xy[4])*2*PI/360,"100") if xy[4]==xy[5]
end
puts xy.join("\s")
elsif xy[0]=~/^lc10/
puts ["lc10",$a].join("\s")
else
print $_
end
end
Indexへ
(5752)← 【5753】→(5754) ------------------------ 【タイトル】Re(1):線記号変形では
【記事番号】 5753 (5751 )
【 日時 】05/10/27 18:44
【 発言者 】siegel
【 リンク 】http://homepage2.nifty.com/siegel
▼takagiさん:
>線記号変形には解説にない裏技の様なものは無いのでしょうか?
>四角コマンドの様に対角2点指示で線幅を持った線ソリッドの四角が描けるような線記号変形を作りたいのですが。
JWW同梱の線記号変形に「四角ソリッド(対角2点指示)」がありますが。
違うのでしょうか?
ご参考まで。
Indexへ
(5753)← 【5754】→(5755) ------------------------ 【タイトル】Re(2):線記号変形では
【記事番号】 5754 (5753 )
【 日時 】05/10/27 18:59
【 発言者 】takagi
▼siegelさん:
>JWW同梱の線記号変形に「四角ソリッド(対角2点指示)」がありますが。
>違うのでしょうか?
それの中抜きです。
自分で下記の線記号変形を作ってみたのですが、これだと外枠に比例して線幅が変わってしまいます。
これで線幅が固定できればいいのですが。
0 四角枠20:1
768 10 10
05 05 0 0 10 0 10 0 -11 a1 0 0.5 0 0.5 33023
05 05 0 9.5 10 9.5 10 0 -11 a1 0 0.5 0 0.5 33023
05 05 0 0.5 0.5 0.5 10 0 -11 a1 0 9 0 9 33023
05 05 9.5 0.5 10 0.5 10 0 -11 a1 0 9 0 9 33023
08 01 0 -2 10 -2 10000 704 -11 "外寸と線幅 20:1
08 01 0 -7 10 -7 10000 704 -11 "右から左へ指示
998
Indexへ
(5754)← 【5755】→(5756) ------------------------ 【タイトル】Re(3):外変では
【記事番号】 5755 (5754 )
【 日時 】05/10/27 23:49
【 発言者 】コジマ
外変では、以下のスクリプトで希望の機能になりますが、
線記号変形でなくてはならない理由があるのでしょうか?
(線幅・ソリッド色は自由に設定できます)
◎バッチファイル(矩形ソリッド.bat)
@REM 2点指示で矩形ソリッドを作図
@echo off
goto do%1
REM #jww
REM #cd
rem #hm |1)作図(L)|2)設定(R)|
rem #:1
rem #mc
REM #zz
REM #zc
REM #zw
REM #1
REM #2
REM #hr
rem #c
REM #e
rem #:2
rem #mc
REM #hr
REM #c線幅の入力 無指定:20 /_/a
rem #c
REM #e
:do1
copy jwc_temp.txt temp.txt > nul
del jwc_temp.txt
ruby -Ks 矩形ソリッド.rb temp.txt > jwc_temp.txt
goto end
:do2
copy jwc_temp.txt temp.txt > nul
del jwc_temp.txt
ruby -Ks 矩形ソリッド2.rb temp.txt %2 > jwc_temp.txt
goto end
:end
◎スクリプトファイル(矩形ソリッド.rb)
lw=20
lc=2923810
$lw="lw"+lw.to_s
$lc="lc10 "+lc.to_s
include Math
while ARGF.gets
xy =split
if xy[0]=~/^hk/
zikukaku,ziku=(xy[1].to_f),((xy[1].to_f)*2*PI/360)
end
if xy[0]=~/^hp1/
x1=xy[1].to_f;y1=xy[2].to_f
end
if xy[0]=~/^hp2/
x2=xy[1].to_f;y2=xy[2].to_f
end
end
x,y=(x2-x1),(y2-y1)
l=sqrt(x**2+y**2)
kakudo=atan2(y,x)
henkaku=kakudo-ziku
ziku_x,ziku_y=(l*cos(henkaku)),(l*sin(henkaku))
kakudo2=ziku+90*2*PI/360
puts $lw
puts $lc
printf("sl %f %f %f %f \n",x1,y1,x1+ziku_y*cos(kakudo2),y1+ziku_y*sin(kakudo2))
printf("sl %f %f %f %f \n",x1,y1,x1+ziku_x*cos(ziku),y1+ziku_x*sin(ziku))
printf("sl %f %f %f %f \n",x2,y2,x1+ziku_y*cos(kakudo2),y1+ziku_y*sin(kakudo2))
printf("sl %f %f %f %f \n",x2,y2,x1+ziku_x*cos(ziku),y1+ziku_x*sin(ziku))
◎スクリプトファイル(矩形ソリッド2.rb)
require 'vr/vruby'
require 'vr/vrcontrol'
frm=VRLocalScreen.newform
def frm.construct
move 200,100,300,300
$a=chooseColorDialog.to_s
end
frm.create.show
while ARGV.size>1
xy=ARGV.pop
xya=xy.chomp.split('')
if xy=~/\/a/
lw=xy[2..-1] if xya.size>2
end
end
date=[]
open("矩形ソリッド.rb","r"){|f|
while line=f.gets
date< end
}
date.collect!{|item|
if item=~/^lw\=/
lw ? item=$&+lw : item
elsif item=~/^lc\=/
item=$&+$a
else
item
end
}
open("矩形ソリッド.rb","w"){|f|
date.each{|item|f.puts item}
}
date2=[]
open("矩形ソリッド.bat","r"){|f|
while line=f.gets
date2< end
}
date2.collect!{|item|
if item=~/^REM #c線幅の入力 無指定:/
lw ? item=$&+$'.gsub(/^\d+/,lw) : item
else
item
end
}
open("矩形ソリッド.bat","w"){|f|
date2.each{|item|f.puts item}
}
Indexへ
(5755)← 【5756】→(5887) ------------------------ 【タイトル】Re(4):外変では
【記事番号】 5756 (5755 )
【 日時 】05/10/28 10:15
【 発言者 】takagi
▼コジマさん:
>外変では、以下のスクリプトで希望の機能になりますが、
>線記号変形でなくてはならない理由があるのでしょうか?
ありがとうございます。
これで、行いたいことは達成されているのですが、線記号変形にこだわった理由は外部変形より作業がシンプルなのと、マウスにラバーバンド状についてくるので、感覚的に作業ができる点だけです。
いつもながら、コジマ様の外部変形の作成の早さには驚かされます。
Indexへ
(5756)← 【5887】→(5888) ------------------------ 【タイトル】Re(3):線記号変形の線ソリッドに線幅
【記事番号】 5887 (5750 )
【 日時 】05/11/02 11:44
【 発言者 】すずしん
▼jokerさん,takagiさん
横から申し訳ありません。
Cabaさんのサイトを参考にして
やってみたのですが”計算できません”と
コメントが出て出来ません。
他に設定があるのでしょうか?
win xp jww4.10aです。
Indexへ
(5887)← 【5888】→(5921) ------------------------ 【タイトル】Re(4):線記号変形の線ソリッドに線幅
【記事番号】 5888 (5887 )
【 日時 】05/11/02 13:18
【 発言者 】takagi
▼すずしんさん:
>▼jokerさん,takagiさん
>
>Cabaさんのサイトを参考にして
>やってみたのですが”計算できません”と
>コメントが出て出来ません。
>
直線1本で試していませんか?
なぜか、直線1本の場合"計算できません"となります。
折れ線の様に2本以上だとできますが理由は分かりません。
直線1本の場合は、円、連続線指示ではなく、2点指示後、作図で可能です。
Indexへ
(5888)← 【5921】//(5747) ------------------------ 【タイトル】Re(5):線記号変形の線ソリッドに線幅
【記事番号】 5921 (5888 )
【 日時 】05/11/04 09:33
【 発言者 】すずしん
▼takagiさん:
>直線1本で試していませんか?
>なぜか、直線1本の場合"計算できません"となります。
一本で試してました…なぜだめなんでしょう?
実際は一本ってことはありえないからいいのかなぁ
>折れ線の様に2本以上だとできますが理由は分かりません。
>直線1本の場合は、円、連続線指示ではなく、2点指示後、作図で可能です。
出来ました!ありがとうございます。