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

資源簡介

采用java實現基于二次誤差度量的網格簡化算法;主要使用了java的集合框架中的treeSet

資源截圖

代碼片段和文件信息

package?MeshSimpliefication_QuadErr;

import?java.util.ArrayList;
import?java.util.TreeSet;

import?javax.vecmath.Matrix3d;
import?javax.vecmath.Point3d;
import?javax.vecmath.SingularMatrixException;

public?class?EdgeWithCost?implements?Comparable?{
int?v1ind?v2ind;//?邊的兩個頂點的索引
double?cost;//邊的折疊損耗
Point3d?v;//邊折疊后的新的頂點的坐標
private?static?double?co?=?1;

/**
?*?@param?v1ind?邊的兩個頂點的索引
?*?@param?v2ind?邊的兩個頂點的索引
?*/
public?EdgeWithCost(int?v1ind?int?v2ind)?{
super();
this.v1ind?=?v1ind;
this.v2ind?=?v2ind;
}

/**僅用于測試
?*?@param?v1ind?邊的兩個頂點的索引
?*?@param?v2ind?邊的兩個頂點的索引
?*?@param?cost?損耗
?*/
public?EdgeWithCost(int?v1ind?int?v2ind?double?cost)?{
super();
this.v1ind?=?v1ind;
this.v2ind?=?v2ind;
this.cost?=?cost;
}

/**更改其中的一個頂點的索引
?*?@param?vOldInd?舊的頂點索引
?*?@param?vNewInd?新的頂點索引
?*/
public?void?setVertex(int?vOldInd?int?vNewInd)?{
if?(v1ind?==?vOldInd)
v1ind?=?vNewInd;
if?(v2ind?==?vOldInd)
v2ind?=?vNewInd;
}

/**
?*?@param?vInd?該邊的一個頂點索引
?*?@return?該邊的另一個頂點索引
?*/
public?int?getOtherVertex(int?vInd)?{
if?(v1ind?==?vInd)
return?v2ind;
if?(v2ind?==?vInd)
return?v1ind;
return?-1;
}

/**
?*?@param?vInd?該邊的一個頂點索引
?*?@return?該頂點索引是否為較小的一個
?*/
public?boolean?isSmallVertexIndex(int?vInd)?{
if?(v1ind?==?vInd)
return?vInd? if?(v2ind?==?vInd)
return?vInd? return?false;

}

/**計算該邊的折疊損耗即新的頂點值
?*?@param?vList?所有頂點的列表
?*/
void?cal_v_cost(ArrayList?vList)?{
VertexComplicated?vc1?=?vList.get(v1ind);
VertexComplicated?vc2?=?vList.get(v2ind);
Matrix3d?A?=?new?Matrix3d(vc1.Q);
A.add(vc2.Q);

Point3d?b1?=?VecOp.mulMatrix3d_vec3d(vc1.Q?vc1.vertex);//?因為Q為對稱矩陣
Point3d?b2?=?VecOp.mulMatrix3d_vec3d(vc2.Q?vc2.vertex);
double?c?=?VecOp.dotProduct(vc1.vertex?b1)?+?VecOp.dotProduct(vc2.vertex?b2);

b1.add(b2);//?b1?現在等于b
try?{
A.invert();//?A現在等于A的逆
}?catch?(SingularMatrixException?e)?{
// A不可逆,采用(v1+v2)/2作為新頂點
v?=?new?Point3d(new?double[]?{?(vc1.vertex.x?+?vc2.vertex.x)?/?2
(vc1.vertex.y?+?vc2.vertex.y)?/?2?(vc1.vertex.z?+?vc2.vertex.z)?/?2?});
Point3d?t?=?VecOp.mulMatrix3d_vec3d(A?v);
cost?=?VecOp.dotProduct(v?t)?+?c?-?2?*?VecOp.dotProduct(b1?v)?+?co
*?(vc1.errorPairContraction?+?vc2.errorPairContraction);
System.err.println(“A?不可逆“);
return;
}
v?=?VecOp.mulMatrix3d_vec3d(A?b1);?//?即A的逆乘以b
cost?=?c?-?VecOp.dotProduct(b1?v)?+?co
*?(vc1.errorPairContraction?+?vc2.errorPairContraction);//?因為Q為對稱矩陣
//?System.out.print(“(“+v1+“?“+v2+“);“);
//?System.out.print(“cost=“+cost);
//?System.out.println(“???contracted?point=“+v);
}

/**
?*?@return?較小的頂點索引
?*/
public?int?getSmallVertex()?{
return?v1ind? }

/**
?*?@return?較大的頂點索引
?*/
public?int?getBigVertex()?{
return?v1ind?>?v2ind???v1ind?:?v2ind;
}

/*?將損耗作為第一鍵值,將另外

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

?????文件??????22139??2009-12-26?14:14??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\MeshSimplifier_可執行文件\bunny_icon.jpg

?????文件??????29718??2009-12-26?17:12??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\MeshSimplifier_可執行文件\MeshSimplifier_version1.jar

?????文件??????36434??2010-01-01?13:06??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\MeshSimplifier_可執行文件\MeshSimplifier_version2.jar

?????文件?????318956??2010-01-01?13:06??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\MeshSimplifier_可執行文件\MeshSimplify_lib\vecmath.jar

?????文件?????122812??2009-07-12?10:51??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\MeshSimplifier_可執行文件\models\dinosaur.2k.obj

?????文件?????????43??2009-12-26?21:57??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\MeshSimplifier_可執行文件\readme.txt

?????文件?????????55??2010-01-01?12:35??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\MeshSimplifier_可執行文件\run.bat

?????文件?????????63??2009-12-26?21:55??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\MeshSimplifier_可執行文件\run.vbs

?????文件?????255210??2010-01-01?13:10??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\MeshSimplifier_可執行文件\程序使用說明.docx

?????文件?????216218??2010-01-24?12:50??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\基于二次誤差度量的網格簡化.pdf

?????文件????????631??2009-12-26?17:03??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\.classpath

?????文件????????402??2009-12-12?22:48??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\.project

?????文件????????629??2009-12-12?22:48??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\.settings\org.eclipse.jdt.core.prefs

?????文件??????22139??2009-12-26?14:14??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\bunny_icon.jpg

?????文件?????318956??2009-12-26?17:12??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\MeshSimplify_lib\vecmath.jar

?????文件???????4665??2009-12-26?15:06??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr\EdgeWithCost.java

?????文件????????669??2009-12-28?10:09??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr\Exceptions.java

?????文件???????1434??2009-12-28?12:54??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr\FaceTriangle.java

?????文件???????2493??2009-12-28?11:53??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr\FileChooser_obj.java

?????文件???????6457??2009-12-28?12:46??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr\MeshSimplifier_UI_Entry.java

?????文件???????3134??2009-12-26?17:04??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr\objectFileParser.java

?????文件???????9731??2009-12-26?16:50??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr\ObjFile.java

?????文件??????19498??2010-01-01?12:39??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr\ObjFileSimplified_v2.java

?????文件??????18611??2009-12-28?12:51??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr\ObjFileSimplified_version1.java

?????文件???????1479??2009-12-26?15:05??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr\VecOp.java

?????文件???????2719??2009-12-28?12:46??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr\VertexComplicated.java

?????目錄??????????0??2010-01-24?12:31??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\src\MeshSimpliefication_QuadErr

?????目錄??????????0??2010-01-24?12:31??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\MeshSimplifier_可執行文件\MeshSimplify_lib

?????目錄??????????0??2010-01-24?16:10??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\MeshSimplifier_可執行文件\models

?????目錄??????????0??2010-01-24?12:31??復件?2009310399梁超_基于二次誤差度量的網格簡化_最終報告及程序\源程序_MeshSimplification_QuadErr\.settings

............此處省略8個文件信息

評論

共有 條評論