« 2018年10月 | トップページ | 2018年12月 »

2018年11月18日 (日)

;(セミコロン)と var

JScript も Javascript と同様に、
行末の ;(セミコロン)と 変数宣言時の var を記述するのが一般的ですが
省略しても、スプリクトの実行は可能なので、少し調べてみました。

JSprict コードの記述 より 抜粋

通常、新しい行に移ると、新しいステートメントの開始になります。
ステートメントの終わりを明示的に記述することをお勧めします。
ステートメントの終わりを明示的に記述するには、
ステートメントの最後にセミコロン (;) を記述します。

JSprictの変数  より 抜粋
JScript では、宣言ステートメントからvar キーワードを省略することが
許されていますが、このような構文には安全性の面で問題があります。
宣言で var キーワードを省略すると、変数の被参照可能範囲は
JScript のインタープリタによってグローバル スコープに設定されます。

続きを読む ";(セミコロン)と var"

| | コメント (2) | トラックバック (0)

2018年11月17日 (土)

連想配列

縮尺 のスプリクト、連想配列を使ってみました。
レイヤグループ名 a~f を数字の添え字に変換できます。
12/5 sliceメソッドを使って、for 文を省略。

else if(/hs/.test(line)){
 hs=line.split(/\s+/).slice(1)
//連想配列
 as_arr={'a':10,'b':11,'c':12,'d':13,'e':14,'f':15}
 }
else if(/lg/.test(line)){
 lg=line.substr(2) //レイヤグループ名(0~9、a~f)
 if(lg.match(/\d/)){
//縮尺
 s=hs[lg]}
 else{ s=hs[as_arr[lg]]
 } }

| | コメント (0) | トラックバック (0)

2018年11月16日 (金)

コマンドライン引数

前回の線属性変更(選択)の外変を、
コマンドライン引数を使用するスプリクトにしました。

コマンドライン引数は、jsprict %0 の後に、%1 を追記し、
オブジェクトを、arg=WScript.Arguments と宣言することで、

線色/線色の分岐パラメータ(1 or  2) が、JScriptで利用できます。
値を呼び出す場合の添え字は、[ ]ではなく ( ) で括ります。
複数のコマンドライン引数がある場合は、
CSprict %0 %1・・・・・%nと、必要な数を追記します。

続きを読む "コマンドライン引数"

| | コメント (0) | トラックバック (0)

2018年11月14日 (水)

ユーザー定義関数

ユーザー定義関数のスプリクトのサンプルです。
関数の記述は、
function 関数名(引数){ 数式 }です。

//ユーザー定義関数
//引数
g=[100,60,5,5]
//定義関数で計算
dxy=add(g)
//計算結果を画面に出力
WScript.Echo ("dxy=[",dxy,"]")
//関数定義
function add(arry){
//x=100+5 y=60+5の計算
 x=arry[0]+arry[2]
 y=arry[1]+arry[3]
//配列にして戻す
 return  [x,y]
 }

Message

| | コメント (0) | トラックバック (0)

2018年11月11日 (日)

線属性変更(選択)

作図済の線を指定して、線色/線種を個別に変更する外部変形です。

#hm で分岐したコマンドは、左から1~9が割り当てられます。
線色⇒1、線種⇒2 が、echoコマンドで、"jwc_temp.txt"の行頭に
接頭文字"sel"を付加して追記されます。

11/17 コメント行削除

続きを読む "線属性変更(選択)"

| | コメント (0) | トラックバック (0)

2018年11月10日 (土)

線属性変更

作図済の線を指定して、指定線の線属性に変更する外部変形です。

指定線の線属性は、"jwc_temp.txt"に下記の様に書出されます。

※は、線色、線種の番号。
lc※
lt※
hhp1ln
指定線データ

ということで、指定線の線属性は、
"hhp1ln"を読込む直前の線属性を取得すれば、良いことになります。
次に、"jwc_temp.txt"を再度、読込み、
線色/線種データを書換えれば、線属性変更ができます。
同じ線属性の選択図形が含まれていても、問題ありません。

続きを読む "線属性変更"

| | コメント (0) | トラックバック (0)

2018年11月 1日 (木)

JScriptで外変

JScriptをバッチファイル内に記述し、中間ファイル"jwc_temp.txt"を利用した
外部変形の参考例です。
※動作はしません。
これから、外部変形の作成を始めたい人は、コメントを読んで参考にしてください。
オブジェクト名や変数名は、任意名で書換えできます。
※type jwc_temp.txt、pauseは、検証の時だけ記述します。

@if(0==1) //JScriptで外変
@echo off
//Jww バッチファイル用REM文
REM #jww
REM #cd
 
REM #e
//Jwwが書出した"jwc_temp.txt"を確認
type jwc_temp.txt 
pause
//CScriptコマンドを実行
cscript //nologo //e:jscript %0
//"temp.txt"を "jwc_temp.txt"に書換え 
copy temp.txt jwc_temp.txt
//Jwwが読込む"jwc_temp.txt"を確認 
type jwc_temp.txt
pause
goto:eof
@end
//JScriptの開始
//ファイル操作に使用するObjectの指定
//fs ⇒ オブジェクト名
fs=new ActiveXObject("Scripting.FileSystemObject")
//指定したテキストファイルを作成
//w ⇒ オブジェクト名
w=fs.CreateTextFile("temp.txt")
//テキストファイルをオープン
r=fs.OpenTextFile("jwc_temp.txt")
//r ⇒ オブジェクト名
//テキストファイルを行末まで読込み
//r ⇒ オブジェクト名
while (!r.AtEndOfLine) {
//テキストファイルを一行ずつ読込み、文字列を返す
//str ⇒ 文字列 (変数名)
str=r.ReadLine()
//指定した文字列と改行をテキストファイルに書込み
//str ⇒ 文字列 (変数名)
w.WriteLine(str)
} //while文
//ファイルクローズ
w.Close();r.Close()

続きを読む "JScriptで外変"

| | コメント (0) | トラックバック (0)

« 2018年10月 | トップページ | 2018年12月 »