ブロックを積みながら(148) Scilab/Xcos、Sinksパレットその2

Joseph Halfmoon

前回、出力表示に使うブロックをいくつか練習してみました。どれも使い途はありそうだけれども、表示が渋いものばかり。今回は同じSinksパレット内の出力表示用のブロックだけれども、も少し「色がついて賑やかな」ブロックを使ってみたいと思います。それにしてもScilabのHELPファイル、素っ気なさすぎ。

※「ブロックを積みながら」投稿順 index はこちら

※動作確認にはWindows 11のパソコン(64bit)上にインストールしたScilabの以下バージョンを使用しています。

Scilab 2024.0.0

まずは3次元表示だっ

最初に練習してみるのは、行列(マトリックス)の値を3次元表示してくれる

CMAT3D

というブロックです。cmat3D_setting0

上記のように、その入力には3x3の行列[1 1 3; 4 4 4; 5 5 5]を与えてます。行列の形に書き表せば以下の如し。

列1 列2 列3
行1 1 1 3
行2 4 4 4
行3 5 5 5

この場合、FORTRAN式?に行がX方向、列がY方向、そして値がZです。それをプロットしたところが以下に。cmat3D_plot

デフォルトの設定(Bounds Vector X/Y=-1)の場合、行がX=0,1,2…、列がY=0,1,2…とXY平面上の位置を決め、行列につまっている値はその位置のZ値。カラーマップに従って描かれるのは四隅を上記値で決められた平面です。

なお、3次元表示なので「回転」して視点を変更できるのですが、マウスの右ドラッグで回転です。例によってXCosの操作はちょっとクセ強。

CMATVIEW

上記のCMAT3Dが分かってしまうと、その兄弟ブロック?CMATVIEWは分かり易いです。ブロックの設定が以下に。matView_setting0png

今度は4x4の行列をデータとして与えてます。角っこが16点あるので、その間の平面は9個になる筈。上記のCMAT3D同様にカラーマップで各平面を色分けしてくれるのですが、CMAT3Dを上からみた平面?みたいなプロットになりました。こんな感じ。matView_plot

CANIMXY

前回、リサージュ図形のようなプロットを描けるCSCOPXYを練習しましたが、今回のCANIMXYもXYプロッタ?的な機能です。ただし、個々の「点」を明示的にプロット可能なもの。CANIMXY_setting0

実行してみたところ、CLOCK_cのイベント毎にX、Yの入力について1点、プロットし、「バッファの大きさ」=点数だけをプロットに残してくれるみたいです。こんな感じ。CANIMXY_plot

上記のような「コンステレーション」プロット風のプロットに使えるし、他にもいろいろ使えるんでないかと。

このCANIMXYにも兄弟ブロックで3Dプロットできるものがあるのだけれど、今回はここまで。

ブロックを積みながら(147) Scilab/Xcos、Sinksパレットその1 へ戻る

ブロックを積みながら(149) Scilab/Xcos、連続時間パレットその1 へ進む