![]() |
BotNavSim
v0.4.3
Mobile Robot Simulation
|
CBotLoader | Bot loader provides functions for finding and loading robots. |
CBotNavSim | BotNavSim high-level manager class. Holds BotNavSim.State and controls state transition behaviour. |
CUI_Credits.Credit | Serializable (exposed to UnityEditor) for holding creditation data |
CDraw.CubeData | |
CEnvLoader | Environment loader searches for and loads environment GameObjects from the Unity Resources folder. |
CFileBrowser | File browser utility class for finding files and folders. |
CHSBColor | Utility struct for transforming RGB Color to HSB Color (sourced from a previous project) |
CINavigation | INavigation interface for robot navigation algorithms. This component of the robot is responsible for calculating a direction along a path to a specified location. |
▼CIObservable | Interface for objects that are observable via CamController must keep their world bounds up-to-date |
CBotPath | BotPath displays information about a recorded path taken or calculated. |
CCamController.StubObservable | A blank IObservable implementation (used when the _areas list is empty) |
CLogLoader | Log loader high level BotNavSim state manager |
CRobot | Robot class bridges the gap between sensors and INavigation. The navigation direction is cached in Robot.navigationCommand. This class does not implement any physics simulation. Robot locomotion models are implemented in other classes that require this component for communications and data. |
CSimulation.Observer | |
▼CIWindowFunction | Interface for classes that implement a GUI.WindowFunction |
▼CIToolbar | Interface for classes that implement a toolbar item |
CUI_CameraControls | IToolbar class for controlling the camera. |
CUI_EnvironmentEditor | IToolbar class provides controls for the Environment Editor (not implemented!) |
CUI_Log | IToolbar class for providing controls of data logging. Includes editing parameters to log and enable/disable logging. Calls functions to Log class |
CUI_LogLoader | IToolbar class provides controls for loading and viewing CSV data logs. |
CUI_RobotEditor | IToolbar class provides controls for the Robot Editor (not implemented!) |
CUI_SimulationBatch | IToolbar class for displaying and editing the simulation batch list |
CUI_SimulationControl | IToolbar class for simulation control. Provides controls for pausing, stopping or skipping the current test Provides a toggle for exhibition mode. Provides a slider for simulation timescale. |
CUI_Credits | IWindowFunction class for displaying credits. Also inherits from MonoBehaviour to expose credit data to UnityEditor when added as a component to the UI GameObject |
CUI_Prompt | IWindowFunction class that prompts the user for action. |
CUI_SimulationSettings | An instantiable class that provides a UI for editing a given Simulation.Settings object |
CDraw.LineData | |
CLog | Provides data logging capabilities. Data is logged in CSV format. |
▼CMonoBehaviour | |
CArDrone | AR Drone control system implementation. Developed with data from http://parrotcontact.emencia.net/website/user-guides/download-user-guides.php?pdf=ar-drone-2/AR-Drone-2_User-guide_Android_UK.pdf See final report for diagram of implementation. |
CBoeBot | BoeBot differential drive control system. Built using data from: https://www.parallax.com/product/900-00008 See final report for diagram of implementation |
CCamController | Controls the camera orientation and render modes according to ViewMode in viewModeList user input. viewModeList is maintained by the state manager class in control i.e. Simulation, LogLoader, RobotEditor, EnvironmentEditor |
CDestination | Sets a random sprite for displaying the robot destination. |
CDraw | Draws stuff, useful for displaying debug data in the simulation. Note that GL implementations require that this Monobehaviour be attached to a the rendering camera (OnPostRender event) |
CEnvironment | Environment data |
CEnvironmentEditor | Environment editor state machine class. |
CLogLoader | Log loader high level BotNavSim state manager |
CRobot | Robot class bridges the gap between sensors and INavigation. The navigation direction is cached in Robot.navigationCommand. This class does not implement any physics simulation. Robot locomotion models are implemented in other classes that require this component for communications and data. |
CRobotEditor | Robot editor state machine. |
▼CSensor | Abstract Sensor class for all sensor implementations to inherit from. |
CParamSensor | Parameter sensor is a 2D FOV sensor model, loosely based on real ultrasonic sensor behaviour |
CUltrasonicSensor | Ultrasonic sensor model. |
CSimulation | This is a manager class used to overlook the running of a simulation. |
CSpriteFade | Fades a sprite alpha channel to invisible |
CTestCamera | A test script that tracks trains a camera on a target object. This was used to test and build robot models. |
CUI_Credits | IWindowFunction class for displaying credits. Also inherits from MonoBehaviour to expose credit data to UnityEditor when added as a component to the UI GameObject |
CUI_Toolbar | UI Toolbar provides controls for choosing which UI windows to display |
CNavLoader | Used to find and load INavigation implementations from .dll files. |
CObjectSerializer | Object serializer utility class. |
CPid | Pid encapsulates PID control for floating point variables. |
CPidVector3 | PidVector3 encapsulates PID control for 3D vectors. |
CPluginFactory< T > | Plugin factory utility class instantates interfaces from a DLL assembly file Adapted from: http://stackoverflow.com/questions/5751844/how-to-reference-a-dll-on-runtime |
CPluginFactory< INavigation > | |
CProximityData | Proximity data structure. |
CSimulation.Settings | |
CStrings | A utility class for strings used in this project. |