矩形のR面取り
| 固定リンク | コメント (2) | トラックバック (0)
円柱から砂時計をモデリングしてみました。 フォローミーツールではうまくできないみたいです。m(__)m
まずは、円柱から、上面の円を選択します。
Ctrl+移動ツールで円を4つ複写します。
中央の2つの円を選択します。
尺度ツールで、Ctrlキーを押しながら円柱を縮小します。
オフセットツールで、上下に台座となる面を作ります。
ガラス部分を選択し、ペイントツールで半透明にします。
再度、ガラス部分を選択し、右クリック ⇒ "非表示" を実行
プッシュプルツールで上下の台座を作ります。
ペイントツールで木目に塗りつぶします。
砂の形状を作り、ペイントツールで塗りつぶします。
メニュー ⇒ 表示 ⇒ すべて を実行。
ガラス部分が再表示されます。
メニュー ⇒ 表示 ⇒ "エッジを表示"のチェックを外して完成
| 固定リンク | コメント (2) | トラックバック (0)
GSUのショートカットキーの設定方法を紹介します。
メニュー ⇒ ウィンドウ ⇒ 環境設定 から、"ショートカット"を選択します。
任意の機能をクリックすると、キーが設定されている場合は、 "割当て済み"に、設定されているキーが表示されます。
◇キーを追加する場合は、 "ショートカットキーを追加"を入力状態にして設定する"キー"を押します。 キー名を確認して、 "+"ボタン ⇒ OK
◇削除する場合は、 "割り当て済み"のキーを選択 ⇒ "-"ボタン ⇒ OK
◇初期状態に戻す場合は、 "すべてリセット" ⇒ OK
例)モデルと交差を"Shift+W"に設定する場合
設定されている一覧情報は、"エクスポート"を実行後、 保存した環境設定.datをメモ帳で開くと確認することができます。
初期設定と、"モデルと交差"に"Shift+W" を追加した例です。 左側の3つの数字は、Ctrl/Alt/Shift を併用した場合、"1"に設定されます。
| 固定リンク | コメント (0) | トラックバック (0)
2本の平行線と直交線の3辺をR面取りする外部変形です。
平行線1 ⇒ 平行線2 ⇒ 直交線 の順に(L)クリックしてください。
平行線1の指示点から直交線側がトリムされ、平行線1の線色で作図されます。 平行線でない場合、直交線でない場合は、未実行になります。
--------------------
@REM R面取り(3辺)
@echo off
REM
REM #jww
REM #cd
REM #1ln 平行線1を指示してください
REM #2ln 平行線2を指示してください
REm #3ln 直交線を指示してください
REM #hr
REM #e
REM
jgawk -f corner.awk jwc_temp.txt>temp.txt
copy temp.txt jwc_temp.txt
del temp.txt
--------------------
<corner_awk>
--------------------
### R面取り(3辺)
###
###初期設定
BEGIN{pi=atan2(0,-1);k=10000}
###座標/角度取得
#指示点座標
/^hp1/{xx=$2;yy=$3}
#線色(平行線1)
/^#/,/^hhp1ln/{if(substr($1,1,2)=="lc"){lc=$1}}
#座標/角度(平行線1)
/^hhp1ln/,/^hhp2ln/{
if(NF==4){if($1>$3){x11=$3;y11=$4;x12=$1;y12=$2}else{x11=$1;y11=$2;x12=$3;y12=$4}}
if(x11==x12){if(y11>y12){y11=$4;y12=$2;ang1=90}else{ang1=90}}
if(y11==y12){ang1=0}
if(x11!=x12 && y11!=y12){a1=(y12-y11)/(x12-x11);b1=y11-a1*x11;an1=atan2(y12-y11,x12-x11);
ang1=an1*180/pi;ang1=ang1*k;ang1=rnd(ang1)/k}
}
#座標/角度(平行線2)
/^hhp2ln/,/^hhp3ln/{
if(NF==4){if($1>$3){x21=$3;y21=$4;x22=$1;y22=$2}else{x21=$1;y21=$2;x22=$3;y22=$4}}
if(x21==x22){if(y21>y22){y21=$4;y22=$2;ang2=90}else{ang2=90}}
if(y21==y22){ang2=0}
if(x21!=x22 && y21!=y22){a2=(y22-y21)/(x22-x21);b2=y21-a2*x21;an2=atan2(y22-y21,x22-x21);
ang2=an2*180/pi;ang2=ang2*k;ang2=rnd(ang2)/k}
}
#座標/角度(直交線)
/^hhp3ln/,/NF==0/{
if(NF==4){if($1>$3){x31=$3;y31=$4;x32=$1;y32=$2}else{x31=$1;y31=$2;x32=$3;y32=$4}}
if(x31==x32){if(y31>y32){y31=$4;y32=$2;ang3=90}else{ang3=90}}
if(y31==y32){ang3=180}
if(x31!=x32 && y31!=y32){a3=(y32-y31)/(x32-x31);b3=y31-a3*x31;an3=atan2(y32-y31,x32-x31);
ang3=an3*180/pi;ang3=ang3*k;ang3=rnd(ang3)/k}
}
#水平方向
{if(x31==x32){xc=x31;yc1=y11;yc2=y21;yc=(yc1+yc2)/2;r=abs(yc1-yc2)/2}
if(xx>xc){x0=xc+r;y0=yc;
xs1=x0;ys1=y11;xe1=x12;ye1=y11;
xs2=x0;ys2=y21;xe2=x22;ye2=y21;
ths=90;the=270}
if(xx<xc){x0=xc-r;y0=yc;
xs1=x0;ys1=y11;xe1=x11;ye1=y11;
xs2=x0;ys2=y21;xe2=x21;ye2=y21;
ths=270;the=90}
}
#垂直方向
{if(y31==y32){yc=y31;xc1=x11;xc2=x21;xc=(xc1+xc2)/2;r=abs(xc1-xc2)/2}
if(y31==y32 && yy>yc){x0=xc;y0=yc+r;
xs1=x11;ys1=y0;xe1=x11;ye1=y12;
xs2=x21;ys2=y0;xe2=x21;ye2=y22;
ths=180;the=0}
if(y31==y32 && yy<yc){x0=xc;y0=yc-r;
xs1=x11;ys1=y0;xe1=x11;ye1=y11;
xs2=x21;ys2=y0;xe2=x21;ye2=y21;
ths=0;the=180}
}
#任意角度
{if(x31!=x32 && y31!=y32){
xc1=(b3-b1)/(a1-a3);yc1=a1*xc1+b1;
xc2=(b3-b2)/(a2-a3);yc2=a2*xc2+b2;
D2=(xc1-xc2)^2+(yc1-yc2)^2;D=sqrt(D2);r=D/2;
xc=(xc1+xc2)/2;yc=(yc1+yc2)/2;
dx=r*cos(an1);dy=r*sin(an1)}
if(x31!=x32 && y31!=y32 && xx>xc1){x0=xc+dx;y0=yc+dy;
xs1=xc1+dx;ys1=yc1+dy;xe1=x12;ye1=y12;
xs2=xc2+dx;ys2=yc2+dy;xe2=x22;ye2=y22;
ths=ang1+90;the=ang1+270}
if(x31!=x32 && y31!=y32 && xx<xc1){x0=xc-dx;y0=yc-dy;
xs1=xc1-dx;ys1=yc1-dy;xe1=x11;ye1=y11;
xs2=xc2-dx;ys2=yc2-dy;xe2=x21;ye2=y21;
ths=ang1+270;the=ang1+90}
}
###作図
END{
dth=abs(ang3-ang1);
if(ang1!=ang2 || dth!=90){print "hq";exit};
print "hd";
print lc;
printf "%.15g %.15g %.15g %.15g\n",xs1,ys1,xe1,ye1;
printf "%s %.15g %.15g %.15g %.15g %.15g %d %d\n","ci",x0,y0,r,ths,the,1,0;
printf "%.15g %.15g %.15g %.15g\n",xs2,ys2,xe2,ye2
}
###定義関数
#絶対値
function abs(x){if(x<0){return -x}{return x}}
#四捨五入
function rnd(x){if(x>=0){return int(x+0.5)}else{return -int(-x+0.5)}}
| 固定リンク | コメント (0) | トラックバック (0)
2.5Dデータの実点/補助線を消去する外部変形用バッチファイルです。 消去対象は、線色5実点/線色5補助線種/線色6実点です。
範囲選択から左AM0時「確定 基点(free)」を実行します。
注) 1.消去対象のレイヤ以外は、非表示または、表示のみにして実行してください。 2.消去対象以外の線色5及び補助線種の図形は、選択から除外してください。
--------------------
@REM 実点/補助線消去
@echo off
REM
REM #jww
REM #cd
REM #h1 範囲選択
REM #hc 実点と補助線を選択してください
REM #hr
REM #e
REM
jgawk 'BEGIN{print "hd"}/^^#/,/NF==0/{if($1=="#"){next}if($1=="lc5"){next}if($1=="lt9"){n=NR;next}if(NR==n+1){next}if($1=="pn6" ^|^| $1=="pn5"){next}if($1=="pt"){next}else{print $0}}' jwc_temp.txt>temp.txt
copy temp.txt jwc_temp.txt
del temp.txt
レイヤ間移動/複写 に分岐コマンドとして追加しました。
| 固定リンク | コメント (0) | トラックバック (0)
2.5Dデータで、側面(立面)に、線色6の補助線種で 角度補助線を作図する外部変形用バッチファイルです。
作図方法は、 傾斜面の下側の点をクリックし、傾斜角を示す線を(L)クリックします。
--------------------
@REM 角度補助線作図
@echo off
REM
REM #jww
REM #cd
REM #0 始点を指定してください。(R)
REM #1ln 角度線を指定してください(L)
REM #hr
REM #e
REM
jgawk '/^^#/,/NF==0/{if(NF==4 ^&^& $1^>$3){x1=$1-$3;y1=$2-$4}else{x1=$3-$1;y1=$4-$2}}END{if(y1^<0){x=-x1;y=-y1}else{x=x1;y=y1}print "lc6";print "lt9";printf "%%.15g %%.15g %%.15g %%.15g\n",0,0,x,y}' jwc_temp.txt>temp.txt
copy temp.txt jwc_temp.txt
pause
del temp.txt --------------------
| 固定リンク | コメント (0) | トラックバック (0)
最近のコメント