RoboDK插件接口
IAppRoboDK类引用摘要

RoboDK接口。每个插件都必须实现这个类来建立到RoboDK的接口。更多资料请参阅RoboDK插件结构部分。一个例子PluginExample来显示如何实现这个类。更多…

# include <iapprobodk.h>

IAppRoboDK的继承图:
PluginExample

公共类型

枚举 TypeClick{
ClickNone= 1,ClickLeft= 0,ClickCtrlLeft= 1,ClickRight= 2,
ClickDouble= 3
}
点击的类型PluginItemClick函数。更多…
枚举 TypeEvent{
EventRender= 1,EventMoved= 2,EventChanged= 3,EventChangedStation= 4,
EventAbout2Save= 5,EventAbout2ChangeStation= 6,EventAbout2CloseStation= 7,EventTrajectoryStep= 8
}
事件类型PluginEvent函数。更多…

公共成员功能

虚拟QString PluginName() = 0
返回插件名。尽量发挥创意,确保名字是独一无二的。
虚拟QString PluginLoadQMainWindow *mw, QMenuBar *菜单栏,QStatusBar *状态栏,IRoboDK*rdk, const QString &settings="")
加载插件。这个函数只在插件加载时调用一次(或者用插件启动RoboDK)。更多…
虚拟空 PluginUnload()
这个函数只在卸载插件时调用一次。更多…
虚拟空 PluginLoadToolbar(QMainWindow *mw, int iconsize)
每次设置工具栏时都会调用此函数。之后至少调用一次这个函数PluginLoad当用户改变视图设置(例如从影院模式改变为普通模式)或改变默认工具栏布局(在工具栏布局中)时,可以调用它。更多…
虚拟保龄球 PluginItemClick项目、QMenu *菜单、TypeClickclick_type)
每次为一个项目创建一个新的上下文菜单时,都会调用这个函数。更多…
虚拟QString PluginCommand(const QString &command, const QString &value)
可以通过RoboDK API传递特定的命令。例如,父应用程序可以依赖于插件进行某些操作(例如,在RoboDK应用程序中创建本机窗口或利用插件中的RoboDK API速度)。使用RoboDK API (PluginCommand(plugin_name, command, value))从外部应用程序向插件发送特定的命令。更多…
虚拟空 PluginEventTypeEventevent_type)
每当出现新的RoboDK事件(如渲染屏幕、添加/删除项目或更改活动站)时,都会调用此函数。如果event_type是EventRender您可以在这里使用渲染自己的图形IRoboDK: DrawGeometry更多…
虚拟保龄球 PluginItemClickMulti(QList <> &item_list, QMenu *菜单TypeClickclick_type)
每次为项目列表创建新的上下文菜单时,都会调用此函数。更多…

详细描述

RoboDK接口。每个插件都必须实现这个类来建立到RoboDK的接口。更多资料请参阅RoboDK插件结构部分。一个例子PluginExample来显示如何实现这个类。

行定义188的文件iapprobodk.h

成员枚举文档

TypeClick

枚举TypeClick

点击的类型PluginItemClick函数。

枚举器
ClickNone

没有点击。

ClickLeft

左键点击。

ClickCtrlLeft

Ctrl左键单击。

ClickRight

右键单击。

ClickDouble

双击。

行定义193的文件iapprobodk.h

TypeEvent

枚举TypeEvent

事件类型PluginEvent函数。

枚举器
EventRender

渲染事件:RoboDK屏幕被重新绘制,包括树和3D环境。这个函数在主OpenGL上下文处于活动状态时被调用。这个时候你可以打电话IRoboDK: DrawGeometry自定义显示场景

EventMoved

移动事件:某物已经移动,如机器人、参考系、物体或工具。很有可能在此事件之后立即触发EventRender。

EventChanged

站点中增加或删除了项目或活动站点发生了变化。这个事件之后通常是一个EventMoved和EventRender事件。如果我们添加了一个新项目(例如,一个参考框架),EventMoved很可能会跟随新添加项目的更新位置。

EventChangedStation

当我们改变活动电台,而新电台获得焦点时,会触发此事件(IRoboDK: getActiveStation返回刚刚打开的车站)。在这种情况下,我们可以使用IRoboDK: getParamIRoboDK: getData

EventAbout2Save

用户请求保存项目,RDK文件将被保存到磁盘。此时建议保存所有特定站点的设置。此时,您可以使用IRoboDK: setParamIRoboDK: setData

EventAbout2ChangeStation

当前的RoboDK站点即将失去焦点,因为用户要求打开一个新的站点(或者只是更改了打开的站点)。如果有的话,建议此时保存特定于会话/站点的设置。

EventAbout2CloseStation

当前RoboDK站(RDK文件)即将关闭。在此事件发生后不久,树中的项将被删除并成为无效指针。如果用户同意保存更改,则可以保存RDK文件,并触发相应的EventAbout2Save事件。

EventTrajectoryStep

一个或多个机器人或机构完成的新的模拟移动事件。此事件通常在一个或多个EventMoved之后触发,以表示移动的完成。提示:使用命令TrajectoryTime来根据移动对象检索准确的计时(time_sec = RDK-> command ("TrajectoryTime").toDouble()))

行定义212的文件iapprobodk.h

构造函数和析构函数文档

~ IAppRoboDK ()

虚拟~IAppRoboDK
内联虚拟

行定义245的文件iapprobodk.h

成员功能文档

PluginCommand ()

virtual QString PluginCommand QString & 命令
QString & 价值
内联虚拟

可以通过RoboDK API传递特定的命令。例如,父应用程序可以依赖于插件进行某些操作(例如,在RoboDK应用程序中创建本机窗口或利用插件中的RoboDK API速度)。使用RoboDK API (PluginCommand(plugin_name, command, value))从外部应用程序向插件发送特定的命令。

参数
命令
价值
返回

重新实现的PluginExample

行定义282的文件iapprobodk.h

PluginEvent ()

插件事件 TypeEvent event_type
内联虚拟

每当出现新的RoboDK事件(如渲染屏幕、添加/删除项目或更改活动站)时,都会调用此函数。如果event_type是EventRender您可以在这里使用渲染自己的图形IRoboDK: DrawGeometry

参数
event_type 事件类型(EventRender, EventMoved, EventChanged)

重新实现的PluginExample

行定义289的文件iapprobodk.h

PluginItemClick ()

virtual bool PluginItemClick
QMenu * 菜单
TypeClick click_type
内联虚拟

每次为一个项目创建一个新的上下文菜单时,都会调用这个函数。

参数
项目(IItem)点击
菜单 指向上下文菜单的指针
click_type 点击类型(通常是左键)
返回

重新实现的PluginExample

行定义274的文件iapprobodk.h

PluginItemClickMulti ()

虚拟bool PluginItemClickMulti QList <> & item_list
QMenu * 菜单
TypeClick click_type
内联虚拟

每次为项目列表创建新的上下文菜单时,都会调用此函数。

参数
项目清单(IItem)点击
菜单 指向上下文菜单的指针
click_type 点击类型(通常是左键)
返回

行定义296的文件iapprobodk.h

PluginLoad ()

插件加载 QMainWindow * 兆瓦
QMenuBar * 菜单条
QStatusBar * 状态栏
IRoboDK* rdk
QString & 设置=”“
内联虚拟

加载插件。这个函数只在插件加载时调用一次(或者用插件启动RoboDK)。

参数
兆瓦 RoboDK QMainwindow。使用此对象在主窗口中添加菜单。
菜单条 指向RoboDK的主菜单栏
状态栏 指向RoboDK的主状态栏
状态栏 指针RoboDK的接口(实现RoboDK API):IRoboDKIItem
设置 其他设置(为将来的兼容性保留)

重新实现的PluginExample

行定义256的文件iapprobodk.h

PluginLoadToolbar ()

PluginLoadToolbar QMainWindow * 兆瓦
int iconsize
内联虚拟

每次设置工具栏时都会调用此函数。之后至少调用一次这个函数PluginLoad当用户改变视图设置(例如从影院模式改变为普通模式)或改变默认工具栏布局(在工具栏布局中)时,可以调用它。

参数
兆瓦 指向RoboDK主窗口的指针。
iconsize 工具栏图标的大小。尺寸可能会根据屏幕的DPI而有所不同。也可以在“工具-选项-显示”菜单中设置。

重新实现的PluginExample

行定义266的文件iapprobodk.h

PluginUnload ()

插件卸载
内联虚拟

这个函数只在卸载插件时调用一次。

重新实现的PluginExample

行定义260的文件iapprobodk.h


该类的文档是从以下文件生成的: