Location : Home > Languages > Perl > Package
Title : Math::GMatrix
Toolbox Logo

名称

 Math::GMatrix - Math::Matrix の2次元グラフィックベクトル操作を行う拡張


概要

use Math::GMatrix;

説明

 以下のメソッドが利用可能である。

new

 コンストラクタの引数は同じ長さの配列への参照のリストである。配列はコピーされる。エラーの場合は undef を返す。

$a = new Math::Matrix ([rand,rand,rand],
                       [rand,rand,rand],
                       [rand,rand,rand]);

 引数を I だけにすれば単位行列を取得することができる。new をメソッドとして呼び出せば全要素を0にした行列を返す。

xform

 次のように呼び出すことでベクトルを変換させることができる。

@V1=(1.5,3.7);
@V2 = $M->xform(@V1);

@L1=( [1.5,3.7], [4.6,6.8], [5.1,-0.7] );
@L2 = $M->xform(@L1);

translate

 次のように呼び出すことでグラフィックを(x と y だけ)移動させることができる。

$M2 = $M->translate(2.5,10.2);

rotate

 次のように呼び出すことでグラフィックを回転させることができる。

$M2 = $M->rotate(-90);

scale

 次のように呼び出すことで(factor_x 及び factor_y を指定して)グラフィックを拡大・縮小できる。

$M2 = $M->rotate(2,2);

使用例

@ListOfVectors = [
	[0,1],
	[3,5],
	[2,7],
	[8,-1],
];
$paperwidth = 21;               # DIN A4 は 21x29.7 cm
$M = new Math::Matrix('I');     # 単位行列
$M = $M->translate(-1,-1)->rotate(90)->translate($paperwidth-1,1);
@Result = $M->xform(@ListOfVectors);

著者

 A. Cester, <albert.cester@web.de>

Toolbox Logo
Updated : 2006/08/15