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

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


unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, HALCONXLib_TLB, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
HWindowXCtrl1: THWindowXCtrl;
procedure FormShow(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormShow(Sender: TObject);
begin
Set8087CW($27f);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
image0, image1 : HImageX;
w, h : OleVariant;
i : Integer;
sys : HOperatorSetX;
begin
image0 := CoHImageX.Create;
image1 := CoHImageX.Create;
sys := CoHOperatorSetX.Create;
HWindowXCtrl1.HalconWindow.ClearWindow;
image1.ReadImage('clips/clips_0');
for i := 1 to 10 do
begin
image0.ReadImage('clips/clips_' + IntToStr(i));
w := image0.GetImageSize(h);
HWindowXCtrl1.HalconWindow.ClearWindow;
HWindowXCtrl1.HalconWindow.SetPart(-h * (i - 1), 0, h * (11 - i) - 1, w - 1);
image0.DispObj(HWindowXCtrl1.HalconWindow);
sys.WaitSeconds(0.5);
Application.ProcessMessages;
image1 := image1.AppendChannel(image0);
end;
image1 := image1.TileChannels(1, 'vertical');

w := image1.GetImageSize(h);
HWindowXCtrl1.HalconWindow.SetPart(0, 0, h - 1, w - 1);
image1.DispObj(HWindowXCtrl1.HalconWindow);
end;
end.

 

posted @ 2015-10-01 16:12  统领  阅读(318)  评论(0编辑  收藏  举报