設定していないにもかかわらず、太線が描画されます。これで、一旦、線のスタイル設定を行うと、設定は保持されままであることが確認できます。(既に作っています)を実行してみます。すると、太線にならず破線が描画されます。優先されることが分かります。==========このプログラムは、1つのスタイルを試したらプログラムが終了するので、他のスタイルを試すにはプログラムをもう一度起動する必要があります。繰り返しスタイルを試せる方が分かりやすいので、プログラムを改良します。繰り返し実行させるには、ループを使えば良いので、以下のようにプログラムを変更してみます。DLINE1.5グラフィックスコマンドを調べるにあたり、このようにループによる繰り返し処理を使った方が、分かりやすいことが多いので、ループコマンドに抵抗のある方は、このタイミングで、その使い方に慣れて下さい。ループを使って、無限ループにしています。なって、常にループが継続されるので、無限ループになり、上のプログラムではこれを利用しています。キーでプログラムを強制終了させます。押すと、選んだスタイルで線が描画されます。選んだ場合は、直線に選んだスタイルで線が描画されることを確かめて下さい。==========上のプログラムでは、メニューの入力待ちのところで、うっかりテンキー以外を押すと異常動作します。これは、入力命令?を使う限りしかたありません。グラフィックスコマンドの確認の目的では、これで十分ですが、実用プログラムでは誤動作の原因になったり、、操作上の問題になることもあります。正常終了させるようにプログラムを改造してみます。今回のテーマには直接必要のない改造ですが、グラフィックスを利用した実用プログラムの練習・準備のために、作ってみました。構造化プログラミングの定石といって良いコードだと思います。指定すると、描画コマンドで書かれる図形は指定された線のスタイルで描画される。これらのスタイル設定コマンドは、その場限りの設定になる。パラメータを設定しない。設定するとエラーになる。これらのコマンドは、次に設定するまで、その設定は保持され、他のプログラムにも影響を及ぼす。書かれる図形の線のスタイルに反映される。コマンドが優先される。応援クリックをお願いします。上端で試してみると同じく2ドットしか描画されないので、管理人様の推察されたとおり、中央のドットが基準みたいですね(^^)やはり、そうでしたか...このあたりも、忘れる前に、どこかの記事に入れておくことにします。お!内部仕様が判明するとコンパイラも作りやすくなります、というか仕様がきっちり分からないとコンパチにならないですよね(^^;はい、単なるグラフィックスコマンドの探索から、コンパイラ作るというより面白い動機付けができたので、とても楽しくなっています。はい、高精細カラーはオーバースペックなようでグラフィックとなるとやはり見た目のインパクトが違いますね。高速化さえできれば良いのですが、楽しみですね。title管理人様、>一番下のSketchNormalが1ドット分消えてるというのは、指定座標が線幅の中央のドットを指定するため、と理解して良いのでしょうか?なぜそうなるのかちょっと不思議でしたけど、>fx-9860GIIでは、2ドット幅のThickの場合、下のピクセルの位置が指定されるので、下端では2ドット幅が保証されますが、上端は1ドット削れることが起きます。上端で試してみると同じく2ドットしか描画されないので、管理人様の推察されたとおり、中央のドットが基準みたいですね(^^)>次回は、この点を含めた内部の描画仕様に踏みこむ予定です。コンパイラ開発にも影響ある内容になりそうです。お!内部仕様が判明するとコンパイラも作りやすくなります、というか仕様がきっちり分からないとコンパチにならないですよね(^^;>頂いて画像を拝見する限り、高精細LCDは良いですね。はい、高精細カラーはオーバースペックなようでグラフィックとなるとやはり見た目のインパクトが違いますね。ことで、百聞は一見にしかずというわけで、CG10での実行結果画面です。画像まて撮って頂き、恐縮です。下のSketchNormalが1ドット分消えてるというのは、指定座標が線幅の中央のドットを指定するため、と理解して良いのでしょうか?fx-9860GIIでは、2ドット幅のThickの場合、下のピクセルの位置が指定されるので、下端では2ドット幅が保証されますが、上端は1ドット削れることが起きます。速度的にはほとんど変わらず、右から描画(F-Line)するか、左から描画(Horizontal)するかの違いしかないみたいです。ありがとうございます。この点は、fx-9860GIIと同じ仕様ですね。次回は、この点を含めた内部の描画仕様に踏みこむ予定です。コンパイラ開発にも影響ある内容になりそうです。まとめきっていないので、予定ですが...頂いて画像を拝見する限り、高精細LCDは良いですね。管理人様、こんにちは!>グラフィックスを使うと、表示のレイアウトに互換性が無くなるということですね。はい、3倍ドットそのままじゃないCG10/20独自スタイル路線になっています(^^;ってことで、百聞は一見にしかずというわけで、CG10での実行結果画面です。DLINE1.2の最後にSketchThinを追加して、http://pm.matrix.jp/img/DLINE1.2a.png実行した結果です。http://pm.matrix.jp/img/DLINE1.2b.png一番下のラインは3ドット幅のSketchNormalのはずですが3ドット目がエリア外になっているのか描画されないので2ドット幅になっています。処理速度の違いは見られますか?速度的にはほとんど変わらず、右から描画(F-Line)するか、左から描画(Horizontal)するかの違いしかないみたいです。CG10との違いsentaro様いつもながら、貴重な互換性情報をありがとうございます。fx-CG10における線のスタイル設定は一番細いSketchThinが一種類増えて全部で5種類になっているのと、線の太さが必ずしも3倍比になっていないのでスタイル設定をすると完全な互換は無くなるようです。グラフィックスを使うと、表示のレイアウトに互換性が無くなるということですね。3x3ドットで表示されるのでfx-9860GIIと同じ太さです。5x5ドットで表示されるのでfx-9860GIIよりも若干細いです。6x3ドットで表示されるのでfx-9860GIIよりも横長で細いです。3x3ドットで表示されるのでfx-9860GIIと同じ太さです。1*1ドットで表示されます。この情報は、本文に追記させて頂きますね。余計な内部処理をしていることが分かっています(次回あたりの紹介予定)。:編集CG10との違い管理人様、更新おつかれさまです。fx-CG10における線のスタイル設定は一番細いSketchThinが一種類増えて全部で5種類になっているのと、線の太さが必ずしも3倍比になっていないのでスタイル設定をすると完全な互換は無くなるようです。SketchNormal3x3ドットで表示されるのでfx-9860GIIと同じ太さです。SketchThick5x5ドットで表示されるのでfx-9860GIIよりも若干細いです。SketchBroken6x3ドットで表示されるのでfx-9860GIIよりも横長で細いです。SketchDot3x3ドットで表示されるのでfx-9860GIIと同じ太さです。SketchThin1*1ドットで表示されます。2013プログラム電卓は、プログラムを作って、使ってナンボ!実際に触って気づいたこと、自作プログラム、電卓プログラミングについて書いています。Basicが面白いと感じる1ユーザーです。