All Classes and Interfaces
Class
Description
AABB is a bounding box aligned to the world axies.AboutPanel is a panel that displays the contents of the file "about.html" in the same package.AbstractRenderPass handles common methods for all RenderPass.This class should be in tests but cannot because
Reflections does not work across the
production/test boundary.All applications in the environment extend from
App for reflection.ApproximateJacobian is used to calculate the
Jacobian matrix for a robot arm.Calculates the approximate jacobian for a robot arm using
finite differences.
Given the current pose of the robot, find the approximate jacobian, which describe the relationship between joint
velocity and cartesian velocity.
BehaviorTreeRunner is a node that runs a behavior tree.3D Bezier curve implementation.
3D Bezier curve implementation
See Wikipedia
Interface to help with collision detection
A
BoundingVolumeHeirarchy uses AABBs and Surface Area Heuristics (SAH)
to organize PathTriangles for fast intersection testing by classes like the PathTracer.Panel for editing a
Box.BrainPanel controls settings for a Brain.Open a URL in the desktop web browser.
A RecursiveTask to build a BVHNode tree using SAH.
A node in the
BoundingVolumeHeirarchy.The Camera class is a subclass of the Pose class and is used by a Viewport to viewport the scene in a 3D graphics or game engine.
Panel for editing a
Capsule.Represents a celestial body - star, planet, moon, etc.
Checks online for a new version of Robot Overlord.
A panel that allows the user to open and close a connection to a
SessionLayer.The user-triggered collapsable panel containing the component (trigger) in the titled border
listener interface.
Deprecated.
Listens for collisions between objects in the ODE physics world.
Represents a color with double precision for each channel (red, green, blue, alpha).
RGB color class.
store command line options for use in the app
Draw a compass to show the orientation of the camera.
Positive weights will act as excitatory connections.
ConversationEvent is a simple record to hold a conversation event.a list of all the events that have happened in a conversation.
Copy the selected node(s) to the clipboard.
Copy the selected node(s) to the clipboard.
Crab controller demo.
Internal description of each leg for calculating kinematics.
Enum representing the different phases of a crab leg's movement.
Enum representing different strategies for crab walking.
A controller for a creature made of ODE4J hinges and bodies.
A panel for controlling an ODE4J creature.
CutNode is an action that cuts the selected node(s) from the scene.Cut is a Copy followed by a Remove.
A cylinder with a radius and two end points.
Panel for editing a
Capsule.Panel for editing a
Decal.DHParameter is a node that translates a sibling Pose to and from
Denavit-Hartenberg parameters for a
joint.A dial that can be turned with the mouse wheel, mouse click+drag, or the keyboard +/- keys.
Donatello uses DonatelloNode to associate a Node with its
Swing JPanel and remember the 2D position for graphing.Draw the background.
Draw the bounding box of each
MeshInstance in the scene.Draws each
Camera as a pyramid approximating the perspective view frustum.DrawDepthBuffer is a render pass that is responsible for rendering the stencil buffer to the viewport.Draws each
DHParameter as two lines from the previous joint to the current joint.Draw a ring around each hinge joint to show the range of motion.
Draw each
MeshInstance as a Mesh.Draw each
Pose as RGB lines from the origin to the X,Y,Z axes.DrawStencilBuffer is a render pass that is responsible for rendering the stencil buffer to the viewport.
EditorPanel is a panel for editing GCode that can be sent to a MarlinRobotArm.Environment controls external factors like the sun, the skybox, etc.
EnvironmentPanel adjusts settings for a Environment.Export the scene and all the assets used to a single ZIP file for sharing on another computer.
Methods to make loading files from disk or jar resource easier.
This
AbstractAction checks the filename extension and adds it if it's missing.Used for determining the frame of reference for a given operation in 3D space.
GenerativeMesh is a Mesh that is generated procedurally by some other part of the system.A line in a
GraphModel.Container for graph data.
Draws a graph of the
DonatelloNodes.Panel for editing a
Grid.Halton sequence generator.
In practice I get better results with just random numbers.
a
HingeJoint is a joint that can rotate around the local Z axis.A ray hit is a record of a ray hitting a
MeshInstance at a certain distance.Load a mesh from a file.
Load a Scene and insert it into the existing Scene.
Load a scene from a file.
Convenience methods for detecting intersection of various mesh.
An interface for listening to item removal events from a
ListWithEvents.An interface for listening to item removal events from a
ListWithEvents.KeepRunningUntilFailure is a Decorator that repeats until its child returns
Behavior.Status.FAILURE.LegLimbic bonds together a Leg with a Brain.Limb is a linear chain of bones driven by joints powered by muscles.LimbPlanner knows about a LimbSolver.LimbPlannerPanel displays controls to run a LimbPlanner.a
LinearJoint is a joint that can translate along the local Z axis.When this node is added to the scene, it creates a Linear Stewart Platform.
GUI for a
LinearStewartPlatform.A
List that fires events when items are added or removed.Load a file into the
EditorPanelLoads a MTL Material Format file into a
Material.Load a scene from a file.
LogPanel is a read-only panel that contains the log and a button to open the log file location in the
OS.LookAt is a pose that always faces a target.Turn the active camera to face the last selected Pose.
MarlinCoordinate is a vector used to represent the simultaneous motion of motors in a
MarlinSimulationBlock.A listener for messages from the
MarlinRobotArm.MarlinRobot represents a robot with Marlin firmware installed.MarlinRobotArm converts the state of a robot arm into GCode and back.GUI for a
MarlinRobotArm.GUI for a
MarlinRobot.MarlinSettings is a class that holds the settings for a MarlinSimulation.MarlinSimulation is meant to be a 1:1 Java replica of Marlin's 'Planner' and 'Motor' classes.MarlinSimulationBlock is one block in the queue of blocks inside a MarlinSimulation.Material contains properties for rendering a surface.Math methods.
Convenience methods for matrixes
Mesh contains the vertex data for a 3D model.The
MeshChooserDialog class allows for selecting a Mesh
that has been previously loaded by the MeshFactory.MeshFactory loads a mesh from a file using one of many MeshLoader classes.MeshFactoryDialog displays controls to load a Mesh from a file.GUI for a
MeshInstance.A mesh and the material to render it with.
MeshNormalBuilder is a tool to build normals for a Mesh.MeshSmoother will smooth the normals of a Mesh.Move
Nodes from their current parent to another parent.Convenience methods for the rotate and translate viewporttools.
A simple line graph.
A Node that represents a network session.
A panel that allows the user to open and close a connection in a
NetworkSession.A neuron in a brain.
A neuron in the brain.
NeuronPanel is a panel that displays the details of a Neuron.Clear the text area of the
EditorPanelReset the scene to a new empty scene.
Node is the base class for all nodes in the scene tree.NodeAttachListener is an interface for listening to Node attach events.NodeDetachListener is an interface for listening to node detach events.NodeDetailView is a panel that displays the details of a class that implements Node.A factory that can be used to create Nodes.
Categories of
Node types.NodeFactoryPanel allows a user to select from a list of things that can be created by a given NodeFactory.A panel that displays a
Node.NodePath stores the uniqueID to a node.NodeReadyListener is an interface for listening to node ready events.NodeRenameListener is an interface for listening to node rename events.A dialog that allows the user to select a node from the scene graph.
NodeSelector is a component that allows the user to select a Node.Allows
Nodes to be dropped onto a NodeSelector.NodeTreeBranch is a tree branch that contains a Node.NodeTreeBranchEditor is a cell editorpanel for the NodeTreeView.NodeTreeBranchRenderer is a cell renderer for the NodeTreeView.NodeTreeTransferHandler handles drag and drop operations for the NodeTreeView.NodeTreeView is a panel that displays the tree of nodes in the Registry scene.OBJ material file.
OctreeNode is a node in an octree structure used for spatial partitioning.
Shared methods for working with ODE4J physics.
Actions in this window will control the contents of the
Registry.scene.Wrapper for an angular motor joint in ODE4J.
Wrapper for a ball joint in ODE4J.
A panel for editing an ODEHinge.
An
ODENode that represents a body with a geometry in the ODE physics engine.A panel for editing an ODEBody.
Wrapper for a ODE4J Box.
A panel for editing an ODEBox.
Wrapper for a ODE4J capsule.
A panel for editing an ODEBox.
Wrapper for a ODE4J cylinder.
A panel for editing an ODEBox.
Wrapper for a hinge joint in ODE4J.
A panel for editing an ODEHinge.
A joint between one or two
ODEBody.Listeners are notified when an
ODENode is attached to the scene.Listeners are notified when an
ODENode is detached from the scene.Base class for all
Node that implement ODE4J.Manages the ODE4J physics world, space, and contact handling.
Wrapper for a ODE4J Plane.
Wrapper for a slider joint in ODE4J.
A panel for editing an ODEHinge.
Wrapper for a ODE4J Sphere.
A panel for editing an ODESphere.
A collection of static methods to help with OpenGL.
OpenLogFileLocation is an AbstractAction that asks the OS to open the folder containing the log file.PanelHelper is a collection of static methods to help build panels.PasteNode is an action that pastes the selected node(s) from the clipboard.Paste the copied nodes as children of the parent nodes.
PathCalculator is a static class that can calculate the relative path between two files.Utility functions for working with the local file system.
A collection of
PathTriangles contained in an SpatialAccelerationStructure for optimized path tracing.PathTracer performs multithreaded path tracing (aka ray tracing with bounces)PathTracerPanel controls a PathTracer and displays the results.A panel to display a
BufferedImage in the top left corner without resizing.A JPanel that contains controls for adjusting the settings of a
PathTracer.Triangle optimized for path tracing
Plane and intersection functions.
Simple 2D integer point class.
Static methods to help with rendering some simple shapes in OpenGL.
Factory for procedural meshes.
Displays a combo box of procedural mesh shapes.
Deprecated.
A procedural mesh that generates random points on a hemisphere using different sampling methods.
Panel for editing a
Sphere.Ray is a starting point and a direction.RayAABBHit represents the result of a ray intersecting with an Axis-Aligned Bounding Box (AABB).RayXY is used to track the average color of each pixel as the PathTracer runs.RecentFilesMenu is a menu that keeps track of recently loaded files.Simple 2D integer rectangle class.
Go forward one step in the undo/redo history.
Registry is a place to store global variables.RemoveNode is an action that removes the selected node(s) from the scene.Remove
Nodes from the scene.Classes which implement
RenderPass are drawn as part of - or on top of - the 3D scene.RO3 (Robot Overlord 3) is a robot simulation and control program.
RO3Frame is the main frame for the Robot Overlord 3 application.Allows the user to drop Scene or a supported mesh file onto the main window.
A Command to rotate a list of
Poses.Save the text area of the
EditorPanel to a file.Save the entire scene to a file.
Save the entire scene to a file.
Represents a record of scattering events in a path tracer.
A listener for scene changes.
SearchBar is a text field, a toggle for case-sensitive, and a toggle for regular expressions.A selection tool allows the user to click on the 3D view and change the current
Registry.selection.Deprecated.
Encapsulate all serial receive/transmit at the session layer of the OSI model.
Lists available serial connections and opens a connection of that type
A panel for configuring a serial transport layer.
Created on 4/12/15.
Event object for
SessionLayer.Use this to listen for activity on a NetworkSession.
Handles requests between the UI and the various transport layers
ShaderProgram is a wrapper for vertex and fragment shader programs.Maintains a list of the loaded
ShaderProgram and prevents duplication.A simple line graph.
Panel for editing a SpaceShip.
Interface for a Spatial Acceleration Structure (SAS) used in ray tracing to optimize intersection tests.
Panel for editing a
Sphere.map from a sphere to a plane and back; map from a cube to a sphere and back.
This program enables you to connect to sshd server and get the shell prompt.
user info for authentication.
Authentication info for SSH.
A collection of static methods to help with strings.
Synapse is a connection between two
Neurons.Rewind button, Play button, Stop button, and progress bar from 0...100.
SSH TCP/IP connection to a Raspberry Pi and then open a picocom session to /dev/ttyACM0
Lists available TCP connections and opens a connection of that type to a robot
Opens an SSH connection to another device, then opens a screen to the /dev/ACM0 device on that remote.
A simple text interface with a send button.
A connection selection dialog and a
TextInterfaceWithHistory glued to a SessionLayer.A chat style interface with a history of commands.
The
TextureChooserDialog class allows for selecting a TextureWithMetadata
that has been previously loaded by the TextureFactory.TextureFactory loads textures from files.TextureFactoryDialog displays controls to load a Texture from a
file, wrapped in a TextureWithMetadata.TextureWithMetadata is an OpenGL Texture with metadata about where it came from and the source
image.A
Transferable that contains a list of Nodes.A Command to translate a list of
Poses.Lists available connections in a medium (serial, TCP/IP, smoke signals, etc) and opens a connection of that type
A TransportLayerPanel is a GUI component that allows the user to configure a
TransportLayer.Go back one step in the undo/redo history.
UndoSystem is a singleton to manage the undo/redo history and associated AbstractActions.VertexProvider is an interface for providing vertices and normals to a Mesh.Viewport is an JPanel that uses a set of RenderPasses to draw the
Registry.getScene() from the perspective of the active Camera.ViewportSettingsPanel adjusts settings for a Viewport.Interface for
Viewport tools that can be used to visually edit the scene.Listens for changes to the active
ViewportToolDisplays the settings for the currently active
ViewportToolWaldoPanel provides a settings panel for the
Waldo procedural mesh.WebCamPanel uses Webcam to display the default USB web camera.Move the active camera to within a "good" distance of the last selected Pose.