
使用VC++编写一个对灰度图像做线性拉伸的动态库文件和DLM文件。
步骤一:使用VC++生成动态连接库(DLL)和DLM文件
1.打开VC++编译器
2.创建一个Win32 Dynamic-Link Library
工程名字:imageStretch
动态库类型选择:An empty DLL project
3.编写ImageStretch.dlm文件(ASCII文件)
4.将X:\....\external目录下的export.h加入到工程中
5.将X:\...\bin\bin.x86目录下的IDL.lib加入到工程中
6.建立文本文件imageStretch.def添加到工程中,并编辑
7.建立imageStretch.h加入工程中并编辑
8.编写imageStretch.c函数加入工程中
9.创建imageStretch_ExamplesStartup.c添加到工程中
10.编译运行该工程,Debug目录下会生成imageStretch.dll。
步骤二:使用IDL调用DLM
拷贝Debug目录下的imageStretch.dll和工程目录下的imageStretch.dlm到X:\...\bin\bin.x86下,启动IDL,在IDL命令行中写如下代码,测试DLM:
1.输入: help,/dlm,'imageStretch'
2.测试数据: DLM_Load,‘imageStretch’
a=bytscl(dist(200))
window,1,xsize=200,ysize=200
tv,a
IMAGESTRETCH,a,200,200,20,200
tv,a