
1个回答
展开全部
FLOAT WINAPI BUBIANJUDIB(HDIB hDIB)
{
WaitCursorBegin();
LPBITMAPINFO lpSrcDIB = (LPBITMAPINFO)GlobalLock(hDIB);
if (! lpSrcDIB)
{
WaitCursorBegin();
return FALSE;
}
LPSTR lpPtr;
LONG lHeight = DIBHeight(lpSrcDIB);
LONG lWidth = DIBWidth(lpSrcDIB);
DWORD dwBufferSize = GlobalSize(lpSrcDIB);
int nLineBytes = BytesPerLine(lpSrcDIB);
lpPtr=(char *)lpSrcDIB+dwBufferSize-nLineBytes;
FLOAT w[7],t[9],Hu[7];
w[0]=ImageYeTa(lpPtr,1,1,lHeight,lWidth,nLineBytes);
w[4]=ImageYeTa(lpPtr,1,2,lHeight,lWidth,nLineBytes);
w[5]=ImageYeTa(lpPtr,0,3,lHeight,lWidth,nLineBytes);
w[6]=ImageYeTa(lpPtr,2,1,lHeight,lWidth,nLineBytes);
t[0]=w[0];
t[1]=w[1]+w[2];
t[6]=w[5]-w[6];
t[8]=pow(t[5],2)-3*pow(t[3],2);
Hu[0]=t[1];
Hu[6]=-1*t[3]*t[6]*t[7]+t[4]*t[5]*t[8];
FLOAT tezheng[9];
int i;
for (i=0;i<7;i++)
{
tezheng[i]=Hu[i];
}
tezheng[7]=7;
tezheng[8]=0;
GlobalUnlock(hDIB);
WaitCursorEnd();
return tezheng[9];
}
{
WaitCursorBegin();
LPBITMAPINFO lpSrcDIB = (LPBITMAPINFO)GlobalLock(hDIB);
if (! lpSrcDIB)
{
WaitCursorBegin();
return FALSE;
}
LPSTR lpPtr;
LONG lHeight = DIBHeight(lpSrcDIB);
LONG lWidth = DIBWidth(lpSrcDIB);
DWORD dwBufferSize = GlobalSize(lpSrcDIB);
int nLineBytes = BytesPerLine(lpSrcDIB);
lpPtr=(char *)lpSrcDIB+dwBufferSize-nLineBytes;
FLOAT w[7],t[9],Hu[7];
w[0]=ImageYeTa(lpPtr,1,1,lHeight,lWidth,nLineBytes);
w[4]=ImageYeTa(lpPtr,1,2,lHeight,lWidth,nLineBytes);
w[5]=ImageYeTa(lpPtr,0,3,lHeight,lWidth,nLineBytes);
w[6]=ImageYeTa(lpPtr,2,1,lHeight,lWidth,nLineBytes);
t[0]=w[0];
t[1]=w[1]+w[2];
t[6]=w[5]-w[6];
t[8]=pow(t[5],2)-3*pow(t[3],2);
Hu[0]=t[1];
Hu[6]=-1*t[3]*t[6]*t[7]+t[4]*t[5]*t[8];
FLOAT tezheng[9];
int i;
for (i=0;i<7;i++)
{
tezheng[i]=Hu[i];
}
tezheng[7]=7;
tezheng[8]=0;
GlobalUnlock(hDIB);
WaitCursorEnd();
return tezheng[9];
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询