Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .claude/settings.local.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
{
"permissions": {
"allow": [
"Bash(xargs cat:*)"
"Bash(xargs cat:*)",
"Bash(grep -n ' $' PluginAppLoader/Apps/SettingsImportExport/README.md2)",
"Bash(grep *)"
]
}
}
9 changes: 5 additions & 4 deletions PluginAppLoader/Apps/AppTemplate/README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
# RoboDK App Template
# RoboDK Add-in Template

The App Template for RoboDK provides the necessary examples to build a RoboDK Add-in.
It can be used as a template to build your own RoboDK Apps.
The Add-in Template for RoboDK provides the necessary examples to build a RoboDK Add-in.

For more information about RoboDK Add-ins and Apps visit the documentation:
It can be used as a template to build your own RoboDK Add-ins.

For more information about RoboDK Add-ins, visit the documentation:

- RoboDK documentation: <https://robodk.com/doc/en/Add-ins.html>.
- RoboDK API for Add-ins or Apps: <https://robodk.com/doc/en/PythonAPI/app.html>.
Expand Down
48 changes: 30 additions & 18 deletions PluginAppLoader/Apps/BoxSpawner/README.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,48 @@
# Box Spawner

The Box Spawner App for RoboDK lets you programmatically add box objects in your RoboDK Station.
You can customize the spawner location, box parameters, and request a new box from a RoboDK Program.
Multiple spawner location are supported by providing a spawner ID in your program call.
The Box Spawner Add-in for RoboDK allows you to programmatically add box objects in your RoboDK station.

- For more information about RoboDK Apps, visit the
It automates the creation, scaling, placement, and conveyor attachment of box components, making it ideal for simulating pick-and-place, palletizing, or conveyor-fed applications.

- For more information about RoboDK Add-ins, visit the
[documentation](https://robodk.com/doc/en/PythonAPI/app.html).
- Submit bug reports and feature suggestions on our
[GitHub](https://github.com/RoboDK/Plug-In-Interface/issues).

## Features

### Editor
- **Editor Interface:** Configure dimensions, frames, conveyor attachments, and randomization noise.
- **Automated Box Generation:** Generate 3D boxes dynamically with custom dimensions and automatic labeling.
- **Custom Spawn Locations:** Spawn items directly relative to any RoboDK item (reference frame or station base).
- **Conveyor Relocation:** Automatically detect and attach spawned boxes to the closest moving conveyor mechanism or a specific frame.
- **Randomization Control:** Add position offsets, rotational noise, and scale variations to simulate real-world variability.
- **Multi-Spawner Profiles:** Configure and maintain multiple spawner profiles using Spawner IDs.
- **Programmatic Execution:** Trigger spawning manually via the toolbar or programmatically within RoboDK programs.

Use the Editor to set the spawner settings.
## Usage

- Units: mm or in
- Box size L/W/H in the above units (or X/Y/Z)
- Spawn location: RoboDK item (frame or station) where the box will be spawn
- Conveyor relocation: automatically transfer the box to the closest conveyor
- Randomization: randomize the position, orientation and scale of the box
### Spawner

![Interface](./docs/interface.png)
Click the **Spawn** icon in the toolbar to spawn a box instantly using the active profile (defaults to Spawner ID #0).

### Spawner
You can also navigate to **Utilities - Box Spawner - Spawn** to generate a box.

Use the spawner button to create a new box in you station using the Editor parameters.
The spawner button defaults to the spawner ID #0.
![Utilities](./docs/utilities.png)

![Icons](./docs/icons.png)
### Editor

Use the Editor to set the spawner settings.

- Units: In millimeters or inches.
- Box Size: L/W/H (or X/Y/Z) in the above units.
- Spawn Location: RoboDK item (frame or station) where the box will be spawned.
- Conveyor Relocation: Automatically transfer the box to the closest conveyor.
- Randomization: Randomize the position, orientation, and scale of the box.

![Interface](./docs/interface.png)

### Add Python Script

Add a python script in your station that will spawn a box when called. Useful for spawning boxes in a Program.
For example, the Program call `Call SpawnBox(2)` will use the spawner ID #2.
Add a python script in your station (by going to Utilities - Box Spawner - Add Script) that will spawn a box when called. Useful for spawning boxes when a RoboDK program is running.

For example, the program call `Call SpawnBox(1)` will use the Spawner ID #1 and spawn the box according to **Box Spawner Settings (1)**.
Binary file removed PluginAppLoader/Apps/BoxSpawner/docs/icons.png
Binary file not shown.
Binary file modified PluginAppLoader/Apps/BoxSpawner/docs/interface.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions PluginAppLoader/Apps/CurveUtilities/README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Curve Utilities

The Curve Utilities App for RoboDK adds tools to generate and edit curve objects.
The Curve Utilities Add-in for RoboDK adds tools to generate and edit curve objects.

- For more information about RoboDK Apps, visit the
- For more information about RoboDK Add-ins, visit the
[documentation](https://robodk.com/doc/en/PythonAPI/app.html).
- Submit bug reports and feature suggestions on our
[GitHub](https://github.com/RoboDK/Plug-In-Interface/issues).
Expand Down
6 changes: 4 additions & 2 deletions PluginAppLoader/Apps/CycleTime/README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
# Cycle Time

The Cycle Time App for RoboDK is a toolbox for cycle time estimation of robot programs.
The Cycle Time Add-in for RoboDK is a toolbox for cycle time estimation of robot programs.

Retrieve valuable metrics from your robot programs, such as feasibility, travel length (mm) and travel time (seconds).
Perform time study by comparing performance with different robot speed.

Perform a time study by comparing performance with different robot speeds.

![Results](./docs/results.png)

Expand Down
12 changes: 6 additions & 6 deletions PluginAppLoader/Apps/GameController/README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Game Controller

The Game Controller App for RoboDK allows you to control your robot arm using a game controller.
The Game Controller Add-in for RoboDK allows you to control your robot arm using a game controller.

- For more information about RoboDK Apps, visit the
- For more information about RoboDK Add-ins, visit the
[documentation](https://robodk.com/doc/en/PythonAPI/app.html).
- Submit bug reports and feature suggestions on our
[GitHub](https://github.com/RoboDK/Plug-In-Interface/issues).
Expand All @@ -14,15 +14,15 @@ The Game Controller App for RoboDK allows you to control your robot arm using a

## Usage

Press the Controller icon in the toolbar to start the app, and click again to stop it. You can also navigate to Connect-Game Controller-Launch Game Controller to start the app.
Press the Controller icon in the toolbar to start the Add-in, and click again to stop it. You can also navigate to Connect - Game Controller - Launch Game Controller to start the Add-in.

![Start](./docs/start.png)

Status updates will be available on the status bar of RoboDK (bottom of the screen).

By default, this app moves the simulated robot. You can also move the real robot if you are connected using the RoboDK driver for your robot controller:
By default, this Add-in moves the simulated robot. You can also move the real robot if you are connected using the RoboDK driver for your robot controller:

- Select Connect-Connect Robot
- Select Connect - Connect Robot
- Enter the IP of the robot
- Select Connect

Expand All @@ -44,6 +44,6 @@ The default mapping was created for an Xbox One controller.

### Settings

You can edit the settings to suit your needs, such as robot speeds, step size, step range, initial settings, etc. Find the settings in Connect-Game Controller-Settings.
You can edit the settings to suit your needs, such as robot speeds, step size, step range, initial settings, etc. Find the settings in Connect - Game Controller - Settings.

![Settings](./docs/settings.png)
18 changes: 11 additions & 7 deletions PluginAppLoader/Apps/ItemUtilities/README.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,20 @@
# Item Utilities

The Item Utilities App for RoboDK adds utility functions to manipulate Items, such as objects and robots.
The Item Utilities Add-in for RoboDK adds utility functions to manipulate items such as objects and robots directly in your RoboDK station.

- For more information about RoboDK Apps, visit the
You can access its features directly from the menu bar by navigating to **Utilities - Item Utilities**, or by right-clicking any item in the station or station tree and selecting **Item Utilities**.

![Utilities](./docs/utilities.png)

- For more information about RoboDK Add-ins, visit the
[documentation](https://robodk.com/doc/en/PythonAPI/app.html).
- Submit bug reports and feature suggestions on our
[GitHub](https://github.com/RoboDK/Plug-In-Interface/issues).

## Features

- Replace an object in-place
- Replace a robot, taking account the robot base offset and the program/target links
- Attach an object to a robot link (permanently)
- Scale an object
- Simplify meshes
- **Replace Object:** Swap an existing station object with a new 3D model while preserving its exact physical location.
- **Replace Robot:** Change robot models while maintaining existing program/target links, base offsets, and attached tools.
- **Attach Object To Robot Link:** Permanently lock objects (e.g., dress packs, harnesses, custom fixtures) onto specific robot joints/links.
- **Scale Object:** Uniformly or non-uniformly resize objects and curves along the X, Y, and Z axes.
- **Simplify Object:** Clean up dense meshes by removing redundant triangles and small geometry to enhance simulation performance.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 3 additions & 3 deletions PluginAppLoader/Apps/ObjectDeleter/README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# Object Deleter

The Object Deleter App for RoboDK adds customizable zones to delete objects.
The Object Deleter Add-in for RoboDK adds customizable zones to delete objects.

- For more information about RoboDK Apps, visit the
- For more information about RoboDK Add-ins, visit the
[documentation](https://robodk.com/doc/en/PythonAPI/app.html).
- Submit bug reports and feature suggestions on our
[GitHub](https://github.com/RoboDK/Plug-In-Interface/issues).

## Feature
## Features

- Use the Editor to set the Object Deleter settings.
- Radius: radius of the delete zone, in mm.
Expand Down
9 changes: 4 additions & 5 deletions PluginAppLoader/Apps/PointUtilities/README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Point Utilities

The Point Utilities App for RoboDK adds tools to generate and edit point objects.
The Point Utilities Add-in for RoboDK adds tools to generate and edit point objects.

- For more information about RoboDK Apps, visit the
- For more information about RoboDK Add-ins, visit the
[documentation](https://robodk.com/doc/en/PythonAPI/app.html).
- Submit bug reports and feature suggestions on our
[GitHub](https://github.com/RoboDK/Plug-In-Interface/issues).
Expand All @@ -11,6 +11,5 @@ The Point Utilities App for RoboDK adds tools to generate and edit point objects

## Features

**Add Point(s) On Surface:** Click on any object's surface mesh to place points continuously while the action is active. It automatically reads the physical mouse contact point to calculate local positional coordinates and geometric surface normal vectors.This feature supports adding new point structures directly to the selected object or outputting them as standalone named target items.

**Convert Point(s) To Target(s):** Transforms point positions into real robot targets using the local normal vector to align the tool Z-axis approach. This also includes a toggle setting to invert point normal paths to ensure proper entry approach direction for robot kinematics. It sorts the index order of point lists based on distance to ensure the robot moves smoothly between neighboring points without erratic jumps.
- **Add Point(s) On Surface:** Click on any object's surface mesh to place points continuously while the action is active. It automatically reads the physical mouse contact point to calculate local positional coordinates and geometric surface normal vectors. This feature supports adding new point structures directly to the selected object or outputting them as standalone named target items.
- **Convert Point(s) To Target(s):** Transforms point positions into real robot targets using the local normal vector to align the tool Z-axis approach. This also includes a toggle setting to invert point normal paths to ensure proper entry approach direction for robot kinematics. It sorts the index order of point lists based on distance to ensure the robot moves smoothly between neighboring points without erratic jumps.
15 changes: 10 additions & 5 deletions PluginAppLoader/Apps/ProgUtilities/README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Program Utilities

The Program utilities App for RoboDK adds tools to edit programs and program instructions.
The Program Utilities Add-in for RoboDK adds tools to edit programs and program instructions.

- For more information about RoboDK Apps, visit the
- For more information about RoboDK Add-ins, visit the
[documentation](https://robodk.com/doc/en/PythonAPI/app.html).
- Submit bug reports and feature suggestions on our
[GitHub](https://github.com/RoboDK/Plug-In-Interface/issues).
Expand All @@ -11,19 +11,24 @@ The Program utilities App for RoboDK adds tools to edit programs and program ins

### Convert MoveC to MoveL

Right-click one or more programs to convert any MoveC command in a series of linear movements (MoveL).
The default step size is 1 mm, or 1 degree. You can edit this settings in the ConvertMoveC.py.
Right-click one or more programs to convert any MoveC command into a series of linear movements (MoveL).

The default step size is 1 mm, or 1 degree. You can edit these settings in the ConvertMoveC.py.

A new program will be created after the conversion.

### Expand sub-program calls

Right-click one or more programs to expand (inline) any sub-program calls.
By default, this process is recursive (sub-programs in sub-programs are also inline). You can edit this settings in the ExpandSubPrograms.py.

By default, this process is recursive (sub-programs in sub-programs are also inline). You can edit these settings in the ExpandSubPrograms.py.

A new program will be created.

### Merge programs

Right-click two or more programs to merge them.

A new program will be created.

### Visibility utilities
Expand Down
4 changes: 2 additions & 2 deletions PluginAppLoader/Apps/Reachability/README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Reachability

The Reachability App for RoboDK adds preview capabilities of reachable tool poses from the current position.
The Reachability Add-in for RoboDK adds preview capabilities of reachable tool poses from the current position.

- For more information about RoboDK Apps, visit the
- For more information about RoboDK Add-ins, visit the
[documentation](https://robodk.com/doc/en/PythonAPI/app.html).
- Submit bug reports and feature suggestions on our
[GitHub](https://github.com/RoboDK/Plug-In-Interface/issues).
Expand Down
17 changes: 11 additions & 6 deletions PluginAppLoader/Apps/Record/README.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,21 @@
# Record

The Record App for RoboDK adds cinematic recording capabilities to RoboDK.
The Record Add-in for RoboDK adds cinematic recording capabilities to RoboDK.

Attach a camera to any object, and record to video file from its perspective.

- For more information about RoboDK Apps, visit the
You can access all its features directly from the **Record** menu in the top menu bar or via the dedicated **Record toolbar**.

![Menu](./docs/menu.png)

- For more information about RoboDK Add-ins, visit the
[documentation](https://robodk.com/doc/en/PythonAPI/app.html).
- Submit bug reports and feature suggestions on our
[GitHub](https://github.com/RoboDK/Plug-In-Interface/issues).

## Features

- Attach a camera to an Item
- Set the camera static or dynamic
- Change the camera resolution
- Save the video as .mp4 or .avi
- **Direct 3D Video Capture:** Record simulation motion cleanly, outputting only the 3D environment and the station tree.
- **Attach Camera (3D View):** Lock the main camera onto a moving robot joint, tool, or part to create dynamic tracking shots.
- **Standardized Aspect Ratios:** Lock dimensions to exact resolutions before recording to prevent image distortion.
- **Customizable Output Settings:** Adjust framerate (FPS) and choose between standard `.mp4` and uncompressed `.avi` video formats.
Binary file added PluginAppLoader/Apps/Record/docs/menu.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions PluginAppLoader/Apps/SetStyle/README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Set Style

The Set Style App for RoboDK adds quick appearance presets to edit curves, points and objects.
The Set Style Add-in for RoboDK adds quick appearance presets to edit curves, points and objects.

- For more information about RoboDK Apps, visit the
- For more information about RoboDK Add-ins, visit the
[documentation](https://robodk.com/doc/en/PythonAPI/app.html).
- Submit bug reports and feature suggestions on our
[GitHub](https://github.com/RoboDK/Plug-In-Interface/issues).
Expand Down
7 changes: 4 additions & 3 deletions PluginAppLoader/Apps/SettingsImportExport/README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
# RoboDK Import-Export Settings

The Import-Export Settings App for RoboDK allows you to export and import all RoboDK global settings.
This allows sharing settings among different computers and create backups.
The Import-Export Settings Add-in for RoboDK allows you to export and import all RoboDK global settings.

This allows sharing settings among different computers and creating backups.

These settings are accessible from the menu `Tools->Options`.

Expand All @@ -12,5 +13,5 @@ This Add-in adds the following actions in the menu and the toolbar:
- Settings Import-Export
- Export: Export the settings as an .INI file
- Import: Import the settings from an .INI file

Note: The license settings are also exported and imported.
5 changes: 3 additions & 2 deletions PluginAppLoader/Apps/Snapshot/README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
# Snapshot

The Snapshot App for RoboDK adds high resolution snapshot (print screen) capabilities to RoboDK.
The Snapshot Add-in for RoboDK adds high resolution snapshot (print screen) capabilities to RoboDK.

Take a snapshot or high resolution snapshot of the 3D view and save it on disk.

- For more information about RoboDK Apps, visit the
- For more information about RoboDK Add-ins, visit the
[documentation](https://robodk.com/doc/en/PythonAPI/app.html).
- Submit bug reports and feature suggestions on our
[GitHub](https://github.com/RoboDK/Plug-In-Interface/issues).
Expand Down
5 changes: 3 additions & 2 deletions PluginAppLoader/Apps/Sound/README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
# Sound

The Sound App for RoboDK adds programmable sound effects and background music/noise to RoboDK stations.
You can use this App to create immersive VR stations.
The Sound Add-in for RoboDK adds programmable sound effects and background music/noise to RoboDK stations.

You can use this Add-in to create immersive VR stations.

## Features

Expand Down
Loading
Loading