Rot90.java
/*
* $Id: Rot90.java,v 1.14 2008/04/13 02:12:38 koga Exp $
*
* Copyright (C) 2004 Koga Laboratory. All rights reserved.
*/
package org.mklab.tool.matrix;
import org.mklab.nfc.matrix.DoubleMatrix;
import org.mklab.nfc.matrix.misc.RotatedMatrix;
/**
* 成分を反時計方向に90度回転させてできる行列を求めるクラスです。
*
* <p>Rotate matrix 90 degrees
*
* @author koga
* @version $Revision: 1.14 $
*/
public class Rot90 {
/**
* <code>A</code> の成分を反時計方向に <code>90</code> 度回転します。
*
* @param A 対象となる行列
* @return 成分を反時計方向に90度回転させてできる行列 (rotated matrix)
*/
public static DoubleMatrix rot90(DoubleMatrix A) {
int count = 1;
return rot90(A, count);
}
/**
* <code>A</code> の成分を反時計方向に <code>count*90</code> 度回転します。
*
* @param A 対象となる行列
* @param count 回転回数
* @return 成分を反時計方向に90度回転させてできる行列 (rotated matrix)
*/
public static DoubleMatrix rot90(DoubleMatrix A, int count) {
return RotatedMatrix.create(A, count);
}
/**
* メインメソッド
*
* @param args コマンドライン引数
*/
@SuppressWarnings("nls")
public static void main(String[] args) {
DoubleMatrix a = new DoubleMatrix(new double[][] { {1, 2}, {3, 4}});
DoubleMatrix b = Rot90.rot90(a);
a.print("a");
b.print("b");
}
}