參數(shù)曲線的快速生成算法.doc
約49頁(yè)DOC格式手機(jī)打開(kāi)展開(kāi)
參數(shù)曲線的快速生成算法,50頁(yè)4.3萬(wàn)余字 摘 要本畢業(yè)設(shè)計(jì)主要研究參數(shù)曲線的直接快速生成,要直接生成參數(shù)曲線就需對(duì)參數(shù)方程{x=f(t),y=g(t),(0 t 1)}的參數(shù)t每次增加一個(gè)步長(zhǎng),然后計(jì)算該點(diǎn)的x和y坐標(biāo)值并繪制該點(diǎn)。要逐點(diǎn)地生成參數(shù)曲線,就要求參數(shù)t每次增加的步長(zhǎng)要使曲線前進(jìn)的幅度不得超過(guò)一個(gè)象素長(zhǎng)度,否則有可能跨過(guò)一個(gè)中間...
內(nèi)容介紹
此文檔由會(huì)員 lzj781219 發(fā)布
50頁(yè)4.3萬(wàn)余字
摘 要
本畢業(yè)設(shè)計(jì)主要研究參數(shù)曲線的直接快速生成,要直接生成參數(shù)曲線就需對(duì)參數(shù)方程{x=f(t),y=g(t),(0 t 1)}的參數(shù)t每次增加一個(gè)步長(zhǎng),然后計(jì)算該點(diǎn)的x和y坐標(biāo)值并繪制該點(diǎn)。要逐點(diǎn)地生成參數(shù)曲線,就要求參數(shù)t每次增加的步長(zhǎng)要使曲線前進(jìn)的幅度不得超過(guò)一個(gè)象素長(zhǎng)度,否則有可能跨過(guò)一個(gè)中間象素而產(chǎn)生斷點(diǎn)。
為了提高曲線生成算法的速度,本畢業(yè)設(shè)計(jì)針對(duì)如何選擇最佳的步長(zhǎng)進(jìn)行比較討論,以使曲線前進(jìn)的幅度在不超過(guò)一個(gè)象素的前提下,選擇盡量大的步長(zhǎng)。為了進(jìn)一步提高算法的速度,在前面討論的最佳步長(zhǎng)的基礎(chǔ)上又采用了雙步逐點(diǎn)曲線生成算法,即將上述得到的步長(zhǎng)增加一倍,以使算法的循環(huán)次數(shù)減少一半。由于步長(zhǎng)增加一倍,這樣當(dāng)曲線前進(jìn)一步時(shí),其幅度有時(shí)會(huì)大于一個(gè)象素的長(zhǎng)度,這時(shí)我們通過(guò)插值的方法來(lái)確定跨過(guò)的那個(gè)中間象素。
通過(guò)上述討論的算法能夠比較快速的逐點(diǎn)生成曲線,為了實(shí)現(xiàn)上述算法,本畢業(yè)設(shè)計(jì)使用Visual C++6.0為工具并以三次Bezier曲線、普通參數(shù)曲線{x=f(t)=X3t3+X2t2+X1t+X0, y=g(t)=Y3t3+Y2t2+Y1t+Y0},以及導(dǎo)師所給的一個(gè)特殊的曲線方程為例編程實(shí)現(xiàn)上述算法。
關(guān)鍵詞:參數(shù)曲線,逐點(diǎn),雙步,Visual C++6. 0
Abstract
This graduation project main reseach the direct born of the parameter curve {x=f(t),y=g(t),0<= t <=1,}quickly.To direct born of the parameter curve it need to increase the parameter ‘t’ a step length each time,then caculate this point’s coordinates value of x and y and draw this point.For drawing the parameter curve by point to point it orde to the parameter t’s step length of increased make the progress range of the curve can not large than the length of one pels, otherwise the curve may step over one middle pels and skip one point that it should be on the curve.
For speeding up the arithmetic of the drawing of the curve, this graduation project have discussed the choice of the best step length, so as to choose the biggst step length on the premise that the progress range is not large than one ples. To speeding up the arithmetic more, before the base of discussion about the best step length just now,we take the arithmetic of double step form of the curve by point to point ,and it double the step length that it be caculated just now to lessen the time of the circulation in the arithmetic to the half.Because it have doubled the step length,the progrss rang may large than the length of one pels when the curve go ahead one step.Then we must take the method of difference to make sure the middle pels that be steped over.
It can draw the curve quickly that used the arithmetic we have discussed.To achive the arithmetic,I have used the Visual C++6.0 and take example for the three time Bezier parameter curve ,a common parameter curve{x=f(t)=X3t3+X2t2+X1t+X0, y=g(t)=Y3t3+Y2t2+Y1t+Y0, 0 t 1} and a curve that my teacher gived to me to complete the program.
Keywords:curve,point to point,double step,Visual C++6. 0
Author:
July 2003
目 錄
摘 要………………………………………………………………………….…1
第一章 與本畢業(yè)設(shè)計(jì)相關(guān)的Visual C++內(nèi)容介紹
1.1 Visual C++6.0簡(jiǎn)介…………………………………………………………………4
1.2 與本畢業(yè)設(shè)計(jì)有關(guān)的Visual C++內(nèi)容介紹……………………………………….5
第二章 計(jì)算機(jī)圖形學(xué)中常用的算法
2.1 常用直線的繪制算法………………………………………………………………6
2.2 常用的參數(shù)曲線的繪制算法……………………………………………………...7
第三章 參數(shù)曲線的快速生成算法及實(shí)現(xiàn)
3.1 普通參數(shù)曲線生成算法的介紹…………………………………………………..11
3.2 最佳的步長(zhǎng)值…………………………………………………………………..…13
3.3 雙步逐點(diǎn)曲線生成算法…………………………………………………………..14
3.4 以三次Bezier曲線為例編程實(shí)現(xiàn)該算法………………………………………..16
3.5 普通參數(shù)曲線方程的編程實(shí)現(xiàn)…………………………………………………..28
3.6 使用雙步逐點(diǎn)曲線生成算法需要注意的一個(gè)問(wèn)題……………………………..31
第四章 導(dǎo)師所給的參數(shù)方程的研究
4.1 通過(guò)在屏幕上鼠標(biāo)點(diǎn)擊若干點(diǎn)然后繪制曲線………………………………….32
4.2 通過(guò)在對(duì)話框中輸入控制點(diǎn)的坐標(biāo)繪制曲線………………………………….36
第五章 結(jié)論………………………………………………………………………………38
第六章 個(gè)人小結(jié)……………………………………………………………...39
第七章 附錄
英文資料翻譯……………………………………………………………………...40
參考文獻(xiàn)…………………………………………………………………………...48
參 考 文 獻(xiàn)
[1]劉勇奎 編著 計(jì)算機(jī)圖形學(xué)的基本算法
科學(xué)出版社
[2]黃有度 朱功勤編著 參數(shù)多項(xiàng)式曲線的快速逐點(diǎn)生成算法
計(jì)算機(jī)學(xué)報(bào) 2000年第四期
[3]孫家廣 等編著 計(jì)算機(jī)圖形學(xué)(第三版)
清華大學(xué)出版社
[4]同志工作室 編著 Visual C++6.0開(kāi)發(fā)技巧與實(shí)例教程
人民郵電出版社
摘 要
本畢業(yè)設(shè)計(jì)主要研究參數(shù)曲線的直接快速生成,要直接生成參數(shù)曲線就需對(duì)參數(shù)方程{x=f(t),y=g(t),(0 t 1)}的參數(shù)t每次增加一個(gè)步長(zhǎng),然后計(jì)算該點(diǎn)的x和y坐標(biāo)值并繪制該點(diǎn)。要逐點(diǎn)地生成參數(shù)曲線,就要求參數(shù)t每次增加的步長(zhǎng)要使曲線前進(jìn)的幅度不得超過(guò)一個(gè)象素長(zhǎng)度,否則有可能跨過(guò)一個(gè)中間象素而產(chǎn)生斷點(diǎn)。
為了提高曲線生成算法的速度,本畢業(yè)設(shè)計(jì)針對(duì)如何選擇最佳的步長(zhǎng)進(jìn)行比較討論,以使曲線前進(jìn)的幅度在不超過(guò)一個(gè)象素的前提下,選擇盡量大的步長(zhǎng)。為了進(jìn)一步提高算法的速度,在前面討論的最佳步長(zhǎng)的基礎(chǔ)上又采用了雙步逐點(diǎn)曲線生成算法,即將上述得到的步長(zhǎng)增加一倍,以使算法的循環(huán)次數(shù)減少一半。由于步長(zhǎng)增加一倍,這樣當(dāng)曲線前進(jìn)一步時(shí),其幅度有時(shí)會(huì)大于一個(gè)象素的長(zhǎng)度,這時(shí)我們通過(guò)插值的方法來(lái)確定跨過(guò)的那個(gè)中間象素。
通過(guò)上述討論的算法能夠比較快速的逐點(diǎn)生成曲線,為了實(shí)現(xiàn)上述算法,本畢業(yè)設(shè)計(jì)使用Visual C++6.0為工具并以三次Bezier曲線、普通參數(shù)曲線{x=f(t)=X3t3+X2t2+X1t+X0, y=g(t)=Y3t3+Y2t2+Y1t+Y0},以及導(dǎo)師所給的一個(gè)特殊的曲線方程為例編程實(shí)現(xiàn)上述算法。
關(guān)鍵詞:參數(shù)曲線,逐點(diǎn),雙步,Visual C++6. 0
Abstract
This graduation project main reseach the direct born of the parameter curve {x=f(t),y=g(t),0<= t <=1,}quickly.To direct born of the parameter curve it need to increase the parameter ‘t’ a step length each time,then caculate this point’s coordinates value of x and y and draw this point.For drawing the parameter curve by point to point it orde to the parameter t’s step length of increased make the progress range of the curve can not large than the length of one pels, otherwise the curve may step over one middle pels and skip one point that it should be on the curve.
For speeding up the arithmetic of the drawing of the curve, this graduation project have discussed the choice of the best step length, so as to choose the biggst step length on the premise that the progress range is not large than one ples. To speeding up the arithmetic more, before the base of discussion about the best step length just now,we take the arithmetic of double step form of the curve by point to point ,and it double the step length that it be caculated just now to lessen the time of the circulation in the arithmetic to the half.Because it have doubled the step length,the progrss rang may large than the length of one pels when the curve go ahead one step.Then we must take the method of difference to make sure the middle pels that be steped over.
It can draw the curve quickly that used the arithmetic we have discussed.To achive the arithmetic,I have used the Visual C++6.0 and take example for the three time Bezier parameter curve ,a common parameter curve{x=f(t)=X3t3+X2t2+X1t+X0, y=g(t)=Y3t3+Y2t2+Y1t+Y0, 0 t 1} and a curve that my teacher gived to me to complete the program.
Keywords:curve,point to point,double step,Visual C++6. 0
Author:
July 2003
目 錄
摘 要………………………………………………………………………….…1
第一章 與本畢業(yè)設(shè)計(jì)相關(guān)的Visual C++內(nèi)容介紹
1.1 Visual C++6.0簡(jiǎn)介…………………………………………………………………4
1.2 與本畢業(yè)設(shè)計(jì)有關(guān)的Visual C++內(nèi)容介紹……………………………………….5
第二章 計(jì)算機(jī)圖形學(xué)中常用的算法
2.1 常用直線的繪制算法………………………………………………………………6
2.2 常用的參數(shù)曲線的繪制算法……………………………………………………...7
第三章 參數(shù)曲線的快速生成算法及實(shí)現(xiàn)
3.1 普通參數(shù)曲線生成算法的介紹…………………………………………………..11
3.2 最佳的步長(zhǎng)值…………………………………………………………………..…13
3.3 雙步逐點(diǎn)曲線生成算法…………………………………………………………..14
3.4 以三次Bezier曲線為例編程實(shí)現(xiàn)該算法………………………………………..16
3.5 普通參數(shù)曲線方程的編程實(shí)現(xiàn)…………………………………………………..28
3.6 使用雙步逐點(diǎn)曲線生成算法需要注意的一個(gè)問(wèn)題……………………………..31
第四章 導(dǎo)師所給的參數(shù)方程的研究
4.1 通過(guò)在屏幕上鼠標(biāo)點(diǎn)擊若干點(diǎn)然后繪制曲線………………………………….32
4.2 通過(guò)在對(duì)話框中輸入控制點(diǎn)的坐標(biāo)繪制曲線………………………………….36
第五章 結(jié)論………………………………………………………………………………38
第六章 個(gè)人小結(jié)……………………………………………………………...39
第七章 附錄
英文資料翻譯……………………………………………………………………...40
參考文獻(xiàn)…………………………………………………………………………...48
參 考 文 獻(xiàn)
[1]劉勇奎 編著 計(jì)算機(jī)圖形學(xué)的基本算法
科學(xué)出版社
[2]黃有度 朱功勤編著 參數(shù)多項(xiàng)式曲線的快速逐點(diǎn)生成算法
計(jì)算機(jī)學(xué)報(bào) 2000年第四期
[3]孫家廣 等編著 計(jì)算機(jī)圖形學(xué)(第三版)
清華大學(xué)出版社
[4]同志工作室 編著 Visual C++6.0開(kāi)發(fā)技巧與實(shí)例教程
人民郵電出版社
TA們正在看...
- 01.1四時(shí)田園雜興課堂教學(xué)教案教學(xué)設(shè)計(jì)(部編版).doc
- 01.2稚子弄冰課堂教學(xué)教案教學(xué)設(shè)計(jì)(部編版).doc
- 01.3村晚課堂教學(xué)教案教學(xué)設(shè)計(jì)(部編版).doc
- 02冬陽(yáng)·童年·駱駝隊(duì)公開(kāi)課優(yōu)秀教案教學(xué)設(shè)計(jì)(五年...doc
- 02冬陽(yáng)·童年·駱駝隊(duì)最新教研教案教學(xué)設(shè)計(jì)(部編版...doc
- 02冬陽(yáng)·童年·駱駝隊(duì)課堂教學(xué)教案教學(xué)設(shè)計(jì)(部編版).doc
- 03祖父的園子公開(kāi)課優(yōu)秀教案教學(xué)設(shè)計(jì)(五年級(jí)下冊(cè)).doc
- 03祖父的園子最新教研教案教學(xué)設(shè)計(jì)(部編版五年級(jí)下...doc
- 03祖父的園子課堂教學(xué)教案教學(xué)設(shè)計(jì)(部編版).doc
- 04草船借箭公開(kāi)課優(yōu)秀教案教學(xué)設(shè)計(jì)(五年級(jí)下冊(cè)).doc