91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 11KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-20
  • 語言: Java
  • 標簽: java??

資源簡介

三視圖與正軸測投影。 通過上一程序所做的矩陣類,做相應的矩陣變換,得到主視圖、側視圖、俯視圖、正軸測投影。 我不明白那三視圖乘以矩陣有什么意義,因為即使乘完了,我們還是要通過取x方向量或者z方向量作為屏幕上的坐標點畫出來,那么直接取相應的方向量的值就好了呀。

資源截圖

代碼片段和文件信息

package?shiyan5;
public?class?Matrix?{
private?double[][]?array;? //矩陣是一個二維數組
private?int?size_rsize_c; //矩陣的行數,列數
/**
?*?默認的構造方法
?*/
public??Matrix(){
this.array?=?null;
this.size_r?=?0;
this.size_c?=?0;
}
/**
?*?將二維數組構造為矩陣
?*?@param?arg?二維數組
?*/
public??Matrix(double?[][]arg){
this.array?=?arg;
this.size_r?=?arg.length;
this.size_c?=?arg[0].length;
}
/**
?*?構造一個已知行列數的矩陣
?*?@param?r?行數
?*?@param?c?列數
?*/
public??Matrix(int?rint?c){ //本題中是供內部返回結果矩陣使用的
this.array?=new?double[r][c];
this.size_r?=?r;
this.size_c?=?c;
}
/**
?*?矩陣加法
?*?@param?arg1
?*?@param?arg2
?*?@return
?*/
public?static?Matrix?MatrixAdd(Matrix?arg1Matrix?arg2){
if((arg1.size_r==arg2.size_r)&&(arg1.size_c==arg2.size_c)){//矩陣行列相等的時候才可以相加
int?ij;
Matrix?result?=?new?Matrix(arg1.size_rarg1.size_c);
for(i=0;i for(j=0;j result.array[i][j]?=?arg1.array[i][j]?+?arg2.array[i][j];
}
return?result; //返回矩陣加法的結果
}
else?return?null; //如果矩陣維數不相等,不能相加,則返回為空
}

/**
?*?矩陣乘法
?*?@param?arg1
?*?@param?arg2
?*?@return
?*/
public?static?Matrix?MatrixMul(Matrix?arg1Matrix?arg2){?
if(arg1.size_c==arg2.size_r){//只有當第一個矩陣的列數和第二個矩陣的行數相等時才可以進行矩陣乘法
int?ijk;
double?temp;
Matrix?result?=?new?Matrix(arg1.size_rarg2.size_c);
for(i=0;i for(j=0;j temp?=?0;
for(k=0;k temp+=arg1.array[i][k]*arg2.array[k][j];
}
result.array[i][j]?=?temp;
}
}
return?result;
}
else?return?null;//如果兩個矩陣不能相乘,返回空
}

//以下為本題中向量矩陣的特殊用法針對本題返回的向量是一行三列,所以要獲得x坐標和y坐標,只需取array[0][0]和array[0][1]
/**
?*?返回這個n行4列的矩陣所表示的點的坐標的x值
?*?@return?
?*/
public?int[]?getX(){
int[]?x=new?int[this.size_r];
for(int?i=0;i x[i]=(int)array[i][0];
}
return?x;
}
/**
?*?返回這個n行4列的矩陣所表示的點的坐標的y值
?*?@return?
?*/
public?int[]?getY(){
int[]?y=new?int[this.size_r];
for(int?i=0;i y[i]=(int)array[i][1];
}
return?y;
}
/**
?*?返回這個n行4列的矩陣所表示的點的坐標的z值
?*?@return?
?*/
public?int[]?getZ(){
int[]?z=new?int[this.size_r];
for(int?i=0;i z[i]=(int)array[i][2];
}
return?z;
}
public?double[][]?getArray()?{
return?array;
}
public?void?setArray(double[][]?array)?{
this.array?=?array;
}



}

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????1884??2011-12-23?00:51??E5-1\shiyan5\Matrix.class

?????文件???????2724??2011-12-23?00:51??E5-1\shiyan5\Matrix.java

?????文件???????4121??2011-12-23?03:04??E5-1\shiyan5\Shiyan5.class

?????文件???????2870??2011-12-23?03:04??E5-1\shiyan5\Shiyan5.java

?????文件???????6094??2011-12-23?03:06??E5-1\shiyan5.jar

?????目錄??????????0??2011-12-23?03:13??E5-1\shiyan5

?????目錄??????????0??2011-12-23?03:13??E5-1

-----------?---------??----------?-----??----

????????????????17693????????????????????7


評論

共有 條評論