Document structure
A LabRPS document contains all the objects of your scene. It can contain groups, and objects made with any workbench. You can therefore switch between workbenches, and still work on the same document. The document is what gets saved to disk when you save your work. You can also open several documents at the same time in LabRPS, and open several views of the same document.
Inside the document, the objects can be moved into groups, and have a unique name. Managing groups, objects and object names is done mainly from the Tree view. Note: It can also be done, of course, like everything in LabRPS, from the Python interpreter. In the Tree view, you can create groups, move objects to groups, delete objects or groups, by right-clicking in the tree view or on an object, rename objects by double-clicking on their names, or possibly other operations, depending on the current workbench.
The objects inside a LabRPS document can be of different types. Each workbench can create its own types of objects.
If there is at least one document open in LabRPS, there is always one and only one active document. That's the document that appears in the current Dependency graph view, the document you are currently working on.
Application and User Interface
Like almost everything else in LabRPS, the graphical user interface part (GUI) is separated from the base application part (App). This is also valid for documents. The documents are also made of two parts: the Application document, which contains our objects, and the View document, which contains the representation on screen of our objects.
Think of it as two spaces, where the objects are defined. Their constructive parameters are stored in the Application document, while their graphical representation are stored in the View document. Why is that? Because LabRPS can also be used without graphical interface, for example, inside other programs, and we must still be able to manipulate our objects, even if nothing is drawn on the screen.
Scripting
Documents can be easily created, accessed and modified from the Python interpreter. For example:
LabRPS.ActiveDocument
Will return the current (active) document
LabRPS.ActiveDocument.Sim
Would access an object called "Sim" inside your document
LabRPSGui.ActiveDocument
Will return the view document associated to the current document
LabRPSGui.ActiveDocument.Sim
Would access the graphical representation (view) part of our Sim object
LabRPSGui.ActiveDocument.ActiveView
Will return the current view
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, AppImage
- Basics: About LabRPS, Interface, RPS Objects, Object name, Preferences, Workbenches, Document structure, Properties, Help LabRPS, Donate
- Hubs: User hub, Power users hub, Developer hub