java matrix是什么,讓我們一起了解一下?
Matrix 是一個基于javaEE技術集成的基礎應用系統,是一個可以看見和運行的系統,matrix定義了一個穩定而有效的設計開發框架,結合代碼生成器使用自動生成增刪改查代碼簡化了應用開發過程。它集成了系統日志,事務控制、安全校驗、權限管理等功能,為開發人員提供一個能夠快速開發業務系統的框架,開發人員只需要專注于業務邏輯而不需要關注非功能需求。
那么Matrix有哪些方法可以控制圖片變換?
1、setTranslate(float dx,float dy):控制Matrix進行位移。
2、setSkew(float kx,float ky):控制Matrix進行傾斜,kx、ky為X、Y方向上的比例。
3、setSkew(float kx,float ky,float px,float py):控制Matrix以px、py為軸心進行傾斜,kx、ky為X、Y方向上的傾斜比例。
4、setRotate(float degrees):控制Matrix進行depress角度的旋轉,軸心為(0,0)。
5、setRotate(float degrees,float px,float py):控制Matrix進行depress角度的旋轉,軸心為(px,py)。
6、setScale(float sx,float sy):設置Matrix進行縮放,sx、sy為X、Y方向上的縮放比例。
7、setScale(float sx,float sy,float px,float py):設置Matrix以(px,py)為軸心進行縮放,sx、sy為X、Y方向上的縮放比例。
matrix的入門操作代碼如下:
import?org.junit.Test; import?org.ujmp.core.DenseMatrix; import?org.ujmp.core.Matrix; /** ?*?Created?by?lionel?on?16/11/29. ?*/ public?class?MatrixTest?{ ????@Test ????public?void?test()?{ ????????//創建4*4的?零矩陣 ????????Matrix?dense?=?DenseMatrix.Factory.zeros(4,?4); ????????System.out.println(dense); ????????/* ????????0.0000?????0.0000?????0.0000?????0.0000 ????????0.0000?????0.0000?????0.0000?????0.0000 ????????0.0000?????0.0000?????0.0000?????0.0000 ????????0.0000?????0.0000?????0.0000?????0.0000 ????????*/ ????????//設置矩陣dense第三行第四列的元素為5.0 ????????dense.setAsDouble(5.0,?2,?3); ????????//其他設置 ????????dense.setAsDouble(1.0,?0,?0); ????????dense.setAsDouble(3.0,?1,?1); ????????dense.setAsDouble(4.0,?2,?2); ????????dense.setAsDouble(-2.0,?3,?3); ????????dense.setAsDouble(-2.0,?1,?3); ????????System.out.println(dense); ????????/* ????????1.0000?????0.0000?????0.0000?????0.0000 ????????0.0000?????3.0000?????0.0000????-2.0000 ????????0.0000?????0.0000?????4.0000?????5.0000 ????????0.0000?????0.0000?????0.0000????-2.0000 ????????*/ ????????//矩陣dense的轉置 ????????Matrix?transpose?=?dense.transpose(); ????????System.out.println(transpose); ????????/* ????????1.0000?????0.0000?????0.0000?????0.0000 ????????0.0000?????3.0000?????0.0000?????0.0000 ????????0.0000?????0.0000?????4.0000?????0.0000 ????????0.0000????-2.0000?????5.0000????-2.0000 ????????*/ ????????//矩陣dense與矩陣transpose相加 ????????System.out.println(dense.plus(transpose)); ????????/* ????????2.0000?????0.0000?????0.0000?????0.0000 ????????0.0000?????6.0000?????0.0000????-2.0000 ????????0.0000?????0.0000?????8.0000?????5.0000 ????????0.0000????-2.0000?????5.0000????-4.0000 ?????????*/ ????????//矩陣dense與矩陣transpose相減 ????????System.out.println(dense.minus(transpose)); ????????/* ????????0.0000?????0.0000?????0.0000?????0.0000 ????????0.0000?????0.0000?????0.0000????-2.0000 ????????0.0000?????0.0000?????0.0000?????5.0000 ????????0.0000?????2.0000????-5.0000?????0.0000 ????????*/ ????????//矩陣dense與矩陣transpose相乘 ????????Matrix?matrixProduct?=?dense.mtimes(transpose); ????????System.out.println(matrixProduct); ????????/* ????????1.0000?????0.0000?????0.0000?????0.0000 ????????0.0000????13.0000???-10.0000?????4.0000 ????????0.0000???-10.0000????41.0000???-10.0000 ????????0.0000?????4.0000???-10.0000?????4.0000 ????????*/ ????????//矩陣dense?所有元素*2 ????????Matrix?scaled?=?dense.times(2); ????????System.out.println(scaled); ????????/* ????????2.0000?????0.0000?????0.0000?????0.0000 ????????0.0000?????6.0000?????0.0000????-4.0000 ????????0.0000?????0.0000?????8.0000????10.0000 ????????0.0000?????0.0000?????0.0000????-4.0000 ?????????*/ ????????//矩陣?dense?的逆矩陣 ????????System.out.println(dense.inv()); ????????/* ????????1.0000?????0.0000?????0.0000?????0.0000 ????????0.0000?????0.3333?????0.0000????-0.3333 ????????0.0000?????0.0000?????0.2500?????0.6250 ???????-0.0000????-0.0000????-0.0000????-0.5000 ?????????*/ ????????//生成4*4隨機矩陣,元素值在0,1之間 ????????Matrix?rand?=?Matrix.Factory.rand(4,?4); ????????System.out.println(rand); ????????/* ????????0.5478?????0.5100?????0.7078?????0.0600 ????????0.8316?????0.4039?????0.2553?????0.0173 ????????0.4354?????0.7132?????0.7865?????0.7006 ????????0.0394?????0.4839?????0.4374?????0.6241 ?????????*/ ????????//生成4*4隨機矩陣,元素值在-1,1之間 ????????Matrix?randn?=?Matrix.Factory.randn(4,?4); ????????System.out.println(randn); ????????/* ????????0.8655?????0.6231????-0.4234?????0.0802 ????????0.7217????-0.7399????-0.5692?????0.6421 ????????-1.5557?????0.4745?????2.1110?????1.5489 ????????-0.8520????-0.7722?????0.9025????-0.4664 ????????*/ ????????//產生2*3?元素值都為1.0000的矩陣 ????????Matrix?ones?=?Matrix.Factory.ones(2,?3); ????????System.out.println(ones); ????????/* ????????1.0000?????1.0000?????1.0000 ????????1.0000?????1.0000?????1.0000 ?????????*/ ????} }
以上就是小編今天的分享了,希望可以幫助到大家。