1. 程式人生 > >Halcon & C# 聯合程式設計

Halcon & C# 聯合程式設計

一、建立C# Windows窗體應用程式專案,選擇.Net版本為4

計算機生成了可選文字:新建專案一咕洲、一氣、‘、終冥車’.NETFramework4排序依據:預設值;國搜尋已安裝模板(Qrl+E)聲▲口口口廠les卜一日11日了Windows窗體應用程式VisualC券鑫口口口口口趾}瀕公口‘卜VisualBasicJVisualC#WindowS卜Web卜O拓ce/SharepointC!oudLightswitchReportingSilverlightWCFWorkflow測試卜VisualC++WpF應用程式VisualC券型別:VisualC#用於建立具有W泊dows窗體使用者介面的應用程式的專案控制檯應用程式場sualC券ASp.NETWeb窗體應用程式VisualC禪類庫可移植類庫VisualC券VisualC券ASp.NETMVC4Web應用程式VisualC券又。5Ilverl;ght應用程式場sualC券己口望豹蕊蕊豹暑.佔.\產》聯機名稱創工位置山:解決方案名稱囚工至魚緲唯馨溯德油西忿孚兩而姚卜。「pprogroml“一一二丁一,二7'!d:傭戶目袱的~;s。。.stodi。2013、proj掀、下下?二畫畫二HalconCsharppr叩ram,一回為解決方案建立目錄。口添力呼監原始碼管理回確定耳石肖七二二恥肖確定

二、新增Halcon庫檔案到C#工具箱

1)在“工具”選單中選擇“選擇工具箱項”

計算機生成了可選文字:工具口測試固體系結構回分析似)視窗色竺)幫助凶滬黝呼啦絲程曰”.Qrl+Alt+p姆連線至崢勿居庫回…性連線至業伺服器國…矛渤口s卜arepoint連線因…迫LServer)婦程式碼段管理器口:.ctrl+Kctrl+B選擇工具箱項囚…外接程式管理器囚…庫程式包管理器凶,[.j擴充套件和更新回…建立GuIO回氣\、錯誤查詢因一、―preEmptiveD翅uscatorandAnalyticsSPy++任」SPy++涎洲)呀WC「服務配置編輯器(業)外部工具圖…匯入柳匯出設定①”.,...............自定義回…今選項回~

2)在彈出視窗選擇“.Net Framework元件”

計算機生成了可選文字:選擇工具箱頂Silverlight元件Windowsphone元件」一麗,COM元件System.Activities元件名稱名稱空間口HScrollBarArrayMicro,oft.Vi,ualBa,ic.Compatibility.VB6口HtmlControlMicro、oft.TeamFoundation.WorkItemTracking.口HttpGetcllentprotocolSystem.web.Services.Protocol,口HttppostClientprotocosy,tem.Web.services.protocol,團HWindowControlHalconDotNet團HyperLinkSystem.web.UI.webControls口IdentityGrldControlMicro:oft.TeamFoundatlon.Control:.winForm;團IfElsesystem.Wor曰ow.Activities‘一1.,}篇選器曰:AccessDatasource程式集名稱Microsoft.Visua舊asic.ColMicrosoft.TeamFoundati'System.Web.Service,勿stem.Web.ServiceshalcondotnetSystem.WebMIcroso代.TeamFoundati'system.Wor曰ow.Activiti。,l瀏寬面”」創語言,一版本:固定語言(固定國家Z地區〕4.0.0.0}。}},肖I….。{

3)在%HALCONROOT%\bin\dotnet35%HALCONROOT%表示Halcon安裝目錄)

計算機生成了可選文字:口,口口。O,…兀HALCON一12.0口臼門口卜.bin卜dotn以35~‘一~目口臼口卜習.}瓣do、。區酬一司組織,新建資料夾狂!圍⑧修改日期湯庫8觀須圃圖片骨文件囪迅雷下載矛音樂名稱凶halcondotnet.djl困halcondotn出l.dll畫卜devengined。t。et.dll邑hdevenginedotnetrl.dll2014/11/152:272014/11/152:272014/11/152:272014/11/152:27OLL檔案OLL檔案OLL檔案OLL檔案網回日J到二稱計算機‘本地磁碟(c:)目軟體(D:)口文件(E:)~白結的刁生(F,、!口!檔名(N):halcondotnet.dll巨鯉」L“」

4)新增完成後元件列表會出現HWindowControl,之後點選確定

計算機生成了可選文字:選擇工具箱項.窿如1..匕,..silverlight元件.WindowSphone元件.NETFramework元件COM元件一工一wPF元件System.Activities元件名稱名稱空間程式集名稱回日tmlControlMicrosoft.TeamFoundation.Wor匕temTracking.Micro、oft.TeamFoundati。口HttpGetClientprotocolsy,tem.web.Services.protocol,sy,tem·Web·service,口HttpPostclientProtocosystem.Web.services.Protocolssystem.web.Service,l團HWindowControlHalconDotNethalcondotnetl團HyperLinksystem.web.UI.webControlssystem.Web口Identity6ridcontrolMicrosoft.TeamFoundation.Controls.winFormsMicrosoft.TeamFoundati。圖IfElsesy、tem.wor曰ow.Activitiessy,tem.wor姍ow.Activiti。口Imagesystem.web.UI.MobileControlsSystem.Web.Mobile·匡川}篩選器曰:AccessDatasource一瀏覽⑥…創靄固定語言(固定國家Z地區〕4.0.0.0[.引二肖l…“。}

5)同時在工具箱也可以看到“HWindowControl”控制元件

計算機生成了可選文字:,月二X屏,卜所有Windows窗體卜公共控制元件卜容器卜萊單和工具欄卜資料卜元件卜列印卜對話方塊卜報表卜WpF互操作性J常規卜二指標HWindowContro!

三、程式編寫

1編寫Halcon程式並匯出Halcon

1)編輯read_image運算元,之後通過dev_display進行展示

計算機生成了可選文字:程式編輯器一m。in*0一主執行緒:9600_口Xmaln困巳因囚固竣也N[至E乞。b鑼勺Image,工m。ge)·png4.121ms了勝飛了r.飛ageplay

2)在“檔案”選單欄中選擇“匯出”

計算機生成了可選文字:HDevelop一未定義’互至遼】編輯⑥執行旦日新程式電)四開啟程式電).四瀏覽MDeveloP示例程式迄〕當前程式電〕開啟函式用於編輯.關閉函式關閉所有函式視覺化逐)函式遷)Ctrl+N運算元這Ctrl+0Ctrl+E插入程式江〕儲存迄)程式另存為達).將函式另存為包〕.儲存所有仕〕Ctrl+SCtrl+Shift+SCtrl+shift+F,5Ctrl+紅t+S讀取影象二清除電)Ctrl+R國咎縣日臀四褲屬性讓)列印之)二退出迫)Ctrl+FCtrl+Q昌圓

3)按如下配置,之後點選“匯出”

計算機生成了可選文字:巫r:,Re。二。a'e。:}自匯出檔案及格式匯出範圍巨巫困外部函式函式屬性當前函式當前庫口匯出本地函式內吝口匯出外部函式內吝口匯出所有弓}用的外部函式夕卜部函式目標地址!單個檔案,!團僅在函式比匯出檔案新的時候進行匯出視窗匯出―~使用HAI£。1嘀口編碼O原始」保持視窗開啟

2、編寫C#程式碼

1)在專案名稱上右擊,選擇“新增”--“現有項”

計算機生成了可選文字:幽生成(u)重新生成(E)清理(N)檢視(W)分析團O釋出(B)...限定為此範圍(勻團新建解決方案資源管理器檢視(N)晶在程式碼圖上顯示(C)新增(D)苗管理NuGet程式包(N)...今設為啟動專案(A)除錯(G)原始碼管理(S)其剪下m一…Ctrl+Shift+AS卜i幾+A!t+ACtrl+X試移除陰x:::;重新命名(M)De}七新建項附…+a現有項〔G)…為新建資料夾(D)卜弓I用(R)…卜服務引用(s)…植Window、窗體(凡.口使用者書創牡U)…幻元件(N)…勺類(c}...

2)在Form1上新增一個HwindowControl控制元件和一個Button控制元件

計算機生成了可選文字:出Forml口reseseseseseseseseseseseseseses

3)雙擊Load Image按鈕,在Form1.cs新增HalconDotNet引用

計算機生成了可選文字:usingSystem;usingSyste二collections.6eneric;usingSyste二c儷POnent徹del;usingSystem.Data;usingSyste二Drawing;usingSysteo.Linq;usingSysteo.TeXt;usingSystem."ind洲5.Fo飾s;usinRHalconDOtNet二

4btnLoad點選事件中新增如下程式碼

計算機生成了可選文字:Hoevelop〔xPOrthd=newHDevelopExPOrt();hd.RunHalcon(h目indo側(ontroll.Halcon討ind,);刀實侈琳匕。evelop〔x四rt類//執行Halcon