zw版【转发·台湾nvp系列Delphi例程】HALCON DispArc

zw版【转发·台湾nvp系列Delphi例程】HALCON DispArc
----------
RAD Studio XE Delphi x64

procedure TForm1.Button1Click(Sender: TObject);
var
ho_Image: HImageX;
w, h: OleVariant;
cr, br: OleVariant;
cc, bc: OleVariant;
rd: OleVariant;
tuple: HTupleX;
Style: OleVariant;
begin
ho_Image := CoHImageX.Create;
tuple := CoHTupleX.Create;
ho_Image.ReadImage('ic0');
w := ho_Image.GetImageSize(h);
HWindowX1.SetPart(0, 0, h - 1, w - 1);
HWindowX1.SetDraw('margin');
ho_Image.DispObj(HWindowX1);
cr := tuple.TupleConcat(150, 150);
cc := tuple.TupleConcat(150, 150);
br := tuple.TupleConcat(150, 150);
bc := tuple.TupleConcat(200, 250);
rd := tuple.TupleConcat(Pi / 2, Pi / 2);
Style := tuple.TupleConcat(tuple.TupleConcat(tuple.TupleConcat(20, 7), 3), 7);
HWindowX1.SetColor('red');
HWindowX1.SetLineStyle(Style);
HWindowX1.DispArc(cr, cc, rd, br, bc);
cr := tuple.TupleConcat(150, 150);
cc := tuple.TupleConcat(150, 150);
br := tuple.TupleConcat(150, 150);
bc := tuple.TupleConcat(300, 350);
rd := tuple.TupleConcat(-Pi / 4, -Pi / 4);
Style := tuple.TupleConcat(3, 3);
HWindowX1.SetColor('magenta');
HWindowX1.SetLineStyle(Style);
HWindowX1.DispArc(cr, cc, rd, br, bc);
cr := tuple.TupleConcat(150, 150);
cc := tuple.TupleConcat(150, 150);
br := tuple.TupleConcat(150, 150);
bc := tuple.TupleConcat(100, 50);
rd := tuple.TupleConcat(Pi / 2, Pi / 2);
Style := Null;
HWindowX1.SetColor('white');
HWindowX1.SetLineStyle(Style);
HWindowX1.DispArc(cr, cc, rd, br, bc);
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
op.CloseWindow(HWindowX1.HalconID);
end;
procedure TForm1.FormShow(Sender: TObject);
begin
Self.Caption := Self.Caption + ' Delphi ' + IntToStr(Sizeof(Pointer) * 8);
op := CoHOperatorSetX.Create;
op.SetCheck('~father');
HWindowX1 := CoHWindowX.Create();
HWindowX1.OpenWindow(0, 0, Panel1.ClientWidth, Panel1.ClientHeight,
Int64(Panel1.Handle), 'visible', '');
end;
--------------------

Delphi

procedure TForm1.Button1Click(Sender: TObject);
var
ho_Image : HImageX;
w, h : OleVariant;
cr, br : OleVariant;
cc, bc : OleVariant;
rd : OleVariant;
tuple: HTupleX;
Style : OleVariant;
begin
ho_Image := CoHImageX.Create;
tuple := CoHTupleX.Create;

ho_Image.ReadImage('ic0');
w := ho_Image.GetImageSize(h);
HWindowXCtrl1.HalconWindow.SetPart(0, 0, h - 1, w - 1);
HWindowXCtrl1.HalconWindow.SetDraw('margin');
ho_Image.DispObj(HWindowXCtrl1.HalconWindow);

cr := tuple.TupleConcat(150, 150);
cc := tuple.TupleConcat(150, 150);
br := tuple.TupleConcat(150, 150);
bc := tuple.TupleConcat(200, 250);
rd := tuple.TupleConcat(Pi / 2, Pi / 2);
Style := tuple.TupleConcat(tuple.TupleConcat(tuple.TupleConcat(20, 7), 3), 7);
HWindowXCtrl1.HalconWindow.SetColor('red');
HWindowXCtrl1.HalconWindow.SetLineStyle(Style);
HWindowXCtrl1.HalconWindow.DispArc(cr, cc, rd, br, bc);

cr := tuple.TupleConcat(150, 150);
cc := tuple.TupleConcat(150, 150);
br := tuple.TupleConcat(150, 150);
bc := tuple.TupleConcat(300, 350);
rd := tuple.TupleConcat(-Pi / 4, -Pi / 4);
Style := tuple.TupleConcat(3, 3);
HWindowXCtrl1.HalconWindow.SetColor('magenta');
HWindowXCtrl1.HalconWindow.SetLineStyle(Style);
HWindowXCtrl1.HalconWindow.DispArc(cr, cc, rd, br, bc);

cr := tuple.TupleConcat(150, 150);
cc := tuple.TupleConcat(150, 150);
br := tuple.TupleConcat(150, 150);
bc := tuple.TupleConcat(100, 50);
rd := tuple.TupleConcat(Pi / 2, Pi / 2);

Style := Null;
HWindowXCtrl1.HalconWindow.SetColor('white');
HWindowXCtrl1.HalconWindow.SetLineStyle(Style);
HWindowXCtrl1.HalconWindow.DispArc(cr, cc, rd, br, bc);
end;

zw版【转发·台湾nvp系列Delphi例程】HALCON DispArc的更多相关文章

  1. zw版【转发·台湾nvp系列Delphi例程】HALCON DirectShow (Delphi Prism)

    zw版[转发·台湾nvp系列Delphi例程]HALCON DirectShow (Delphi Prism) namespace DirectShow_Prism;interfaceuses Sys ...

  2. zw版【转发·台湾nvp系列Delphi例程】HALCON HImage与Bitmap格式转换

    zw版[转发·台湾nvp系列Delphi例程]HALCON HImage与Bitmap格式转换 (Delphi Prism)namespace HImage_Bitmap_Prism;interfac ...

  3. zw版【转发·台湾nvp系列Delphi例程】.NET调用HALCON COM控件内存释放模式

    zw版[转发·台湾nvp系列Delphi例程].NET调用HALCON COM控件内存释放模式 ------------------------------------方法一 :Imports Sys ...

  4. zw版【转发·台湾nvp系列Delphi例程】HALCON HWindow Overlayer 1

    zw版[转发·台湾nvp系列Delphi例程]HALCON HWindow Overlayer 1 ------------------------------------HALCON HWindow ...

  5. zw版【转发·台湾nvp系列Delphi例程】HALCON DirectFile

    zw版[转发·台湾nvp系列Delphi例程]HALCON DirectFile unit Unit1;interfaceuses Windows, Messages, SysUtils, Varia ...

  6. zw版【转发·台湾nvp系列Delphi例程】HALCON DirectShow

    zw版[转发·台湾nvp系列Delphi例程]HALCON DirectShow unit Unit1;interfaceuses Windows, Messages, SysUtils, Varia ...

  7. zw版【转发·台湾nvp系列Delphi例程】Delphi 使用 HALCON库件COM控件数据格式转换

    zw版[转发·台湾nvp系列Delphi例程]Delphi 使用 HALCON库件COM控件数据格式转换 Delphi 使用 HALCON库件COM控件数据格式转换,与IHObjectX接口有关 va ...

  8. zw版【转发·台湾nvp系列Delphi例程】HALCON AddNoiseWhite

    zw版[转发·台湾nvp系列Delphi例程]HALCON AddNoiseWhite unit Unit1;interfaceuses Windows, Messages, SysUtils, Va ...

  9. zw版【转发·台湾nvp系列Delphi例程】HALCON CheckDifference

    zw版[转发·台湾nvp系列Delphi例程]HALCON CheckDifference unit Unit1;interfaceuses Windows, Messages, SysUtils, ...

  10. zw版【转发·台湾nvp系列Delphi例程】HALCON BinThreshold

    zw版[转发·台湾nvp系列Delphi例程]HALCON BinThreshold unit Unit1;interfaceuses Windows, Messages, SysUtils, Var ...

随机推荐

  1. break、continue、return之间的区别与联系

    今天在部署程序的时候,监控日志发现这个问题了.return的问题就这么总结哈. 在软件开发过程中,逻辑清晰是非常之重要的. 代码的规范也是非常重要的.往往细节决定成败.在编写代码的时候,一定要理解语言 ...

  2. docker学习-docker镜像

    docker就是一系列文件,

  3. Python 文件类型

    Python的文件类型分为以下几种: 1. 源代码文件,也就是以 .py 为扩展名的文件,由 python 程序解释,不需要编译 2. 字节代码文件,python 源代码文件经过编译后生成的扩展名为 ...

  4. VS2015编译TIFF3.8.0源码

    没有CMakeLists.txt,不能使用CMake GUI了.源文件中有makefile.vc,所以使用nmake 进入VS2015命令行 nmake -f makefile.vc 修改nmake. ...

  5. 如果程序太大而不能在DOS下运行,怎样才能使它在DOS下运行呢?

    如果你的程序因太大(超过640KB)而无法在DOS下运行,有两种办法可为该程序提供更多的内存.一种办法是使用覆盖管理程序(overlay manager).覆盖管理程序用来管理程序的模块,并根据需要把 ...

  6. 说说GPIO.H(NUC131)

    /**************************************************************************//** * @file GPIO.h * @ve ...

  7. 开源的PaaS方案:在OpenStack上部署CloudFoundry (三)部署BOSH

    BOSH是CloudFoundry提供的用来安装部署和升级CloudFoundry的自动化工具,可是说是CloudFoundry的一部分.总体来说,BOSH是Client/Server结构, BOSH ...

  8. 代码片段,使用TIKA来解析PDF,WORD和EMAIL

    /** * com.jiaoyiping.pdstest.TestTika.java * Copyright (c) 2009 Hewlett-Packard Development Company, ...

  9. 配置linux DNS

    DNS服务器地址配置 在Linux下面,有一个默认的DNS服务器地址配置文件的设置,存放在 /etc/resolv.conf 设置方法很简单,通过编辑 vi /etc/resolv.conf 设置首选 ...

  10. 一致性哈希算法(consistent hashing)(转)

    http://blog.csdn.net/cywosp/article/details/23397179