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

  • 大小: 136KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-06-11
  • 語(yǔ)言: C/C++
  • 標(biāo)簽: 三維變換??C++??MFC??

資源簡(jiǎn)介

MFC實(shí)現(xiàn)的圖形在三維坐標(biāo)下,進(jìn)行坐標(biāo)平移、投影、對(duì)稱等變換。

資源截圖

代碼片段和文件信息

//?baseClass.cpp:?implementation?of?the?CMyClass?class.
//
//////////////////////////////////////////////////////////////////////

#include?“stdafx.h“
#include?“三維變換.h“
#include?“baseClass.h“
#include?“三維變換View.h“
#include?“math.h“

#define?PI?3.141592654

#ifdef?_DEBUG
#undef?THIS_FILE
static?char?THIS_FILE[]=__FILE__;
#define?new?DEBUG_NEW
#endif


//////////////////////////////////////////////////////////////////////
//?Construction/Destruction
//////////////////////////////////////////////////////////////////////

CbaseClass::CbaseClass()
{
?ed=2000eh=100od=400hl=1ps=0;
}

CbaseClass::~CbaseClass()
{

}

//?此函數(shù)賦軸測(cè)圖中立體上頂點(diǎn)的齊次坐標(biāo)值
void???CbaseClass::ReadWorkpiece()?
{
??X[1]?=?0;??Y[1]?=?0;??Z[1]?=?0;??C[1]?=?1;
??X[2]?=?45;??Y[2]?=?0;??Z[2]?=?0;??C[2]?=?1;
??X[3]?=?45;?Y[3]?=?37;??Z[3]?=?0;??C[3]?=?1;
??X[4]?=?0;??Y[4]?=?37;??Z[4]?=?0;??C[4]?=?1;
??X[5]?=?0;??Y[5]?=?37;??Z[5]?=?45;??C[5]?=?1;
??X[6]?=?0;??Y[6]?=?0;??Z[6]?=?45;??C[6]?=?1;
??X[7]?=?12;??Y[7]?=?0;??Z[7]?=?45;??C[7]?=?1;
??X[8]?=?30;??Y[8]?=?0;??Z[8]?=?14;??C[8]?=?1;
??X[9]?=?45;??Y[9]?=?0;??Z[9]?=?14;??C[9]?=?1;
??X[10]?=?45;??Y[10]?=?37;??Z[10]?=?14;??C[10]?=?1;
??X[11]?=?30;??Y[11]?=?37;??Z[11]?=?14;??C[11]?=?1;
??X[12]?=?12;??Y[12]?=?37;??Z[12]?=?45;??C[12]?=?1;
??X[13]?=?12;??Y[13]=21;??Z[13]=45;??C[13]?=?1;
// ?X[14]?=?22;??Y[14]=31;??Z[14]=27;??C[14]?=?1;
}

/***************************************************
*?此函數(shù)分別用于三個(gè)視圖的投影變換,統(tǒng)一用變換后頂?*
*?點(diǎn)的三個(gè)坐標(biāo)計(jì)算公式求其坐標(biāo)值。這三個(gè)公式是由點(diǎn)?*
*?的齊次坐標(biāo)乘以變換矩陣得來(lái)的。實(shí)際上每個(gè)視圖投影?*
*?只有二個(gè)非零坐標(biāo)需要計(jì)算求得,而另一個(gè)坐標(biāo)是零勿?*
*?需計(jì)算。因此也可以根據(jù)三個(gè)不同視圖的投影,分別采?*
*?用其投影后的二個(gè)坐標(biāo)計(jì)算式來(lái)求坐標(biāo)值。函數(shù)中可用?*
*?條件語(yǔ)句選擇不同視圖投影采用不同坐標(biāo)計(jì)算式求值。?*
***************************************************/
void???CbaseClass::Calculate(array2d?B)
{
??ReadWorkpiece();
??for?(int?i?=?1;??i?<=?12;??++i?)
??{
?????XT[i]?=3*X[i]*B[1][1]+3*Y[i]*B[2][1]+3*Z[i]*B[3][1]+C[i]*B[4][1];
?????YT[i]?=3*X[i]*B[1][2]+3*Y[i]*B[2][2]+3*Z[i]*B[3][2]+C[i]*B[4][2];
?????ZT[i]?=3*X[i]*B[1][3]+3*Y[i]*B[2][3]+3*Z[i]*B[3][3]+C[i]*B[4][3];
??}
}

//?此函數(shù)求軸測(cè)投影后點(diǎn)的坐標(biāo)值
void???CbaseClass::MCalculate(array2d?B)
{
??ReadWorkpiece();
??for?(?int?i?=?1;??i?<=?12;??++i?)
??????{
?????XT[i]?=3*X[i]*B[1][1]+3*Z[i]*B[2][1]+3*Y[i]*B[3][1]+C[i]*B[4][1];
?????YT[i]?=3*X[i]*B[1][2]+3*Z[i]*B[2][2]+3*Y[i]*B[3][2]+C[i]*B[4][2];
?????ZT[i]?=3*X[i]*B[1][3]+3*Z[i]*B[2][3]+3*Y[i]*B[3][3]+C[i]*B[4][3];
??????}?
??//?三個(gè)坐標(biāo)計(jì)算公式由點(diǎn)的齊次坐標(biāo)乘以軸測(cè)投影變換矩陣得來(lái)。
}
void???CbaseClass::XCalculate(array2d?B)
{int?i;
??Read();
??for?(i?=?1;i<9;i++?)
??{
?????ax[i]?=XP[i]*B[1][1]+YP[i]*B[2][1]+ZP[i]*B[3][1]+CP[i]*B[4][1];
?????ay[i]?=XP[i]*B[1][2]+YP[i]*B[2][2]+ZP[i]*B[3][2]+CP[i]*B[4][2];
?????az[i]?=XP[i]*B[1][3]+YP[i]*B[2][3]+ZP[i]*B[3][3]+CP[i]*B[4][3];
??}

}
void?CbaseClass::Display()
{
CframeWnd*?pWnd=(CframeWnd*)AfxGetApp()->m_pMainWnd;
CDC*?pdc=pWnd->GetActiveView()->GetDC();
CRect?rr;
::GetClientRect(pWnd->GetActiveView()->m_hWndrr);
DrawText()

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件?????151620??2006-07-04?01:36??三維變換.exe

?????文件??????54784??2006-07-04?02:09??Grphics?experiment?NO5--三維圖形的投影變換.doc

?????文件??????11017??2004-12-16?10:36??三維變換\baseClass.cpp

?????文件???????1875??2004-12-16?10:20??三維變換\baseClass.h

?????文件??????????0??2004-08-14?14:59??三維變換\CbaseClass.cpp

????...D..R?????????0??2006-07-05?19:43??三維變換\Debug

?????文件???????2509??2004-08-14?13:06??三維變換\MainFrm.cpp

?????文件???????1581??2004-08-14?13:06??三維變換\MainFrm.h

?????文件???????4317??2004-08-14?13:06??三維變換\ReadMe.txt

?????文件???????1078??2004-08-14?13:06??三維變換\res\Toolbar.bmp

?????文件???????1078??2004-08-14?13:06??三維變換\res\三維變換.ico

?????文件????????400??2004-08-14?13:06??三維變換\res\三維變換.rc2

?????文件???????1078??2004-08-14?13:06??三維變換\res\三維變換Doc.ico

????...D..R?????????0??2006-07-03?13:03??三維變換\res

?????文件???????2000??2006-07-03?12:54??三維變換\resource.h

?????文件????????210??2004-08-14?13:06??三維變換\StdAfx.cpp

?????文件???????1054??2004-08-14?13:06??三維變換\StdAfx.h

?????文件???????1163??2006-07-03?12:52??三維變換\TRANSLATION_DLG.cpp

?????文件???????1312??2006-07-03?12:52??三維變換\TRANSLATION_DLG.h

?????文件??????46704??2006-07-04?02:08??三維變換\三維變換.aps

?????文件???????3220??2006-07-04?02:25??三維變換\三維變換.clw

?????文件???????4161??2004-08-14?13:06??三維變換\三維變換.cpp

?????文件???????4886??2006-07-03?13:03??三維變換\三維變換.dsp

?????文件????????541??2004-08-14?13:06??三維變換\三維變換.dsw

?????文件?????151620??2006-07-04?01:36??三維變換\三維變換.exe

?????文件???????1324??2004-08-14?13:06??三維變換\三維變換.h

?????文件?????205824??2006-07-04?02:25??三維變換\三維變換.ncb

?????文件??????87040??2006-07-04?02:25??三維變換\三維變換.opt

?????文件????????797??2006-07-04?02:25??三維變換\三維變換.plg

?????文件??????13926??2006-07-04?02:08??三維變換\三維變換.rc

............此處省略8個(gè)文件信息

評(píng)論

共有 條評(píng)論