Update Graphics and Plot While Solving
With the Application Builder, you can now update graphics form objects while running methods or command sequences. This makes it possible, for example, to switch between showing a mesh and a plot group in a single method, or to make your own camera-based animations. Built-in support to plot while solving has also been added – simply use the plot group in the study as the source in a graphics form object.
Improved View Support
While building an application in the Application Builder, you can include functionality in the graphics toolbar that will allow the user of the app to switch the view. This means that when a user runs the app that includes a graphics form object in it, they can switch which view is used in the graphics. In addition, you can reset the view to default from the graphics toolbar, from command sequences, or in methods. The Record Code feature now supports view nodes, such as the Camera or Axis nodes, making it easier to extract the necessary code to the Method Editor, for example, when modifying the camera.
Model Data Access for More Settings
The Model Data Access tool makes it easy to use settings in the model as sources in form objects. This also includes many more available settings, such as selecting materials in material links, and choosing the time or parameters to plot in the results.
With the New Form dialog, you can go from model and application content directly to tailor-made form objects. This functionality is now available for already existing forms using the new Editor Tools window. For example, select a parameter and create all of an associated text label, input field, and unit form object with a single click. Just as in the New Form dialog, this works for inputs, outputs, buttons, and graphics.
The Editor Tools window also works for methods, replacing the functionality of the Model Code window from previous software versions.
Margin Settings for Form Objects
For all form objects in grid layout mode, you can now use vertical and horizontal margin settings, making it possible to control the layout with more precision.
Variables as Arguments in Command Sequences
Variables, available under the Declarations node, can now be used as arguments in command sequences instead of constants in many cases. For instance, as input arguments in methods. Additionally, you can evaluate derived values and store the results in a variable directly, without writing any method code.
Form Collections Have a New "Tiled or Tabbed" Option
With the new Tiled or tabbed option, you can set the form collections to change between a tiled and tabbed look while an app is running. After selecting this option in the Form Collection settings window, you can add a new form object, called a toggle button, to switch between the two modes.
A form collection showing four graphics form objects in the tabbed (left) and tiled (middle) modes, which can be set with the Form Collection settings window (right).
Method Editor Additions
The Method Editor now includes helpful tooltips for built-in methods, as well as improved auto-indentation and formatting support, making methods easier to write. There are also a number of new built-in methods in the Language Elements window. A few notable additions include: retrieving matrix size, appending and removing elements and rows in arrays, opening URLs in the default browser, defining email server settings, and clearing meshes and solutions from the model.
Customize the Graphics Toolbar
Graphics form objects now support custom toolbar buttons. You can also control where to place the toolbar itself – either above, below, to the left, or to the right of the graphics canvas.
The same form can now be reused in multiple places, such as in different form collections, for example. In addition, it is possible to refer to forms directly in card stacks.
The Application Builder now provides extended support for copying and pasting between two different COMSOL Multiphysics sessions. You can now copy and paste many more nodes, such as methods, libraries, and menu items, in addition to forms and form objects, which were already supported.