Available in the LEADTOOLS Imaging toolkit. |
ShowRemapIntensityDlg Example for C++ 5.0 and later
void CDialogs::OnShowRemapIntensityDlg() { HRESULT hr; int nRet; ILEADRasterDlgKrn_U *m_pRasterDlgKrn = NULL; hr = CoCreateInstance(CLSID_LEADRasterDlgKrn_U, NULL, CLSCTX_ALL, IID_ILEADRasterDlgKrn_U, (LPVOID*)&m_pRasterDlgKrn); ILEADRasterDlgClr_U *m_pRasterDlgClr = NULL; hr = CoCreateInstance(CLSID_LEADRasterDlgClr_U, NULL, CLSCTX_ALL, IID_ILEADRasterDlgClr_U, (LPVOID*)&m_pRasterDlgClr); nRet = m_pRasterDlgKrn->InitDlg(INIT_WITH_COLOR); m_pRasterDlgClr->PutChannel((ChannelConstants)CHANNEL_RED); m_pRasterDlgClr->UIFlags = REMAPINTENSITY_SHOW_PREVIEW | REMAPINTENSITY_SHOW_TOOL_ZOOMLEVEL; m_pRasterDlgClr->Bitmap = m_pLead1.GetBitmap(); nRet = m_pRasterDlgClr->ShowRemapIntensityDlg((long)m_hWnd); if ( nRet == 0 && m_pRasterDlgClr->DialogStatus == DLG_OK ) { m_pLead1.SetRemapTableSize(m_pRasterDlgClr->RemapTableSize); for (int i= 0; i < m_pRasterDlgClr->RemapTableSize; i++) { m_pLead1.put_RemapTable(i, m_pRasterDlgClr->GetRemapTable(i)); } m_pLead1.RemapIntensity(m_pRasterDlgClr->GetChannel()); } }