The User Interface of VisualApplets

VisualApplets provides a graphical user interface for applet design that requires no programming or scripting. Its intuitive workflow enables users to create complex image processing designs without writing code. The tool is designed to be accessible to users without a programming background.

Additionally, VisualApplets also offers 'Command Line Options' and scripting options for the users that prefer to work with scripting or via the command line.

Main Window

The VisualApplets main window consists of the following bars and panels:

Main Program Window

Figure 3. Main Program Window


The main menu bar provides direct access to the program features. Use the toolbar buttons for quick access to important functions. You can change the size of the toolbar icons in Settings System SettingsCommon:

Three panels provide different information and possibilities:

  • Design panel: The design panel shows your VisualApplets project. You always have one main design window, but, depending on the structure of your project, you may additionally work with several sub windows. In the Window menu, multiple views can be selected (Tile, Cascade, Tabbed View). Using the menu entries you find in Window Diagram Windows ( Ctrl+F8 ), you can easily select the design diagram window you want to work on at the moment.

  • Information panel: In default setting of the main program window, the information panel is always displayed. It offers different information windows in tabbed view:

    • Project Info

    • Module Info

    • Parameter Info

    • DRC Log

    • Build Log

    • Help

    (For details on each information window, see below.)

  • Library panel: In default setting of the main program window, the library panel is always displayed. It offers three library windows in tabbed view:

    • Operator Library: The Operator Library is a collection of sub-libraries that contain VisualApplets operators, i.e. the individual image processing functions.

    • User Library: The User Library can include custom libraries with user-defined combinations of operators (hierarchical boxes). For more information see 'User Libraries'.

    • Custom Library: To import operators into the Custom Library you need either an Expert license or the VisualApplets 4 license.

[Tip] Specific Operators

Some operators displayed in the operator library may not be available for the platform you are currently designing for. Unsupported operators are grayed-out to indicate that they can't be used in the current design configuration.

Operator not available for currently selected target hardware platform

Figure 4. Operator not available for currently selected target hardware platform


Information Panel

This topic provides information about the Information Panel. The Information Panel hosts the following views:

The Information Panel

Figure 5. The Information Panel


Project Info

The Project Info window summarizes information on the current project.

Project Info

Figure 6. Project Info


The following information is provided:

  • Name: Name of project (=file name)

  • Creation Date: Date of creation

  • Last Modified: Date of last modification

  • Version: Version number of the project; this entry can be edited from the DesignProject Details menu (see 'Project Properties')

  • Description: Verbal description of the project; this entry can be edited from the DesignProject Details menu (see 'Project Properties')

  • Type: Displays the FPGA type currently used on the target hardware (see 'Target Hardware Porting')

  • Target Runtime: Displays the target runtime (see 'Target Runtime')

  • Design Rules Check Level 1: Indicates found errors or successful performance (see 'Design Rules Check')

  • Hardware Applet: Indicates the existence of a hardware applet. The entry is checked if VisualApplets previously generated a HAP file of the project.

  • Resources: Shows the results of the resource estimation. See also 'FPGA Resource Estimation'.

  • System: Displays the found XILINX version, the available Framegrabber SDK version, and the Framegrabber SDK installation directory. This information is used by VisualApplets to build a HAP and for the final HAP output. See 'Build' for more information.

Module Info

The Module Info window shows a list of all modules used in the project (as long as the input field of the window is empty). The list is structured by the hierarchy of the project.

Module Search

Figure 7. Module Search


In the Module Info window, you can easily search for a certain module or module type. This is very helpful when working in large designs. Before you start your search, you should define the filter settings:

  • If you want to search for the individual name you gave to the module, activate "Names".

  • If you want to search for the module type (the name of the operator the instance of which you are currently searching for), activate "Types".

Module Search

Figure 8. Module Search


You can now enter your search term. It is sufficient to enter only part of a name. A click on one of the modules listed in the Module Info window will bring the respective design window into focus (in the design panel), with the module selected and highlighted.

Parameter Info

The Parameter Info view shows all parameters and their operators of the active design. You can also edit the parameters in the Parameter Info view.

Parameter Info

Figure 9. Parameter Info


The Parameter Info view provides a search function that allows you to search for parameters, parameter values, or operator names. You can use the Runtime Parameter Only filter to display only the dynamical parameters, i.e. parameters that you can edit during runtime.

DRC Log

The DRC Log window displays the results of the last Design Rules Check. A click on one of the module names listed under a warning/error message will bring the respective design window into focus (in the design panel), with the module selected and highlighted.

DRC Log Information

Figure 10. DRC Log Information


Build Log

The Build Log window displays the results of the last Build.

Build Log Information

Figure 11. Build Log Information


Help

The Help window offers context-sensitive help on individual operators.

To open the context-sensitive help you can either:

  1. Select the operator you want information on directly in you design and press F1 to open and display the corresponding information in the Help window.

  2. Select a operator from the Operator Library window. The Help window will always show the help for the current selection.

Example: Displaying Information on the MergeKernel Operator

Figure 12. Example: Displaying Information on the MergeKernel Operator


If you press F1 in any other window or click on a help button, the context sensitive user manual help for the current selected window or function will open. Of course, you can access the operator help directly form this user documentation, too. See Operator Reference.

Library Panel

The library panel displays the Operator Library window, the User Library window and the Custom Library window in tabbed view.

All libraries (Operator Library, User Library, and Custom Library with all their sub-libraries) are organized in a tree structure. Each library contains operators.

The visualization of the structure can be changed by selecting either "Tree", "List", or "Icon" view.

Library Panel with Operator Library on Display

Figure 13. Library Panel with Operator Library on Display


In the search field, a search string can be entered to filter the list for only the required operators. Camera for example will list all operators containing camera in their name.

Operator Library

The Operator Library is a collection of sub-libraries that contain VisualApplets operators, i.e. the individual image processing functions.

You can get detailed information on each operator by clicking on the operator name in the Operator Library window and clicking on the Help tab in the information panel.

Library Panel with Operator Library on Display

Figure 14. Library Panel with Operator Library on Display


See 'Inserting Operators' on how to add new operators to a diagram. A detailed documentation of all operators is given in Operator Reference.

User Library

The User Library can include custom libraries with user-defined combinations of operators (hierarchical boxes). For more information see 'User Libraries'.

Custom Library

To import operators into the Custom Library you need either an Expert license or the VisualApplets 4 license. For more information see 'Custom Operator Libraries'.

Adapting the Program Window

You have various options to adapt the main program window of VisualApplets to your personal preferences:

Adapting Toolbars

Toolbars can be rearranged by drag and drop or added/removed by a right click.

Restoring the Default Setting of the Main Program Window

If you accidentally arranged the windows or toolbars in a way you didn't want to, you can restore the default setting by selecting WindowReset Dock Windows ( Ctrl+O ).

Undocking Diagram Tabs into Separate Windows

You can undock diagram tabs in the Design Panel of the main window so that the design content appears in a floating window. With this feature you can edit a design using multiple screens. This feature can be accessed in three ways:

  1. Via context menu:

    1. Right-click on the tab.

    2. Click Float.

    Undock via Context Menu

    Figure 15. Undock via Context Menu


  2. Using the Float button:

    1. Hover over the tab to reveal the Float button located to the left of the Close button.

    2. Click the Float button.

    Undock via Float button

    Figure 16. Undock via Float button


  3. Double left-click:

    1. Double left-click on the tab.

The undocked diagram windows can be used and arranged freely like normal Windows windows.

[Note] Window State is not Saved

When saving a design, the window state is not saved. Therefore, the design will be loaded without undocked windows.

This also applies to the Back and Forward functions that close undocked windows.

To re-dock a floating window, there is a Dock button in the toolbar of the undocked window. This button docks the diagram window to the last position of the active display area.

Re-docking Floating Windows

Figure 17. Re-docking Floating Windows


Splitting the Design Panel Within the Main Window

You can split the Design Panel within the main window, which displays the diagram tabs side-by-side in the main window. This feature allows you to view and edit multiple diagram tabs simultaneously.

To split your Design Panel:

  1. Right-click on the diagram tab you want to move. A context menu opens up.

  2. Select Move To Other View.

    Opening the Split View

    Figure 18. Opening the Split View


As a result, the diagram tabs are displayed side-by-side in the main window:

Split View

Figure 19. Split View


To end the split view, select Move All To Other View in the context menu. This moves all diagram window tabs from the selected display area to the other display area.

[Note] Window State is not Saved

When saving a design, the window state is not saved. Therefore, the design will be loaded without split views.

This also applies to the Back and Forward functions that close split views.

Number of Files under File -> Recent Designs

Under FileRecent Designs VisualApplets offers you a list of recently opened VisualApplets files (*.va). You can configure the actual number of files displayed.

To define how many recently opened files are displayed:

  1. Go to menu SettingsSystem settings and select category Common.

  2. Under Recent designs, define the number of files you want to have displayed (up to 24).

  3. Confirm with OK.

Configuring the number of displayed recent designs

Figure 20. Configuring the number of displayed recent designs


Multiple Processes

VisualApplets projects may include multiple processes. A process is the top level of a diagram and can include an arbitrary number of operators and hierarchical boxes. Each process can be started and stopped individually.

A good example where four processes are used, is a four camera application, for example the examples\Acquisition\BasicAcquisition\iF-CXP12-Q\QuadCXP12x1AreaGray8.va example. Have a look at the following figure. It shows four processes with a camera, a buffer and a DMA operator in each of the processes.

Applet with Four Processes

Figure 21. Applet with Four Processes


When the applet is used, all four processes, i.e., all four cameras can be started and stopped individually. If all four cameras are in the same process, they have to be started and stopped simultaneously, as all DMAs of a process have always to be started.

To learn more about the usage of VisualApplets applets on hardware, see section 'Running Your Applet on Hardware', and/or the Framegrabber SDK documentation.

Managing Processes

To add a new process, click DesignNew Process or choose the icon in the Edit toolbar.

Creating a New Process

Figure 22. Creating a New Process


To remove a process first select any digram window belonging to the process and afterwards select DesignRemove Process or choose the icon in the Edit toolbar.

Processes always start with index 0 and have to be in ascending order. If a process is removed, processes with higher indices are shifted to fill the gap.

Keyboard Shortcuts

Below, you find a list of all shortcuts available in VisualApplets.

Main Program Window

Shortcut Menu Item
Ctrl+N FileNew Project
Ctrl+O FileOpen Project
Ctrl+S FileSave Project
Ctrl+P FilePrint Visible Diagram
Ctrl+Q FileQuit Application
Ctrl+Z EditUndo
Ctrl+Shift+Z EditRedo
Ctrl+Z EditUndo
Ctrl+X EditCut
Ctrl+C EditCopy
Ctrl+V EditPaste
Del EditDelete
F2 EditRename Module
Ctrl+I DesignAdd Operator
Mouse 3+ DesignAdd Operator
Ctrl+F DesignSearch Module
F9 AnalysisStart Simulation
Ctrl+F7 AnalysisDesign Rules Check Level 1
Ctrl+F8 AnalysisDesign Rules Check Level 2
F7 BuildBuild
F5 BuildStart microDisplay
F11 ViewFull screen
Ctrl++ ViewZoom In Diagram
Ctrl+- ViewZoom Out Diagram
Ctrl+Mouse wheel up ViewZoom In Diagram
Ctrl+Mouse wheel down ViewZoom Out Diagram
Ctrl+Return ViewZoom Reset
Backspace ViewWindow Up
Ctrl+Space ViewToggle Hand/Selection Tool
Ctrl+Arrow Right WindowNext Diagram
Ctrl+Arrow Left WindowPrevious Diagram
Drag+Drop Project files can be dropped on main window.

Table 1. Shortcut List for Main Program Window


Simulation Viewer

Shortcut Menu Item
Ctrl+Q FileExit Simulation Viewer
Ctrl+C EditCopy Image to Clipboard
Del EditRemove Selected Images
Ctrl+Del EditRemove all Images
Arrow left NavigationPrevious Image
Arrow right NavigationNext Image
Ctrl++ ViewZoom In
Ctrl+Mouse wheel up ViewZoom In
Ctrl+- ViewZoom Out
Ctrl+Mouse wheel down ViewZoom Out
Ctrl+Mouse 3 ViewNormal Size 1:1
F11 ViewFull Screen
Ctrl+F ViewFit to Window
Ctrl+T ViewMapped Thumbs
Ctrl+R ViewReset Parameters
Drag+Drop Images can be dropped directly on simulation viewer (source) or simulation source module.

Table 2. Shortcut List for Simulation Viewer


Command Line Options

VisualApplets offers some command line arguments in order to use VisualApplets, for example, in batch scripts, or for linking the program into a system environment.

The syntax follows the following scheme:

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

The commands, together with the expected arguments, are listed in the following table:

Command Line Argument & Meaning

-file

Execute commands stored in a specified Tcl script.

Arguments:

  • File name of Tcl script (*.tcl)

-compile

Load a specified file and create an applet. The design will be checked against the design rules.

Arguments:

  • File name of VisualApplets design file (*.va)

  • File name of resulting applet file (*.hap)

-sdk

Generates an SDK Example (C source code) for using the applet with the Framegrabber SDK. The design will be checked against the design rules.

Arguments:

  • File name of VisualApplets design file (*.va)

  • File name of PixelPlant applet file (*.hap)

-KeepSyntheseTraceFiles

Additional option when generating a hardware applet. Keeps the intermediate files (created during the build process) for tracing purposes after the build is completed.

<VA file name>

Load a specified VisualApplets design file.

Used, for example, when assigning *.va or *.vad files for opening by double-clicking the explorer.

Arguments:

  • File name of VisualApplets design file (*.va or *.vad)

Table 3. Command Line Options and According Arguments


Print / Screenshot

VisualApplets offers the possibility to print a diagram window or copy its content as an image into the system clipboard. The printing / screenshot is applied to the currently selected diagram window. The full window including all operators and links will be selected for output even if parts of the content cannot be fit into the current screen due to the limited resolution.

To start printing select the required diagram window and select FilePrint ( Ctrl+P ). The design will automatically be resized.

To generate a screenshot and copy the content into clipboard select the required diagram window and click on EditScreenshot to clipboard. If you prefer to directly save the screenshot in an image file select EditScreenshot to file.