Leaper Vision Toolkit
中文 / English 2.x
Public 成员函数 | 属性
ILDisplay接口 参考

该接口提供显示控件功能。 更多...

类 ILDisplay 继承关系图:
ILDisplayCommon LDisplay

Public 成员函数

int AddInteractableObject (IDispatch *interactable, int drawFlags)
 
int AddObject (IDispatch *drawable, int drawFlags)
 
int AddRegion (IDispatch *region, BOOL interactable)
 
void ClientToImage (int x, int y, double *imageX, double *imageY)
 
void FitInViewObject (IDispatch *object, LPVAlignment alignFlags)
 
IDispatch * GetImage ()
 
IDispatch * GetObjectByID (int objectId)
 
IDispatch * GetRegionByID (int regionId)
 
void ImageToClient (double imageX, double imageY, int *x, int *y)
 
void RemoveAllObjects ()
 
void RemoveAllRegions ()
 
void RemoveImage ()
 
void RemoveObject (IDispatch *drawable)
 
void RemoveObjectByID (int objectId)
 
void RemoveRegion (IDispatch *region)
 
void RemoveRegionByID (int regionId)
 
void SetImage (IDispatch *image)
 
- Public 成员函数 继承自 ILDisplayCommon
int AddReferenceLineH (double position, double relativePosition, BOOL attached, OLE_COLOR clr)
 
int AddReferenceLineV (double position, double relativePosition, BOOL attached, OLE_COLOR clr)
 
void FitInView (int tlx, int tly, int w, int h, LPVAlignment alignFlags)
 
void FitToWindow (LPVAlignment alignFlags)
 
void Refresh ()
 
void RefreshImmediate ()
 
void RemoveAllReferenceLine ()
 
void RemoveReferenceLine (int refLineId)
 
int SaveSceneToFile (BSTR filename, double zoomX, double zoomY)
 
int SaveWindowToFile (BSTR filename)
 
void SetDisplayFlag (LPVDisplayFlags flag, BOOL enable)
 
void SetSize (int w, int h)
 
void ShowDialog (BSTR dialogName, int x, int y, int w, int h)
 
void ShowDialogAsync (BSTR dialogName, int x, int y, int w, int h, int refreshInterval)
 

属性

BOOL KeepAspectRatio [get, set]
 显示控件在缩放时是否保持长宽比
 
int PixelUnderMouse [get]
 当前鼠标位置所在像素的值
 
- 属性 继承自 ILDisplayCommon
LPVAlignment Alignment [get, set]
 显示控件在缩放整个场景或场景中的一部分到窗口尺寸时,所使用的对齐方式
 
BOOL AutoRefreshEnabled [get, set]
 开启或关闭显示控件的自动重渲染。默认打开,即当可绘制对象、区域对象或图像添加和删除时,自动重绘控件。
 
OLE_COLOR BackColor [get, set]
 显示控件的背景色
 
LPVDisplayFlags DisplayFlags [get, set]
 显示控的显示模式,查看 LPVDisplayFlags
 
BOOL DrawingEnabled [get, set]
 开启或关闭显示控件的所有显示渲染。通常在需要添加、删除或修改大量显示对象时使用,以暂时停止渲染,在操作完成后一次性绘制。
 
LPVScrollBarPolicy HScrollBarPolicy [get, set]
 水平滚动条的行为模式,查看 LPVScrollBarPolicy
 
double PanX [get, set]
 场景在水平方向的位移。 最终的 x 位置按照该公式计算: \( (x + panX) \times zoomX \)
 
double PanY [get, set]
 场景在垂直方向的位移。 最终的 y 位置按照该公式计算: \( (y + panY) \times zoomY \)
 
LPVScrollBarPolicy VScrollBarPolicy [get, set]
 垂直滚动条的行为模式,查看 LPVScrollBarPolicy
 
double Zoom [set]
 设置场景在水平和垂直方向的缩放比例
 
LPVZoomAnchor ZoomAnchor [get, set]
 缩放时场景的移动模式,查看 LPVZoomAnchor
 
double ZoomX [get, set]
 场景在水平方向的缩放比例
 
double ZoomY [get, set]
 场景在垂直方向的缩放比例
 

详细描述

该接口提供显示控件功能。

通常可通过 Visual Studio 的工具箱,将显示控件加入到应用程序窗口中。 该接口提供管理显示窗口内场景的功能,用于设置场景中的图像,增加删除场景中的 region、几何形状和算法结果等。

控件事件请查看 ILDisplayEvents

示例代码

注:该接口在 Linux / MacOS 平台暂不可用。

成员函数说明

◆ AddInteractableObject()

int AddInteractableObject ( IDispatch *  interactable,
int  drawFlags 
)

在场景中新增一个可交互对象。通常是一个几何形状。

参数
[in]interactable可交互对象,应当为实现 ILGeomObject 的几何图元类型, 该类型通常同时实现了 ILDrawable 接口。
[in]drawFlags该可绘制对象的绘制参数。
返回值
objectId返回该可绘制对象在场景中的 ID
参见
AddObject()
自从
2.12.0

◆ AddObject()

int AddObject ( IDispatch *  drawable,
int  drawFlags 
)

在场景中新增一个可绘制对象。通常是一个几何形状,或某些算法的输出结果。

参数
[in]drawable可绘制对象,应当为实现 ILDrawable 的类型,或 LText 类型。
[in]drawFlags该可绘制对象的绘制参数。
返回值
objectId返回该可绘制对象在场景中的 ID
参见
AddInteractableObject()

◆ AddRegion()

int AddRegion ( IDispatch *  region,
BOOL  interactable 
)

在场景中新增一个区域对象。

参数
[in]region区域对象,应当为 LRegion 类型。
[in]interactable该区域对象是否可交互,即使用鼠标拖动控制点以及移动、旋转该对象。默认值为 True。
返回值
regionId返回该区域对象在场景中的 ID

◆ ClientToImage()

void ClientToImage ( int  x,
int  y,
double *  imageX,
double *  imageY 
)

转换位置坐标,从显示控件窗口坐标系到图像坐标系

参数
[in]x输入位置的 x 坐标,该坐标相对于显示控件工作区的左上角
[in]y输入位置的 y 坐标,该坐标相对于显示控件工作区的左上角
[out]imageX输出转换后的 x 坐标,该坐标相对于图像的左上角
[out]imageY输出转换后的 y 坐标,该坐标相对于图像的左上角

◆ FitInViewObject()

void FitInViewObject ( IDispatch *  object,
LPVAlignment  alignFlags 
)

缩放和平移场景,使得指定对象所在的区域充满整个窗口

参数
[in]object指定需要查看的对象
[in]alignFlags对齐方式,若未指定则使用显示控件的 Alignment 属性。

◆ GetImage()

IDispatch* GetImage ( )

获取场景中的图像对象。

返回值
image返回图像对象

◆ GetObjectByID()

IDispatch* GetObjectByID ( int  objectId)

获取场景中给定 ID 的可绘制对象

参数
[in]objectId对象在场景中的 ID
返回值
drawable返回可绘制对象

◆ GetRegionByID()

IDispatch* GetRegionByID ( int  regionId)

获取场景中给定 ID 的区域对象

参数
[in]regionId对象在场景中的 ID
返回值
region返回区域对象

◆ ImageToClient()

void ImageToClient ( double  imageX,
double  imageY,
int *  x,
int *  y 
)

转换位置坐标,从图像坐标系到显示控件窗口坐标系

参数
[in]imageX输入位置的 x 坐标,该坐标相对于图像的左上角
[in]imageY输入位置的 y 坐标,该坐标相对于图像的左上角
[out]x输出转换后的 x 坐标,该坐标相对于显示控件工作区的左上角
[out]y输出转换后的 y 坐标,该坐标相对于显示控件工作区的左上角

◆ RemoveAllObjects()

void RemoveAllObjects ( )

移除场景中的所有可绘制对象

◆ RemoveAllRegions()

void RemoveAllRegions ( )

移除场景中的所有区域对象

◆ RemoveImage()

void RemoveImage ( )

从场景中移除图像,保留当前场景尺寸。

◆ RemoveObject()

void RemoveObject ( IDispatch *  drawable)

从场景中移除指定的可绘制对象。

参数
[in]drawable需要移除的可绘制对象

◆ RemoveObjectByID()

void RemoveObjectByID ( int  objectId)

从场景中移除指定 ID 的可绘制对象

参数
[in]objectId对象在场景中的 ID

◆ RemoveRegion()

void RemoveRegion ( IDispatch *  region)

从场景中移除指定的区域对象。

参数
[in]region需要移除的区域对象

◆ RemoveRegionByID()

void RemoveRegionByID ( int  regionId)

从场景中移除指定 ID 的区域对象

参数
[in]regionId对象在场景中的 ID

◆ SetImage()

void SetImage ( IDispatch *  image)

设置当前场景的图像,场景尺寸将被设置为该图像的尺寸。

参数
[in]image输入图像,应当为 LImage 类型。