diff --git a/docs/core/studio.md b/docs/core/studio.md index 9bff79f09..a568915cb 100644 --- a/docs/core/studio.md +++ b/docs/core/studio.md @@ -7,12 +7,16 @@ import DocCardList from '@theme/DocCardList'; # AICA Studio This section will give a brief, high-level tour of AICA Studio to help situate new users. Underlying concepts and -examples will be covered in more depth in later sections of this documentation. +examples are covered in more depth in later sections of this documentation. + +In short, AICA Studio is the graphical user interface layer to the AICA System to create, monitor and extend advanced +robotic applications. It features an interactive application editor with a dataflow graph builder, a 3D scene visualizer +and live data visualization. It also allows managing hardware configuration, user profiles and more. ## Application manager and editor The default landing page when opening AICA Studio is the application manager and editor. It can also be accessed by -clicking the "Editor" tab in the top navbar. +clicking the "Editor" link in the top navbar. It shows a list of saved applications and presents options to create a new application or upload applications from file. For a new installation with no saved applications, the list will be empty. @@ -26,7 +30,7 @@ elements of which are described in the following subsections. ## Hardware manager -The next top-level page is the hardware manager, available under the "Hardware" tab in the top navbar. +The other top-level page is the hardware manager, available under the "Hardware" link in the top navbar. ![aica-studio-hardware-manager](./studio/assets/aica-studio-hardware-manager.png) @@ -37,31 +41,28 @@ name. Any hardware listed in the hardware manager can be loaded and used in an application. -## Docs - -Under the "Docs" tab in the top navbar, reference documentation for installed components and controllers in the AICA -System configuration can be accessed. +## Help -![aica-studio-docs-page](./studio/assets/aica-studio-docs-page.png) +The "Help" link in the top right section of the navbar is used to access a help page with links to documentation and +learning resources. -## Users +![aica-studio-help-page](./studio/assets/aica-studio-help-page.png) -The user icon in the top right of the page is used to access and manage the currently logged-in user profile. +It also includes reference documentation for the installed components and controllers in the AICA System configuration. -![aica-studio-user-page](./studio/assets/aica-studio-user-page.png) +![aica-studio-docs-page](./studio/assets/aica-studio-docs-page.png) -Read more about user scopes and API keys in [Users and authentication](/docs/getting-started/users-and-authentication). +## Profile -## Settings +The "Profile" link in the top right of the page is used to access and manage the currently logged-in user profile. -The settings page is accessed through the cogwheel icon on the top right of the page. It is only available to users with -the `admin` scope and can be used to administer other users as well as connect to cloud storage and services. +![aica-studio-profile-page](./studio/assets/aica-studio-profile-page.png) -![aica-studio-settings-view](./studio/assets/aica-studio-settings-view.png) +Read more about user scopes and API keys in [Profiles and scopes](./studio/profiles-and-scopes.md). -## Logs +## AICA Studio with Launcher -Finally, the last button on the top right accesses the logs viewer. This page shows log entries from the running system -and can be filtered and searched to find relevant entries. +When using AICA Launcher v1.5.0 or newer with AICA Core v5.1.0 or newer, settings and controls related to AICA Launcher +are available from the top right "Launcher" link in the navbar. This can be used to access -![aica-studio-logs-view](./studio/assets/aica-studio-logs-view.png) +![aica-studio-launcher-settings](./studio/assets/aica-studio-launcher-settings.png) diff --git a/docs/core/studio/3d.md b/docs/core/studio/3d.md new file mode 100644 index 000000000..25fc41422 --- /dev/null +++ b/docs/core/studio/3d.md @@ -0,0 +1,26 @@ +--- +sidebar_position: 3 +title: 3D view +--- + +The 3D scene view shows hardware models and frames of the current application. When the application is running, the +hardware positions and frames update live according to the active control logic. + +![aica-studio-3d-view](./assets/aica-studio-3d-view.png) + +The 3D view can be rotated by clicking and dragging within the scene, while holding right-click and dragging pans the +view. Scroll over the view to zoom in or out. If the application defines any frames, they can be positioned and rotated +by clicking and dragging on the frame markers. + +When the main view shows the 3D view, settings and controls for the 3D view can be accessed through the right panel +Scene tab and Settings subtab. View settings control what is displayed in the 3D view, while additional controls allow +creating or recording new application frames or joint positions from the current configuration. + +![aica-studio-3d-view-settings](./assets/aica-studio-3d-view-settings.png) + +When the main view shows the application graph, the 3D view can be accessed in the right panel under the 3D view tab. +When this tab is selected, the mini-view is automatically minimized and 3D settings are accessed through an additional +mini-panel from the Settings button. + +![aica-studio-3d-view-tab-settings](./assets/aica-studio-3d-view-tab-settings.png) + diff --git a/docs/core/studio/assets/aica-studio-3d-view-settings.png b/docs/core/studio/assets/aica-studio-3d-view-settings.png new file mode 100644 index 000000000..58260dbcd Binary files /dev/null and b/docs/core/studio/assets/aica-studio-3d-view-settings.png differ diff --git a/docs/core/studio/assets/aica-studio-3d-view-tab-settings.png b/docs/core/studio/assets/aica-studio-3d-view-tab-settings.png new file mode 100644 index 000000000..0c2001148 Binary files /dev/null and b/docs/core/studio/assets/aica-studio-3d-view-tab-settings.png differ diff --git a/docs/core/studio/assets/aica-studio-3d-view-tab.png b/docs/core/studio/assets/aica-studio-3d-view-tab.png new file mode 100644 index 000000000..83a350ba9 Binary files /dev/null and b/docs/core/studio/assets/aica-studio-3d-view-tab.png differ diff --git a/docs/core/studio/assets/aica-studio-3d-view.png b/docs/core/studio/assets/aica-studio-3d-view.png index 4337f9f6e..df355b761 100644 Binary files a/docs/core/studio/assets/aica-studio-3d-view.png and b/docs/core/studio/assets/aica-studio-3d-view.png differ diff --git a/docs/core/studio/assets/aica-studio-add-component.png b/docs/core/studio/assets/aica-studio-add-component.png new file mode 100644 index 000000000..6cadc7730 Binary files /dev/null and b/docs/core/studio/assets/aica-studio-add-component.png differ diff --git a/docs/core/studio/assets/aica-studio-application-editor.png b/docs/core/studio/assets/aica-studio-application-editor.png index 13ccca46f..44825465f 100644 Binary files a/docs/core/studio/assets/aica-studio-application-editor.png and b/docs/core/studio/assets/aica-studio-application-editor.png differ diff --git a/docs/core/studio/assets/aica-studio-application-graph-running.png b/docs/core/studio/assets/aica-studio-application-graph-running.png index 639a04665..eb28edcba 100644 Binary files a/docs/core/studio/assets/aica-studio-application-graph-running.png and b/docs/core/studio/assets/aica-studio-application-graph-running.png differ diff --git a/docs/core/studio/assets/aica-studio-application-graph.png b/docs/core/studio/assets/aica-studio-application-graph.png index 8fa935b9d..a47d50a9d 100644 Binary files a/docs/core/studio/assets/aica-studio-application-graph.png and b/docs/core/studio/assets/aica-studio-application-graph.png differ diff --git a/docs/core/studio/assets/aica-studio-application-left-panel.png b/docs/core/studio/assets/aica-studio-application-left-panel.png new file mode 100644 index 000000000..0773aeed0 Binary files /dev/null and b/docs/core/studio/assets/aica-studio-application-left-panel.png differ diff --git a/docs/core/studio/assets/aica-studio-application-manager.png b/docs/core/studio/assets/aica-studio-application-manager.png index 5f9eba616..4a0611ae8 100644 Binary files a/docs/core/studio/assets/aica-studio-application-manager.png and b/docs/core/studio/assets/aica-studio-application-manager.png differ diff --git a/docs/core/studio/assets/aica-studio-code-view.png b/docs/core/studio/assets/aica-studio-code-view.png new file mode 100644 index 000000000..ec42c681d Binary files /dev/null and b/docs/core/studio/assets/aica-studio-code-view.png differ diff --git a/docs/core/studio/assets/aica-studio-component-settings.png b/docs/core/studio/assets/aica-studio-component-settings.png new file mode 100644 index 000000000..82fdce1ba Binary files /dev/null and b/docs/core/studio/assets/aica-studio-component-settings.png differ diff --git a/docs/core/studio/assets/aica-studio-docs-page.png b/docs/core/studio/assets/aica-studio-docs-page.png index b398388fc..a36e70e92 100644 Binary files a/docs/core/studio/assets/aica-studio-docs-page.png and b/docs/core/studio/assets/aica-studio-docs-page.png differ diff --git a/docs/core/studio/assets/aica-studio-hardware-manager.png b/docs/core/studio/assets/aica-studio-hardware-manager.png index 9397ec248..1df8e851e 100644 Binary files a/docs/core/studio/assets/aica-studio-hardware-manager.png and b/docs/core/studio/assets/aica-studio-hardware-manager.png differ diff --git a/docs/core/studio/assets/aica-studio-help-page.png b/docs/core/studio/assets/aica-studio-help-page.png new file mode 100644 index 000000000..895bc525f Binary files /dev/null and b/docs/core/studio/assets/aica-studio-help-page.png differ diff --git a/docs/core/studio/assets/aica-studio-launcher-settings.png b/docs/core/studio/assets/aica-studio-launcher-settings.png new file mode 100644 index 000000000..169ff1541 Binary files /dev/null and b/docs/core/studio/assets/aica-studio-launcher-settings.png differ diff --git a/docs/core/studio/assets/aica-studio-live-topic-view.png b/docs/core/studio/assets/aica-studio-live-topic-view.png index 27407c6b3..d8b549b15 100644 Binary files a/docs/core/studio/assets/aica-studio-live-topic-view.png and b/docs/core/studio/assets/aica-studio-live-topic-view.png differ diff --git a/docs/core/studio/assets/aica-studio-login.png b/docs/core/studio/assets/aica-studio-login.png new file mode 100644 index 000000000..7e6378bae Binary files /dev/null and b/docs/core/studio/assets/aica-studio-login.png differ diff --git a/docs/core/studio/assets/aica-studio-logs-view.png b/docs/core/studio/assets/aica-studio-logs-view.png index a24eda200..1d7316528 100644 Binary files a/docs/core/studio/assets/aica-studio-logs-view.png and b/docs/core/studio/assets/aica-studio-logs-view.png differ diff --git a/docs/core/studio/assets/aica-studio-new-password.png b/docs/core/studio/assets/aica-studio-new-password.png new file mode 100644 index 000000000..fb04f5cf7 Binary files /dev/null and b/docs/core/studio/assets/aica-studio-new-password.png differ diff --git a/docs/core/studio/assets/aica-studio-new-profile.png b/docs/core/studio/assets/aica-studio-new-profile.png new file mode 100644 index 000000000..b01a4a6b2 Binary files /dev/null and b/docs/core/studio/assets/aica-studio-new-profile.png differ diff --git a/docs/core/studio/assets/aica-studio-profile-page.png b/docs/core/studio/assets/aica-studio-profile-page.png new file mode 100644 index 000000000..d2fa44bc3 Binary files /dev/null and b/docs/core/studio/assets/aica-studio-profile-page.png differ diff --git a/docs/core/studio/assets/aica-studio-scene-list.png b/docs/core/studio/assets/aica-studio-scene-list.png new file mode 100644 index 000000000..fc5c313a5 Binary files /dev/null and b/docs/core/studio/assets/aica-studio-scene-list.png differ diff --git a/docs/core/studio/assets/aica-studio-settings-view.png b/docs/core/studio/assets/aica-studio-settings-view.png deleted file mode 100644 index 5c7057611..000000000 Binary files a/docs/core/studio/assets/aica-studio-settings-view.png and /dev/null differ diff --git a/docs/core/studio/assets/aica-studio-state-table-view.png b/docs/core/studio/assets/aica-studio-state-table-view.png index 2d5500b37..9d3ad706f 100644 Binary files a/docs/core/studio/assets/aica-studio-state-table-view.png and b/docs/core/studio/assets/aica-studio-state-table-view.png differ diff --git a/docs/core/studio/assets/aica-studio-super-admin-blank.png b/docs/core/studio/assets/aica-studio-super-admin-blank.png new file mode 100644 index 000000000..9c7d73ab2 Binary files /dev/null and b/docs/core/studio/assets/aica-studio-super-admin-blank.png differ diff --git a/docs/core/studio/assets/aica-studio-super-admin-profiles.png b/docs/core/studio/assets/aica-studio-super-admin-profiles.png new file mode 100644 index 000000000..a1a3cd9c1 Binary files /dev/null and b/docs/core/studio/assets/aica-studio-super-admin-profiles.png differ diff --git a/docs/core/studio/assets/aica-studio-user-page.png b/docs/core/studio/assets/aica-studio-user-page.png deleted file mode 100644 index db93cef6d..000000000 Binary files a/docs/core/studio/assets/aica-studio-user-page.png and /dev/null differ diff --git a/docs/core/studio/editor.md b/docs/core/studio/editor.md index 267562f8e..83208adec 100644 --- a/docs/core/studio/editor.md +++ b/docs/core/studio/editor.md @@ -9,32 +9,33 @@ When an application is created or selected for editing, the following applicatio ![aica-studio-application-editor](./assets/aica-studio-application-editor.png) -On the left of the screen is the YAML code representation of the application, which is how applications are stored and -parsed. On the right are visualization tools, including the unique application graph editor and the 3D scene viewer. +The editor features two panels on the left and right side of a main view, with a mini-view in the bottom left. Next to +the left panel is the main runtime control button. The Start button starts running the loaded application, which then +changes into a Stop button to stop the running application. -The white chevrons in the middle of the screen can be used to selectively expand the left or right portions of the -screen. +## Main view -Application controls are shown above the YAML code. +The main view shows the iconic AICA dataflow graph by default, which is explained more in the next section, while the +mini-view shows a preview of 3D scene view. The left and right panels as well as the mini-view switcher can be minimized +with the respective icon buttons to provide more screen space for the main view. -Exit back to the application manager screen using the X button on the top left. It will prompt to save or discard -unsaved changes. Running applications will be stopped when closing the application. +The main view can also be switched to render the 3D scene of the application by clicking on the mini-view in the bottom +left of the page. The mini-view will then correspondingly show the application graph instead of the 3D scene, and can +be clicked again to switch the main view back to the application graph. -Next to the X button, the cloud storage button can be used to upload and synchronize applications to cloud storage or -downloaded them locally. This option is disabled until a user with `admin` scope connects to cloud storage in the -[Settings](../studio.md#settings) page. +## Left panel -Applications can be deleted, saved, or saved as a copy under a new name. +The left panel is used for managing application metadata with controls to rename, describe, and save the working +version. Exit back to the application manager screen using the "Close" button in the left panel. When the left panel is +minimized, the "X" button on the top left has the same function. Closing an application will prompt to save or discard +unsaved changes. Running applications must be stopped before closing the application. -The "Generate Graph" button is used to apply new code changes to the application graph. When editing the YAML code -manually, changes will not take effect until this button is pressed. +## Right panel -The application can be renamed using the edit icon next to the application name. This also presents an option to add or -edit the application description, which can serve as a way of differentiating and describing the purpose of various -applications. +The right panel is the context-aware data and property manager for actual application content and behavior grouped +in various tabs. The width of the right panel can be adjusted with drag interactions to remain compact for normal usage +or to take up more space for a split-screen effect with the main view. The right panel tabs contain the main tools for +configuring and monitoring the application. -In the top right of the application editor are the runtime controls. The Play button starts the loaded application, -which can then be stopped with the Stop button. - -Beneath the runtime controls are the view selections for the various visualization tools, starting with the application -graph. These views are presented in more detail in the next section. +Read on to learn more about the [application graph editor](./graph.md), the [3D scene](./3d.md) and the +[right panel tabs](./tab-views.md). \ No newline at end of file diff --git a/docs/core/studio/graph.md b/docs/core/studio/graph.md index 73e891c42..7a08901a2 100644 --- a/docs/core/studio/graph.md +++ b/docs/core/studio/graph.md @@ -39,20 +39,38 @@ the [concepts](/docs/category/application-building-blocks) section. ## Interacting with the graph -Click and drag on the background of the graph or on the mini-map on the bottom left to pan the view and zoom in and out -by scrolling. The graph control buttons next to the mini-map can also be used to zoom and fit the view. +Click and drag on the background of the graph to pan the view and zoom in and out by scrolling. -### Adding and deleting nodes +### Adding elements to the graph -Nodes can be added to the graph using the sidebar menu; press the (+) button in the top right corner of the graph to -open the sidebar and see a list of available application elements. At the top of the list are the "Hardware Interface", -"Trigger Events Button", "Sequence" and "Condition" nodes. These are followed by a list of all available components from -AICA Core and any additionally installed packages, grouped by package. Clicking on any element in the sidebar will -automatically add it to the graph. +Application elements can be added to the graph using the right panel under the Scene tab and Add Component subtab: -Nodes can be moved by clicking and dragging them. Depending on the type of node, clicking on various parts of the node -will provide additional interaction options such as changing the display name, configuring parameters or expanding / -collapsing certain fields. +![aica-studio-add-component](./assets/aica-studio-add-component.png) + +At the top of the list are the "Hardware Interface", "Trigger Events Button", "Sequence" and "Condition" nodes. These +are followed by a list of all available components from AICA Core and any additionally installed packages, grouped by +package. Clicking on any element in the sidebar will automatically add it to the graph. + +The search field can be used to filter the available elements by name or description. + +### Managing graph elements + +Nodes can be moved by clicking and dragging them. When a node is selected, a small menu provides options to rename, +duplicate or delete the node. Additionally, settings for the selected node will appear in the right panel under the +Scene tab and Settings subtab. This is mainly used to configure automatic state transitions such as "auto-configure" or +"auto-activate" and to set parameter values. The means of editing a parameter value depend on the parameter type, with +simple toggles for boolean parameters, input fields for numeric and string parameters, and an input menu accessed +through the pencil edit icon for array parameters. + +![aica-studio-component-settings](./assets/aica-studio-component-settings.png) + +Depending on the application element, clicking on various parts of the node will provide additional interaction options. +In particular, components and hardware interfaces have toggleable badges to configure automatic state transitions +without needing to open the Settings tab, while sequences have a toggle to enable looping behavior. Sections such as +Transitions, Predicates and Services will have a Show All button that can be used to expand or collapse the respective +interfaces. + +### Deleting graph elements To delete a node from the graph, press the small menu icon in its top right corner, then click Remove. @@ -131,5 +149,3 @@ indicates which signals are actively transporting data with line animations and highlighting colors. ![aica-studio-application-graph-running](./assets/aica-studio-application-graph-running.png) - -Next, take a look at some of the other available application views. diff --git a/docs/core/studio/live-views.md b/docs/core/studio/live-views.md deleted file mode 100644 index f3567e491..000000000 --- a/docs/core/studio/live-views.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -sidebar_position: 3 -title: Live views ---- - -# Live views - -Monitor and visualize the state of a running application with the following live views. - -## 3D scene - -The 3D scene view shows hardware models and frames of the current application. When the application is running, the -hardware positions and frames update live according to the active control logic. - -![aica-studio-3d-view](./assets/aica-studio-3d-view.png) - -## ROS topics - -View the data running on signals and other background topics on the ROS 2 network. - -![aica-studio-live-topic-view](./assets/aica-studio-live-topic-view.png) - -## State table - -The state table gives a compact overview of which components and controllers are loaded, what state they are in, and -which predicates and conditions are true or false. - -![aica-studio-state-table-view](./assets/aica-studio-state-table-view.png) diff --git a/docs/core/studio/profiles-and-scopes.md b/docs/core/studio/profiles-and-scopes.md new file mode 100644 index 000000000..4e57a7598 --- /dev/null +++ b/docs/core/studio/profiles-and-scopes.md @@ -0,0 +1,121 @@ +--- +sidebar_position: 5 +title: Profiles and scopes +--- + +The concept of "Profiles" in this section refers to creating distinct access credentials (or service accounts) for +different operational purposes, such as for a monitoring dashboard with view-only permissions or an operator interface +that can start and stop applications. + +:::note + +An AICA System License is a **single-user** license intended for one primary developer. The platform does not currently +support live, simultaneous collaboration with other developers on the same system instance. + +::: + +Authentication prevents unauthorized users or software clients from accessing or controlling a running instance of the +AICA System through AICA Studio or the API, even if they have access to the IP address and port of the AICA Core server. + +The user launching an AICA System configuration from AICA Launcher is treated as the system administrator rather than a +regular profile, and must first switch to a regular profile to access AICA Studio. + +This section describes how to manage profiles with specific access scopes to explicitly authorize access to the running +AICA System through a web browser or API client. + +:::info + +System administration privileges and API authentication are supported by AICA Launcher as of v1.2.0 and the Python API +Client as of v3.1.0. Upgrade to the latest versions of these tools for full compatibility. + +::: + +## Scopes + +AICA Studio may have different or limited functionality depending on the scopes granted to the logged-in profile. +Similarly, an API key with appropriate scopes is required to access respective endpoints and functionalities of the API. +The available levels of scopes are described below. + +### `status` + +Read-only access to high-level information about the AICA System such as the available installed features. This is the +minimum required scope. + +### `monitor` + +Read-only access to specific information about the AICA System such as configuration database entries or the state and +live telemetry of running applications. Requires the `status` scope. + +### `control` + +Write-level access to edit applications, hardware entries and other configurations, and control-level access to set, +start and manage running applications. Requires the `monitor` scope. + +### `users` + +Administration access to manage profiles (re-assigning scopes, resetting passwords, or deleting profiles) + +### `cloud-configuration` + +Administration access to authorize and manage cloud service integrations. + +## Profiles + +When using AICA Launcher as the system administrator, AICA Studio will show a "Super Admin" landing page to select or +manage the profile. Brand-new configurations will have no existing profiles. + +![aica-studio-super-admin-blank](assets/aica-studio-super-admin-blank.png) + +Profiles are created using an email address as the identifier and can be granted a combination of [scopes](#scopes). +To edit and run applications in AICA Studio, the `control` scope is required. + +:::note + +The email address used to create a new profile is only used as an identifier and is unrelated to the email address used +for [licensing](./installation/licensing). Profiles are defined locally to a specific AICA System Configuration, and +access scopes or passwords are not inferred or shared between different configurations, even if the same email address +is used. + +::: + +To create a new profile, click on the **New Profile** button in the Settings page, provide an email address and the +desired scopes. + +![aica-studio-new-profile](assets/aica-studio-new-profile.png) + +A random password is generated for the newly created profile. It is only shown once, so it should be copied and stored for +later use. If the password needs to be changed, first log out from the User page (or open AICA Studio in a new browser +session), and log in as the new user with the generated password. Then, change the password in the User page by entering +the generated (old) and the desired (new) password. + +![aica-studio-new-password](assets/aica-studio-new-password.png) + +:::tip + +If AICA Studio is accessed from a web browser, or if the user logs out of the current AICA Studio session, a valid +profile email and password must be supplied to log in to AICA Studio. + +::: + +![aica-studio-login](assets/aica-studio-login.png) + +The [Profile](../studio.md#profile) page in AICA Studio can be used to view the current user with their available scopes, change the password or +create API keys. + +## API Keys + +Other than accessing AICA Studio through a browser, users or software clients can interact with the AICA System using +the API. In this case, an API key is required for authentication. This can be generated in the Profile page in +AICA Studio, by clicking on the **New API Key** button. Provide a name and the desired scopes; note that these +cannot surpass the scope of the logged-in user. + +Just as with the creation of new profiles, the newly created API key is shown once to be copied and saved in a secure +place, as it cannot be accessed later. It can then be used it to authenticate and access AICA Core through the API. + +If an API key is lost or compromised, delete it from the Users page and generate a new one. + +:::tip + +Refer to our [API client documentation](https://pypi.org/project/aica-api/) for more info on the usage of API keys. + +::: \ No newline at end of file diff --git a/docs/core/studio/right-panel-tabs.md b/docs/core/studio/right-panel-tabs.md new file mode 100644 index 000000000..8d538886b --- /dev/null +++ b/docs/core/studio/right-panel-tabs.md @@ -0,0 +1,72 @@ +--- +sidebar_position: 4 +title: Right panel tabs +--- + +The right panel of the AICA application editor is divided into the following tabs: + +## Scene + +The scene tab contains three sub-tabs for settings, adding components, or listing elements in the scene. + +### Settings + +The settings sub-tab is context-aware depending on the selected element in the application graph. It shows relevant +properties and information and provide controls to change parameters and behavior of the element. + +![aica-studio-component-settings](./assets/aica-studio-component-settings.png) + +### Add Component + +The Add Component sub-tab is used to add elements to the application. + +![aica-studio-add-component](./assets/aica-studio-add-component.png) + +### Scene List + +The Scene List is a compact display of all elements in the application. Clicking on an element will select it in the +application graph, zoom the view to center it, and show its settings in the Settings sub-tab. + +![aica-studio-scene-list](./assets/aica-studio-scene-list.png) + +## Code + +The Code view shows the YAML code representation of the AICA application. This code is automatically regenerated +whenever any edits are made to the application graph or to elements in the 3D scene. It is possible to change the YAML +directly using the built-in editor. However, changes will not take affect until the "Generate Graph" button is pressed. +In case of syntax errors, graph generation will fail and the relevant error messages will be displayed in the Code view. + +![aica-studio-code-view](./assets/aica-studio-code-view.png) + +## 3D view / Graph view + +Depending on whether the main view shows the [application graph](./graph.md) or the [3D view](./3d.md), this tab will +provide the alternate view. The right panel mode of the graph view is non-interactive for modifying nodes, edges or +parameters but allows zooming, panning and pressing trigger buttons for configured events. When the 3D view is in the +right panel, the 3D view settings are accessed from a mini-panel rather than the Settings sub-tab of the Scene tab. + +## Live Data + +View the data running on signals and other background topics on the ROS 2 network. Use the Choose Topic selector to +change the topic to visualize. Selecting a signal edge in the graph view while the application is running will +automatically select the appropriate signal topic for visualization in this tab. + +For certain signal types, in particular related to Cartesian or joint states, individual state variables can be selected +for visualization. + +![aica-studio-live-topic-view](./assets/aica-studio-live-topic-view.png) + +## Logs + +The logs view shows log entries from the running system color-coded by severity level. The auto-scroll option +automatically scrolls the view to the bottom whenever new log entries are added. Scrolling up in the log view allows +accessing previous log entries and temporarily disables auto-scroll. + +![aica-studio-logs-view](./assets/aica-studio-logs-view.png) + +## Live Table + +The live state table gives a compact overview of which components and controllers are loaded, what state they are in, +and which predicates and conditions are true or false. + +![aica-studio-state-table-view](./assets/aica-studio-state-table-view.png) diff --git a/docs/core_versioned_docs/version-v4/studio.md b/docs/core_versioned_docs/version-v4/studio.md index 9bff79f09..5bc276476 100644 --- a/docs/core_versioned_docs/version-v4/studio.md +++ b/docs/core_versioned_docs/version-v4/studio.md @@ -50,7 +50,7 @@ The user icon in the top right of the page is used to access and manage the curr ![aica-studio-user-page](./studio/assets/aica-studio-user-page.png) -Read more about user scopes and API keys in [Users and authentication](/docs/getting-started/users-and-authentication). +Read more about user scopes and API keys in [Users and authentication](./studio/profiles-and-scopes.md). ## Settings diff --git a/docs/docs/getting-started/assets/aica-studio-create-user.png b/docs/core_versioned_docs/version-v4/studio/assets/aica-studio-create-user.png similarity index 100% rename from docs/docs/getting-started/assets/aica-studio-create-user.png rename to docs/core_versioned_docs/version-v4/studio/assets/aica-studio-create-user.png diff --git a/docs/docs/getting-started/assets/aica-studio-new-api-key.png b/docs/core_versioned_docs/version-v4/studio/assets/aica-studio-new-api-key.png similarity index 100% rename from docs/docs/getting-started/assets/aica-studio-new-api-key.png rename to docs/core_versioned_docs/version-v4/studio/assets/aica-studio-new-api-key.png diff --git a/docs/docs/getting-started/assets/aica-studio-new-password.png b/docs/core_versioned_docs/version-v4/studio/assets/aica-studio-new-password.png similarity index 100% rename from docs/docs/getting-started/assets/aica-studio-new-password.png rename to docs/core_versioned_docs/version-v4/studio/assets/aica-studio-new-password.png diff --git a/docs/docs/getting-started/assets/aica-studio-other-user.png b/docs/core_versioned_docs/version-v4/studio/assets/aica-studio-other-user.png similarity index 100% rename from docs/docs/getting-started/assets/aica-studio-other-user.png rename to docs/core_versioned_docs/version-v4/studio/assets/aica-studio-other-user.png diff --git a/docs/docs/getting-started/assets/aica-studio-user-login.png b/docs/core_versioned_docs/version-v4/studio/assets/aica-studio-user-login.png similarity index 100% rename from docs/docs/getting-started/assets/aica-studio-user-login.png rename to docs/core_versioned_docs/version-v4/studio/assets/aica-studio-user-login.png diff --git a/docs/docs/getting-started/users-and-authentication.md b/docs/core_versioned_docs/version-v4/studio/profiles-and-scopes.md similarity index 99% rename from docs/docs/getting-started/users-and-authentication.md rename to docs/core_versioned_docs/version-v4/studio/profiles-and-scopes.md index 55e03a00d..f54e4c5aa 100644 --- a/docs/docs/getting-started/users-and-authentication.md +++ b/docs/core_versioned_docs/version-v4/studio/profiles-and-scopes.md @@ -1,5 +1,5 @@ --- -sidebar_position: 3 +sidebar_position: 4 title: Users and authentication ---