第一篇:OpenGL ES總結(jié)(二)OpenGL坐標變換之平移及旋轉(zhuǎn)
OpenGL ES總結(jié)
(二)OpenGL坐標變
換之平移及旋轉(zhuǎn)
世界坐標系:
在OpenGL中,世界坐標系是以屏幕中心為原點(0, 0, 0),且是始終不變的。你面對屏幕,你的右邊是x正軸,上面是y正軸,屏幕指向你的為z正軸。長度單位這樣來定:窗口范圍按此單位恰好是(-1,-1)到(1,1),即屏幕左下角坐標為(-1,-1),右上角坐標為(1,1)。
當前繪圖坐標系:
是繪制物體時的坐標系。程序剛初始化時,世界坐標系和當前繪圖坐標系是重合的。當用glTranslatef(),glScalef(), glRotatef()等對當前繪圖坐標系進行平移、伸縮、旋轉(zhuǎn)變換之后,世界坐標系和當前繪圖坐標系不再重合。注意,這里的平移旋轉(zhuǎn)是將當前繪圖坐標系看做一個整體在世界坐標系中進行旋轉(zhuǎn)平移。然后,改變以后,再用glVertex3f()等繪圖函數(shù)繪圖時,都是在當前繪圖坐標系進行繪圖,所有的函數(shù)參數(shù)也都是相對當前繪圖坐標系來講的。其中四種坐標經(jīng)常要在程序中用到:世界坐標,物體坐標,設(shè)備坐標和眼坐標。
1、世界坐標是OpenGL中用來描述場景的坐標,Z+軸垂直屏幕向外,X+從左到右,Y+軸從下到上,是右手笛卡爾坐標系統(tǒng)。我們用這個坐標系來描述物體及光源的位置。
將物體放到場景中也就是將物體平移到特定位置、旋轉(zhuǎn)一定角度,這些操作就是坐標變換。OpenGL中提供了glTranslate*/glRotate*/glScale*三條坐標變換命令,利用OpenGL的矩陣運算命令,則可以實現(xiàn)任意復雜的坐標變換。
OpenGL中有一個坐標變換矩陣棧(ModelView),棧頂就是當前坐標變換矩陣,進入OpenGL管道的每個坐標(齊次坐標)都會先乘上這個矩陣,結(jié)果才是對應(yīng)點在場景中的世界坐標。OpenGL中的坐標變換都是通過矩陣運算完成的,與圖形學課本的描述完全一致。要注意的是變換中的矩陣乘法是左乘,而矩陣乘法與算術(shù)乘法不同,不符合交換律(萬一不明白去看矩陣代數(shù)書好了)。
glTranslate*(x,y,z):平移,參數(shù)為各軸向的移動量。
glRotate(d,x,y,z):旋轉(zhuǎn),第一個參數(shù)為轉(zhuǎn)動的度數(shù),后三個參數(shù)表明是否繞該軸旋轉(zhuǎn)。通常x,y,z中只有一個為1,其余為0,用連續(xù)幾條旋轉(zhuǎn)命令完成復雜旋轉(zhuǎn)。由于矩陣運算的左乘特點,旋轉(zhuǎn)命令的順序與旋轉(zhuǎn)動作的順序正好相反。
2、物體坐標是以物體某一點為原點而建立的“世界坐標”,該坐標系僅對該物體適用,用來簡化對物體各部分坐標的描述。物體放到場景中時,各部分經(jīng)歷的坐標變換相同,相對位置不變,所以可視為一個整體,與人類的思維習慣一致。
3、眼坐標是以視點為原點,以視線的方向為Z+軸正方向的坐標系中的方向。OpenGL管道會將世界坐標先變換到眼坐標,然后進行裁剪,只有在視線范圍(視見體)之內(nèi)的場景才會進入下一階段的計算。同樣的,有投影變換矩陣棧(Projection),棧頂矩陣就是當前投影變換矩陣,負責將場景各坐標變換到眼坐標,由所得到的結(jié)果是裁剪后的場景部分,稱為裁剪坐標。前面提到過的視見體設(shè)定其實就是在建立該矩陣。
4、設(shè)備坐標:OpenGL 的重要功能之一就是將三維的世界坐標經(jīng)過變換、投影等計算,最終算出它在顯示設(shè)備上對應(yīng)的位置,這個位置就稱為設(shè)備坐標。在屏幕、打印機等設(shè)備上的坐標是二維坐標。值得一提的是,OpenGL可以只使用設(shè)備的一部分進行繪制,這個部分稱為視區(qū)或視口(viewport)。投影得到的是視區(qū)內(nèi)的坐標(投影坐標),從投影坐標到設(shè)備坐標的計算過程就是設(shè)備變換了。
對應(yīng)代碼:
package com.example.hejunlin.openglcoordinate;
import android.opengl.GLSurfaceView;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
private GLSurfaceView mSurfaceView;
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(save004km.cnlors);
colorsBuffer.position(0);
}
public void draw(GL10 gl){
gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);
gl.glEnableClientState(GL10.GL_COLOR_ARRAY);
gl.glVertexPointer(3, GL10.GL_FLOAT, 0, vertexsBuffer);
gl.glColorPointer(4, GL10.GL_FLOAT, 0, colorsBuffer);
gl.glLineWidth(9);
gl.glDrawArrays(GL10.GL_LINES, 0, vertexs.length / 3);
gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);
} }
void glTranslatef(GLdouble x,GLdouble y,GLdouble z);參數(shù)說明:
x,y,z:分別指定沿x,y,z軸方向的平移分量。
重點就是沿著x,y,z軸移動。
注意在glTranslatef(x, y, z)中,當您移動的時候,您并不是相對屏幕中心移動,而是相對與當前所在的屏幕位置。
其作用就是將你繪點坐標的原點在當前原點的基礎(chǔ)上平移一個(x,y,z)向量。
第二篇:位置與變換——平移與旋轉(zhuǎn)教學設(shè)計222
位置與變換(2)——平移與旋轉(zhuǎn)
教學內(nèi)容:認識平移、旋轉(zhuǎn)現(xiàn)象,課本57、58頁內(nèi)容 教學目的:
1、能結(jié)合實例,感知平移、旋轉(zhuǎn)現(xiàn)象,能在方格紙上畫出一個簡單的圖形沿水平方向、豎直方向平移后的圖形。
2、在解決問題的過程中,形成初步的空間觀念和方位感。
3、初步感受方向在現(xiàn)實生活中的作用,了解平移和旋轉(zhuǎn)給生活帶來的方便,進一步體會數(shù)學與生活的聯(lián)系。教學重點:
1、結(jié)合實例,感知平移、旋轉(zhuǎn)現(xiàn)象,能在方格紙上畫出一個簡單的圖形沿水平方向、豎直方向平移后的圖形。教具準備:多媒體、課件 學具準備:方格練習紙。教學過程:
一、談話引入:
師:同學們,你們?nèi)ミ^游樂場么? 生:去過。
師:游樂場都有什么好玩的呢? 生交流。
二、學習新知:
(一)平移與旋轉(zhuǎn)現(xiàn)象
1、初步感知。【創(chuàng)設(shè)情境,激發(fā)興趣】 師:仔細觀察,你看到了什么? 師:誰來說一說?
師:這些物體是怎樣運動的?【直觀感受,探究新知】 師:誰能來描述一下?
師:你能根據(jù)運動方式的不同給它們分分類嗎?同桌合作商量一下。
師:誰來說一說你們是怎樣分的?
師:如果讓你給這兩種不同的運動方式起名字,你覺得叫什么合適?
師:是的,像大門、汽車、升降機、傳送帶的運動,(師邊說邊模擬運動)都是平移現(xiàn)象;(板 書:平移)而像排氣扇、風扇等的運動,都是旋轉(zhuǎn)現(xiàn)象。(板書:旋轉(zhuǎn))
師:剛才同學們都表現(xiàn)的十分出色,下面我們輕松一下,到游樂場去玩玩好嗎?(課件:游樂場小朋友正在玩各種游戲)同學們看這些游戲你們玩過嗎?
師:既然大家都玩過這些游戲,那你能說出他們都各在做什么運動嗎?(學生看著大屏幕自由發(fā)言,說出各類游戲的名稱。)
師:既然大家都玩過這些游戲,那你能說出他們都各在做什么運動嗎?
2、加深認識。【實踐操作,積累經(jīng)驗】
①師:請同學們看一看大屏幕,分別是怎么運動的?(大屏幕展示)
②師:我們生活中也有許多這樣的現(xiàn)象,想一想哪里存在平移現(xiàn)象?哪里存在旋轉(zhuǎn)現(xiàn)象呢?同桌一起找一找。
③師:老師這里有一些運動的物體,請同學們來說一說他們都是怎樣運動的?
(大屏幕出示課件)生觀察并回答。師:老師要增加難度了,敢于接受挑戰(zhàn)嗎?
師:通過做平移運動回座位。(生倒退著回座位,然后轉(zhuǎn)身坐下,同學們很興奮)
師:他剛才的運動中不但有平移現(xiàn)象,還有什么現(xiàn)象? ④師:現(xiàn)在誰來說一說什么是平移,什么是旋轉(zhuǎn)? ⑤師:同桌合作,讓文具盒或數(shù)學書做平移運動。
(二)圖形的平移
1、師:老師這有一只小金魚想要吃水草,請同學們幫它游到水草處好嗎?
師:向左平移 7格。
師:(課件動態(tài)演示小金魚的點的平移方向)填空。
總結(jié)規(guī)律:觀察一個圖形的平移過程,只需要觀察該圖形上的任意一個點或一部分的平移過程就可以了。
2、師出示房子、火箭的圖形,請學生說出平移了幾格。
三、課堂練習?!就卣箲?yīng)用,發(fā)展思維】
課件出示習題。生完成并交流。師講解。(在方格紙上畫圖形、找棋子等)
四、小結(jié)。
師:隨著時鐘的旋轉(zhuǎn),我們一起度過了快樂的 40 分鐘,你有什么收獲?
師:同學們都說的非常好,那么關(guān)于圖形的平移和旋轉(zhuǎn)我們以后繼續(xù)學習。
第三篇:體驗圖形變換的奇妙——平移和旋轉(zhuǎn)活動課教學設(shè)計
平移和旋轉(zhuǎn)是人教版《義務(wù)教育課程標準實驗教科書》數(shù)學二年級下冊第3單元圖形與變換的教學內(nèi)容,教學時可進行以下活動課的設(shè)計:
活動目標:
1.使學生在活動中加深對圖形平移和旋轉(zhuǎn)的特征的感知和體驗,培養(yǎng)學生的觀察力、想象力和動手操作能力。
2.通過活動,激發(fā)學習數(shù)學的興趣,體驗成功的快樂,培養(yǎng)學生合作和創(chuàng)新意識。
3.培養(yǎng)學生初步的形象思維能力和邏輯思維能力。
活動準備:
1.布置學生課外收集生活中有關(guān)平移和旋轉(zhuǎn)現(xiàn)象的例子。并參照教材第46頁、47頁示意圖試剪出圖形。
2.活動用具:作好教科書上第129頁、第133頁、第135頁的學具。寫有記分統(tǒng)計表的小黑板、鉛筆、彩紙、剪刀、五種顏色的牌子。
3.以分組形式擺好桌椅。
活動過程:
一、激趣引人
玩具是我們小朋友最喜歡的玩的了,現(xiàn)在拿出你們做好的教科書上第129頁的玩具,我們跟老師一起玩,大家在玩的時候要注意觀察,看看有什么現(xiàn)象發(fā)生。紙片上的紅、黃、藍三種顏色變成白色的了!你們知道嗎,這是圖形旋轉(zhuǎn)形成的奇妙現(xiàn)象。數(shù)學就是這樣神奇,今天的活動課,讓我們一起去體驗圖形變換的奇妙吧。
二、分隊發(fā)牌并介紹活動規(guī)則
1.按班級人數(shù)分5隊,發(fā)五種顏色的牌并由牌的顏色給每隊命名。
2.活動規(guī)則:在記分統(tǒng)計表上用畫正字的方法統(tǒng)計各隊的成績。沒進行答題的學生都可做裁判,老師是主裁。
三、活動內(nèi)容
活動1:感知平移和旋轉(zhuǎn)---舉例比賽
1.各隊以開火車形式進行比賽,每人各舉一個生活中平移、旋轉(zhuǎn)現(xiàn)象的例子。要求不能重復,語言敘述要嚴密、準確,說對一個得1分。
2.各隊選一名代表,做出一個平移和一個旋轉(zhuǎn)的動作。要求只能利用現(xiàn)場的實物,邊做邊說介紹。(如:我把窗戶向左推是平移)做對一個得1分。
活動2:體會平移和旋轉(zhuǎn)---玩學具回答問題
1.拿出作好的教科書上第133頁、第135頁的學具,隊內(nèi)合作,拉一拉,轉(zhuǎn)一轉(zhuǎn)。并思考共有幾種搭配方案。把答案寫在紙上。限時一起亮答案,按接近準確數(shù)的程度給5~1分。
2.各隊選一名代表說說你們最喜歡哪一個組合?是怎樣得到的?喜歡的理由是什么?根據(jù)說的情況評5~1分。
活動3:實踐平移和旋轉(zhuǎn)---剪紙
下面我們進入剪紙活動,老師知道你們都有一雙靈巧的小手,但一定要注意安全呦。
1.上學期我們剪過對稱圖形,剪一個小人怎樣剪又對又快呢?搶答并能演示剪出者得2分。
2.能不能用同樣的方法剪出2個或更多的并排排列的小人呢?隊內(nèi)合作,參照教材第46頁示意圖剪。剪成功的展示給大家并說出方法者得3分。
3.能不能用同樣的方法剪出圍成一圈的小人呢?隊內(nèi)合作,參照教材第47頁示意圖剪。成功的展示給大家并得3分。
4.設(shè)計比賽:請每位同學充分發(fā)揮想象,剪出一幅最漂亮的帶有平移和旋轉(zhuǎn)特征的圖案。我們來評選今天的小小設(shè)計家。
1)隊內(nèi)交流,各隊先自評出本隊最有創(chuàng)意的最佳設(shè)計圖案。
2)各隊輪流上臺展示,由設(shè)計者介紹創(chuàng)作思路,隊代表說推薦的理由。
3)學生評論它好在哪兒,并共同欣賞。
4)評出最佳者獲小小設(shè)計家稱號同時其所在的隊得2分,其余隊各得1分。
四、為優(yōu)勝隊發(fā)獎
五、總結(jié)
本節(jié)課我們通過一系列的活動,充分感知了平移和旋轉(zhuǎn)的特征,體驗了圖形變換的奇妙,領(lǐng)略了數(shù)學的美。同學們的表現(xiàn)都非常出色,顯露出了你們的智慧和才華。在活動中,我們體會到生活中處處有數(shù)學,數(shù)學就在你身邊。只要我們善于觀察,勤于思考,就能發(fā)現(xiàn)數(shù)學的魅力所在。
教學反思:數(shù)學實踐活動課是新教材的特色也是亮點之一,但現(xiàn)實教學中,許多教師不重視它的教學,更有甚者幾乎將其一帶而過。這是教學上的一大失誤。著名教育家李吉林說:活動是兒童的天性,是他們素質(zhì)個性發(fā)展的根基。數(shù)學實踐活動課有利于培養(yǎng)學生自主探究學習,促進學生智慧和潛能的發(fā)展。象本節(jié)課就達到了寓教于樂、啟智于動的目的,讓學生享受成功的喜悅。學生在活動中各顯其長,各盡所能,始終保持著極高的熱情。不僅加深了對平移和旋轉(zhuǎn)特征的理解和掌握,而且提高了學習數(shù)學的興趣。從教后的效果可以證明這一點。本班學生做此內(nèi)容的習題時正確率為100%,并且課后又自發(fā)的繼續(xù)著剪紙活動,交上來許多好的作品,我將這些作品在學校櫥窗展出,收到良好的效果。本課記分表的設(shè)計,也讓學生體會了統(tǒng)計知識的運用。所以我們教師要重視活動課,精心設(shè)計和上好活動課。
第四篇:考研數(shù)學公式總結(jié)之高等數(shù)學柱面坐標和球面坐標公式
凱程考研輔導班,中國最權(quán)威的考研輔導機構(gòu)
考研數(shù)學公式總結(jié)之高等數(shù)學柱面坐標
和球面坐標公式
考研數(shù)學復習,公式是基礎(chǔ)也是關(guān)鍵,高等數(shù)學中公式眾多,大家要加深理解記憶。下面帶著大家一起來鞏固熟悉高等數(shù)學各類重要公式,下面是柱面坐標和球面坐標公式。
凱程提醒各位考生考研數(shù)學公式的記憶一定要準、牢,否則就沒辦法進行做題和運算。