网上看了几个MFC+Halcon对图像进行缩放、平移,发现很多是不完整或者没有真正实现这2个功能,所以自己去真正实现
实现平台:VS2010+HALCON18.11。
主要知识点:
1、halcon与MFC窗口关联
2、halcon几个简单函数的使用比如
OpenWindow
ReadImage
GetImageSize
ClearWindow
SetPart
DispObj
核心代码:
#pragma once
#include "afxwin.h"
// CLocationDlg dialog
class CLocationDlg : public CDialogEx
{
// Construction
public:
CLocationDlg(CWnd* pParent = NULL); // standard constructor
// Dialog Data
enum { IDD = IDD_LOCATION_DIALOG };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
public:
bool InitHalconWindow(CWnd *hWnd, HTuple &hWindow);//创建关联halcon窗口句柄
void DisPlayImage(HObject hImageSrc,HTuple hWindow);//显示图片
public:
HTuple m_hWindow;//halcon窗口句柄
bool m_bInitHalconWindow;//halcon窗口句柄是否创建成功
HObject m_hImage;//halcon图片句柄
double m_dScale;//缩放倍数
CPoint m_ptSt