顯示具有 98360933 李蕙如 標籤的文章。 顯示所有文章
顯示具有 98360933 李蕙如 標籤的文章。 顯示所有文章

2010年12月16日 星期四

HW_3

3-1

參觀那天,

讓我比較印象深刻的,

除了大螢幕播放的3D影像,

尤其是他可以直接錄影直接撥放出來,

而不需要後置的處理,

是令我比較好奇的是如何應用、用什麼樣的影像技術來處理。


還有我比較感興趣的部分,

是相機體驗的全景功能,

不只有一般照片,

只是當天好像沒有提供3D全景這項功能給參觀者體驗,

不知道他與一般照片畫面看起來有何不同,

一般全景照幾乎都是用一張一張接合的,

那3D全景照也是一張一張接再去疊合它的影像嗎?




因為對3D這塊領域了解並不是很多,

在體驗過程中,

看大螢幕的眼鏡與看家庭劇院,

所使用的眼鏡好像有些不同,

當時沒看很清楚,

家庭劇院所用的眼鏡好像是有種像開關之類的東西,

而且也比較重一些,(可能眼鏡的材質不一樣吧?!)

看大螢幕的眼鏡就相對比較單純。


3-2


左眼影像


右眼影像
3-3

合成3D影像

3-4

我是用Photoshop製作的,

先將右眼色彩改成(R0,G225,B225),

左眼色彩(R225,G0,B0),

將上層(左眼影像)透視度調成50%,

將他們重疊。

不過還有另外一種

先將兩個影像開啟,

在各開(R0,G225,B225)和(R225,G0,B0)的紅、藍遮色片,

在各將兩張影像重疊,

之後再將遮色片重疊玩的左右影像重疊,

也會跟直接調色彩值的3D圖一樣。


HW_2

2-1







這個動畫製作感覺很容易,

一開始把圖都加在一起後,


才發覺它的圖像好像是一張一張疊起的,

不過這可以設定動畫的背景透明顏色,


Transparency(透明效果),


而且在Undraw Method(畫面顯示方式)選擇Restore Background(重繪背景),

可以使背景的影像不會重疊顯示。


在每個畫面轉換之間,

Duration(顯示時間)的單位很好玩是百分之一秒,


若我輸入是50,則代表畫面轉換時間間隔著0.5秒。


但有點不是很瞭解的是(調色盤的設定和調色盤的色階),


它與色彩的顯示程度有關?


據說檔案格式為GIF89a的格式,

那89a是具有什麼意義嗎?





2-2



對於用PSpad來讀取GIF的圖檔,

感覺很特別,

因為PSpad是個文字的編輯器,

可能大部分都用在網頁的編碼轉換,

後來才知道還可以利用色階16進位的轉換讀取圖片色彩的狀態。

而且PSpad還有一些滿便利性的地方,

比如有(代碼瀏覽器)可以方便閱讀不同的程式代碼,

包括JAVA、XML、C++...不等,讓使用者更方便。

2-3




這個調色盤雖然有程式碼,

但它還滿難做的,

因為必須瞭解它很多,

我有儘量去弄懂一些,

比較不懂的函數,像是:

fopen()

FILE *imGIF;

打開子目錄中的二進制文件,

imGIF = fopen(OpenDialog1->FileName.c_str(), "rb");

「rb」只讀打開一個二進制文件,只允許讀數據
文件使用方式由六個字符拼成,各字符的含義是:
r(read):

w(write):

a(append):
追加
t(text):
文本文件,可省略不寫
b(banary):
二進制文件
+:
讀和寫
fseak()
fseek(imGIF,0L,SEEK_SET);
fseek(文件類型指針fp,位移量,起始點)
 

起始點

對應的數字

代表的文件位置

SEEK_SET

0

文件開頭

SEEK_CUR

1

文件當前位置

SEEK_END

2

文件末尾

 
 
fread()
fread(GIFHeader,13, 1,imGIF);
fread(buffer,size,count,fp);

buffer:是一個指針,它是讀入數據的存放地址

size:要讀寫的字節數

count:要進行讀寫多少個size字節的數據項

fp:文件型指針


以上這些我比較不懂的函數,
是用來讀取檔案內容,
讓它的色彩資料可以直接讀取顯示出來。

我覺得做這個調色盤還滿難的,
因為大部分的程式都需要瞭解很多,
寫成是就像在解數學式子一樣,
要解決問題要想好的快的解決方法,
當然也必須瞭解很多函數的運用,
想想學程式設計也就是這樣子的吧。

2010年11月23日 星期二

HW01















做出來的成品看來很簡略,
但在開始寫這個程式之前也想過說要做什麼樣的東西出來。
除了老師先前教的,畫出不規則形狀,顯示某個點上的色彩外。
也想做得跟真正的小畫家一樣,
除了開存檔、放大縮小,
還有所謂TCanvas 裡的Broush和Pen,
在它們之下有一個叫Mode 的<繪製方式>,
雖然還搞不太清楚是如何使用,
不過在程式碼中mode==1與0,
分別指為Broush和Pen。

因為是參考書籍的做法,
其中有很多名稱是不太了解的,
比方說FormCreate事件,每開啟一個物件都有一個事件要將其寫入,
FormCreate事件所表達意思是,
當表單載入的時候,BCB 會自動執行這一個事件,
但此事件只有在載入Form 時才會執行因此在程式中只會執行一次。
除了使用ColorDialog之外,要先寫TColor DrawColor 用來定義色彩。
還有寫畫刷的時候,也有用到一個TCanvas物件:Polygon。
意思是透過畫筆可以在Image上畫出一個閉合的多邊形。
我看很多同學都使用 radiogroup button ,
但是真的在這個群組裡面不知道該怎麼寫,
所以還是拿speedbutton來做比較會。
不過,
當我想嘗試寫列印程式碼Dialog對話盒>的時候,
就正感覺到,知識的淺薄,
太多沒看過的名詞,
我必須先了解這個物件有何作用,才能在了解它是如何進行步驟,
尤其在偵錯的時候,常常霧撒撒,
除了BCB的線上Help有些example能參考,
其他只能靠Google上大家的解答來釐清。
在我感覺起來,BCB這個軟體下,
以現在我能做到的東西中,它像是一個龐大的樹狀結構,
事件、表單、物件、屬性、方法、執行的函數...等,
關係都是密不可分的。

聽過一些人說,
只要你能精通一種程式,你就不用怕站不起來。
所以現在我們學習的情況,
真的很難說站了。(嘆