« 曲線の作図 | トップページ | スタンバイと終点への移動 »

2012年3月26日 (月)

直線、ジャンプ、線幅変更ルーチン

FlatTable に直線とジャンプの作図ルーチンを追加しました。さらに、経路の線幅の変更ルーチンも追加しました。

FlatTable でジャンプは単に経路を部分的に非表示にするだけの機能です。図のように描くことでジャンプを表現することが出来ます。
配置図

ジャンプ作図ルーチンは次のようになっています。

//ジャンプの作図
function jumpLine(){
    ・・・
    if (currentBall == baseBall){
        各ゴースト(および矢印球)に付随する区間を
        非表示にする
    } else {
        現行の球に付随する区間を非表示にする
    }
    必要があれば経路の描画
    ・・・
}

直線作図ルーチンもほぼ同じです。共通部分をまとめてコードを短縮すべきかも知れませんが、それは後で検討することにします。

線幅は stroke-width1(narrow) と 13(wide) の2種類有り、メニューの[ Line narrow/wide ]をクリックすることで線幅を切り替えます。線幅の情報は基礎球の属性 fWide に保持し、[ Line narrow/wide ]のクリックに対するイベント・ハンドラー内で、

    if (baseBall.fWide = !baseBall.fWide){
        ・・・
    }
が実行されて、線幅の情報が切り替わります。ここで面白いと思ったのは、このルーチンが実行されるまで基礎球 baseBall には fWide は定義されていないのに、「当然のごとく」処理が進むことです。定義されていないことが定義を導いています。いわゆるLLと呼ばれる言語はどれもそうだと思いますが、なんとおおらかなことでしょう。

« 曲線の作図 | トップページ | スタンバイと終点への移動 »

ビリヤードの配置図ソフト」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/584699/54317483

この記事へのトラックバック一覧です: 直線、ジャンプ、線幅変更ルーチン:

« 曲線の作図 | トップページ | スタンバイと終点への移動 »