Indexへ
(20741)//【20746】→(20758)
------------------------
【タイトル】連番記入の外変
【記事番号】 20746 (*)
【 日時 】04/08/20 08:38
【 発言者 】よくちん

マウスでクリックした位置に連番記入してくれる外変無いですか?

外変の仕様 (レベル1)

現状の書き込み文字種で 現状書き込みレイヤー、グループに
連番の種類は数字、アルファベット、いろはにほへと で書き込みを行う

連番の種類及びステップ数は 別の画面で設定もしくは
手入力で 【0】、【3】を書き込んでそれらの数字を
マウスクリックで選択、マウスで書き込み位置をクリックで
【6】を指定位置に書き込みエクセルの自動の数値入力みたいな感じで


外変の仕様 (レベル2)

連番の前後に文字を追加できる
通り心記号、又は丸囲み文字、四角囲み等の飾りが出来る。


このような外変ありませんか?


Indexへ
(20746)←【20758】→(20772)
------------------------
【タイトル】Re(1):連番記入の外変
【記事番号】 20758 (20746)
【 日時 】04/08/20 11:27
【 発言者 】鈴木 sanc@po.mcci.or.jp

▼よくちんさん:
>マウスでクリックした位置に連番記入してくれる外変無いですか?
>
>外変の仕様 (レベル1)
>
>現状の書き込み文字種で 現状書き込みレイヤー、グループに
>連番の種類は数字、アルファベット、いろはにほへと で書き込みを行う
>
>連番の種類及びステップ数は 別の画面で設定もしくは
>手入力で 【0】、【3】を書き込んでそれらの数字を
>マウスクリックで選択、マウスで書き込み位置をクリックで
>【6】を指定位置に書き込みエクセルの自動の数値入力みたいな感じで
>
>
>外変の仕様 (レベル2)
>
>連番の前後に文字を追加できる
>通り心記号、又は丸囲み文字、四角囲み等の飾りが出来る。
>
>
>このような外変ありませんか?

●下記サイトで探してください。
私は組み込んでいます。
http://fox.zero.ad.jp/~zap01296/jww/


Indexへ
(20758)←【20772】→(20773)
------------------------
【タイトル】Re(2):連番記入の外変
【記事番号】 20772 (20758)
【 日時 】04/08/20 13:31
【 発言者 】よくちん

機能的な部分は 鈴木さんの紹介していただいた 外変で十分なのですが

番号を書き込んだ後 設定画面に戻るのが 使いづらいと思います。
連続して 指定点に書き込みたいのですが そのような 外変ご存じの方いませんか?


Indexへ
(20772)←【20773】→(20774)
------------------------
【タイトル】Re(3):連番記入の外変
【記事番号】 20773 (20772)
【 日時 】04/08/20 13:46
【 発言者 】siegel

▼よくちんさん:
>機能的な部分は 鈴木さんの紹介していただいた 外変で十分なのですが
>
>番号を書き込んだ後 設定画面に戻るのが 使いづらいと思います。
>連続して 指定点に書き込みたいのですが そのような 外変ご存じの方いませんか?

数字または、A0,A1・・または、X0,X1・・という[頭文字+整数]の連番記入
の外部変形です。(作者様 ありがとうございます。)

【名  称】 小道具 ver1.1
【種  類】 Jw_win用外部変形プログラム
【作  成】 2003.4
【区  分】 フリーウエア
【制作者名】 Caba(pxx12754@nifty.com)
       http://homepage1.nifty.com/caba/
 小道具 ver1.1 の中の、○連番 です

ご参考まで。


Indexへ
(20773)←【20774】→(20776)
------------------------
【タイトル】外変よりも線記号変形
【記事番号】 20774 (20772)
【 日時 】04/08/20 14:40
【 発言者 】k.kido ten11301@joho-fukuoka.or.jp

よくちんさん、こんにちは。
>
>機能的な部分は 鈴木さんの紹介していただいた 外変で十分なのですが
>
>番号を書き込んだ後 設定画面に戻るのが 使いづらいと思います。
>連続して 指定点に書き込みたいのですが そのような 外変ご存じの方いませんか?
>
JWWに同梱されているJW_OPT4b.datの4番目か5番目を利用して連続指定の
[10000 n]を追加すれば希望の動きになります。

----- k.kido -----


Indexへ
(20774)←【20776】→(20991)
------------------------
【タイトル】Re(1):連番記入の外変
【記事番号】 20776 (20746)
【 日時 】04/08/20 14:56
【 発言者 】じい

▼よくちんさん:
>マウスでクリックした位置に連番記入してくれる外変無いですか?
>
>外変の仕様 (レベル1)
>
>現状の書き込み文字種で 現状書き込みレイヤー、グループに
>連番の種類は数字、アルファベット、いろはにほへと で書き込みを行う
>
>連番の種類及びステップ数は 別の画面で設定もしくは
>手入力で 【0】、【3】を書き込んでそれらの数字を
>マウスクリックで選択、マウスで書き込み位置をクリックで
>【6】を指定位置に書き込みエクセルの自動の数値入力みたいな感じで
>
>
>外変の仕様 (レベル2)
>
>連番の前後に文字を追加できる
>通り心記号、又は丸囲み文字、四角囲み等の飾りが出来る。
>
>
>このような外変ありませんか?

線記号変形で全て可能です
四角囲い文字連番、丸囲い文字連番、通り芯端点指定連番、通り芯端点フリー連番等々
文字・数字・アルファベット・記号・・・・・
[Jw_opt4*.dat}の内容を理解した上でオリジナルに書き換えます
例えば「四角囲い文字連番」を例に参考にしてください
いちいち説明はしませんが市販のJWの教則本に線記号変形の説明があると思います。
私も当時幾度となく試行錯誤を繰り返してオリジナルのものを作りました。
少し苦労して内容さえ理解できれば多種多彩?なものが楽しめ(作れ)ますよ。
すご〜く軽快です

#角囲 数字(連番)
#
64
999
0     角−0
10000  02 -3.8 0 3.8 0 2 1
00 00 -2.1 -2.1  2.1 -2.1  4 1 2
00 00 -2.1  2.1  2.1  2.1  4 1 2
00 00 -2.1 -2.1 -2.1  2.1  4 1 2
00 00  2.1 -2.1  2.1  2.1  4 1 2
00 00 0 0 1 0  10000 402 2 "0
999
0     角−1
10000  03 -3.8 0 3.8 0 2 1
00 00 -2.1 -2.1  2.1 -2.1  4 1 2
00 00 -2.1  2.1  2.1  2.1  4 1 2
00 00 -2.1 -2.1 -2.1  2.1  4 1 2
00 00  2.1 -2.1  2.1  2.1  4 1 2
00 00 0 0 1 0  10000 402 2 "1
999
0     角−2
10000 04 -3.8 0 3.8 0 2 1
00 00 -2.1 -2.1  2.1 -2.1  4 1 2
00 00 -2.1  2.1  2.1  2.1  4 1 2
00 00 -2.1 -2.1 -2.1  2.1  4 1 2
00 00  2.1 -2.1  2.1  2.1  4 1 2
00 00 0 0 1 0  10000 402 2 "2
999




0     角−n
10000 12 -3.8 0 3.8 0 2 1
00 00 -2.1 -2.1  2.1 -2.1  4 1 2
00 00 -2.1  2.1  2.1  2.1  4 1 2
00 00 -2.1 -2.1 -2.1  2.1  4 1 2
00 00  2.1 -2.1  2.1  2.1  4 1 2
20000 00   0   0  10  0  10000 402 2 "NO
08 00 0 0 0 360 7 1 -11 e 0.5 原点位置ダミー
999


Indexへ
(20776)←【20991】→(20992)
------------------------
【タイトル】Re2: 連番記入の外変
【記事番号】 20991 (20776)
【 日時 】04/08/27 10:35
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

じいさん、こんにちは。

↓をやってみましたが、画面クリックで点ができるだけですけど。
何かの間違いですか?。

>#角囲 数字(連番)
>#
>64
>999
>0     角−0
>10000  02 -3.8 0 3.8 0 2 1
>00 00 -2.1 -2.1  2.1 -2.1  4 1 2
>00 00 -2.1  2.1  2.1  2.1  4 1 2
>00 00 -2.1 -2.1 -2.1  2.1  4 1 2
>00 00  2.1 -2.1  2.1  2.1  4 1 2
>00 00 0 0 1 0  10000 402 2 "0
>999
>0     角−1
>10000  03 -3.8 0 3.8 0 2 1
>00 00 -2.1 -2.1  2.1 -2.1  4 1 2
>00 00 -2.1  2.1  2.1  2.1  4 1 2
>00 00 -2.1 -2.1 -2.1  2.1  4 1 2
>00 00  2.1 -2.1  2.1  2.1  4 1 2
>00 00 0 0 1 0  10000 402 2 "1
>999
>0     角−2
>10000 04 -3.8 0 3.8 0 2 1
>00 00 -2.1 -2.1  2.1 -2.1  4 1 2
>00 00 -2.1  2.1  2.1  2.1  4 1 2
>00 00 -2.1 -2.1 -2.1  2.1  4 1 2
>00 00  2.1 -2.1  2.1  2.1  4 1 2
>00 00 0 0 1 0  10000 402 2 "2
>999
>・
>・
>・
>・
>0     角−n
>10000 12 -3.8 0 3.8 0 2 1
>00 00 -2.1 -2.1  2.1 -2.1  4 1 2
>00 00 -2.1  2.1  2.1  2.1  4 1 2
>00 00 -2.1 -2.1 -2.1  2.1  4 1 2
>00 00  2.1 -2.1  2.1  2.1  4 1 2
>20000 00   0   0  10  0  10000 402 2 "NO
>08 00 0 0 0 360 7 1 -11 e 0.5 原点位置ダミー
>999



-- CMN v0.46β --


Indexへ
(20991)←【20992】→(20993)
------------------------
【タイトル】半角スペースに一括置換
【記事番号】 20992 (20991)
【 日時 】04/08/27 10:42
【 発言者 】コジマ

半角スペースが全角スペースになっているのでは、
この掲示板では、半角スペース2個分を全角スペース1個の変換されるようです。

全角スペースを半角スペースの一括置換してみてください。


Indexへ
(20992)←【20993】→(20999)
------------------------
【タイトル】Re(1):おっしゃるとおりスペースは全て半角単位で!
【記事番号】 20993 (20992)
【 日時 】04/08/27 11:48
【 発言者 】じい

▼コジマさん:
>半角スペースが全角スペースになっているのでは、
>この掲示板では、半角スペース2個分を全角スペース1個の変換されるようです。
>
>全角スペースを半角スペースの一括置換してみてください。

遅くなりました
コジマさん。レス有難うございます。


Indexへ
(20993)←【20999】→(21003)
------------------------
【タイトル】Re: 半角スペースに一括置換
【記事番号】 20999 (20992)
【 日時 】04/08/27 14:30
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

コジマさん、こんにちは。

>全角スペースを半角スペースの一括置換してみてください。

なるほど、とりあえず連番にはなりますね。
とは言うものの、これは記述のある次の線記号変形に渡してるだけで番号制限付きです。
線記号変形建築2の4番目とか5番目が無制限連番になると便利だと思いました。

-- CMN v0.46β --


Indexへ
(20999)←【21003】→(21004)
------------------------
【タイトル】Re(1): 半角スペースに一括置換
【記事番号】 21003 (20999)
【 日時 】04/08/27 14:53
【 発言者 】コジマ

▼非社会人さん:
>コジマさん、こんにちは。
>
>>全角スペースを半角スペースの一括置換してみてください。
>
>なるほど、とりあえず連番にはなりますね。
>とは言うものの、これは記述のある次の線記号変形に渡してるだけで番号制限付きです。
>線記号変形建築2の4番目とか5番目が無制限連番になると便利だと思いました。
>
>-- CMN v0.46β --

線記号変形では、この方法しかないと思いますが。

別ファイルにすれば、かなりの数値までつくれます。


無制限連番とは、EXCELのオートフィルで記入するようなことを希望されているのですか?
(あれも完全な無制限ではないと思いますが・・・記憶させてある)

理論は一緒では?


Indexへ
(21003)←【21004】→(21017)
------------------------
【タイトル】Re2: 半角スペースに一括置換
【記事番号】 21004 (21003)
【 日時 】04/08/27 15:04
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

コジマさん、こんにちは。

>無制限連番とは、EXCELのオートフィルで記入するようなことを希望されているのですか?

私は、EXCELのオートフィルとかは知らないのですが、
クリックすればしただけ、連番で数値が上がるものです。
100でも200でも。

外変だとクリックしただげ連番で数値の上がるものがありますけど、
図番記入用なのか番号だけで、○とか矢印とかは付かないです。


-- CMN v0.46β --


Indexへ
(21004)←【21017】→(21018)
------------------------
【タイトル】Re(1):Re2: 半角スペースに一括置換
【記事番号】 21017 (21004)
【 日時 】04/08/27 16:20
【 発言者 】コジマ

>外変だとクリックしただげ連番で数値の上がるものがありますけど、
>図番記入用なのか番号だけで、○とか矢印とかは付かないです。
>
>
>-- CMN v0.46β --


外変は、プログラム用言語で書かれるので、メソッドを使って、ある程度、無制限に、連番をつくることが出来ます。

Rubyの場合、succメソッドを使って、

no="100"
no.succ → "101"
no=no.succ
no.succ → "102"



線記号変形には、この機能はありません。
使用する数値は全て作っておかなければなりません。

ひとつのファイルにできる数値は、30個なので、
必要ならば、複数のファイルを作っておく必要があります。
1〜30 31〜60 61〜90 ・・・・

作るのが面倒ですが、使い勝手は、線記号変形のほうがいいように感じます。
(個人的には)


Indexへ
(21017)←【21018】→(21021)
------------------------
【タイトル】Re2: Re2: 半角スペースに一括置換
【記事番号】 21018 (21017)
【 日時 】04/08/27 16:37
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

コジマさん、こんにちは。

>線記号変形には、この機能はありません。
>使用する数値は全て作っておかなければなりません。

なるほど、できそうでできないわけですね。
矢印付きの連番外変を頼んで作ってもらうか、
200とか300とか線記号変形を自分で用意するしかなさそうですね。

20774 外変よりも線記号変形 の

>JWWに同梱されているJW_OPT4b.datの4番目か5番目を利用して連続指定の
>[10000 n]を追加すれば希望の動きになります。

も同じ意味(数だけ作って次の線記号変形に渡す)ですか?。

-- CMN v0.46β --


Indexへ
(21018)←【21021】→(21025)
------------------------
【タイトル】Re(1):Re2: Re2: 半角スペースに一括置換
【記事番号】 21021 (21018)
【 日時 】04/08/27 17:49
【 発言者 】コジマ

>>JWWに同梱されているJW_OPT4b.datの4番目か5番目を利用して連続指定の
>>[10000 n]を追加すれば希望の動きになります。
>
>も同じ意味(数だけ作って次の線記号変形に渡す)ですか?。
>
>-- CMN v0.46β --

そのとうりです。
後続番号は自分で作ることになります。


Indexへ
(21021)←【21025】→(21027)
------------------------
【タイトル】オリジナル外変
【記事番号】 21025 (21021)
【 日時 】04/08/27 21:54
【 発言者 】コジマ

外部変形を作ってみました。
○の大きさなど、検討の余地がありますが、大体、ご希望のとうりだと思います。
(バッチファイル・スクリプトファイル とも 2組)

コピペ後、全角スペースを半角スペースに一括置換してください。

この外部変形の実行には、mswin32 版 Ruby のインストールが必要です。
以下で入手できます。
http://www61.tok2.com/home2/gravelroad/tips/install.html


○バッチファイル(ファイル名 連番1.bat)

@REM 連番作図(引出線付バルーン)
@echo off
REM #jww
REM #cd
REM #h0
REM #c最初の記入番号を入力
REM #h/連番2.bat
REM #1-
REM #2-
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -Ks 連番1.rb temp.txt %1 > jwc_temp.txt


○バッチファイル(ファイル名 連番2.bat)

@REM 連番作図(引出線付バルーン)
@echo off
REM #jww
REM #cd
REM #h0
REM #1-
REM #2-
REM #hr
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -Ks 連番2.rb temp.txt > jwc_temp.txt

○スクリプトファイル(ファイル名 連番1.rb)

BEGIN{
$no=ARGV[1]
while ARGV.length > 1
   ARGV.pop
end
$by=Array.new;$hcw=Array.new
$hch=Array.new;$hcd=Array.new
}
def main
while ARGF.gets
xy =split
if xy[0] =~ /^hs/
n=1;while (nend
if xy[0] =~ /^lg/
$lg=xy[0].delete("lg");$zusun=$by[$lg.to_i]
end
if xy[0] =~ /^hcw/
m=1;while (mend
end
if xy[0] =~ /^hch/
l=1;while (lend
if xy[0] =~ /^hcd/
s=1;while (send
if xy[0] =~ /^cn/ && xy[0] =~ /[0-9]$/
$cn=xy[0].delete("cn")
$mojiw=$hcw[$cn.to_i-1]/2
$mojih=$hch[$cn.to_i-1]
$mojid=$hcd[$cn.to_i-1]
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
$xy=Math.sqrt((x2-x1)**2+(y2-y1)**2)
dx=(x2-x1)/$xy
dy=(y2-y1)/$xy
mojin=$no.size
if mojin==1;r=($mojih+1)/2*$zusun
elsif mojin==2;r=($mojih+1)/1.5*$zusun
else;r=($mojih+1)*$zusun
end
naname(x1,y1,x2-r*dx,y2-r*dy)
naname(x1,y1,x1+2*$zusun*dx+0.52*$zusun*dy,
y1+2*$zusun*dy-0.52*$zusun*dx)
naname(x1,y1,x1+2*$zusun*dx-0.52*$zusun*dy,
y1+2*$zusun*dy+0.52*$zusun*dx)
printf("ci %e %e %e \n",x2,y2,r)
printf("ch %e %e %e %e\"%s\n",x2-mojin*($mojiw/2)*$zusun,y2-($mojih/2)*$zusun,1,0,$no)
text=$no;nlines = 0;File.open("連番.txt","w"){|file|
text.each{|line|;file.puts line
nlines += 1;};}
end
def naname(x1,y1,x2,y2)
printf("%e %e %e %e\n", x1, y1, x2, y2)
end
main()

○スクリプトファイル(ファイル名 連番2.rb)

BEGIN{
File.foreach("連番.txt","r") do |line|
    $foo=line.split(/\n/)
$no=$foo[0].succ
end
$by=Array.new;$hcw=Array.new
$hch=Array.new;$hcd=Array.new
}
def main
while ARGF.gets
xy =split
if xy[0] =~ /^hs/
n=1;while (nend
if xy[0] =~ /^lg/;$lg=xy[0].delete("lg")
$zusun=$by[$lg.to_i]
end
if xy[0] =~ /^hcw/
m=1;while (mend
if xy[0] =~ /^hch/
l=1;while (lend
if xy[0] =~ /^hcd/
s=1;while (send
if xy[0] =~ /^cn/ && xy[0] =~ /[0-9]$/
$cn=xy[0].delete("cn")
$mojiw=$hcw[$cn.to_i-1]/2
$mojih=$hch[$cn.to_i-1]
$mojid=$hcd[$cn.to_i-1]
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
$xy=Math.sqrt((x2-x1)**2+(y2-y1)**2)
dx=(x2-x1)/$xy;dy=(y2-y1)/$xy;mojin=$no.size
if mojin==1;r=($mojih+1)/2*$zusun
elsif mojin==2;r=($mojih+1)/1.5*$zusun
else;r=($mojih+1)*$zusun
end
naname(x1,y1,x2-r*dx,y2-r*dy)
naname(x1,y1,x1+2*$zusun*dx+0.52*$zusun*dy,
y1+2*$zusun*dy-0.52*$zusun*dx)
naname(x1,y1,x1+2*$zusun*dx-0.52*$zusun*dy,
y1+2*$zusun*dy+0.52*$zusun*dx)
printf("ci %e %e %e \n",x2,y2,r)
printf("ch %e %e %e %e\"%s\n",x2-mojin*($mojiw/2)*$zusun,y2-($mojih/2)*$zusun,1,0,$no)
text=$no;nlines = 0;File.open("連番.txt","w"){|file|
text.each{|line|;file.puts line
nlines += 1;};}
end
def naname(x1,y1,x2,y2)
printf("%e %e %e %e\n", x1, y1, x2, y2)
end
main()


Indexへ
(21025)←【21027】→(21029)
------------------------
【タイトル】RE: オリジナル外変
【記事番号】 21027 (21025)
【 日時 】04/08/27 23:46
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

>外部変形を作ってみました。
>○の大きさなど、検討の余地がありますが、大体、ご希望のとうりだと思います。
>(バッチファイル・スクリプトファイル とも 2組)
>
>コピペ後、全角スペースを半角スペースに一括置換してください。
>
>この外部変形の実行には、mswin32 版 Ruby のインストールが必要です。
>以下で入手できます。
>http://www61.tok2.com/home2/gravelroad/tips/install.html

おお、これは中々、良いですね。
使うのにちょいと要領がいりますけど。
○の大きさか文字サイズを変えれば十分使えますね。
それと、Rubyではなくawkで作れば他の外変と同じでいいので、
Rubyをセットアップしなくて良いと思いました。

私はCMNのほかにINCMも入れているので、特に問題は無かったですが、
そうでない人はちと辛いかも。


Indexへ
(21027)←【21029】→(21030)
------------------------
【タイトル】Re: オリジナル外変
【記事番号】 21029 (21025)
【 日時 】04/08/28 10:10
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

コジマさん、こんにちは。

>外部変形を作ってみました。
>○の大きさなど、検討の余地がありますが、大体、ご希望のとうりだと思います。
>(バッチファイル・スクリプトファイル とも 2組)

>コピペ後、全角スペースを半角スペースに一括置換してください。

>この外部変形の実行には、mswin32 版 Ruby のインストールが必要です。
>以下で入手できます。
>http://www61.tok2.com/home2/gravelroad/tips/install.html

この外変、win98seのノートだとうまいこと動作しましたが、
win xpのデスクトップだと駄目ですね。
コマンドプロンプトが一瞬出て最初の「基準点を支持して下さい」に戻ります。
rubyはセットしてあって、コマンドプロンプトで ruby -v で情報返してきますから問題ないですし。
何が原因でしょう?。

-- CMN v0.46β --


Indexへ
(21029)←【21030】→(21031)
------------------------
【タイトル】Re(1): オリジナル外変
【記事番号】 21030 (21029)
【 日時 】04/08/28 10:44
【 発言者 】siegel

▼非社会人さん:

コジマさん、お疲れ様です。

>>この外変、win98seのノートだとうまいこと動作しましたが、
>win xpのデスクトップだと駄目ですね。
>コマンドプロンプトが一瞬出て最初の「基準点を支持して下さい」に戻ります。
>rubyはセットしてあって、コマンドプロンプトで ruby -v で情報返してきますから問題ないですし。
>何が原因でしょう?。

当方、WindowsXP HE , Jw_win ver4.02c , ruby 1.8.1 にて正常に作動します。
非社会人さんの「JWWのインストール場所」はどこでしょう。
C:\Program Files\JWW (半角スペース有り)などですと
外変は、不具合が生じます。
ご参考まで。


Indexへ
(21030)←【21031】→(21033)
------------------------
【タイトル】Re2: オリジナル外変
【記事番号】 21031 (21030)
【 日時 】04/08/28 10:58
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

siegelさん、こんにちは。

>当方、WindowsXP HE , Jw_win ver4.02c , ruby 1.8.1 にて正常に作動します。

おや、そうですか。

>非社会人さんの「JWWのインストール場所」はどこでしょう。
>C:\Program Files\JWW (半角スペース有り)などですと
>外変は、不具合が生じます。
>ご参考まで。

C:\JWWで他の外変は正常動作(DOS版含む)しております。

-- CMN v0.46β --


Indexへ
(21031)←【21033】→(21035)
------------------------
【タイトル】Re(1): オリジナル外変
【記事番号】 21033 (21029)
【 日時 】04/08/28 11:16
【 発言者 】コジマ

>この外変、win98seのノートだとうまいこと動作しましたが、
>win xpのデスクトップだと駄目ですね。
>コマンドプロンプトが一瞬出て最初の「基準点を支持して下さい」に戻ります。
>rubyはセットしてあって、コマンドプロンプトで ruby -v で情報返してきますから問題ないですし。
>何が原因でしょう?。

多分、OSの問題ではなく、最初の数値入力が正常になされていないのだと思います。

または、連番2.batを単独で、起動されたか?

この外変は、以下のような仕組みです。

連番1.bat→連番1.rb→入力した数値作図および連番.txtの作成
  ↓→ →連番2.bat→連番2.rb→連番.txtから読込んだ数値の後続文字の作図と連番.txtの上書き
       ↓
      連番2.batを繰り返す。

連番.txtが作成されていない状態では、連番2.batは正常に動作しません。

連番1.batの一番下に pause の文字を追記してみてください。
コマンドプロンプトに、なにかエラーメッセージがでていないでしょうか?


Indexへ
(21033)←【21035】→(21036)
------------------------
【タイトル】Re2: オリジナル外変
【記事番号】 21035 (21033)
【 日時 】04/08/28 11:41
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

コジマさん、こんにちは。

>多分、OSの問題ではなく、最初の数値入力が正常になされていないのだと思います。

WIN XPで作った起動BATを使うと最初の数値入力窓が出てきませんでした。
そこで、WIN98SEで作ったものを上書きコピーしたところ、数値入力窓が出てきて正常動作しました。
原因は何だろう?。

>または、連番2.batを単独で、起動されたか?

これはやりません。

>連番1.batの一番下に pause の文字を追記してみてください。
>コマンドプロンプトに、なにかエラーメッセージがでていないでしょうか?

何かキーを押してくださいと出ましたね。

ところで、コマンドプロンプト窓が自動で閉じますけど、
これは起動BATからの命令ですか?。
私はJWW.BATを作ってクロックメニューに登録、ドラッグ操作で別のJWWを立ち上げていますが、
コマンドプロンプト窓が自動で閉じないので困っています。
98SEだとプロパティーで「プログラム終了時に閉じる」や「最小化」で実行できるのですが、
WIN XPにはこの設定が無く、コマンドプロンプト窓をタスクバーがら手作業で閉じています。

-- CMN v0.46β --


Indexへ
(21035)←【21036】→(21041)
------------------------
【タイトル】Re(1):Re2: オリジナル外変
【記事番号】 21036 (21035)
【 日時 】04/08/28 11:58
【 発言者 】コジマ

>WIN XPで作った起動BATを使うと最初の数値入力窓が出てきませんでした。
>そこで、WIN98SEで作ったものを上書きコピーしたところ、数値入力窓が出てきて正常動作しました。
>原因は何だろう?。

多分、全角スペースが混じっていた。


>ところで、コマンドプロンプト窓が自動で閉じますけど、
>これは起動BATからの命令ですか?。

WIN XPのコマンドプロンプト窓は、pause を記述しないと自動で閉じるようです。
エラーメッセージを確認するには、この方法を使います。

WIN 98のMS_DOSプロンプト窓は、設定しないと自動で閉じない。

>私はJWW.BATを作ってクロックメニューに登録、ドラッグ操作で別のJWWを立ち上げていますが、
>コマンドプロンプト窓が自動で閉じないので困っています。
>98SEだとプロパティーで「プログラム終了時に閉じる」や「最小化」で実行できるのですが、
>WIN XPにはこの設定が無く、コマンドプロンプト窓をタスクバーがら手作業で閉じています。

立ち上げたJWWを閉じないと、コマンドプロンプト窓も閉じないようになっているはずです?
(作図を終了して、JWWを閉じれば、コマンドプロンプト窓も閉じる。)


Indexへ
(21036)←【21041】→(21039)
------------------------
【タイトル】Re2: Re2: オリジナル外変
【記事番号】 21041 (21036)
【 日時 】04/08/28 13:38
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

コジマさん、こんにちは。

>多分、全角スペースが混じっていた。

そう考えて、再度エディターで全選択→半角文字変換 
をやってみたのですが、変わりませんでした。
まあ、できるようになったので、いいのですけど。

>立ち上げたJWWを閉じないと、コマンドプロンプト窓も閉じないようになっているはずです?
>(作図を終了して、JWWを閉じれば、コマンドプロンプト窓も閉じる。)

OH-NO!、JWW 終わらせないと閉じませんか。
やはり、駄目なのねー。

-- CMN v0.46β --


Indexへ
(21041)←【21039】→(21042)
------------------------
【タイトル】Re(1):Re2: オリジナル外変
【記事番号】 21039 (21035)
【 日時 】04/08/28 12:50
【 発言者 】siegel

▼非社会人さん:

>私はJWW.BATを作ってクロックメニューに登録、ドラッグ操作で別のJWWを立ち上げていますが、
>コマンドプロンプト窓が自動で閉じないので困っています。

bat内容が不明なのですが、

start /w Jw_win.exe という記述があるとしたら、/w を削除してみては?
(/w = /wait)
あてずっぽうですみません。


Indexへ
(21039)←【21042】→(21049)
------------------------
【タイトル】Re2: Re2: オリジナル外変
【記事番号】 21042 (21039)
【 日時 】04/08/28 13:38
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

siegelさん、こんにちは。

>bat内容が不明なのですが、

@REM JWW 起動BAT
@echo off
REM #jw
REM #mc
REM #h4
REM #e
c:\jww\jw_win.exe
:END

と言うもので、いたってシンプルかつスタンダードです。
こいつをクロックメニューに仕込むだけで、
ちょいとドラッグすればホイホイJWWが立ち上がってきます。

閉じない窓のせいで、XPより98SEの方が快適です。

-- CMN v0.46β --


Indexへ
(21042)←【21049】→(21052)
------------------------
【タイトル】Re(1):参考.bat
【記事番号】 21049 (21042)
【 日時 】04/08/28 16:32
【 発言者 】siegel

▼非社会人さん:

参考です。DOS画面は、閉じてます。

@REM JWW起動BAT(もうひとつのJWW起動)
@echo off
REM #jww
REM #cd
REM #e
echo # > jwc_temp.txt
del jwc_temp.txt
start Jw_win.exe
echo h#もうひとつの Jw_cad を起動しました > jwc_temp.txt
goto end
:END


Indexへ
(21049)←【21052】→(21070)
------------------------
【タイトル】Re2: 参考.bat
【記事番号】 21052 (21049)
【 日時 】04/08/28 17:05
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

siegelさん、こんにちは。

>参考です。DOS画面は、閉じてます。

おお!、こいつはいいです。
しょっちゅう使うBATなので、実に快適です。
アドバイスに感謝です。

-- CMN v0.46β --


Indexへ
(21052)←【21070】→(21073)
------------------------
【タイトル】一部修正
【記事番号】 21070 (21025)
【 日時 】04/08/29 18:44
【 発言者 】コジマ

スクリプトファイルを一部修正しました。

1、○を小さくした。
2、極端に短い引き出し線は、作図しない。
3、文字間隔を設定した文字種の場合、○の中心と文字の中心がズレる不具合を修正。

○スクリプトファイル(ファイル名 連番1.rb)

BEGIN{
$no=ARGV[1]
while ARGV.length > 1
   ARGV.pop
end
$by=Array.new;$hcw=Array.new
$hch=Array.new;$hcd=Array.new
}
def main
while ARGF.gets
xy =split
if xy[0] =~ /^hs/
n=1;while (nend
if xy[0] =~ /^lg/
$lg=xy[0].delete("lg");$zusun=$by[$lg.to_i]
end
if xy[0] =~ /^hcw/
m=1;while (mend
end
if xy[0] =~ /^hch/
l=1;while (lend
if xy[0] =~ /^hcd/
s=1;while (send
if xy[0] =~ /^cn/ && xy[0] =~ /[0-9]$/
$cn=xy[0].delete("cn")
$mojiw=$hcw[$cn.to_i-1]/2
$mojih=$hch[$cn.to_i-1]
$mojid=$hcd[$cn.to_i-1]
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
$xy=Math.sqrt((x2-x1)**2+(y2-y1)**2)
dx=(x2-x1)/$xy
dy=(y2-y1)/$xy
mojin=$no.size
tango=$no.split('')
if tango[0].size==1
if mojin%2==0
mojil=mojin*$mojiw+$mojid*(mojin-1.5)
else
mojil=mojin*$mojiw+$mojid*(mojin-2)
end
else
mojil=mojin*$mojiw+$mojid*(mojin-2)/2
end
if mojin==1;r=($mojih+2)/2*$zusun
elsif mojin==2;r=(mojil+2)/1.75*$zusun
elsif mojin==3;r=(mojil+2)/1.75*$zusun
else;r=(mojil+2)*$zusun/2
end
if r+2*$zusun < $xy
naname(x1,y1,x2-r*dx,y2-r*dy)
naname(x1,y1,x1+2*$zusun*dx+0.52*$zusun*dy,
y1+2*$zusun*dy-0.52*$zusun*dx)
naname(x1,y1,x1+2*$zusun*dx-0.52*$zusun*dy,
y1+2*$zusun*dy+0.52*$zusun*dx)
end
printf("ci %e %e %e \n",x2,y2,r)
printf("ch %e %e %e %e\"%s\n",x2-mojil*$zusun/2,y2-($mojih/2)*$zusun,1,0,$no)
text=$no;nlines = 0;File.open("連番.txt","w"){|file|
text.each{|line|;file.puts line
nlines += 1;};}
end
def naname(x1,y1,x2,y2)
printf("%e %e %e %e\n", x1, y1, x2, y2)
end
main()


○スクリプトファイル(ファイル名 連番2.rb)

BEGIN{
File.foreach("連番.txt","r") do |line|
    $foo=line.split(/\n/)
$no=$foo[0].succ
end
$by=Array.new;$hcw=Array.new
$hch=Array.new;$hcd=Array.new
}
def main
while ARGF.gets
xy =split
if xy[0] =~ /^hs/
n=1;while (nend
if xy[0] =~ /^lg/;$lg=xy[0].delete("lg")
$zusun=$by[$lg.to_i]
end
if xy[0] =~ /^hcw/
m=1;while (mend
if xy[0] =~ /^hch/
l=1;while (lend
if xy[0] =~ /^hcd/
s=1;while (send
if xy[0] =~ /^cn/ && xy[0] =~ /[0-9]$/
$cn=xy[0].delete("cn")
$mojiw=$hcw[$cn.to_i-1]/2
$mojih=$hch[$cn.to_i-1]
$mojid=$hcd[$cn.to_i-1]
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
$xy=Math.sqrt((x2-x1)**2+(y2-y1)**2)
dx=(x2-x1)/$xy;dy=(y2-y1)/$xy;mojin=$no.size
tango=$no.split('')
if tango[0].size==1
if mojin%2==0
mojil=mojin*$mojiw+$mojid*(mojin-1.5)
else
mojil=mojin*$mojiw+$mojid*(mojin-2)
end
else
mojil=mojin*$mojiw+$mojid*(mojin-2)/2
end
if mojin==1;r=($mojih+2)/2*$zusun
elsif mojin==2;r=(mojil+2)/1.75*$zusun
elsif mojin==3;r=(mojil+2)/1.75*$zusun
else;r=(mojil+2)*$zusun/2
end
if r+2*$zusun < $xy
naname(x1,y1,x2-r*dx,y2-r*dy)
naname(x1,y1,x1+2*$zusun*dx+0.52*$zusun*dy,
y1+2*$zusun*dy-0.52*$zusun*dx)
naname(x1,y1,x1+2*$zusun*dx-0.52*$zusun*dy,
y1+2*$zusun*dy+0.52*$zusun*dx)
end
printf("ci %e %e %e \n",x2,y2,r)
printf("ch %e %e %e %e\"%s\n",x2-mojil*$zusun/2,y2-($mojih/2)*$zusun,1,0,$no)
text=$no;nlines = 0;File.open("連番.txt","w"){|file|
text.each{|line|;file.puts line
nlines += 1;};}
end
def naname(x1,y1,x2,y2)
printf("%e %e %e %e\n", x1, y1, x2, y2)
end
main()


Indexへ
(21070)←【21073】→(21104)
------------------------
【タイトル】再修正
【記事番号】 21073 (21070)
【 日時 】04/08/29 23:12
【 発言者 】コジマ

文字基点を再修正(半角文字は文字間隔も全角文字の半分。計算がややこしい!)

○スクリプトファイル(ファイル名 連番1.rb)

BEGIN{
$no=ARGV[1]
while ARGV.length > 1
   ARGV.pop
end
$by=Array.new;$hcw=Array.new
$hch=Array.new;$hcd=Array.new
}
def main
while ARGF.gets
xy =split
if xy[0] =~ /^hs/
n=1;while (nend
if xy[0] =~ /^lg/
$lg=xy[0].delete("lg");$zusun=$by[$lg.to_i]
end
if xy[0] =~ /^hcw/
m=1;while (mend
end
if xy[0] =~ /^hch/
l=1;while (lend
if xy[0] =~ /^hcd/
s=1;while (send
if xy[0] =~ /^cn/ && xy[0] =~ /[0-9]$/
$cn=xy[0].delete("cn")
$mojiw=$hcw[$cn.to_i-1]
$mojih=$hch[$cn.to_i-1]
$mojid=$hcd[$cn.to_i-1]
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
$xy=Math.sqrt((x2-x1)**2+(y2-y1)**2)
dx=(x2-x1)/$xy
dy=(y2-y1)/$xy
tango=$no.split('')
mojin=tango.size
if tango[0].size==1
mojil=mojin*$mojiw/2+$mojid/2*(mojin-1)
else
mojil=mojin*$mojiw+$mojid*(mojin-1)
end
if mojin==1;r=($mojih+2)/2*$zusun
elsif mojin==2;r=(mojil+2)/1.75*$zusun
elsif mojin>=3;r=(mojil+2)/2*$zusun

end
if r+2*$zusun < $xy
naname(x1,y1,x2-r*dx,y2-r*dy)
naname(x1,y1,x1+2*$zusun*dx+0.52*$zusun*dy,
y1+2*$zusun*dy-0.52*$zusun*dx)
naname(x1,y1,x1+2*$zusun*dx-0.52*$zusun*dy,
y1+2*$zusun*dy+0.52*$zusun*dx)
end
printf("ci %e %e %e \n",x2,y2,r)
printf("ch %e %e %e %e\"%s\n",x2-mojil*$zusun/2,y2-($mojih/2)*$zusun,1,0,$no)
text=$no;nlines = 0;File.open("連番.txt","w"){|file|
text.each{|line|;file.puts line
nlines += 1;};}
end
def naname(x1,y1,x2,y2)
printf("%e %e %e %e\n", x1, y1, x2, y2)
end
main()


○スクリプトファイル(ファイル名 連番2.rb)

BEGIN{
File.foreach("連番.txt","r") do |line|
    $foo=line.split(/\n/)
$no=$foo[0].succ
end
$by=Array.new;$hcw=Array.new
$hch=Array.new;$hcd=Array.new
}
def main
while ARGF.gets
xy =split
if xy[0] =~ /^hs/
n=1;while (nend
if xy[0] =~ /^lg/;$lg=xy[0].delete("lg")
$zusun=$by[$lg.to_i]
end
if xy[0] =~ /^hcw/
m=1;while (mend
if xy[0] =~ /^hch/
l=1;while (lend
if xy[0] =~ /^hcd/
s=1;while (send
if xy[0] =~ /^cn/ && xy[0] =~ /[0-9]$/
$cn=xy[0].delete("cn")
$mojiw=$hcw[$cn.to_i-1]
$mojih=$hch[$cn.to_i-1]
$mojid=$hcd[$cn.to_i-1]
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
$xy=Math.sqrt((x2-x1)**2+(y2-y1)**2)
dx=(x2-x1)/$xy;dy=(y2-y1)/$xy
tango=$no.split('')
mojin=tango.size
if tango[0].size==1
mojil=mojin*$mojiw/2+$mojid/2*(mojin-1)
else
mojil=mojin*$mojiw+$mojid*(mojin-1)
end
if mojin==1;r=($mojih+2)/2*$zusun
elsif mojin==2;r=(mojil+2)/1.75*$zusun
elsif mojin>=3;r=(mojil+2)/2*$zusun

end
if r+2*$zusun < $xy
naname(x1,y1,x2-r*dx,y2-r*dy)
naname(x1,y1,x1+2*$zusun*dx+0.52*$zusun*dy,
y1+2*$zusun*dy-0.52*$zusun*dx)
naname(x1,y1,x1+2*$zusun*dx-0.52*$zusun*dy,
y1+2*$zusun*dy+0.52*$zusun*dx)
end
printf("ci %e %e %e \n",x2,y2,r)
printf("ch %e %e %e %e\"%s\n",x2-mojil*$zusun/2,y2-($mojih/2)*$zusun,1,0,$no)
text=$no;nlines = 0;File.open("連番.txt","w"){|file|
text.each{|line|;file.puts line
nlines += 1;};}
end
def naname(x1,y1,x2,y2)
printf("%e %e %e %e\n", x1, y1, x2, y2)
end
main()


Indexへ
(21073)←【21104】→(21186)
------------------------
【タイトル】Re: 再修正
【記事番号】 21104 (21073)
【 日時 】04/08/30 15:22
【 発言者 】非社会人 hisyakaizin@yahoo.co.jp

コジマさん、こんにちは。

>文字基点を再修正(半角文字は文字間隔も全角文字の半分。計算がややこしい!)

おー、○と文字の関係が修正されて使えるようになってますねー。
三桁でもちゃんとセンターに配置されます。
修正に感謝です。

-- CMN v0.46β --


Indexへ
(21104)←【21186】→(21641)
------------------------
【タイトル】楕円文字追加
【記事番号】 21186 (21073)
【 日時 】04/09/02 00:15
【 発言者 】コジマ

半角文字3桁以上、全角文字2桁以上は、楕円文字としました。

○スクリプトファイル(ファイル名 連番1.rb)

BEGIN{
$no=ARGV[1]
while ARGV.length > 1
   ARGV.pop
end
$by=Array.new;$hcw=Array.new
$hch=Array.new;$hcd=Array.new
}
def main
while ARGF.gets
xy =split
if xy[0] =~ /^hs/
n=1;while (nend
if xy[0] =~ /^lg/
$lg=xy[0].delete("lg");$zusun=$by[$lg.to_i]
end
if xy[0] =~ /^hcw/
m=1;while (mend
end
if xy[0] =~ /^hch/
l=1;while (lend
if xy[0] =~ /^hcd/
s=1;while (send
if xy[0] =~ /^cn/ && xy[0] =~ /[0-9]$/
$cn=xy[0].delete("cn")
$mojiw=$hcw[$cn.to_i-1]
$mojih=$hch[$cn.to_i-1]
$mojid=$hcd[$cn.to_i-1]
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
$xy=Math.sqrt((x2-x1)**2+(y2-y1)**2)
dx=(x2-x1)/$xy
dy=(y2-y1)/$xy
bit=$no.size
tango=$no.split('')
mojin=tango.size
if tango[0].size==1
mojil=mojin*$mojiw/2+$mojid/2*(mojin-1)
else
mojil=mojin*$mojiw+$mojid*(mojin-1)
end
if bit==1;r=($mojih+2)/2*$zusun;hen=1
elsif bit==2;r=(mojil+2)/1.75*$zusun;hen=1
elsif bit==3;r=(mojil+2)/1.85*$zusun;hen=0.6
elsif bit>3;r=(mojil+2)/2*$zusun;hen=0.5
end
if r+2*$zusun < $xy
naname(x1,y1,
x2-Math.sqrt((r**2*(hen*r)**2)/((r**2)*(dy**2)+((hen*r)**2)*(dx**2)))*dx,
y2-Math.sqrt((r**2*(hen*r)**2)/((r**2)*(dy**2)+((hen*r)**2)*(dx**2)))*dy)
naname(x1,y1,x1+2*$zusun*dx+0.52*$zusun*dy,
y1+2*$zusun*dy-0.52*$zusun*dx)
naname(x1,y1,x1+2*$zusun*dx-0.52*$zusun*dy,
y1+2*$zusun*dy+0.52*$zusun*dx)
end
printf("ci %e %e %e %e %e %e %e\n",x2,y2,r,0,360,hen,1)
printf("ch %e %e %e %e\"%s\n",x2-mojil*$zusun/2,y2-($mojih/2)*$zusun,1,0,$no)
text=$no;nlines = 0;File.open("連番.txt","w"){|file|
text.each{|line|;file.puts line
nlines += 1;};}
end
def naname(x1,y1,x2,y2)
printf("%e %e %e %e\n", x1, y1, x2, y2)
end
main()


○スクリプトファイル(ファイル名 連番2.rb)

BEGIN{
File.foreach("連番.txt","r") do |line|
    $foo=line.split(/\n/)
$no=$foo[0].succ
end
$by=Array.new;$hcw=Array.new
$hch=Array.new;$hcd=Array.new
}
def main
while ARGF.gets
xy =split
if xy[0] =~ /^hs/
n=1;while (nend
if xy[0] =~ /^lg/;$lg=xy[0].delete("lg")
$zusun=$by[$lg.to_i]
end
if xy[0] =~ /^hcw/
m=1;while (mend
if xy[0] =~ /^hch/
l=1;while (lend
if xy[0] =~ /^hcd/
s=1;while (send
if xy[0] =~ /^cn/ && xy[0] =~ /[0-9]$/
$cn=xy[0].delete("cn")
$mojiw=$hcw[$cn.to_i-1]
$mojih=$hch[$cn.to_i-1]
$mojid=$hcd[$cn.to_i-1]
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
$xy=Math.sqrt((x2-x1)**2+(y2-y1)**2)
dx=(x2-x1)/$xy;dy=(y2-y1)/$xy
bit=$no.size
tango=$no.split('')
mojin=tango.size
if tango[0].size==1
mojil=mojin*$mojiw/2+$mojid/2*(mojin-1)
else
mojil=mojin*$mojiw+$mojid*(mojin-1)
end
if bit==1;r=($mojih+2)/2*$zusun;hen=1
elsif bit==2;r=(mojil+2)/1.75*$zusun;hen=1
elsif bit==3;r=(mojil+2)/1.85*$zusun;hen=0.6
elsif bit>3;r=(mojil+2)/2*$zusun;hen=0.5
end
if r+2*$zusun < $xy
naname(x1,y1,
x2-Math.sqrt((r**2*(hen*r)**2)/((r**2)*(dy**2)+((hen*r)**2)*(dx**2)))*dx,
y2-Math.sqrt((r**2*(hen*r)**2)/((r**2)*(dy**2)+((hen*r)**2)*(dx**2)))*dy)
naname(x1,y1,x1+2*$zusun*dx+0.52*$zusun*dy,
y1+2*$zusun*dy-0.52*$zusun*dx)
naname(x1,y1,x1+2*$zusun*dx-0.52*$zusun*dy,
y1+2*$zusun*dy+0.52*$zusun*dx)
end
printf("ci %e %e %e %e %e %e %e\n",x2,y2,r,0,360,hen,1)
printf("ch %e %e %e %e\"%s\n",x2-mojil*$zusun/2,y2-($mojih/2)*$zusun,1,0,$no)
text=$no;nlines = 0;File.open("連番.txt","w"){|file|
text.each{|line|;file.puts line
nlines += 1;};}
end
def naname(x1,y1,x2,y2)
printf("%e %e %e %e\n", x1, y1, x2, y2)
end
main()


Indexへ
(21186)←【21641】→(21307)
------------------------
【タイトル】任意文字に対応
【記事番号】 21641 (21186)
【 日時 】04/09/12 13:19
【 発言者 】コジマ

任意文字に対応するのを忘れていました。

○スクリプトファイル(ファイル名 連番1.rb)

BEGIN{
$no=ARGV[1]
while ARGV.length > 1
   ARGV.pop
end
$by=Array.new;$hcw=Array.new
$hch=Array.new;$hcd=Array.new
}
def main
while ARGF.gets
xy =split
if xy[0] =~ /^hs/
n=1;while (nend
if xy[0] =~ /^lg/
$lg=xy[0].delete("lg");$zusun=$by[$lg.to_i]
end
if xy[0] =~ /^hcw/
m=1;while (mend
end
if xy[0] =~ /^hch/
l=1;while (lend
if xy[0] =~ /^hcd/
s=1;while (send
if xy[0] =~ /^cn/ && xy[0] =~ /[0-9]$/
$cn=xy[0].delete("cn")
if $cn=="0"
$mojiw=xy[1].to_f
$mojih=xy[2].to_f
$mojid=xy[3].to_f
else
$mojiw=$hcw[$cn.to_i-1]
$mojih=$hch[$cn.to_i-1]
$mojid=$hcd[$cn.to_i-1]
end
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
$xy=Math.sqrt((x2-x1)**2+(y2-y1)**2)
dx=(x2-x1)/$xy
dy=(y2-y1)/$xy
bit=$no.size
tango=$no.split('')
mojin=tango.size
if tango[0].size==1
mojil=mojin*$mojiw/2+$mojid/2*(mojin-1)
else
mojil=mojin*$mojiw+$mojid*(mojin-1)
end
if bit==1;r=($mojih+2)/2*$zusun;hen=1
elsif bit==2;r=(mojil+2)/1.75*$zusun;hen=1
elsif bit==3;r=(mojil+2)/1.85*$zusun;hen=0.6
elsif bit>3;r=(mojil+2)/2*$zusun;hen=0.5
end
if r+2*$zusun < $xy
naname(x1,y1,
x2-Math.sqrt((r**2*(hen*r)**2)/((r**2)*(dy**2)+((hen*r)**2)*(dx**2)))*dx,
y2-Math.sqrt((r**2*(hen*r)**2)/((r**2)*(dy**2)+((hen*r)**2)*(dx**2)))*dy)
naname(x1,y1,x1+2*$zusun*dx+0.52*$zusun*dy,
y1+2*$zusun*dy-0.52*$zusun*dx)
naname(x1,y1,x1+2*$zusun*dx-0.52*$zusun*dy,
y1+2*$zusun*dy+0.52*$zusun*dx)
end
printf("ci %e %e %e %e %e %e %e\n",x2,y2,r,0,360,hen,1)
printf("ch %e %e %e %e\"%s\n",x2-mojil*$zusun/2,y2-($mojih/2)*$zusun,1,0,$no)
text=$no;nlines = 0;File.open("連番.txt","w"){|file|
text.each{|line|;file.puts line
nlines += 1;};}
end
def naname(x1,y1,x2,y2)
printf("%e %e %e %e\n", x1, y1, x2, y2)
end
main()


○スクリプトファイル(ファイル名 連番2.rb)

BEGIN{
File.foreach("連番.txt","r") do |line|
    $foo=line.split(/\n/)
$no=$foo[0].succ
end
$by=Array.new;$hcw=Array.new
$hch=Array.new;$hcd=Array.new
}
def main
while ARGF.gets
xy =split
if xy[0] =~ /^hs/
n=1;while (nend
if xy[0] =~ /^lg/;$lg=xy[0].delete("lg")
$zusun=$by[$lg.to_i]
end
if xy[0] =~ /^hcw/
m=1;while (mend
if xy[0] =~ /^hch/
l=1;while (lend
if xy[0] =~ /^hcd/
s=1;while (send
if xy[0] =~ /^cn/ && xy[0] =~ /[0-9]$/
$cn=xy[0].delete("cn")
if $cn=="0"
$mojiw=xy[1].to_f
$mojih=xy[2].to_f
$mojid=xy[3].to_f
else
$mojiw=$hcw[$cn.to_i-1]
$mojih=$hch[$cn.to_i-1]
$mojid=$hcd[$cn.to_i-1]
end
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
$xy=Math.sqrt((x2-x1)**2+(y2-y1)**2)
dx=(x2-x1)/$xy;dy=(y2-y1)/$xy
bit=$no.size
tango=$no.split('')
mojin=tango.size
if tango[0].size==1
mojil=mojin*$mojiw/2+$mojid/2*(mojin-1)
else
mojil=mojin*$mojiw+$mojid*(mojin-1)
end
if bit==1;r=($mojih+2)/2*$zusun;hen=1
elsif bit==2;r=(mojil+2)/1.75*$zusun;hen=1
elsif bit==3;r=(mojil+2)/1.85*$zusun;hen=0.6
elsif bit>3;r=(mojil+2)/2*$zusun;hen=0.5
end
if r+2*$zusun < $xy
naname(x1,y1,
x2-Math.sqrt((r**2*(hen*r)**2)/((r**2)*(dy**2)+((hen*r)**2)*(dx**2)))*dx,
y2-Math.sqrt((r**2*(hen*r)**2)/((r**2)*(dy**2)+((hen*r)**2)*(dx**2)))*dy)
naname(x1,y1,x1+2*$zusun*dx+0.52*$zusun*dy,
y1+2*$zusun*dy-0.52*$zusun*dx)
naname(x1,y1,x1+2*$zusun*dx-0.52*$zusun*dy,
y1+2*$zusun*dy+0.52*$zusun*dx)
end
printf("ci %e %e %e %e %e %e %e\n",x2,y2,r,0,360,hen,1)
printf("ch %e %e %e %e\"%s\n",x2-mojil*$zusun/2,y2-($mojih/2)*$zusun,1,0,$no)
text=$no;nlines = 0;File.open("連番.txt","w"){|file|
text.each{|line|;file.puts line
nlines += 1;};}
end
def naname(x1,y1,x2,y2)
printf("%e %e %e %e\n", x1, y1, x2, y2)
end
main()


Indexへ
(21641)←【21307】→(21313)
------------------------
【タイトル】Re(1):オリジナル外変
【記事番号】 21307 (21025)
【 日時 】04/09/04 08:19
【 発言者 】maru

貴重な外変のUPありがとうございます。
といいつつも、JWW4.01b WindowsXPの環境で
連番1.bat、連番2.batをこの掲示板の必要項目をコピペで
秀丸に書き出し、上記batファイルとして保存したのですが、
共JWWの外変の選択窓にファイル名が現れてくれません。
他の外変のファイルは問題ないのですが、何かコツがあるのでしょうか?
どなたかアドバイスいただけたら幸いです。


Indexへ
(21307)←【21313】→(21597)
------------------------
【タイトル】Re(2):オリジナル外変
【記事番号】 21313 (21307)
【 日時 】04/09/04 10:56
【 発言者 】siegel

▼maruさん:
>貴重な外変のUPありがとうございます。
>といいつつも、JWW4.01b WindowsXPの環境で
>連番1.bat、連番2.batをこの掲示板の必要項目をコピペで
>秀丸に書き出し、上記batファイルとして保存したのですが、
>共JWWの外変の選択窓にファイル名が現れてくれません。
>他の外変のファイルは問題ないのですが、何かコツがあるのでしょうか?
>どなたかアドバイスいただけたら幸いです。

作者のコジマさんが、注意書きをしていますが、
「コピペ後、全角スペースを半角スペースに一括置換してください」

 いかがでしょうか?

「秀丸」なら、設定で、「全角空白/半角空白」が表示できますね。
はずしていましたら、すみません。


Indexへ
(21313)←【21597】→(21611)
------------------------
【タイトル】線記号変形のファイルにできる数
【記事番号】 21597 (21017)
【 日時 】04/09/10 13:43
【 発言者 】とも

>
>線記号変形には、この機能はありません。
>使用する数値は全て作っておかなければなりません。
>
>ひとつのファイルにできる数値は、30個なので、
>必要ならば、複数のファイルを作っておく必要があります。
>1〜30 31〜60 61〜90 ・・・・
>

私は1〜150くらいまで連番で打てるように、一つのファイルで作成しています。
あんまりたくさんにすると、途中から番号をうつ時、探すのがめんどうなので、
150でくぎっていますが、もっとはいりそうですよ。
いつも連番を打たないといけない(写真の番号と撮影の位置)ので、
450番くらいまで作っています。

線記号変形ファイルをつくるのに、
エクセルで作成してtxt保存しましたので、そんなに時間はかかりませんでした。


Indexへ
(21597)←【21611】→(20785)
------------------------
【タイトル】Re(1):線記号変形のファイルにできる数
【記事番号】 21611 (21597)
【 日時 】04/09/11 09:37
【 発言者 】コジマ

>私は1〜150くらいまで連番で打てるように、一つのファイルで作成しています。
>あんまりたくさんにすると、途中から番号をうつ時、探すのがめんどうなので、
>150でくぎっていますが、もっとはいりそうですよ。

初期の頃は、1ファイルに登録できるデータ数は 16個 と制限があったように記憶しています。

バージョンアップによって、実際に登録できるデータ数は増えたようで、30個までは、確認しています。

現在では、制限は無いに等しいようですね。

でも、150個とはすごい。


Indexへ
(21611)←【20785】→(20787)
------------------------
【タイトル】Re(1):解決です。
【記事番号】 20785 (20746)
【 日時 】04/08/20 18:51
【 発言者 】よくちん

引き出し線が必要ないので、siegel さんが紹介してくれた
小道具 ver1.1 の中の、○連番 が一番良かったです。
ありがとうございます。


Indexへ
(20785)←【20787】//(20751)
------------------------
【タイトル】解決です。
【記事番号】 20787 (20746)
【 日時 】04/08/20 18:55
【 発言者 】よくちん

引き出し線が必要無い私には
siegelさんの 紹介してくださった 小道具 ver1.1 の中の、○連番 
が 一番良かったです。 特に後戻りが出来るとこと。

アドバイスいただいた 皆様ありがとうございます。