📄 pximage.h
字号:
~PXImageIteratorBTRL() {}; PXImageIterator& operator ++ ();};inline PXImageIterator::PXImageIterator(PXImage* pImg, INT32 lX, INT32 lY){ HX_ASSERT(pImg); m_pImage = pImg; m_lX = lX; m_lY = lY; if (m_lX >= 0 && m_lX < m_pImage->GetWidth() && m_lY >= 0 && m_lY < m_pImage->GetHeight()) { m_pPixel = (UINT32*) m_pImage->GetPixel(m_lX, m_lY); } else { m_pPixel = NULL; } m_pImage->AddRef();}inline PXImageIterator::~PXImageIterator(){ HX_RELEASE(m_pImage);}inline BOOL PXImageIterator::operator == (const PXImageIterator& itr){ BOOL bRet = FALSE; if (m_pImage == itr.m_pImage && m_lX == itr.m_lX && m_lY == itr.m_lY) { bRet = TRUE; } return bRet;}inline BOOL PXImageIterator::operator != (const PXImageIterator& itr){ return !(*this == itr);}inline UINT32& PXImageIterator::operator * (){ HX_ASSERT(m_pPixel); return *m_pPixel;}inline UINT32& PXImageIterator::GetPixel(){ HX_ASSERT(m_pPixel); return *m_pPixel;}inline PXImageIterator& PXImageIteratorLRTB::operator ++ (){ if (m_lX >= 0 && m_lX < m_pImage->GetWidth() && m_lY >= 0 && m_lY < m_pImage->GetHeight()) { m_lX++; if (m_lX < m_pImage->GetWidth()) { m_pPixel++; } else { m_lY++; if (m_lY < m_pImage->GetHeight()) { m_lX = 0; m_pPixel = (UINT32*) m_pImage->GetPixel(m_lX, m_lY); } } } return *this;}inline PXImageIterator& PXImageIteratorLRBT::operator ++ (){ if (m_lX >= 0 && m_lX < m_pImage->GetWidth() && m_lY >= 0 && m_lY < m_pImage->GetHeight()) { m_lX++; if (m_lX < m_pImage->GetWidth()) { m_pPixel++; } else { m_lY--; if (m_lY >= 0) { m_lX = 0; m_pPixel = (UINT32*) m_pImage->GetPixel(m_lX, m_lY); } else { m_lX = m_pImage->GetWidth(); m_lY = m_pImage->GetHeight(); } } } return *this;}inline PXImageIterator& PXImageIteratorRLTB::operator ++ (){ if (m_lX >= 0 && m_lX < m_pImage->GetWidth() && m_lY >= 0 && m_lY < m_pImage->GetHeight()) { m_lX--; if (m_lX >= 0) { m_pPixel--; } else { m_lY++; if (m_lY < m_pImage->GetHeight()) { m_lX = m_pImage->GetWidth() - 1; m_pPixel = (UINT32*) m_pImage->GetPixel(m_lX, m_lY); } else { m_lX = m_pImage->GetWidth(); m_lY = m_pImage->GetHeight(); } } } return *this;}inline PXImageIterator& PXImageIteratorRLBT::operator ++ (){ if (m_lX >= 0 && m_lX < m_pImage->GetWidth() && m_lY >= 0 && m_lY < m_pImage->GetHeight()) { m_lX--; if (m_lX >= 0) { m_pPixel--; } else { m_lY--; if (m_lY >= 0) { m_lX = m_pImage->GetWidth() - 1; m_pPixel = (UINT32*) m_pImage->GetPixel(m_lX, m_lY); } else { m_lX = m_pImage->GetWidth(); m_lY = m_pImage->GetHeight(); } } } return *this;}inline PXImageIterator& PXImageIteratorTBLR::operator ++ (){ if (m_lX >= 0 && m_lX < m_pImage->GetWidth() && m_lY >= 0 && m_lY < m_pImage->GetHeight()) { m_lY++; if (m_lY < m_pImage->GetHeight()) { m_pPixel += m_pImage->GetRowJump32(); } else { m_lX++; if (m_lX < m_pImage->GetWidth()) { m_lY = 0; m_pPixel = (UINT32*) m_pImage->GetPixel(m_lX, m_lY); } else { m_lX = m_pImage->GetWidth(); m_lY = m_pImage->GetHeight(); } } } return *this;}inline PXImageIterator& PXImageIteratorTBRL::operator ++ (){ if (m_lX >= 0 && m_lX < m_pImage->GetWidth() && m_lY >= 0 && m_lY < m_pImage->GetHeight()) { m_lY++; if (m_lY < m_pImage->GetHeight()) { m_pPixel += m_pImage->GetRowJump32(); } else { m_lX--; if (m_lX >= 0) { m_lY = 0; m_pPixel = (UINT32*) m_pImage->GetPixel(m_lX, m_lY); } else { m_lX = m_pImage->GetWidth(); m_lY = m_pImage->GetHeight(); } } } return *this;}inline PXImageIterator& PXImageIteratorBTLR::operator ++ (){ if (m_lX >= 0 && m_lX < m_pImage->GetWidth() && m_lY >= 0 && m_lY < m_pImage->GetHeight()) { m_lY--; if (m_lY >= 0) { m_pPixel -= m_pImage->GetRowJump32(); } else { m_lX++; if (m_lX < m_pImage->GetWidth()) { m_lY = m_pImage->GetHeight() - 1; m_pPixel = (UINT32*) m_pImage->GetPixel(m_lX, m_lY); } else { m_lX = m_pImage->GetWidth(); m_lY = m_pImage->GetHeight(); } } } return *this;}inline PXImageIterator& PXImageIteratorBTRL::operator ++ (){ if (m_lX >= 0 && m_lX < m_pImage->GetWidth() && m_lY >= 0 && m_lY < m_pImage->GetHeight()) { m_lY--; if (m_lY >= 0) { m_pPixel -= m_pImage->GetRowJump32(); } else { m_lX--; if (m_lX >= 0) { m_lY = m_pImage->GetHeight() - 1; m_pPixel = (UINT32*) m_pImage->GetPixel(m_lX, m_lY); } else { m_lX = m_pImage->GetWidth(); m_lY = m_pImage->GetHeight(); } } } return *this;}#define GETALPHA32(p) ( (p) >> 24)#define GETRED32(p) (((p) & 0x00FF0000) >> 16)#define GETGREEN32(p) (((p) & 0x0000FF00) >> 8)#define GETBLUE32(p) ( (p) & 0x000000FF )#define BLENDMULT(A,B,a) (((A)*(a) + (B)*(256-(a))) >> 8)#define ALPHA_EXACT(A,B,a) ((((A)*(a) + (B)*(255-(a))) + 127) / 255)#define ALPHABLEND(A,B,a) (((A)*(a) + (B)*(256-(a)) + 128) >> 8)#define MAKEPIXEL32(r,g,b) (((r) << 16) | ((g) << 8) | (b))#define MAKE_RGB32(r,g,b) (((r) << 16) | ((g) << 8) | (b))#define MAKE_RGBA32(r,g,b,a) (((a) << 24) | ((r) << 16) | ((g) << 8) | (b))#define FILTER_OUT_UNSUPPORTED_FORMATS \if (m_cBitmapInfo.biBitCount != 32 || \ m_cBitmapInfo.biCompression != HX_RGB) \{ \ HX_ASSERT(FALSE); \ return HXR_FAIL; \}#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -