2009年11月5日 星期四

Imgae_copy

從Image1 copy到 Image2因為Image2沒有實質的寬高

所以須再次設定:

Image2->Width=Im1_w;
Image2->Height=Im1_h;

Image 初始



如何在Image上更新新的繪畫!!

可以透過assign來初始化.然後再行會上後來的圖

Image2->Picture->Assign(NULL);

若要改變線條的顏色.有一物件"pen"

Image2->Canvas->Pen->Color=0x00FA0300;

改顏色之後再重繪線條及有設定的顏色
(初始化後變回黑色)

2009年11月1日 星期日

如何在Borland C下做完整EXE檔



設定exe可隨處執行檔:

安裝完BCB先設定Project → Options 選擇 Linker標籤,

在Linking底下 去掉 Use dynamic RTL

選擇 Packages標籤,在Runtime packages 去掉 Build with runtime packages 。

**最後,在OK的旁邊有一個 Default (預設值) 把他勾選起來,再按OK。

(要不然你下次還要再把上面的動作再做一次)

讓程式執行完之後直接關掉:
exit(-1);

2009年10月29日 星期四

影像處理

   for( i=0;i<240;i++)
     for( j=0;j<320;j++)
     bigpic[i][j]=Image1->Canvas->Pixels[j][i];


  for (i=0;i<240;i++)
    for (j=0;j<320;j++)
      Image3->Canvas->Pixels[j][i]=bigpic[i][j] ;//圖像的讀取與儲存與陣列有差

2009年10月24日 星期六

數學式呼叫

#include(math.h)      //for cos( ),sin( )
using namespace std;   //for calling function "min"max"


高斯的使用:
int Bitmap2Width=(int) ceil(double);

2009年10月18日 星期日

資料結構

ArrayList Al   //型態為object . 非泛型不能固定型態
 
Stack ST    //型態為泛型.須定義型態
 Note:
    FILO
    判斷stack是否還有value用ST.Count!=0
 
Queue QU
    FIFO
 
Dictionary my_dic
 Note:
       //型態為泛型
 
Hashtable my_hash
 Note:
       //非泛型

2009年10月9日 星期五

STL

使用前要先載入
#include............
====================
特性
vector m_vec;
list m_lst;      //去掉重複.排序
stack m_stk;     //filo: first in last out
queue m_que;   //fifo: first in first out
set m_set;
map m_map;    //去掉重複.排序

====================
vector的用法:
正走訪:
for(vector::iterator p=m_vec.begin();p!=m_vec.end();p++)
 {string& str=*p;}

逆走訪並取用
for(vector::reverse_iterator p=m_vec.rbegin();p!=m_vec.rend();p++)
 {string& str=*p;}

前後中取用:
m_vec.front(); m_vec.back(); m_vec.at(index); m_vec[index];

前後中新增:
m_vec.insert(m_vec.begin(),data); m_vec.push_back(data); m_vec.insert(p,data);
m_vec.insert(&m_vec[index],data);

前後中移除
m_vec.erase(m_vec.begin()); m_vec.erase_back(); m_vec.erase(p);

元素個數    清除全部      尋找元素
m_vec.size();   m_vec.clear();   p=find(m_vec.begin(),m_vec.end(),data);

====================

list的用法:
正走訪並取用
for(list::iterator p=m_lst.begin();p!=m_lst.end();p++)
  {string& str=*p;}

逆走訪並取用
for(list::reverse_iterator p=m_lst.rbegin();p!=m_lst.rend();p++)
  {string& str=*p;}

前後取用
m_lst.front();  m_lst.back();

前後中新增
m_lst.push_front(data); m_lst.push_back(data); m_lst.insert(p,data);

前後中移除
m_lst.pop_front();  m_lst.pop_back();  m_lst.erase(p);

元素個數    清除全部    尋找元素
m_lst.size();   m_lst.clear();  p=find(m_lst.begin(),m_lst.end(),data);

====================

stack的用法:
正走訪並取用
for(stack::container_type::iterator p=m_stk.c.begin();p!=m_stk.c.end();p++)
 {string& str=*p;}

逆走訪並取用
for(stack::container_type::reverse_iterator p=m_stk.c.rbegin();p!=m_stk.c.rend();p++)
 {string& str=*p;}

新增取用移除
m_stk.push(data); m_stk.top(); m_stk.pop();

前後中取用
m_stk.c.front(); m_stk.c.back(); m_stk.c.at(index);

前後中新增
m_stk.c.push_front(data); m_stk.c.push_back(data); m_stk.c.insert(p,data);

後中移除前
m_stk.c.pop_front(); m_stk.c.pop_back(); m_stk.c.erase(p);

元素個數    清除全部     尋找元素
m_stk.size();  m_stk.c.clear();  p=find(m_stk.c.begin(),m_stk.c.end(),data);

====================

queue的用法:
正走訪並取用
for(queue::container_type::iterator p=m_que.c.begin();p!=m_que.c.end();p++)
 {string& str=*p;}

逆走訪並取用
for(queue::container_type::reverse_iteratorp=m_que.c.rbegin();p!=m_que.c.rend();p++)
 {string& str=*p;}

新增取用移除
m_que.push(data); m_que.front(); m_que.back(); m_que.pop();

前後中取用
m_que.c.front(); m_que.c.back(); m_que.c.at(index);

前後中新增
m_que.c.push_front(data); m_que.c.push_back(data); m_que.c.insert(p,data);

前後中移除
m_que.c.pop_front(); m_que.c.pop_back(); m_que.c.erase(p);

元素個數   清除全部     尋找元素
m_que.size(); m_que.c.clear();  p=find(m_que.c.begin(),m_que.c.end(),data);

====================

set的用法:
正走訪並取用
for(set::iterator p=m_set.begin();p!=m_set.end();p++)
{string& str=*p;}

逆走訪並取用
for(set::reverse_iterator p=m_set.rbegin();p!=m_set.rend();p++)
 {string& str=*p;}

新增取用移除
m_set.insert(data); m_set.erase(data);

前後取用
*m_set.begin(); *m_set.rbegin();

前後中新增
m_set.insert(data);

前後中移除
m_set.erase(m_set.begin()) ;m_set.erase(p);

元素個數   清除全部     尋找元素
m_set.size();  m_set.clear();  p=m_set.find(data); 沒找到: p==m_set.end();

====================

map的用法:
正走訪並取用
for(map::iterator p=m_map.begin();p!=m_map.end();p++)
 {const string& str=(*p).first; int& value=(*p).second;}

逆走訪並取用
for(map::reverse_iterator p=m_map.rbegin();p!=m_map.rend();p++)
 {const string& str=(*p).first; int& value=(*p).second;}

新增         取用        移除
m_map[data]=value;  m_map[data];   m_map.erase(data);


取用          元素個數     清除全部
(*p).first;  (*p).second;  m_map.size();  m_map.clear();


尋找元素        尋找元素
p=m_map.find(data);   m_map[data];