Using YAKINDU Model Viewer

YAKINDU Model Viewer reads a model file with filename extension .mdl or .slx and shows the corresponding block diagram with a similar look and feel as in MATLAB Simulink. In addition, several interface features support the user when inspecting complex models with multiple hierarchies:

  • Switching hierarchy levels by double-clicking on a subsystem (hop in) or on the background (hop out)
  • Zooming in/out
  • Bird’s eye overview of the model
  • Model structure in outline view
  • Element details in properties view

The screenshot below depicts some of the interface elements just mentioned:

Viewing properties

The Properties view displays the properties of a selected model element. In the image above, it is surrounded by a green rectangle. If a block is selected, the block type, its name and the navigation path to the block is displayed. The navigation path can be copied to the clipboard by pressing [Ctrl+C] on the keyboard.

Below the navigation path, the properties of the block are listed in a table. On the left-hand side of the properties view, you can toggle between the General and the Other tab. The General tab shows only the most important information about a block, whereas the Other tab displays additional properties, like its graphical information or the block’s ID.

Getting an overview

The Overview view shows a small version of the complete model. In the image above, you can find it in the top-right corner, marked with an orange rectangle. If the displayed model is larger than the main view’s viewport, a blue rectangle appears in the overview, which covers that section of the model that is currently visible in the main view. You can drag this rectangle across the model overview to reposition the main view’s viewport. If the Preserve Ratio button is disabled the small model image is scaled up to completely fit into the overview. This feature is useful for models that are stretched extremely wide or long on one axis only.

Outline

The Outline view displays a hierarchical tree view of the model and its elements. In the image above, you can find the outline in the bottom-right corner, marked with a red rectangle. You can expand an element and make its children visible by clicking on the little triangle in front of the element’s name.

If you select an element in the outline, its properties are shown in the properties view. Double-clicking on a subsystem or chart element opens that element in the main view.

Searching for model elements

To look for a specific model element, click on the search button. It is located in the top-right corner of the main view, recognizable by a magnifying glass icon. Clicking on that button opens a search view; see the orange rectangle in the image above. Here you can enter a search term and restrict the search to specific element types. Selecting an element in the result visualizes that element in the main view.

Model navigation

The navigation bar shows the navigation path to the selected element. In the image above it is marked with a blue rectangle. You can click on any path element to navigate to it. The „backwards” and „forward” buttons, recognizable by the „<” and „>” symbols, provide a browser-like navigation.

Direct navigation

The figures below show the navigation and dive-in action performed on models. To navigate into a subsystem, just double-click on it. The contents of the subsystem will become visible in the main view. To move back to the containing system, double-click on the main view’s background or use the „navigation bar”#navigation_bar.

Signal tracing

YAKINDU Model Viewer provides functionality to follow and highlight signals „to source” and „to target”. To activate the signal trace highlighting, use the context menu provided for each signal, as shown in the following picture.

The signal trace will be highlighted in the currently visible system. All elements that are not part of the current signal trace will be grayed out.

The signal trace will also be highlighted when navigating into subsystems. Additionally, the active signal trace will be highlighted within each open tab showing elements included in the active signal trace.

The signal trace can be cleared by using the Clear trace action available in the context menu.

Changing model appearance

YAKINDU Model Viewer controls the appearance of model element by CSS stylesheets. You can place custom stylesheets in a styles folder in the application’s installation directory. In order to apply a custom stylesheet, it needs to be selected on YMV’s preference page.

The following snippet shows a sample CSS file and its effects on the model’s appearance.

For a more fine-grained configuration, you can define styles depending on block types by using the following selectors, similar to the styling information for subsystems and sums in the snippet above:

  • .bus-assignment
  • .bus-creator
  • .bus-selector
  • .compare-to-constant
  • .constant
  • .data-type-conversion
  • .discrete-time-integrator
  • .divide
  • .enable
  • .gain
  • .logic
  • .lookup-table
  • .math-function
  • .mux
  • .port-label
  • .port
  • .product
  • .reference
  • .relational-operator
  • .saturation
  • .subsystem
  • .sum
  • .switch

As YAKINDU Model Viewer uses JavaFX under its hood for rendering model elements, you can obtain further information on CSS styling in the JavaFX reference documentation.