產品中心
PRODUCTS CNTERNAV340-3232西克SICK室內360度水平激光掃描儀我公司是SICK一級代理,SICK激光掃描儀大量庫存,原裝德國進口,假一罰十
NAV340-3232西克SICK室內360度水平激光掃描儀
NAV340-3232西克SICK室內360度水平激光掃描儀
3.3實現函數
//////////////////////////////////////////////
//將接收到的十六進制數據轉換為十進制
void CSerialTestDlg::HexToDec(CString str){}
//////////////////////////////////////////////
//完成對應采樣角頻率的處理
if(m_angleComb.GetCurSel()==0){} 0.50
if(m_angleComb.GetCurSel()==1){} 10
//////////////////////////////////////////////
//截取需要的字符串長度
StrData.GetLength()==2244
//////////////////////////////////////////////
//高位,低位換位
for(k=0;k<=2160;k+=6){}
//////////////////////////////////////////////
//十六進制轉為十進制
do
{}
while(j<len2);
4.坐標標定
根據采樣角頻率的不同,一個周期的距離數據分別有181個(10 )和361個(0.50 )數據。如下圖所示:d為我們得到的數據,a為對應的角度,對應到笛卡爾坐標中:
x=d*cosa (1)
y=d*sina (2)
4.1坐標系的繪制
實現函數
void CSerialTestDlg::DrawPoint(int dis[]){}
為了方便重復繪制和清除舊圖,程序中的坐標系為加載的位圖在void CSerialTestDlg::OnPaint()中加載。資源中位圖文件為IDB_BITMAP1。加載后的如下圖:
4.2數據標定
首先初始化double angle[361]和double angle1[181]這兩個數據,分別存儲0.50 和10 兩種采樣角頻率的361個(00~3600)和181(00~1800)個角度。
根據轉換到笛卡爾坐標的轉換式,算出坐標中的x,y值:
x=dis*cos(angle1*PI/180);
y=dis*sin(angle1*PI/180);
由于計算機中對屏幕坐標的定義如左圖所示:y軸是下正上負。為了按正常視覺效果來顯示,需要對y坐標值取負。
CPoint m_ptEnd;
公司郵箱: m13636477536@163.com
服務熱線: 13636477536
公司地址: 武漢市武昌區(qū)中南路街武珞路628號