Power users hub: Difference between revisions
(Created page with " {{TOCright}} 64px ---- This is the place to come if you are an experienced user and want to learn more about customizing and extending LabRPS. LabRPS is extensible by Python code that is run directly in the Python console, or that is loaded from modules at startup. This means that you can modify LabRPS without needing to recompile the program. For example, you can: * '''Create and modify geometry''': you can c...") |
No edit summary |
||
Line 18: | Line 18: | ||
* [[Interface Customization|Interface Customization]]: Starting with the beginning: Toolbars and shortcuts | * [[Interface Customization|Interface Customization]]: Starting with the beginning: Toolbars and shortcuts | ||
* [[Macros|Working with Macros]]: Easily record often repeated tasks or Python code | * [[Macros|Working with Macros]]: Easily record often repeated tasks or Python code | ||
== Scripting in LabRPS == | == Scripting in LabRPS == | ||
Line 33: | Line 30: | ||
* [[Gui_Command|Gui Command]]: Adding custom commands to the GUI | * [[Gui_Command|Gui Command]]: Adding custom commands to the GUI | ||
* Using mixed [[Units|Units]] in LabRPS | * Using mixed [[Units|Units]] in LabRPS | ||
=== Modules === | === Modules === | ||
The functionality of LabRPS is separated in Modules which deal with special data types and applications. LabRPS has built-in modules and Extension Modules (plug-ins). Once plugin modules are installed, they become availible to you as easily as the built-in modules. The modules described below are the default modules, includeed in every LabRPS installation. | The functionality of LabRPS is separated in Modules which deal with special data types and applications. LabRPS has built-in modules and Extension Modules (plug-ins). Once plugin modules are installed, they become availible to you as easily as the built-in modules. The modules described below are the default modules, includeed in every LabRPS installation. | ||
== API Functions == | == API Functions == | ||
The complete API documentation of LabRPS is located at http://www.labrps.com/api/ . It contains both C++ and Python APIs, and is not totally well formatted yet, which can be confusing when looking for python-only code. | The complete API documentation of LabRPS is located at http://www.labrps.com/api/ . It contains both C++ and Python APIs, and is not totally well formatted yet, which can be confusing when looking for python-only code. | ||
== Advanced modification == | == Advanced modification == | ||
Line 92: | Line 44: | ||
* [[Installing_on_Windows|Installing on Windows]]: Using the windows installer | * [[Installing_on_Windows|Installing on Windows]]: Using the windows installer | ||
* [[Compile_on_Windows|Compiling LabRPS on Windows]] and [[Compile_on_Linux|Compiling LabRPS on Linux]] | * [[Compile_on_Windows|Compiling LabRPS on Windows]] and [[Compile_on_Linux|Compiling LabRPS on Linux]] | ||
== Python tutorials == | == Python tutorials == | ||
Line 116: | Line 66: | ||
* [http://vizzzion.org/?id=pyqt Programming Qt applications in python] : A more in-depth tutorial covering all the process of working with qt and python | * [http://vizzzion.org/?id=pyqt Programming Qt applications in python] : A more in-depth tutorial covering all the process of working with qt and python | ||
{{Powerdocnavi}} | {{Powerdocnavi}} | ||
[[Category:Hubs]] | [[Category:Hubs]] |
Latest revision as of 15:39, 29 October 2024
This is the place to come if you are an experienced user and want to learn more about customizing and extending LabRPS.
LabRPS is extensible by Python code that is run directly in the Python console, or that is loaded from modules at startup. This means that you can modify LabRPS without needing to recompile the program. For example, you can:
- Create and modify geometry: you can create a new object type, either from scratch or by adapting an existing type.
- Create custom tools and commands: add your own set of tools that run your code.
- Modify the interface: create toolbars to put your tools, create special windows, panels, or interfaces for interacting with your tools.
- Modify the scenegraph representation: LabRPS has separate processes for building up the geometry and displaying that geometry on screen. You have full access to the way the scene contents are displayed on screen, therefore you can modify that representation, interact with it, or add custom behaviour to it. You can also add custom screen widgets, like information, draggers, anchors or temporary entities.
If you'd like to contribute content to these pages, request a wiki account with editor permissions in the forum, and read the WikiPages for the general guidelines that you should follow. For other ways to contribute with the project, see the Help LabRPS page.
Customizing LabRPS
- Interface Customization: Starting with the beginning: Toolbars and shortcuts
- Working with Macros: Easily record often repeated tasks or Python code
Scripting in LabRPS
General
- Scripting and Macros - A list of relevant wiki pages
- Introduction to Python - See also other Python tutorials at the bottom of this page
- LabRPS scripting tutorial - A general look at Python scripting in LabRPS
- LabRPS Scripting Basics: Well, the basics
- LabRPS Manual - Section Python Scripting: Multi-chapter introduction to Python Scripting in LabRPS
- Gui Command: Adding custom commands to the GUI
- Using mixed Units in LabRPS
Modules
The functionality of LabRPS is separated in Modules which deal with special data types and applications. LabRPS has built-in modules and Extension Modules (plug-ins). Once plugin modules are installed, they become availible to you as easily as the built-in modules. The modules described below are the default modules, includeed in every LabRPS installation.
API Functions
The complete API documentation of LabRPS is located at http://www.labrps.com/api/ . It contains both C++ and Python APIs, and is not totally well formatted yet, which can be confusing when looking for python-only code.
Advanced modification
- Start up and Configuration: Startup and command line options
- Installing on Windows: Using the windows installer
- Compiling LabRPS on Windows and Compiling LabRPS on Linux
Python tutorials
These are good generic tutorials, not specific to LabRPS, that might interest you if you are totally new to python.
Python
- Official python tutorial - A very complete tutorial for discovering python
- Non-programmer tutorial for python - an excellent wikibook
- Python for newbies - one big tutorial covering all the basics
PySide - How to create and manage LabRPS's Qt UI interface from python
- PySide tutorial : A platform-agnostic tutorial showing the usage of PySide with examples
- PySide/PyQt tutorial : A easy to read tutorial that covers PySide and PyQt with examples
- PySide documentation : from the Qt Project (the people who wrote it all)
- Using QtCreator in PySide : also from the Qt Project
- PySide reference : endless detail on the minutiae of PySide and Qt, a reliable reference source
- PySide code snippets : a searchable database of PySide code snippets
The following two references are PyQt specific (not PySide) but may offer some information of use:
- Basic PyQt tutorial : A simple and short linux-based tutorial that will explain how to work with PyQt and Qt Designer
- Programming Qt applications in python : A more in-depth tutorial covering all the process of working with qt and python
- LabRPS scripting: Python, Introduction to Python, Python scripting tutorial, LabRPS Scripting Basics
- Modules: Units, Quantity
- Workbenches: Gui Commands, Commands
- Parametric objects: Scripted objects, Viewproviders
- Graphical interface: Interface creation, Interface creation completely in Python, PySide, PySide examples beginner, intermediate, advanced
- Macros: Macros, How to install macros
- Other: Expressions
- Hubs: User hub, Power users hub, Developer hub