一区二区三区精品,九价1300一针是国产还是进口,欧美视频三区,蜜桃六月天综合网

金橙子dll使用說明

浪起激光2018-08-15242035

1. 概述

MarkEzd.dll 是北京金橙子科技有限公司提供給用戶用于ezcad2和lmc1控制卡二次開發(fā)的動(dòng)態(tài)連接庫。

MarkEzdDll.h是MarkEzd.dll中輸出的函數(shù)的頭文件。

 

用戶可以使用VC6.0來進(jìn)行開發(fā)。

MarkEzd.dll動(dòng)態(tài)鏈接庫函數(shù)的調(diào)用方法為顯示調(diào)用,顯式調(diào)用方法需要調(diào)用Windows API函數(shù)加載和釋放動(dòng)態(tài)鏈接庫。

顯式調(diào)用方法如下:

1.調(diào)用Windows API函數(shù)LoadLibrary()動(dòng)態(tài)加載DLL;

2.調(diào)用Windows API函數(shù)GetProcAddress()取得將要調(diào)用的DLL中函數(shù)的指針;用函數(shù)指針調(diào)用DLL中函數(shù)完成相應(yīng)功能;

3.在程序結(jié)束時(shí)或不再使用DLL中函數(shù)時(shí),調(diào)用Windows API函數(shù)FreeLibrary()釋放動(dòng)態(tài)鏈接庫。

注意:調(diào)用MarkEzd.dll的程序必須放在ezcad2.exe同一個(gè)目錄下,否則MarkEzd.dll將無法正常工作;而且ezcad2.exe在運(yùn)行的時(shí)候MarkEzd.dll將無法正常使用,所以在使用MarkEzd.dll時(shí)必須關(guān)閉ezcad2.exe。

2.函數(shù)說明

在MarkEzd.dll中所有函數(shù)(個(gè)別函數(shù)除外)返回值均為一個(gè)整形的通用錯(cuò)誤碼

通用錯(cuò)誤碼定義如下:

#define LMC1_ERR_SUCCESS         0  //成功

#define LMC1_ERR_EZCADRUN        1  //發(fā)現(xiàn)EZCAD在運(yùn)行

#define LMC1_ERR_NOFINDCFGFILE   2  //找不到EZCAD.CFG

#define LMC1_ERR_FAILEDOPEN      3  //打開LMC1失敗

#define LMC1_ERR_NODEVICE        4  //沒有有效的lmc1設(shè)備

#define LMC1_ERR_HARDVER         5  //lmc1版本錯(cuò)誤

#define LMC1_ERR_DEVCFG          6  //找不到設(shè)備配置文件

#define LMC1_ERR_STOPSIGNAL      7  //報(bào)警信號(hào)

#define LMC1_ERR_USERSTOP        8  //用戶停止

#define LMC1_ERR_UNKNOW         9  //不明錯(cuò)誤

#define LMC1_ERR_OUTTIME         10 //超時(shí)

#define LMC1_ERR_NOINITIAL       11 //未初始化

#define LMC1_ERR_READFILE        12 //讀文件錯(cuò)誤

#define LMC1_ERR_OWENWNDNULL     13 //窗口為空

#define LMC1_ERR_NOFINDFONT      14 //找不到指定名稱的字體

#define LMC1_ERR_PENNO           15 //錯(cuò)誤的筆號(hào)

#define LMC1_ERR_NOTTEXT         16 //指定名稱的對(duì)象不是文本對(duì)象

#define LMC1_ERR_SAVEFILE        17 //保存文件失敗

#define LMC1_ERR_NOFINDENT           18 //找不到指定對(duì)象

#define LMC1_ERR_STATUE        19 //當(dāng)前狀態(tài)下不能執(zhí)行此操作

注意:MarkEzd.dll中所有函的TCHAR對(duì)象都必須是UNICODE字符。關(guān)于如何把項(xiàng)目設(shè)置為UNICODE版請(qǐng)參考附錄一。

函 數(shù) 名:lmc1_Initial

目    的:初始化lmc1控制卡。

語    法:int lmc1_Initial(TCHAR* strEzCadPath,BOOL bTestMode,HWND hOwenWnd);

strEzCadPath是ezcad2.exe所處的目錄的全路徑名稱;

bTestMode  指是否是測試模式

hOwenWnd 指擁有用戶輸入焦點(diǎn)的窗口,用于檢測用戶暫停消息。

描    述:在程序中必須首先調(diào)用lmc1_Initial,其它函數(shù)才能工作。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_Close

目    的:關(guān)閉lmc1控制卡。

語    法:int lmc1_Close();

描    述:在程序中退出時(shí)必須調(diào)用lmc1_Close來關(guān)閉lmc1控制卡。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_LoadEzdFile

目    的:打開指定的ezd文件,并清除當(dāng)前數(shù)據(jù)庫中的所有對(duì)象。

語    法:int lmc1_LoadEzdFile(TCHAR* strFileName);

描    述:在程序中一般用此函數(shù)來打開一個(gè)用戶建立ezd模板文件,這樣用戶就不需要在程序中設(shè)置加工參數(shù),因?yàn)槟0逯械募庸?shù)會(huì)自動(dòng)導(dǎo)入。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_Mark

目    的:標(biāo)刻當(dāng)前數(shù)據(jù)庫里的所有數(shù)據(jù)。

語    法:int lmc1_Mark(BOOL bFlyMark);

bFlyMark= TRUE 使能飛動(dòng)打標(biāo)

描    述:在使用lmc1_LoadEzdFile載入ezd文件后即可以使用此函數(shù)開始打標(biāo)加工,此函數(shù)一直等待設(shè)備加工完畢后才返回。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_ChangeTextByName

目    的:更改指定名稱的文本對(duì)象的文本內(nèi)容。

語    法:int lmc1_ChangeTextByName(TCHAR* strTextName, TCHAR* strTextNew);

strTextName     要更改內(nèi)容的文本對(duì)象的名稱

strTextNew      新的文本內(nèi)容

 

描    述:在使用lmc1_LoadEzdFile載入ezd文件后,在每次加工前即可以使用此函數(shù)更改指定對(duì)象的內(nèi)容。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_MarkEntity

目    的:標(biāo)刻當(dāng)前數(shù)據(jù)庫里的指定名稱的對(duì)象。

語    法:int lmc1_MarkEntity(TCHAR* strEntName);

描    述:在使用lmc1_LoadEzdFile載入ezd文件后即可以使用此函數(shù)開始加工指定名稱的對(duì)象,此函數(shù)一直等待設(shè)備加工完畢后才返回。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_ReadPort

目    的:讀lmc1的輸入端口。

語    法:int lmc1_ReadPort(WORD& data);

data 輸入端口的數(shù)據(jù)

描    述:在程序中調(diào)用lmc1_ReadPort來讀入當(dāng)前輸入端口的數(shù)據(jù)。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_WritePort

目    的:寫lmc1的輸出端口。

語    法:int lmc1_WritePort(WORD data);

data 輸出端口的數(shù)據(jù)

描    述:在程序中調(diào)用lmc1_WritePort來輸出數(shù)據(jù)到當(dāng)前輸出端口。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_GetPrevBitmap

目    的:得到當(dāng)前數(shù)據(jù)庫里的所有對(duì)象的預(yù)覽圖像。

語  法:Cbitmap* lmc1_GetPrevBitmap(HWND hwnd,int nBMPWIDTH,int nBMPHEIGHT);

hwnd需要顯示當(dāng)前圖像的窗口句柄

nBMPWIDTH 需要生成的圖像的像素寬度

nBMPHEIGHT需要生成的圖像的像素高度

描    述:在程序中調(diào)用lmc1_GetPrevBitmap得到當(dāng)前數(shù)據(jù)庫里的所有對(duì)象的預(yù)覽圖像,可以用于更新界面顯示。

返 回 值:如果成功會(huì)返回圖像,返回值為空表示失敗

 

函 數(shù) 名:lmc1_SetDevCfg

目    的:設(shè)置設(shè)備參數(shù)

語    法:int lmc1_SetDevCfg();

描    述:調(diào)用lmc1_SetDevCfg會(huì)自動(dòng)彈出設(shè)備參數(shù)設(shè)置對(duì)話框,用戶可以設(shè)置設(shè)備參數(shù)。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_SetHatchParam

目    的:設(shè)置當(dāng)前填充參數(shù)。

語    法:int lmc1_SetHatchParam(BOOL   bEnableContour,//使能輪廓本身

  int    bEnableHatch1,//使能填充1

  int    nPenNo1,//填充筆

  int    nHatchAttrib1,//填充屬性

  double dHatchEdgeDist1,//填充線邊距

  double dHatchLineDist1,//填充線間距

  double dHatchStartOffset1,//填充線起始偏移距離

  double dHatchEndOffset1,//填充線結(jié)束偏移距離

  double dHatchAngle1,//填充線角度 (弧度值)

  int    bEnableHatch2,//使能填充1

  int    nPenNo2,//填充筆

  int    nHatchAttrib2,//填充屬性

  double dHatchEdgeDist2,//填充線邊距

  double dHatchLineDist2,//填充線間距

  double dHatchStartOffset2,//填充線起始偏移距離

  double dHatchEndOffset2,//填充線結(jié)束偏移距離

  double dHatchAngle2);//填充線角度 (弧度值)

);

bEnableContour 是否使能輪廓

bEnableHatch1  使能填充

nPenNo1       填充筆號(hào)

nHatchAttrib1   填充屬性,填充屬性由下面幾個(gè)屬性相或組合

 

const int HATCHATTRIB_ALLCALC = 0x01;//全部對(duì)象作為整體一起計(jì)算

const int HATCHATTRIB_BIDIR   = 0x08;//雙向填充

const int HATCHATTRIB_EDGE    = 0x02;//走一次邊

const int HATCHATTRIB_LOOP    = 0x10;//環(huán)形填充

dHatchEdgeDist1   填充線邊距

dHatchLineDist1    填充線間距

dHatchStartOffset1  填充線起始偏移距離

dHatchEndOffset1  填充線結(jié)束偏移距離

dHatchAngle1     填充線角度 (弧度值)

填充2參數(shù)意義同填充1參數(shù)一樣。

描    述:在程序中調(diào)用lmc1_SetHatchParam來設(shè)置當(dāng)前填充參數(shù),當(dāng)下次向數(shù)據(jù)庫添加對(duì)象使能填充時(shí),即使用此填充參數(shù)。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_SetFontParam

目    的:設(shè)置當(dāng)前默認(rèn)的字體參數(shù)。

語    法:int lmc1_SetFontParam(TCHAR* strFontName

 double dCharHeight,

 double dCharWidth,

 double dCharAngle,

 double dCharSpace,

 double dLineSpace,

 BOOL   bEqualCharWidth);

StrFontName  字體名稱

dCharHeight   字符高度

dCharWidth   字符寬度

dCharAngle   字符傾角

dCharSpace   字符間距

dLineSpace    行間距

bEqualCharWidth  等字符寬度模式

描    述:在程序中調(diào)用lmc1_ SetFontParam來設(shè)置當(dāng)前字體參數(shù),當(dāng)下次向數(shù)據(jù)庫添加文本對(duì)象時(shí)即使用此字體參數(shù)來生成文本對(duì)象。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_GetPenParam

目    的:得到對(duì)應(yīng)筆號(hào)的參數(shù)。

語    法:int lmc1_GetPenParam(int      nPenNo,//要設(shè)置的筆號(hào)(0-255)    int&      nMarkLoop,//加工次數(shù)

 double&   dMarkSpeed,//標(biāo)刻次數(shù)mm/s

 double&   dPowerRatio,//功率百分比(0-100%)

 double&   dCurrent,//電流A

 int&      nFreq,//頻率HZ

 int&      nQPulseWidth,//Q脈沖寬度us

 int&      nStartTC,//開始延時(shí)us

 int&      nLaserOffTC,//激光關(guān)閉延時(shí)us

 int&      nEndTC,//結(jié)束延時(shí)us

 int&      nPolyTC,//拐角延時(shí)us   //

 double&   dJumpSpeed, //跳轉(zhuǎn)速度mm/s

 int&      nJumpPosTC, //跳轉(zhuǎn)位置延時(shí)us

 int&      nJumpDistTC,//跳轉(zhuǎn)距離延時(shí)us

 double&   dEndComp,//末點(diǎn)補(bǔ)償mm

 double&   dAccDist,//加速距離mm

 double&   dPointTime,//打點(diǎn)延時(shí) ms  

 BOOL&     bPulsePointMode,//脈沖點(diǎn)模式

 int&      nPulseNum,//脈沖點(diǎn)數(shù)目

 double&   dFlySpeed);//流水線速度


描    述:在程序中調(diào)用lmc1_GetPenParam來讀出數(shù)據(jù)庫中對(duì)應(yīng)筆號(hào)的參數(shù)。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_SetPenParam

目    的:設(shè)置設(shè)備參數(shù)

語    法:int lmc1_SetPenParam(int      nPenNo,//要設(shè)置的筆號(hào)(0-255)  

 int      nMarkLoop,//加工次數(shù)

 double   dMarkSpeed,//標(biāo)刻次數(shù)mm/s

 double   dPowerRatio,//功率百分比(0-100%)

 double   dCurrent,//電流A

 int      nFreq,//頻率HZ

 int      nQPulseWidth,//Q脈沖寬度us

 int      nStartTC,//開始延時(shí)us

int      nLaserOffTC,//激光關(guān)閉延時(shí)us

 int      nEndTC,//結(jié)束延時(shí)us

 int      nPolyTC,//拐角延時(shí)us   //

 double   dJumpSpeed, //跳轉(zhuǎn)速度mm/s

 int      nJumpPosTC, //跳轉(zhuǎn)位置延時(shí)us

 int      nJumpDistTC,//跳轉(zhuǎn)距離延時(shí)us

 double   dEndComp,//末點(diǎn)補(bǔ)償mm

 double   dAccDist,//加速距離mm

 double   dPointTime,//打點(diǎn)延時(shí) ms  

 BOOL     bPulsePointMode,//脈沖點(diǎn)模式

 int      nPulseNum, //脈沖點(diǎn)數(shù)目

 double   dFlySpeed); //流水線速度s

描    述:在程序中調(diào)用lmc1_SetPenParam來設(shè)置數(shù)據(jù)庫中對(duì)應(yīng)筆號(hào)的參數(shù)。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_ClearEntLib

目    的:清除對(duì)象庫里所有對(duì)象。

語    法:int lmc1_ClearEntLib();

描    述:在程序中調(diào)用lmc1_ ClearEntLib來清除對(duì)象庫里所有對(duì)象。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_AddTextToLib

目    的:加入新文本到數(shù)據(jù)庫中。

語    法:int lmc1_AddTextToLib(TCHAR* pStr,

  TCHAR* pEntName,

  double dPosX,

  double dPosY,

  double dPosZ,

  int    nAlign

  double dTextRotateAngle,

  int nPenNo,

  BOOL bHatchText);//是否填充文本對(duì)象

pStr      要添加的字符串

pEntName 字符串對(duì)象名稱

dPosX    字符串的左下角基點(diǎn)的x坐標(biāo)

dPosY    字符串的左下角基點(diǎn)的y坐標(biāo)

dPosZ    字符串對(duì)象的z坐標(biāo)

nAlign    對(duì)齊方式0-8

//對(duì)齊方式時(shí)數(shù)字代表的意義

//   6 ---  5 --- 4

//   |            |

//   |            |

//   7     8      3

//   |            |

//   |            |

//   0 ----- 1 --- -- 2

dTextRotateAngle  字符串繞基點(diǎn)旋轉(zhuǎn)的角度值(弧度值)

nPenNo          文本對(duì)象使用的筆號(hào)

bHatchText       是否填充文本對(duì)象

 

描    述:在程序中調(diào)用lmc1_AddTextToLib加入新文本對(duì)象到數(shù)據(jù)庫中。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_AddCurveToLib

目    的:加入曲線到數(shù)據(jù)庫中。

語    法:int lmc1_AddCurveToLib(double ptBuf[][2],//曲線頂點(diǎn)數(shù)組

   int  ptNum,//曲線頂點(diǎn)數(shù)

   TCHAR* pEntName,//曲線對(duì)象名稱

   int nPenNo,//曲線對(duì)象使用的筆號(hào)

   int bHatch);//曲線是否填充

描    述:在程序中調(diào)用lmc1_AddCurveToLib加入曲線對(duì)象到數(shù)據(jù)庫中。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_AddFileToLib

目    的:加入指定文件到數(shù)據(jù)庫中。

語    法:int lmc1_AddFileToLib(TCHAR* pFileName, //文件名稱

   TCHAR* pEntName,// 文件對(duì)象名稱

  double dPosX, //文件左下角基點(diǎn)x坐標(biāo)

  double dPosY, //文件左下角基點(diǎn)y坐標(biāo)

  double dPosZ, //文件z坐標(biāo)

  int    nAlign,//對(duì)齊方式0-8

  double dRatio,//文件縮放比例   

  int nPenNo,//對(duì)象使用的加工參數(shù)

  BOOL bHatchFile)

pFileName要添加的文件名稱,支持的文件格式有ezd,dxf,dst,

plt,ai,bmp,jpg,tga,png,gif,tiff等

pEntName 文件對(duì)象名稱

dPosX    文件的左下角基點(diǎn)的x坐標(biāo)

dPosY    文件的左下角基點(diǎn)的y坐標(biāo)

dPosZ    文件對(duì)象的z坐標(biāo)

nAlign    對(duì)齊方式0-8

dRatio    文件縮放比例   

nPenNo   文件對(duì)象使用的筆號(hào)

bHatchFile  是否填充文件對(duì)象


描    述:在程序中調(diào)用lmc1_AddFileToLib加入新文件對(duì)象到數(shù)據(jù)庫中。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_AddBarCodeToLib

目    的:增加條碼對(duì)象到數(shù)據(jù)庫里。

語    法:int lmc1_AddBarCodeToLib((TCHAR* pStr,

  TCHAR* pEntName,

 double dPosX,

 double dPosY,

 double dPosZ,

 int    nAlign,

 int    nPenNo,

 int    bHatchText,

 int    nBarcodeType,

 WORD   wBarCodeAttrib,

 double dHeight,

 double dNarrowWidth,

 double dBarWidthScale[4],

 double dSpaceWidthScale[4],

 double dMidCharSpaceScale,

 double dQuietLeftScale,

 double dQuietMidScale,

 double dQuietRightScale,

 double dQuietTopScale,

 double dQuietBottomScale,

 int    nRow,

 int    nCol,

 int    nCheckLevel,

 int    nSizeMode,

 double dTextHeight,

 double dTextWidth,

 double dTextOffsetX,

 double dTextOffsetY,

 double dTextSpace,

 TCHAR* pTextFontName);

 

 pStr 條碼表示的字符串

 pEntName  條碼對(duì)象名稱

 dPosX,  條碼左下角基點(diǎn)x坐標(biāo)

 dPosY  條碼左下角基點(diǎn)y坐標(biāo)

 dPosZ  條碼z坐標(biāo)

 nAlign, 對(duì)齊方式0-8

 nPenNo   使用的筆號(hào)

 bHatchText  是否填充條碼

 nBarcodeType  條碼類型

#define BARCODETYPE_39      0

#define BARCODETYPE_93      1

#define BARCODETYPE_128A    2

#define BARCODETYPE_128B    3

#define BARCODETYPE_128C    4

#define BARCODETYPE_128OPT  5

#define BARCODETYPE_EAN128A 6

#define BARCODETYPE_EAN128B 7

#define BARCODETYPE_EAN128C 8

#define BARCODETYPE_EAN13   9

#define BARCODETYPE_EAN8    10

#define BARCODETYPE_UPCA    11

#define BARCODETYPE_UPCE    12

#define BARCODETYPE_25      13

#define BARCODETYPE_INTER25 14

#define BARCODETYPE_CODABAR 15

#define BARCODETYPE_PDF417  16

#define BARCODETYPE_DATAMTX 17

 wBarCodeAttrib 條碼屬性

#define BARCODEATTRIB_REVERSE          0x0008 //條碼反轉(zhuǎn)

#define BARCODEATTRIB_HUMANREAD        0x1000 //顯示人識(shí)別字符

#define BARCODEATTRIB_CHECKNUM         0x0004 //需要校驗(yàn)碼

#define BARCODEATTRIB_PDF417_SHORTMODE 0x0040 //PDF417為縮短模式

#define BARCODEATTRIB_DATAMTX_DOTMODE  0x0080 //DataMtrix為點(diǎn)模式

 

dHeight        整個(gè)條碼的高

dNarrowWidth  最窄模塊寬

dBarWidthScale 條寬比例(與最窄模塊寬相比)

dSpaceWidthScale 空寬比例(與最窄模塊寬相比)

dMidCharSpaceScale  字符間隔比例(與最窄模塊寬相比)

dQuietLeftScale  條碼左空白寬度比例(與最窄模塊寬相比)

dQuietMidScale  條碼中空白寬度比例(與最窄模塊寬相比)

dQuietRightScale 條碼右空白寬度比例(與最窄模塊寬相比)

dQuietTopScale  條碼上空白寬度比例(與最窄模塊寬相比)

dQuietBottomScale 條碼下空白寬度比例(與最窄模塊寬相比) nRow  二維碼行數(shù)

nCol  二維碼列數(shù)

nCheckLevel,//pdf417錯(cuò)誤糾正級(jí)別0-8

nSizeMode,//DataMatrix尺寸模式0-30

#define DATAMTX_SIZEMODE_SMALLEST  0

#define DATAMTX_SIZEMODE_10X10     1

#define DATAMTX_SIZEMODE_12X12     2

#define DATAMTX_SIZEMODE_14X14     3

#define DATAMTX_SIZEMODE_16X16     4

#define DATAMTX_SIZEMODE_18X18     5

#define DATAMTX_SIZEMODE_20X20     6

#define DATAMTX_SIZEMODE_22X22     7

#define DATAMTX_SIZEMODE_24X24     8

#define DATAMTX_SIZEMODE_26X26     9

#define DATAMTX_SIZEMODE_32X32     10

#define DATAMTX_SIZEMODE_36X36     11

#define DATAMTX_SIZEMODE_40X40     12

#define DATAMTX_SIZEMODE_44X44     13

#define DATAMTX_SIZEMODE_48X48     14

#define DATAMTX_SIZEMODE_52X52     15

#define DATAMTX_SIZEMODE_64X64     16

#define DATAMTX_SIZEMODE_72X72     17

#define DATAMTX_SIZEMODE_80X80     18

#define DATAMTX_SIZEMODE_88X88     19

#define DATAMTX_SIZEMODE_96X96     20

#define DATAMTX_SIZEMODE_104X104   21

#define DATAMTX_SIZEMODE_120X120   22

#define DATAMTX_SIZEMODE_132X132   23

#define DATAMTX_SIZEMODE_144X144   24

#define DATAMTX_SIZEMODE_8X18     25

#define DATAMTX_SIZEMODE_8X32     26

#define DATAMTX_SIZEMODE_12X26     27

#define DATAMTX_SIZEMODE_12X36     28

#define DATAMTX_SIZEMODE_16X36     29

#define DATAMTX_SIZEMODE_16X48     30

 

dTextHeight人識(shí)別字符字體高度

dTextWidth人識(shí)別字符字體寬度

dTextOffsetX人識(shí)別字符X方向偏移

dTextOffsetY 人識(shí)別字符Y方向偏移

dTextSpace  人識(shí)別字符間距

pTextFontName 文本字體名稱

 

描    述:在程序中調(diào)用lmc1_ AddBarCodeToLib增加條碼對(duì)象到數(shù)據(jù)庫里。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_SetRotateParam

目    的:設(shè)置旋轉(zhuǎn)變換參數(shù)。

語    法:int lmc1_SetRotateParam(double dCenterX,double dCenterY,double dRotateAng);

dCenterX 旋轉(zhuǎn)中心x坐標(biāo)

          dCenterY 旋轉(zhuǎn)中心y坐標(biāo)

          dRotateAng 旋轉(zhuǎn)角度(弧度值)

描    述:在程序中調(diào)用lmc1_ SetRotateParam來設(shè)置旋轉(zhuǎn)變換參數(shù),使數(shù)據(jù)庫中所有對(duì)象繞指定中心旋轉(zhuǎn)。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_AxisMoveTo

目    的:擴(kuò)展軸移動(dòng)到指定坐標(biāo)位置。

語    法:int lmc1_AxisMoveTo(int axis,double GoalPos);

axis     指定要運(yùn)動(dòng)的擴(kuò)展軸號(hào)  0 = 軸0  1 = 軸1

GoalPos  坐標(biāo)絕對(duì)位置

描    述:在程序中調(diào)用lmc1_ AxisMoveTo可以使擴(kuò)展軸移動(dòng)到指定坐標(biāo)位置,擴(kuò)展軸的運(yùn)動(dòng)速度使用設(shè)備參數(shù)里定義的最大速度。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_AxisCorrectOrigin

目    的:擴(kuò)展軸校正原點(diǎn)。

語    法:int lmc1_AxisCorrectOrigin(int axis);

axis     指定要校正原點(diǎn)的擴(kuò)展軸號(hào)  0 = 軸0  1 = 軸1

描    述:在程序中調(diào)用lmc1_ AxisCorrectOrigin可以使擴(kuò)展軸自動(dòng)校正原點(diǎn)。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_GetAxisCoor

目    的:得到擴(kuò)展軸的當(dāng)前坐標(biāo)。

語    法:int lmc1_GetAxisCoor(int axis);

axis     指定的擴(kuò)展軸號(hào)  0 = 軸0  1 = 軸1

描    述:在程序中調(diào)用lmc1_ GetAxisCoor得到擴(kuò)展軸的當(dāng)前坐標(biāo)。

返 回 值:擴(kuò)展軸的當(dāng)前坐標(biāo)

 

函 數(shù) 名:lmc1_Reset

目    的:復(fù)位擴(kuò)展軸坐標(biāo)。

語    法:int lmc1_Reset(BOOL bEnAxis0 , BOOL bEnAxis1);

bEnAxis0    是否使能擴(kuò)展軸號(hào)  0

bEnAxis1    是否使能擴(kuò)展軸號(hào)  1

描    述:在程序中調(diào)用擴(kuò)展軸相關(guān)的函數(shù),必須先調(diào)用lmc1_Reset來設(shè)置使能對(duì)應(yīng)的軸,當(dāng)擴(kuò)展軸運(yùn)動(dòng)到極限位置時(shí),可以用此函數(shù)復(fù)位擴(kuò)展軸坐標(biāo)。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_GetAllFontRecord

目    的:得到當(dāng)前系統(tǒng)支持的所有字體參數(shù)。

語    法:lmc1_FontRecord* lmc1_GetAllFontRecord(int& nFontNum);

nFontNum 字體數(shù)目

 

//字體類型屬性定義

#define FONTATB_JSF        0x0001        //JczSingle字型

#define FONTATB_TTF        0x0002        //TrueType字型   

#define FONTATB_DMF        0x0004        //DotMatrix字型   

#define FONTATB_BCF        0x0008        //BarCode字型  

 

//字型記錄

struct lmc1_FontRecord

{  

    TCHAR   szFontName[256];     //字體名字     

    DWORD   dwFontAttrib;       //字體屬性

};

 

描    述:得到當(dāng)前系統(tǒng)支持的所有字體參數(shù)。

返 回 值:字型記錄數(shù)組指針

 

函 數(shù) 名:lmc1_SaveEntLibToFile

目    的:保存當(dāng)前數(shù)據(jù)庫里所有對(duì)象到指定ezd文件里。

語    法:int lmc1_SaveEntLibToFile(TCHAR* strFileName);

strFileName    ezd文件名稱

描    述:保存當(dāng)前數(shù)據(jù)庫里所有對(duì)象到指定ezd文件里。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_GetEntSize

目    的:得到指定對(duì)象的最大最小坐標(biāo)。

語    法:int lmc1_GetEntSize(TCHAR* pEntName,

 double& dMinx,

 double& dMiny,

 double& dMaxx,

 double& dMaxy ,

double& dZ);

pEntName 對(duì)象名稱

dMinx  最小x坐標(biāo)

dMiny  最小y坐標(biāo)

dMaxx  最大x坐標(biāo)

dMaxy  最大y坐標(biāo)

dZ     對(duì)象的Z 坐標(biāo)

描    述:得到指定對(duì)象的最大最小坐標(biāo)。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_MoveEnt

目    的:指定對(duì)象移動(dòng)相對(duì)位置。

語    法:int lmc1_GetEntSize(TCHAR* pEntName,

double dMovex,

double dMovey);

pEntName 對(duì)象名稱

dMovex  對(duì)象移動(dòng)的x坐標(biāo)

dMovey  對(duì)象移動(dòng)的y坐標(biāo)

描    述:指定對(duì)象移動(dòng)相對(duì)位置。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_RedLightMark

目    的:標(biāo)刻一次紅光顯示框。

語    法:int lmc1_RedLightMark();

描    述:標(biāo)刻一次紅光顯示框。

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_MarkLine

目    的:標(biāo)刻指定線段。

語    法:int lmc1_MarkLine(double x1,

double y1

double x2,

double y2,

int pen);

x1,y1起點(diǎn)坐標(biāo)

x2y2終點(diǎn)坐標(biāo)

pen 使用的筆號(hào)

返 回 值:通用錯(cuò)誤碼

函 數(shù) 名:lmc1_MarkPoint

目    的:標(biāo)刻指定點(diǎn)。

語    法:int lmc1_MarkPoint(double x,

double y

double delay,

int pen);

x,y點(diǎn)坐標(biāo)

delay打點(diǎn)時(shí)間

pen 使用的筆號(hào)

描    述:在指定位置打點(diǎn)

返 回 值:通用錯(cuò)誤碼

函 數(shù) 名:lmc1_GetCurCoor

目    的:得到當(dāng)前振鏡坐標(biāo)。

語    法:int lmc1_GetCurCoor(double& x,

double& y);

x,y點(diǎn)坐標(biāo)

delay打點(diǎn)時(shí)間

pen 使用的筆號(hào)

描    述:得到當(dāng)前振鏡坐標(biāo)

返 回 值:通用錯(cuò)誤碼

 

函 數(shù) 名:lmc1_GetEntityCount

目    的:得到當(dāng)前數(shù)據(jù)庫中的對(duì)象總數(shù)。

語    法:int lmc1_GetEntityCount();

描    述:得到當(dāng)前數(shù)據(jù)庫中的對(duì)象總數(shù)

返 回 值:數(shù)據(jù)庫內(nèi)對(duì)象總數(shù)

 

函 數(shù) 名:lmc1_GetEntityName

目    的:得到指定序號(hào)的對(duì)象名稱。

語    法:int lmc1_GetEntityName(int nEntityIndex,

TCHAR szEntName[256]);

nEntityIndex指定序號(hào),范圍值為 0-對(duì)象總數(shù)(對(duì)象總數(shù)由函數(shù)lmc1_GetEntityCount得到)

szEntName得到的對(duì)象名稱

描    述:得到指定序號(hào)的對(duì)象名稱

返 回 值:通用錯(cuò)誤碼

 

 

函 數(shù) 名:lmc1_AddPointToLib

目    的:向數(shù)據(jù)庫添加一組點(diǎn)對(duì)象。

語    法:int lmc1_AddPointToLib(double[,] PtBuf,

                                 int ptNum,

                                 string strEntName,

                                 int nPenNo

                                 );

PtBuf點(diǎn)位置的二維數(shù)組,第一為必須為2,如double[n,2]

ptNum點(diǎn)位置的個(gè)數(shù)

szEntName得到的對(duì)象名稱

nPenNo添加點(diǎn)的筆號(hào)

描    述:向數(shù)據(jù)庫添加一組點(diǎn)對(duì)象

返 回 值:通用錯(cuò)誤碼

 

 

函 數(shù) 名:lmc1_ StopMark

目    的:停止標(biāo)刻

語    法:int lmc1_ StopMark();

描    述:調(diào)用lmc1_ StopMark會(huì)停止標(biāo)刻。

返 回 值:通用錯(cuò)誤碼


3.開發(fā)步驟

下面我們結(jié)合一個(gè)實(shí)例來講解如何進(jìn)行二次開發(fā)。

客戶要求在一個(gè)矩形工件中心加工一行文本(如下圖所示),每個(gè)工件要加工的文本都必須從網(wǎng)絡(luò)服務(wù)器上去在線查詢獲得。


用戶要進(jìn)行二次開發(fā)一般的步驟如下:

1. 先用ezcad2建立一個(gè)模板文件test.ezd,然后新建一個(gè)文本對(duì)象,把文本對(duì)象命名為”name”。然后調(diào)節(jié)文本大小,位置和加工參數(shù)使加工效果達(dá)到客戶要求,此時(shí)保存文件并退出ezcad2。


 

2. 編寫專用軟件調(diào)用MarkEzd.dll動(dòng)態(tài)鏈接庫

第一步:.動(dòng)態(tài)加載MarkEzd.dll

HINSTANCE hEzdDLL = LoadLibrary(_T("MarkEzd.dll"));

 

第二步:.取得將要調(diào)用的DLL中函數(shù)的指針

lmc1_Initial=(LMC1_INITIAL)GetProcAddress(hEzdDLL, _T("lmc1_Initial"));

lmc1_Close=(LMC1_CLOSE)GetProcAddress(hEzdDLL, _T("lmc1_Close")); lmc1_LoadEzdFile=(LMC1_LOADEZDFILE)GetProcAddress(hEzdDLL,_T("lmc1_LoadEzdFile"));

lmc1_Mark=(LMC1_MARK)GetProcAddress(hEzdDLL,_T("lmc1_Mark"));

lmc1_ChangeTextByName=(LMC1_CHANGETEXTBYNAME)GetProcAddress(hEzdDLL,_T("lmc1_ChangeTextByName"));

第三步:用函數(shù)指針調(diào)用DLL中函數(shù)完成相應(yīng)功能

 

1)初始化lmc1控制卡  lmc1_Initial()

2)打開test.ezd  lmc1_LoadEzdFile(_T(“test.ezd”))。

3)從網(wǎng)絡(luò)服務(wù)器上去在線查詢獲得要加工的文本 (需要用戶自己編寫這段程序)

   

4)更新更改指定名稱的文本對(duì)象的文本內(nèi)容

假設(shè)上一步取得的文本是“1234567”

lmc1_ChangeTextByName(_T(“name”),_T(“1234567”) );

5)調(diào)用lmc1_Mark加工

6)如果還要加工則返回第3步繼續(xù)。

7)關(guān)閉lmc1控制卡 lmc1_Close();

 

第四步:

調(diào)用Windows API函數(shù)釋放動(dòng)態(tài)鏈接庫。

FreeLibrary(hEzdDLL)

 


附錄一:如何把VC項(xiàng)目設(shè)置為 UNICODE版

 

1. 在安裝visual studio的時(shí)候 在安裝界面上options選項(xiàng)里上選擇如圖選項(xiàng) 

 

2. 點(diǎn)擊changeoption選項(xiàng),選擇如圖,然后點(diǎn)擊change option 選擇如圖

 

3. 點(diǎn)擊change option選項(xiàng),選擇如圖

 

 

點(diǎn)擊change option選擇如圖,然后點(diǎn)擊ok按鈕。

 

點(diǎn)擊菜單project->Settings彈出項(xiàng)目設(shè)置對(duì)話框,點(diǎn)擊C/C++屬性頁,在Preprocessor definitions一欄中加入U(xiǎn)NICODE字符串,去除MCBS字符串。


 

1. 點(diǎn)擊Link屬性頁,在Category一欄中選擇Output,然后在Entry-point symbol一欄中加入wWinMainCRTStartup字符串


 

2. 把項(xiàng)目中所有源碼中的char改成TCHAR

3. 把所有用“…”包含的字符串改成_T(“ … ”)

4. 重新編譯即可


本文鏈接:http://m.bjaowei.com/news/861.html 轉(zhuǎn)載需授權(quán)!

  • 直徑符號(hào)怎么打出來激光打標(biāo)機(jī)軟件里

    直徑符號(hào)怎么打出來激光打標(biāo)機(jī)軟件里

    激光打標(biāo)機(jī)金橙子軟件里面怎么樣去打出直徑的符號(hào)“?”?解決辦法:1、百度搜索,在結(jié)果里面會(huì)出來這個(gè)符號(hào),復(fù)制就可以了2、找到本篇文章,負(fù)責(zé)就可以了3、使用快捷鍵,左手按住ALT鍵。右手在數(shù)字鍵上面打出...

    操作指南2022-05-31
  • 激光打標(biāo)機(jī)怎么設(shè)置打標(biāo)內(nèi)容的順序

    激光打標(biāo)機(jī)怎么設(shè)置打標(biāo)內(nèi)容的順序

    #金橙子激光打標(biāo)機(jī)怎么設(shè)置打標(biāo)內(nèi)容的順序?比如激光打標(biāo)機(jī)控制金橙子軟件里面有多個(gè)文本內(nèi)容,怎么樣才能按照我們想做的順序來打標(biāo)。下面我們來看一下:比如我添加了上圖三個(gè)文本內(nèi)容,在軟件左側(cè)對(duì)象列表里選中內(nèi)容后雙擊...

    操作指南2022-05-28
  • 復(fù)工秘籍:節(jié)后激光器復(fù)工指南

    復(fù)工秘籍:節(jié)后激光器復(fù)工指南

    節(jié)假日激光設(shè)備停機(jī)時(shí)間普遍較長,為助您快速順利復(fù)工,我們精心準(zhǔn)備了一份激光器復(fù)工指南,只需正確解鎖,就能高效生產(chǎn),助您開工大吉!溫馨提示:如果集成商有更詳細(xì)的指導(dǎo)說明,此復(fù)工秘籍可作為參考文件,酌情解...

    操作指南2022-05-16
  • 怎樣使紅光指示與實(shí)際標(biāo)刻圖形完全重合

    怎樣使紅光指示與實(shí)際標(biāo)刻圖形完全重合

    尊敬的客戶,您好!此問題可調(diào)整紅光偏移位置、比例大小等參數(shù),具體操作:修改“參數(shù)”工具欄----“其它”---- “紅光指示”欄下參數(shù)值;勾選“使能選擇輪廓”,紅光會(huì)顯示圖形的軌跡,否則,紅...

    操作指南2022-05-16
  • 金屬激光雕刻機(jī)使用方法(激光雕刻機(jī)使用方法)

    金屬激光雕刻機(jī)使用方法(激光雕刻機(jī)使用方法)

    激光雕刻機(jī)的正確操作步驟?1、激光雕刻機(jī)電源先接通,然后檢查各個(gè)輔助設(shè)備是否正常運(yùn)行,包括水循環(huán)系統(tǒng)、抽風(fēng)系統(tǒng)、吹氣系統(tǒng)等。2、接著就可以打開照明電源開—驅(qū)動(dòng)電源開關(guān)—激光電源開關(guān)。3、第三移動(dòng)調(diào)整激...

    操作指南2022-04-18
  • 激光打標(biāo)機(jī)軟件跳出提示“光纖激光器溫度過高”

    激光打標(biāo)機(jī)軟件跳出提示“光纖激光器溫度過高”

    激光打標(biāo)機(jī)軟件跳出提示“光纖激光器溫度過高”,這個(gè)是用戶反饋較多的一個(gè)故障,其實(shí)很簡單,在使用激光打標(biāo)機(jī)時(shí)候會(huì)遇到激光打標(biāo)機(jī)軟件跳出提示“光纖激光器溫度過高”,原因分析及解決方法如下:1)激光打標(biāo)機(jī)中...

    操作指南2022-01-24
  • AI 格式導(dǎo)入 Ezcad 失敗的解決方法

    AI 格式導(dǎo)入 Ezcad 失敗的解決方法

    #金橙子   金橙子Ezcad軟件支持其他繪圖軟件導(dǎo)出的矢量文件如:PLT格式、AI格式、DXF格式的圖形,這樣方便用戶將作圖文件導(dǎo)入Ezcad軟件中來進(jìn)行打...

    操作指南2022-01-10
  • 如何使用激光打標(biāo)機(jī)打序列號(hào)流水號(hào)

    如何使用激光打標(biāo)機(jī)打序列號(hào)流水號(hào)

    1.在工作區(qū)創(chuàng)建一個(gè)文本。2.在左側(cè)對(duì)象屬性表里勾選“使能變量文本”。3.點(diǎn)擊“增加”按鈕,彈出“文本元素”對(duì)話框。 “序列號(hào)”元素是加工過程中按固定增量改變的文本元素。當(dāng)用戶選擇了“序列號(hào)...

    操作指南2021-10-291
  • 創(chuàng)鑫激光:激光器接線不合格的情況

    創(chuàng)鑫激光:激光器接線不合格的情況

    #激光器#創(chuàng)鑫激光創(chuàng)鑫激光:激光器接線不合格的情況第一種:漏接。1)激光器供電線PE線漏接,沒有連接到穩(wěn)壓器的地線端子上面;2)機(jī)床供電線PE線漏接,沒有連接到穩(wěn)壓器的地線端子上面;3)穩(wěn)壓器輸入端的PE線漏接,...

    操作指南2021-10-28
  • 光纖激光打標(biāo)機(jī)的壽命是多久?

    光纖激光打標(biāo)機(jī)的壽命是多久?

    #光纖激光打標(biāo)機(jī)#激光器光纖激光打標(biāo)機(jī)的壽命是多久?其實(shí)這個(gè)關(guān)鍵在于激光器,因?yàn)榧す馄魇怯袎勖?,激光器的壽命理論值?0萬小時(shí):100000/24/365=11.416年;但是激光打標(biāo)機(jī)在使用過程中,激光是有衰減的,按照...

    操作指南2021-10-25

猜你還喜歡這些...