VisualApplets 的用户界面

VisualApplets 提供了一个图形化用户界面用于设计小程序,无需任何编程或脚本编写。其直观的工作流程使用户能够在不编写代码的情况下创建复杂的图像处理设计。该工具旨在让没有编程背景的用户也能轻松使用。

此外,对于更喜欢使用脚本或通过命令行工作的用户,VisualApplets 还提供了 “命令行选项” 和 脚本选项。

主窗口

VisualApplets 主窗口由以下工具栏和面板组成:

主程序窗口

图 3. 主程序窗口


主菜单栏可直接访问程序功能。使用工具栏按钮可快速访问重要功能。您可以在 Settings → System Settings → Common 中更改工具栏图标的大小:

三个面板提供了不同的信息和功能:

  • 设计面板:设计面板显示您的 VisualApplets 项目。您始终拥有一个主设计窗口,但根据项目的结构,您可能还需要使用多个子窗口。在 Window 菜单中,可以选择多种视图(平铺、层叠、标签页视图)。使用 Window → Diagram Windows ( Ctrl+F8 ) 中的菜单项,您可以轻松选择当前要操作的设计图表窗口。

  • 信息面板:在主程序窗口的默认设置中,信息面板始终处于显示状态。它通过标签页视图提供不同的信息窗口:

    • 项目信息

    • 模块信息

    • 参数信息

    • DRC 日志

    • 生成日志

    • 帮助

    (有关各个信息窗口的详细信息,请参见下文。)

  • 库面板:在主程序窗口的默认设置中,库面板始终处于显示状态。它通过标签页视图提供三个库窗口:

    • Operator Library:Operator Library 是包含 VisualApplets 算子(即各个图像处理功能)的子库集合。

    • User Library:User Library 可以包含带有用户自定义算子组合(分层框)的自定义库。有关更多信息,请参见 “User Libraries”。

    • Custom Library:要将算子导入 Custom Library,请参见 “Custom Operator Libraries”。

[提示] 特定算子

算子库中显示的某些算子可能不适用于您当前正在为其进行设计的平台。不支持的算子会显示为灰色,以表明它们无法在当前的设计配置中使用。

算子不适用于当前选定的目标硬件平台

图 4. 算子不适用于当前选定的目标硬件平台


信息面板

本主题提供有关 Information Panel 的信息。Information Panel 包含以下视图:

信息面板

图 5. 信息面板


项目信息

“Project Info”(项目信息)窗口概括了当前项目的信息。

项目信息

图 6. 项目信息


提供以下信息:

  • Name(名称):项目名称(= 文件名)

  • Creation Date(创建日期):创建日期

  • Last Modified(最后修改):最后修改日期

  • Version(版本):项目的版本号;可以从 Design → Project Details 菜单中编辑此条目(参见 'Project Properties')

  • Description(描述):项目的文字描述;可以从 Design → Project Details 菜单中编辑此条目(参见 'Project Properties')

  • Type(类型):显示当前在目标硬件上使用的 FPGA 类型(参见 'Target Hardware Porting')

  • Target Runtime(目标运行时):显示目标运行时(参见 'Target Runtime')

  • Design Rules Check Level 1(设计规则检查级别 1):指示发现的错误或成功的性能(参见 'Design Rules Check')

  • Hardware Applet(硬件 Applet):指示硬件 Applet 是否存在。如果 VisualApplets 之前已生成该项目的 HAP 文件,则会勾选此条目。

  • Resources(资源):显示资源估计的结果。另请参见 'FPGA Resource Estimation'。

  • System(系统):显示找到的 Xilinx 版本、可用的 Framegrabber SDK 版本以及 Framegrabber SDK 安装目录。VisualApplets 使用此信息来构建 HAP 以及用于最终的 HAP 输出。有关更多信息,请参见 'Build'。

模块信息

Module Info(模块信息)窗口显示项目中使用的所有模块的列表(只要该窗口的输入字段为空)。该列表按项目的层级结构组织。

模块搜索

图 7. 模块搜索


在 Module Info 窗口中,您可以轻松搜索特定的模块或模块类型。这在处理大型设计时非常有用。在开始搜索之前,您应该定义过滤设置:

  • 如果要搜索您赋予模块的单独名称,请激活“Names”(名称)。

  • 如果要搜索模块类型(您当前正在搜索其实例的算子名称),请激活“Types”(类型)。

模块搜索

图 8. 模块搜索


您现在可以输入搜索词。只需输入名称的一部分即可。单击 Module Info 窗口中列出的模块之一,即可将相应的设计窗口调至焦点(在设计面板中),并选中并高亮显示该模块。

参数信息

Parameter Info(参数信息)视图显示活动设计的所有参数及其算子。您还可以在 Parameter Info 视图中编辑参数。

参数信息

图 9. 参数信息


Parameter Info 视图提供了一个搜索功能,允许您搜索参数、参数值或算子名称。您可以使用 Runtime Parameter Only 过滤器仅显示动态参数,即您可以在运行时进行编辑的参数。

DRC 日志

DRC Log 窗口显示了最后一次设计规则检查(Design Rules Check)的结果。点击警告/错误消息下列出的某个模块名称,即可将相应的设计窗口带入焦点(在设计面板中),并选中和高亮显示该模块。

DRC Log 信息

图 10. DRC Log 信息


生成日志

Build Log 窗口显示了最后一次构建的结果。

Build Log 信息

图 11. Build Log Information


帮助

Help 窗口提供有关各个算子的上下文相关帮助。

要打开上下文相关帮助,您可以执行以下操作之一:

  1. 直接在您的设计中选择您想要了解其信息的算子,然后按 F1 在 Help 窗口中打开并显示相应的信息。

  2. 从 Operator Library 窗口中选择一个算子。Help 窗口将始终显示当前所选算子的帮助。

示例:显示 MergeKernel 算子的信息

图 12. 示例:显示 MergeKernel 算子的信息


如果您在任何其他窗口中按 F1 或点击帮助按钮,将打开当前所选窗口或功能的上下文相关用户手册帮助。当然,您也可以直接从本用户文档中访问算子帮助。请参阅 Operator Reference。

库面板

库面板以标签页视图的形式显示 Operator Library 窗口、User Library 窗口和 Custom Library 窗口。

所有库(Operator Library、User Library 以及带有所有子库的 Custom Library)均以树状结构组织。每个库都包含算子。

可以通过选择“Tree”、“List”或“Icon”视图来更改结构的显示方式。

显示 Operator Library 的库面板

图 13. 显示 Operator Library 的库面板


可以在搜索框中输入搜索字符串,以过滤列表,仅显示所需的算子。例如,Camera 将列出名称中包含 camera 的所有算子。

算子库

Operator Library 是包含 VisualApplets 算子(即各个图像处理函数)的子库集合。

您可以通过点击 Operator Library 窗口中的算子名称并点击信息面板中的 Help 标签页来获取每个算子的详细信息。

显示 Operator Library 的库面板

图 14. 显示 Operator Library 的库面板


有关如何向图中添加新算子的信息,请参阅 'Inserting Operators'。所有算子的详细文档均在 Operator Reference 中给出。

用户库

User Library 可以包含带有用户自定义算子组合(分层框)的自定义库。有关更多信息,请参阅 'User Libraries'。

自定义库

有关如何将算子导入 Custom Library,请参见 'Custom Operator Libraries'。

调整程序窗口

您可以通过多种选项来调整 VisualApplets 的主程序窗口以符合您的个人偏好:

调整工具栏

可以通过拖放重新排列工具栏,或者通过右键单击来添加/删除工具栏。

恢复主程序窗口的默认设置

如果您不小心将窗口或工具栏排列成了非预期的方式,可以通过选择 Window → Reset Dock Windows( Ctrl+O )来恢复默认设置。

取消图表标签页的停靠并将其分离为独立的 Windows 窗口

您可以取消停靠主窗口 Design Panel 中的图表标签页,以便设计内容显示在浮动窗口中。借助此功能,您可以使用多个屏幕来编辑设计。可以通过三种方式访问此功能:

  1. 通过上下文菜单:

    1. 右键单击标签页。

    2. 点击 Float。

    通过上下文菜单取消停靠

    图 15. 通过上下文菜单取消停靠


  2. 使用 Float 按钮:

    1. 将鼠标悬停在标签页上,以显示位于 Close 按钮左侧的 Float 按钮。

    2. 点击 Float 按钮。

    通过 Float 按钮取消停靠

    图 16. 通过 Float 按钮取消停靠


  3. 双击左键:

    1. 双击标签页左键。

取消停靠的图表窗口可以像普通的 Windows 窗口一样自由使用和排列。

[注意] 不保存窗口状态

保存设计时,不会保存窗口状态。因此,加载设计时不会包含取消停靠的窗口。

这也适用于关闭取消停靠窗口的 Back 和 Forward 功能。

若要重新停靠浮动窗口,取消停靠窗口的工具栏中提供了一个 Dock 按钮。此按钮可将图表窗口停靠到活动显示区域的最后位置。

重新停靠浮动窗口

图 17. 重新停靠浮动窗口


在主窗口内拆分设计面板

您可以在主窗口中拆分 Design Panel,该面板可在主窗口中并排显示图表标签页。借助此功能,您可以同时查看和编辑多个图表标签页。

若要拆分 Design Panel:

  1. 右键单击要移动的图表标签页。此时会打开一个上下文菜单。

  2. 选择 Move To Other View。

    打开拆分视图

    图 18. 打开拆分视图


随后,图表标签页将并排显示在主窗口中:

拆分视图

图 19. 拆分视图


若要结束拆分视图,请在上下文菜单中选择 Move All To Other View。这会将选定显示区域中的所有图表窗口标签页移动到另一个显示区域。

[注意] 不保存窗口状态

保存设计时,窗口状态不会被保存。因此,加载设计时将不包含拆分视图。

这也适用于关闭拆分视图的 Back 和 Forward 功能。

“文件 -> 最近的设计”下的文件数量

在 File → Recent Designs 下,VisualApplets 会为您提供最近打开的 VisualApplets 文件(*.va)列表。您可以配置实际显示的文件数量。

若要定义显示多少个最近打开的文件:

  1. 转到菜单 Settings → System settings 并选择类别 Common。

  2. 在 Recent designs 下,定义您希望显示的文件数量(最多 24 个)。

  3. 使用 OK 确认。

配置显示最近设计的数量

图 20. 配置显示最近设计的数量


多个进程

VisualApplets 项目可能包含多个进程。进程是图表的最高级别,可以包含任意数量的算子和 hierarchical boxes。每个进程都可以单独启动和停止。

使用四个进程的一个典型示例是四相机应用,例如 examples\Acquisition\BasicAcquisition\iF-CXP12-Q\QuadCXP12x1AreaGray8.va 例如,请参见下图。它展示了四个处理过程,每个过程中包含一个相机、一个 buffer 和一个 DMA operator。

包含四个处理过程的 Applet

图 21:包含四个处理过程的 Applet


使用此 applet 时,所有四个处理过程(即所有四个相机)都可以单独启动和停止。如果所有四个相机都在同一个处理过程内,则必须同时启动和停止它们,因为某个处理过程的所有 DMA 始终必须同时启动。

要详细了解如何在硬件上使用 VisualApplets applet,请参见“在硬件上运行 Applet”部分和/或 Framegrabber SDK documentation。

管理进程

要添加新处理过程,请点击 Design → New Process,或选择 Edit 工具栏中的图标。

创建新处理过程

图 22:创建新处理过程


要删除处理过程,请首先选择属于该处理过程的任意 diagram 窗口,然后选择 Design → Remove Process,或选择 Edit 工具栏中的图标。

处理过程的索引始终从 0 开始,且必须按升序排列。如果删除了某个处理过程,索引较高的处理过程将向前移动以 Fill 空缺。

键盘快捷键

以下是 VisualApplets 中可用的所有快捷键列表。

主程序窗口

快捷键 菜单项
Ctrl+N File → New Project
Ctrl+O File → Open Project
Ctrl+S File → Save Project
Ctrl+P File → Print Visible Diagram
Ctrl+Q File → Quit Application
Ctrl+Z Edit → Undo
Ctrl+Shift+Z 编辑 → Redo
Ctrl+Z Edit → Undo
Ctrl+X 编辑 → Cut
Ctrl+C 编辑 → Copy
Ctrl+V 编辑 → Paste
Del 编辑 → Delete
F2 编辑 → Rename Module
Ctrl+I 设计 → Add Operator
鼠标中键+ 设计 → Add Operator
Ctrl+F 设计 → Search Module
F9 分析 → Start Simulation
Ctrl+F7 分析 → Design Rules Check Level 1
Ctrl+F8 分析 → Design Rules Check Level 2
F7 生成 → Build
F5 生成 → Start microDisplay
F11 视图 → Full screen
Ctrl++ View → Zoom In Diagram
Ctrl+- View → Zoom Out Diagram
Ctrl+Mouse wheel up View → Zoom In Diagram
Ctrl+Mouse wheel down View → Zoom Out Diagram
Ctrl+Return View → Zoom Reset
Backspace View → Window Up
Ctrl+Space View → Toggle Hand/Selection Tool
Ctrl+Arrow Right Window → Next Diagram
Ctrl+Arrow Left Window → Previous Diagram
Drag+Drop 可以将项目文件拖放到主窗口中。

表 1. 主程序窗口快捷键列表


仿真查看器

快捷键 菜单项
Ctrl+Q File → Exit Simulation Viewer
Ctrl+C Edit → Copy Image to Clipboard
Del Edit → Remove Selected Images
Ctrl+Del Edit → Remove all Images
Arrow left Navigation → Previous Image
向右箭头 导航 → 下一张图像
Ctrl++ 视图 → 放大
Ctrl+Mouse wheel up 视图 → 放大
Ctrl+- 视图 → 缩小
Ctrl+Mouse wheel down 视图 → 缩小
Ctrl+Mouse 3 视图 → 正常大小 1:1
F11 视图 → 全屏
Ctrl+F 视图 → 适应窗口
Ctrl+T 视图 → 映射缩略图
Ctrl+R 视图 → 重置参数
Drag+Drop 可以直接将图像拖放到仿真查看器(源)或仿真源模块上。

表 2. 仿真查看器快捷键列表


命令行选项

VisualApplets 提供了一些命令行参数,以便在批处理脚本等场景中使用 VisualApplets,或者将其程序链接到系统环境中。

其语法遵循以下格式:

<VISUALAPPLETSINSTALLDIR>\VisualApplets <-COMMAND> <ARGUMENTS>

下表列出了各个命令及其所需的参数:

命令行 参数与含义

-file

执行指定 Tcl 脚本中存储的命令。

参数:

  • Tcl 脚本的文件名 (*.tcl)

-compile

加载指定的文件并创建一个 applet。系统将对照设计规则检查此设计。

参数:

  • VisualApplets 设计文件 (*.va) 的文件名

  • 生成的 applet 文件 (*.hap) 的文件名

-sdk

生成一个 SDK 示例(C 源代码),用于通过 Framegrabsel SDK 使用该 applet。系统将对照设计规则检查此设计。

参数:

  • VisualApplets 设计文件 (*.va) 的文件名

  • Pixelplant applet 文件 (*.hap) 的文件名

-KeepSyntheseTraceFiles

生成硬件 applet 时的附加选项。在构建完成后,保留构建过程中创建的中间文件用于跟踪目的。

<VA file name>

加载指定的 VisualApplets 设计文件。

例如,在分配 *.va 或 *.vad 文件以便通过双击资源管理器打开时使用。

参数:

  • VisualApplets 设计文件的文件名 (*.va 或 *.vad)

表 3. 命令行选项及相应参数


打印 / 截图

VisualApplets 允许打印图表窗口或将其内容作为图像复制到系统剪贴板中。 打印/截图操作将应用于当前选定的图表窗口。 即使由于分辨率有限,部分内容无法完全显示在当前屏幕上,系统也会选中包含所有算子和链接的整个窗口进行输出。

要开始打印,请选择所需的图表窗口,然后依次选择 File → Print( Ctrl+P )。 该设计将自动调整大小。

要生成截图并将内容复制到剪贴板,请选择所需的图表窗口,然后点击 Edit → Screenshot to clipboard。 如果您倾向于将截图直接保存为图像文件,请选择 Edit → Screenshot to file。