2D动态绘图软体之设计与研究.doc

2D动态绘图软体之设计与研究.doc

ID:49196913

大小:338.50 KB

页数:36页

时间:2020-03-01

2D动态绘图软体之设计与研究.doc_第1页
2D动态绘图软体之设计与研究.doc_第2页
2D动态绘图软体之设计与研究.doc_第3页
2D动态绘图软体之设计与研究.doc_第4页
2D动态绘图软体之设计与研究.doc_第5页
资源描述:

《2D动态绘图软体之设计与研究.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、2D動態繪圖軟體之設計與硏究硏究學生:陳可嘉熊家媛指導老師:陳怡芬老師一、硏究動機:在尋找硏究題目前,我們曾接觸過一個名爲GSP的動態幾何數學遠距教學軟體。該軟體有兩個地方非常吸引我們,一爲其操控方便的視窗界面,具備了特殊的工具按鈕,能使使用者在操作上獲得簡潔而冇系統的便利感;二爲在圖形操控上,能精準II動態地呈現圖形的變化。由此中我們對於這樣控制圖形的方式感到好奇,要如何使圖形與各操縱項間(如:數據輸入、滑鼠控制等方式。)取得密切而流暢的聯繫?這是我們想要瞭解的。以此爲目的出發,我們尋找了同樣具冇幾何關係性質的物理光學領域,其中考慮初期硏究的能力與圖

2、形元件的單純性,我們選擇以幾何光學中透鏡及面鏡成像的實驗呈現爲硏究的方式。再說到冃前在幾何光學這部份的教學具體呈現上,往往因爲教學硬體設備的種種限制而不能達到適當、良好的效果:學校老師們在黑板上解釋面鏡透鏡成像時通常只能粗略地畫出光線的路徑,若要解釋透鏡、面鏡的曲率與光線行進路線的關係,就更顯麻煩、困難了:一來是由於在黑板上精確而快速的作圖實在不易,二來無法呈現光線、鏡面在變化期間的完整過程,失去了對照的效果與切實的具體感。利用實物實驗或許可解決這方面的困擾,但畢竟實驗器材的準備在現今所冇校園中未必可普及,要冇精確而多量的儀器亦須耗費不小,只由教師操作

3、的示範實驗更難以達到讓學生清楚觀察並親身體驗的功效。在這樣的情況下,若能有一個如前述的幾何光學教學軟體,不但能做到精準冃•簡單明瞭的具體呈現,使學習者一目了然,更能讓使用者在自學時便利地針對自己所需要了解的地方加強學習印象。綜合以上所述,我們在硏究時,主要著重於圖形操縱的流暢度及使用介面的自主性、便利性。二、硏究目的:討論以數據控制圖形變化的方法,硏究物件(如圖形)間的關係。並與使用者建立互動艮好界面。三、硏究設備與器材:硬體方面:個人電腦軟體方面(程式語言):TurboC2.0版VisualC++5.0版我們最後呈現的視窗軟體,是用Microsoft

4、VisualC卄5.0製作出來的。由於視窗軟體的複雜及具備多元的視窗資源(如圖示、選單、工具按鈕、對話盒等),我們需要像VC++這樣的整合程式開發環境,即所謂IDE(IntegratedDevelopmentEnvironment)。它包含了程式編輯器、編譯器、連結器,以及強大的函式庫,利於編寫視窗程式;此外,VisualC++具備不少提供繪圖功能的函式與資源檔,是用來製作「小畫家」軟體的語言,也與我們要進行有關動態繪圖方面硏究的需求相符合。雖然VisualC++有功能強大的精靈工具,包括AppWizard與ClassWizard,可以產生基本程式架構

5、的許多程式碼。不過由於我們在視窗程式設計方面還是新手,爲了透徹這種陌生的程式語言架構,我們除了在比較必要的部份,如對話盒的產生之外,幾乎沒有使用此項工具,而是以堆砌的方式建構起整個視窗程式。也許留待以後進一步改良這軟體或開發新軟體時再來嘗試吧。也因爲對VC++較感陌生,而且爲使編帽程式後的除錯方便,儘可能免除繪圖部份邏輯錯誤的產生,我們也利用從事專題硏究之前以接觸過、較爲熟習的TurboC語言先行撰寫一些基本的圖形,如薄球面或拋物面透鏡、面鏡的形狀、光線的路徑等。雖然TC與VC++兩者在使用者操控、輸入及輸出到裝置的模式,以及整體程式的架構上,都有著很

6、大的不同,不過就一些基不的繪圖函數上,它們之間有不少是十分相似的。加上C與C++在語法、觀念上本就有許多相關的親緣關係,於是我們也利用TC作爲硏究繪圖方面的輔助工具。四、硏究內容:I.相關知識學習:A.物件導向之程式設計槪念:Windows程式設計十分繁雜,它要能在任何時間內處理任何形態的輸入,Iflj11它不能直接存取硬體資源,只能經由Windows的功能來存取輸入、輸出設備,在這樣的情況下,物件導向的方法是必要的,它提供了重要的「類別繼承」觀念、方法,算是對類似模式的「刺激」,做出相同形態的「反應」的一種有效率的發法,而完全由「刺激」來考慮「反應」

7、的思路及程式結構,則是物件導向的重要精神。A.相關物理知識:面鏡部份,知凹面鏡聚光、凸面鏡散光,若是拋物面鏡則在凹面處冇一焦點,聚光能力強,但製造不易;若爲球面鏡則有像差,但若鏡面门徑小,則球面鏡與拋物面鏡幾乎無異。(我們在寫程式時,雖也有描繪過拋物面鏡的形狀,不過最終考慮程式簡潔與符合H常情況,仍以口徑小的球面鏡作爲模型。)成像主要公式:r=2f(r爲球面鏡之半徑;f爲其焦距)透鏡折射部份,有許多與面鏡相似,惟要考慮透鏡折射問題,將折射率納入公式後:r=2f*(n—1)(n爲透鏡相對於折射率爲一的空氣折射率)2.問題探討:女口在冃的及硏究動機裡所說的

8、,我們希望能建立一個能動態控制圖形,各物件間也具有互動關連的視窗軟體,並使之同時擁有與使用者溝

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。