📄 capture.cpp
字号:
//---------------------------------------------------------------------------
//图象捕捉
#include <vcl.h>
#pragma hdrstop
#include "Capture.h"
#include "SDK2000.h"
#include "dynamic.h"
#include "dido.h"
#include "CBuilder.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
//初始化控制器拥有车道的图象捕捉卡
int InitCRCapture(void *pCR)
{
HWND hMainWnd;
TForm *pForm;
ROADWAY *pRoad;
WORD *pRoadNo;
int nRoads;
int i,rc,nVideoType;
if(pCR==NULL)return(FALSE);
pForm = Application->MainForm;
if(pForm!=NULL)hMainWnd=pForm->Handle;
else hMainWnd=NULL;
rc=TRUE;
nRoads = ((CONTROLER *)pCR)->nRoads;
pRoadNo = ((CONTROLER *)pCR)->wzRoadNo;
for(i=0;i<nRoads && rc;i++){
pRoad = (ROADWAY *)GetRoadwayWithNo(pRoadNo[i]);//根据编号或通讯ID获取车道
if(pRoad!=NULL)
nVideoType = pRoad->nVideoType;//摄象机类型
else nVideoType = ROADVIDEO_NONE;
if(nVideoType==ROADVIDEO_SDK2000)
rc=SDK2000_Init(hMainWnd,NULL);
}
return(TRUE);
}
//关闭控制器拥有车道的图象捕捉卡
int CloseCRCapture(void *pCR)
{
ROADWAY *pRoad;
WORD *pRoadNo;
int nRoads;
int i,rc,nVideoType;
if(pCR==NULL)return(FALSE);
rc=TRUE;
nRoads = ((CONTROLER *)pCR)->nRoads;
pRoadNo = ((CONTROLER *)pCR)->wzRoadNo;
for(i=0;i<nRoads && rc;i++){
pRoad = (ROADWAY *)GetRoadwayWithNo(pRoadNo[i]);//根据编号或通讯ID获取车道
if(pRoad!=NULL){
nVideoType = pRoad->nVideoType;//摄象机类型
DeleteBlobData(pRoad->pPhoto);//释放BLOB缓冲区
pRoad->pPhoto = NULL;
}
else nVideoType = ROADVIDEO_NONE;
if(nVideoType==ROADVIDEO_SDK2000)
SDK2000_UnInit();
}
return(TRUE);
}
//捕捉车道的图象
int CaptureRoadPhoto(void *pRoad)
{
ROADWAY *t;
void *pDIB,*pPhoto;
int rc;
int nVideoType,nChan;
if(pRoad==NULL)return(FALSE);
t = (ROADWAY *)pRoad;
nVideoType = t->nVideoType;//摄象机类型
nChan= t->nVideoID; //摄像机通道
pPhoto = t->pPhoto;
DeleteBlobData(pPhoto);//释放BLOB缓冲区
pPhoto = NULL;
if(nVideoType==ROADVIDEO_SDK2000){
SDK2000_SetInPin(nChan+1);//设置视频源(1:AV1 2:AV2 0:SVHS)
Sleep(100); //延时
pDIB=SDK2000_GetCurrentDib();//获取当前图像
pPhoto =DIBToBlobData(pDIB);//DIB转换到BLOB(binary large object)数据
SDK2000_FreeOneDib(pDIB);
}
t->pPhoto=pPhoto;
return((int)pPhoto);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -