日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

计算机图形学实验报告几何变换,计算机图形学实验报告几何变换.doc

發布時間:2023/12/18 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 计算机图形学实验报告几何变换,计算机图形学实验报告几何变换.doc 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

計算機圖形學實驗報告幾何變換

計算機圖形學實驗報告

計算機圖形學實驗報告姓 名徐沛華班級1011學號成績實驗名稱二維圖形的幾何變換實驗目的對平面圖形進行平移、縮放、旋轉、對稱

實驗步驟算法分析:

圖形變換是指對圖形的幾何信息經過幾何變換后產生新的圖形。圖形變換既可以看作坐標系不動而圖形變動,變動后的圖形在坐標系中的坐標值發生變化;也可以看作圖形不動而坐標系變動,變動后,該圖形在新的坐標系下具有新的坐標值。

設(x,y)為圖形原坐標值,經幾何變換后坐標值變為()。以下為四種常用的幾何變換公式。

(a) 平移變換:

平移變換在前面的任務中已經用到過,它的變換公式為:

(b) 旋轉變換:

繞原點旋轉的變換公式為:

(c) 放縮變換:

幾種變換可以組合在一起形成復合變換。例如平移變換與旋轉變換組合得到:

(d) 相對點的旋轉變換:

ii、算法程序:

void CZhouView::pingyi()

{

CClientDC dc(this);

dc.MoveTo(m_nPoint1.x,m_nPoint1.y);

dc.LineTo(m_nPoint2.x,m_nPoint2.y);

dc.MoveTo(m_nPoint1.x+100,m_nPoint1.y+100);

dc.LineTo(m_nPoint2.x+100,m_nPoint2.y+100);

}

void CZhouView::xuanzhuan()

{

CClientDC dc(this);

dc.MoveTo(m_nPoint1.x,m_nPoint1.y);

dc.LineTo(m_nPoint2.x,m_nPoint2.y);

dc.MoveTo((m_nPoint1.x*cos(0.5))-(m_nPoint1.y*sin(0.5)),(m_nPoint1.x*sin(0.5))+(m_nPoint1.y*cos(0.5)));

dc.LineTo((m_nPoint2.x*cos(0.5))-(m_nPoint2.y*sin(0.5)),(m_nPoint2.x*sin(0.5))+(m_nPoint2.y*cos(0.5)));

}

void CZhouView::bili()

{

CClientDC dc(this);

dc.MoveTo(m_nPoint1.x,m_nPoint1.y);

dc.LineTo(m_nPoint2.x,m_nPoint2.y);

dc.MoveTo(m_nPoint1.x*2,m_nPoint1.y*2);

dc.LineTo(m_nPoint2.x*2,m_nPoint2.y*2);

}

void CZhouView::XCQ()

{

CClientDC dc(this);

dc.MoveTo(m_nPoint1.x,m_nPoint1.y);

dc.LineTo(m_nPoint2.x,m_nPoint2.y);

dc.MoveTo(m_nPoint1.x,m_nPoint1.y);

dc.LineTo(m_nPoint2.x+100,m_nPoint2.y);

}

void CZhouView::DC()

{

CClientDC dc(this);

dc.MoveTo(m_nPoint1.x,m_nPoint1.y);

dc.LineTo(m_nPoint2.x,m_nPoint2.y);

dc.MoveTo(m_nPoint1.y,m_nPoint1.x);

dc.LineTo(m_nPoint2.y,m_nPoint2.x);

}

void CZhouView::YCQ()

{

CClientDC dc(this);

dc.MoveTo(m_nPoint1.x,m_nPoint1.y);

dc.LineTo(m_nPoint2.x,m_nPoint2.y);

dc.MoveTo(m_nPoint1.x,m_nPoint1.y);

dc.LineTo(m_nPoint2.x,m_nPoint2.y+100);

}

//OnLButtonUp(UINT nFlags, CPoint point)

case 8:

pingyi();

break;

case 9:

xuanzhuan();

break;

case 10:

bili();

break;

case 11:

XCQ();

break;

case 12:

YCQ();

break;

case 13:

DC();

break;

dc.MoveTo(m_nPo

總結

以上是生活随笔為你收集整理的计算机图形学实验报告几何变换,计算机图形学实验报告几何变换.doc的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。