MarkEzddllManualCN.docx
- 文档编号:24012962
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:29
- 大小:470.64KB
MarkEzddllManualCN.docx
《MarkEzddllManualCN.docx》由会员分享,可在线阅读,更多相关《MarkEzddllManualCN.docx(29页珍藏版)》请在冰豆网上搜索。
MarkEzddllManualCN
1.概述
MarkEzd.dll是北京金橙子科技有限公司提供给用户用于ezcad2和lmc1控制卡二次开发的动态连接库。
MarkEzdDll.h是MarkEzd.dll中输出的函数的头文件。
用户可以使用VC6.0来进行开发。
MarkEzd.dll动态链接库函数的调用方法为显示调用,显式调用方法需要调用WindowsAPI函数加载和释放动态链接库。
显式调用方法如下:
1.调用WindowsAPI函数LoadLibrary()动态加载DLL;
2.调用WindowsAPI函数GetProcAddress()取得将要调用的DLL中函数的指针;用函数指针调用DLL中函数完成相应功能;
3.在程序结束时或不再使用DLL中函数时,调用WindowsAPI函数FreeLibrary()释放动态链接库。
注意:
调用MarkEzd.dll的程序必须放在ezcad2.exe同一个目录下,否则MarkEzd.dll将无法正常工作;而且ezcad2.exe在运行的时候MarkEzd.dll将无法正常使用,所以在使用MarkEzd.dll时必须关闭ezcad2.exe。
2.函数说明
在MarkEzd.dll中所有函数(个别函数除外)返回值均为一个整形的通用错误码
通用错误码定义如下:
#defineLMC1_ERR_SUCCESS0//成功
#defineLMC1_ERR_EZCADRUN1//发现EZCAD在运行
#defineLMC1_ERR_NOFINDCFGFILE2//找不到EZCAD.CFG
#defineLMC1_ERR_FAILEDOPEN3//打开LMC1失败
#defineLMC1_ERR_NODEVICE4//没有有效的lmc1设备
#defineLMC1_ERR_HARDVER5//lmc1版本错误
#defineLMC1_ERR_DEVCFG6//找不到设备配置文件
#defineLMC1_ERR_STOPSIGNAL7//报警信号
#defineLMC1_ERR_USERSTOP8//用户停止
#defineLMC1_ERR_UNKNOW9//不明错误
#defineLMC1_ERR_OUTTIME10//超时
#defineLMC1_ERR_NOINITIAL11//未初始化
#defineLMC1_ERR_READFILE12//读文件错误
#defineLMC1_ERR_OWENWNDNULL13//窗口为空
#defineLMC1_ERR_NOFINDFONT14//找不到指定名称的字体
#defineLMC1_ERR_PENNO15//错误的笔号
#defineLMC1_ERR_NOTTEXT16//指定名称的对象不是文本对象
#defineLMC1_ERR_SAVEFILE17//保存文件失败
#defineLMC1_ERR_NOFINDENT18//找不到指定对象
#defineLMC1_ERR_STATUE19//当前状态下不能执行此操作
注意:
MarkEzd.dll中所有函的TCHAR对象都必须是UNICODE字符。
关于如何把项目设置为UNICODE版请参考附录一。
函数名:
lmc1_Initial
目的:
初始化lmc1控制卡。
语法:
intlmc1_Initial(TCHAR*strEzCadPath,BOOLbTestMode,HWNDhOwenWnd);
strEzCadPath是ezcad2.exe所处的目录的全路径名称;
bTestMode指是否是测试模式
hOwenWnd指拥有用户输入焦点的窗口,用于检测用户暂停消息。
描述:
在程序中必须首先调用lmc1_Initial,其它函数才能工作。
返回值:
通用错误码
函数名:
lmc1_Close
目的:
关闭lmc1控制卡。
语法:
intlmc1_Close();
描述:
在程序中退出时必须调用lmc1_Close来关闭lmc1控制卡。
返回值:
通用错误码
函数名:
lmc1_LoadEzdFile
目的:
打开指定的ezd文件,并清除当前数据库中的所有对象。
语法:
intlmc1_LoadEzdFile(TCHAR*strFileName);
描述:
在程序中一般用此函数来打开一个用户建立ezd模板文件,这样用户就不需要在程序中设置加工参数,因为模板中的加工参数会自动导入。
返回值:
通用错误码
函数名:
lmc1_Mark
目的:
标刻当前数据库里的所有数据。
语法:
intlmc1_Mark(BOOLbFlyMark);
bFlyMark=TRUE使能飞动打标
描述:
在使用lmc1_LoadEzdFile载入ezd文件后即可以使用此函数开始打标加工,此函数一直等待设备加工完毕后才返回。
返回值:
通用错误码
函数名:
lmc1_ChangeTextByName
目的:
更改指定名称的文本对象的文本内容。
语法:
intlmc1_ChangeTextByName(TCHAR*strTextName,TCHAR*strTextNew);
strTextName要更改内容的文本对象的名称
strTextNew新的文本内容
描述:
在使用lmc1_LoadEzdFile载入ezd文件后,在每次加工前即可以使用此函数更改指定对象的内容。
返回值:
通用错误码
函数名:
lmc1_MarkEntity
目的:
标刻当前数据库里的指定名称的对象。
语法:
intlmc1_MarkEntity(TCHAR*strEntName);
描述:
在使用lmc1_LoadEzdFile载入ezd文件后即可以使用此函数开始加工指定名称的对象,此函数一直等待设备加工完毕后才返回。
返回值:
通用错误码
函数名:
lmc1_ReadPort
目的:
读lmc1的输入端口。
语法:
intlmc1_ReadPort(WORD&data);
data输入端口的数据
描述:
在程序中调用lmc1_ReadPort来读入当前输入端口的数据。
返回值:
通用错误码
函数名:
lmc1_WritePort
目的:
写lmc1的输出端口。
语法:
intlmc1_WritePort(WORDdata);
data输出端口的数据
描述:
在程序中调用lmc1_WritePort来输出数据到当前输出端口。
返回值:
通用错误码
函数名:
lmc1_GetPrevBitmap
目的:
得到当前数据库里的所有对象的预览图像。
语法:
Cbitmap*lmc1_GetPrevBitmap(HWNDhwnd,intnBMPWIDTH,intnBMPHEIGHT);
hwnd需要显示当前图像的窗口句柄
nBMPWIDTH需要生成的图像的像素宽度
nBMPHEIGHT需要生成的图像的像素高度
描述:
在程序中调用lmc1_GetPrevBitmap得到当前数据库里的所有对象的预览图像,可以用于更新界面显示。
返回值:
如果成功会返回图像,返回值为空表示失败
函数名:
lmc1_SetDevCfg
目的:
设置设备参数
语法:
intlmc1_SetDevCfg();
描述:
调用lmc1_SetDevCfg会自动弹出设备参数设置对话框,用户可以设置设备参数。
返回值:
通用错误码
函数名:
lmc1_SetHatchParam
目的:
设置当前填充参数。
语法:
intlmc1_SetHatchParam(BOOLbEnableContour,//使能轮廓本身
intbEnableHatch1,//使能填充1
intnPenNo1,//填充笔
intnHatchAttrib1,//填充属性
doubledHatchEdgeDist1,//填充线边距
doubledHatchLineDist1,//填充线间距
doubledHatchStartOffset1,//填充线起始偏移距离
doubledHatchEndOffset1,//填充线结束偏移距离
doubledHatchAngle1,//填充线角度(弧度值)
intbEnableHatch2,//使能填充1
intnPenNo2,//填充笔
intnHatchAttrib2,//填充属性
doubledHatchEdgeDist2,//填充线边距
doubledHatchLineDist2,//填充线间距
doubledHatchStartOffset2,//填充线起始偏移距离
doubledHatchEndOffset2,//填充线结束偏移距离
doubledHatchAngle2);//填充线角度(弧度值)
);
bEnableContour是否使能轮廓
bEnableHatch1使能填充
nPenNo1填充笔号
nHatchAttrib1填充属性,填充属性由下面几个属性相或组合
constintHATCHATTRIB_ALLCALC=0x01;//全部对象作为整体一起计算
constintHATCHATTRIB_BIDIR=0x08;//双向填充
constintHATCHATTRIB_EDGE=0x02;//走一次边
constintHATCHATTRIB_LOOP=0x10;//环形填充
dHatchEdgeDist1填充线边距
dHatchLineDist1填充线间距
dHatchStartOffset1填充线起始偏移距离
dHatchEndOffset1填充线结束偏移距离
dHatchAngle1填充线角度(弧度值)
填充2参数意义同填充1参数一样。
描述:
在程序中调用lmc1_SetHatchParam来设置当前填充参数,当下次向数据库添加对象使能填充时,即使用此填充参数。
返回值:
通用错误码
函数名:
lmc1_SetFontParam
目的:
设置当前默认的字体参数。
语法:
intlmc1_SetFontParam(TCHAR*strFontName
doubledCharHeight,
doubledCharWidth,
doubledCharAngle,
doubledCharSpace,
doubledLineSpace,
BOOLbEqualCharWidth);
StrFontName字体名称
dCharHeight字符高度
dCharWidth字符宽度
dCharAngle字符倾角
dCharSpace字符间距
dLineSpace行间距
bEqualCharWidth等字符宽度模式
描述:
在程序中调用lmc1_SetFontParam来设置当前字体参数,当下次向数据库添加文本对象时即使用此字体参数来生成文本对象。
返回值:
通用错误码
函数名:
lmc1_GetPenParam
目的:
得到对应笔号的参数。
语法:
intlmc1_GetPenParam(intnPenNo,//要设置的笔号(0-255)int&nMarkLoop,//加工次数
double&dMarkSpeed,//标刻次数mm/s
double&dPowerRatio,//功率百分比(0-100%)
double&dCurrent,//电流A
int&nFreq,//频率HZ
int&nQPulseWidth,//Q脉冲宽度us
int&nStartTC,//开始延时us
int&nLaserOffTC,//激光关闭延时us
int&nEndTC,//结束延时us
int&nPolyTC,//拐角延时us//
double&dJumpSpeed,//跳转速度mm/s
int&nJumpPosTC,//跳转位置延时us
int&nJumpDistTC,//跳转距离延时us
double&dEndComp,//末点补偿mm
double&dAccDist,//加速距离mm
double&dPointTime,//打点延时ms
BOOL&bPulsePointMode,//脉冲点模式
int&nPulseNum,//脉冲点数目
double&dFlySpeed);//流水线速度
描述:
在程序中调用lmc1_GetPenParam来读出数据库中对应笔号的参数。
返回值:
通用错误码
函数名:
lmc1_SetPenParam
目的:
设置设备参数
语法:
intlmc1_SetPenParam(intnPenNo,//要设置的笔号(0-255)
intnMarkLoop,//加工次数
doubledMarkSpeed,//标刻次数mm/s
doubledPowerRatio,//功率百分比(0-100%)
doubledCurrent,//电流A
intnFreq,//频率HZ
intnQPulseWidth,//Q脉冲宽度us
intnStartTC,//开始延时us
intnLaserOffTC,//激光关闭延时us
intnEndTC,//结束延时us
intnPolyTC,//拐角延时us//
doubledJumpSpeed,//跳转速度mm/s
intnJumpPosTC,//跳转位置延时us
intnJumpDistTC,//跳转距离延时us
doubledEndComp,//末点补偿mm
doubledAccDist,//加速距离mm
doubledPointTime,//打点延时ms
BOOLbPulsePointMode,//脉冲点模式
intnPulseNum,//脉冲点数目
doubledFlySpeed);//流水线速度s
描述:
在程序中调用lmc1_SetPenParam来设置数据库中对应笔号的参数。
返回值:
通用错误码
函数名:
lmc1_ClearEntLib
目的:
清除对象库里所有对象。
语法:
intlmc1_ClearEntLib();
描述:
在程序中调用lmc1_ClearEntLib来清除对象库里所有对象。
返回值:
通用错误码
函数名:
lmc1_AddTextToLib
目的:
加入新文本到数据库中。
语法:
intlmc1_AddTextToLib(TCHAR*pStr,
TCHAR*pEntName,
doubledPosX,
doubledPosY,
doubledPosZ,
intnAlign
doubledTextRotateAngle,
intnPenNo,
BOOLbHatchText);//是否填充文本对象
pStr要添加的字符串
pEntName字符串对象名称
dPosX字符串的左下角基点的x坐标
dPosY字符串的左下角基点的y坐标
dPosZ字符串对象的z坐标
nAlign对齐方式0-8
//对齐方式时数字代表的意义
//6---5---4
//||
//||
//783
//||
//||
//0-----1-----2
dTextRotateAngle字符串绕基点旋转的角度值(弧度值)
nPenNo文本对象使用的笔号
bHatchText是否填充文本对象
描述:
在程序中调用lmc1_AddTextToLib加入新文本对象到数据库中。
返回值:
通用错误码
函数名:
lmc1_AddCurveToLib
目的:
加入曲线到数据库中。
语法:
intlmc1_AddCurveToLib(doubleptBuf[][2],//曲线顶点数组
intptNum,//曲线顶点数
TCHAR*pEntName,//曲线对象名称
intnPenNo,//曲线对象使用的笔号
intbHatch);//曲线是否填充
描述:
在程序中调用lmc1_AddCurveToLib加入曲线对象到数据库中。
返回值:
通用错误码
函数名:
lmc1_AddFileToLib
目的:
加入指定文件到数据库中。
语法:
intlmc1_AddFileToLib(TCHAR*pFileName,//文件名称
TCHAR*pEntName,//文件对象名称
doubledPosX,//文件左下角基点x坐标
doubledPosY,//文件左下角基点y坐标
doubledPosZ,//文件z坐标
intnAlign,//对齐方式0-8
doubledRatio,//文件缩放比例
intnPenNo,//对象使用的加工参数
BOOLbHatchFile)
pFileName要添加的文件名称,支持的文件格式有ezd,dxf,dst,
plt,ai,bmp,jpg,tga,png,gif,tiff等
pEntName文件对象名称
dPosX文件的左下角基点的x坐标
dPosY文件的左下角基点的y坐标
dPosZ文件对象的z坐标
nAlign对齐方式0-8
dRatio文件缩放比例
nPenNo文件对象使用的笔号
bHatchFile是否填充文件对象
描述:
在程序中调用lmc1_AddFileToLib加入新文件对象到数据库中。
返回值:
通用错误码
函数名:
lmc1_AddBarCodeToLib
目的:
增加条码对象到数据库里。
语法:
intlmc1_AddBarCodeToLib((TCHAR*pStr,
TCHAR*pEntName,
doubledPosX,
doubledPosY,
doubledPosZ,
intnAlign,
intnPenNo,
intbHatchText,
intnBarcodeType,
WORDwBarCodeAttrib,
doubledHeight,
doubledNarrowWidth,
doubledBarWidthScale[4],
doubledSpaceWidthScale[4],
doubledMidCharSpaceScale,
doubledQuietLeftScale,
doubledQuietMidScale,
doubledQuietRightScale,
doubledQuietTopScale,
doubledQuietBottomScale,
intnRow,
intnCol,
intnCheckLevel,
intnSizeMode,
doubledTextHeight,
doubledTextWidth,
doubledTextOffsetX,
doubledTextOffsetY,
doubledTextSpace,
TCHAR*pTextFontName);
pStr条码表示的字符串
pEntName条码对象名称
dPosX,条码左下角基点x坐标
dPosY条码左下角基点y坐标
dPosZ条码z坐标
nAlign,对齐方式0-8
nPenNo使用的笔号
bHatchText是否填充条码
nBarcodeType条码类型
#defineBARCODETYPE_390
#defineBARCODETYPE_931
#defineBARCODETYPE_128A2
#defineBARCODETYPE_128B3
#defineBARCODETYPE_128C4
#defineBARCODETYPE_128OPT5
#defineBARCODETYPE_EAN128A6
#defineBARCODETYPE_EAN128B7
#defineBARCODETYPE_EAN128C8
#defineBARCODETYPE_EAN139
#defineBARCODETYPE_EAN810
#defineBARCODETYPE_UPCA11
#defineBARCODETYPE_UPCE12
#defineBARCODETYPE_2513
#defineBARCODETYPE_INTER2514
#defineBARCODETYPE_CODABAR15
#defineBARCODETYPE_PDF41716
#defineBARCODETYPE_DATAMTX17
wBarCodeAttrib条码属性
#defineBARCODEATTRIB_REVERSE0x0008//条码反转
#defineBARCODEATTRIB_HUMANREAD0x1000//显示人识别字符
#defineBARCODEATTRIB_CHECKNUM0x0004//需要校验码
#defineBARCODEATTRIB_PDF417_SHORTMODE0x0040//PDF417为缩短模式
#defineBARCODEATTRIB_DATAMTX_DOTMODE0x0080//DataMtrix为点模式
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MarkEzddllManualCN