使用しているレイヤのみ表示させたり、特定のjwlファイルを読み込んでレイヤ表示させたり。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 | @REMレイヤ表示 @REMjww外部変形 @REMruby2.6.5で動作確認 @REMSJISで保存してください @REM @REMrubyのインストール @REMrubyインストーラーを使ってrubyをインストール @REMrubyinstaller-devkit-2.65-1-x64.exeを実行(ファイル名は例) @REM @REMgemでライブラリをインストール @REMコマンドラインから @REMgeminstallwin32-clipboard @REM @echooff REM#jw REM#cd goto%1 REM#hm【レイヤ表示】 |使用レイヤ[L]|指定レイヤ[R]| REM#hc メニューを選択してください REM#:1 REM#h4 REM#e REM#:2 REM#e :1 :2 copyjwc_temp.txttmp.txt startruby-Ks-x%~f0%1 REMruby-Ks-x%~f0%1 REMpause gotoEND :COMENT 【使用レイヤ】使用中のレイヤのみ表示 【指定レイヤ】指定したレイヤを表示(smp.jwlを読み込みます) #!ruby #encoding: SJIS $stderr=open("tmp_e.txt","w")#エラーメッセージ $stdout=open("jwc_temp.txt","w") require'win32ole' require'win32/clipboard' opt=ARGV[0].to_i ifopt==1#使用レイヤ jwl=__dir__.gsub(/\//,"\\\\")+"\\tmp.jwl" jl=open("tmp.jwl","w") jwc=open("tmp.txt").read.split(/\R/).grep(/^l[yg]/) arr=Array.new(16){Array.new(17,0)} lay="0123456789ABCDEF".split("").map{|e|"LAYCND_"+e} flg,fly,g,y=100,100,0,0 jwc.each{|e| if/lg/=~e g=e[-1].hex arr[g][0]=flg flg=2 elsif/ly/=~e y=e[-1].hex+1 arr[g][y]=fly fly=2 end} lay.each_with_index{|e,i|jl.putse+"="+arr[i].join(",")} puts"h# 使用レイヤ" elsifopt==2#指定レイヤ jwl=__dir__.gsub(/\//,"\\\\")+"\\smp.jwl" puts"h# 指定レイヤ" end Win32::Clipboard.set_data(jwl) shell=WIN32OLE.new("WScript.Shell") shell.AppActivate("jw_win");sleep(0.3) shell.Sendkeys("%sfr");sleep(0.2) shell.Sendkeys("%tj%n");sleep(0.2) shell.Sendkeys("^v{ENTER}{RIGHT}");sleep(0.2) __END__ 指定レイヤ指示の時に読み込むjwlファイルのサンプル カットしてバッチファイルと同じところに保存してください ---smp.jwl(ここから)--- LAYCND_0=100,2,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0 LAYCND_1=2,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_2=2,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_3=2,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_4=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_5=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_6=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_7=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_8=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_9=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_A=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_B=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_C=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_D=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_E=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 LAYCND_F=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ---smp.jwl(ここまで)--- :END |
コメント