chrono::vehicle::ChTrackedVehicleVisualSystemIrrlicht Class Reference

Description

Customized Chrono Irrlicht visualization system for tracked vehicle simulation.

#include <ChTrackedVehicleVisualSystemIrrlicht.h>

Inheritance diagram for chrono::vehicle::ChTrackedVehicleVisualSystemIrrlicht:
Collaboration diagram for chrono::vehicle::ChTrackedVehicleVisualSystemIrrlicht:

Public Member Functions

 ChTrackedVehicleVisualSystemIrrlicht ()
 Construct a tracked vehicle Irrlicht visualization.
 
virtual void AttachVehicle (vehicle::ChVehicle *vehicle) override
 Attach a vehicle to this Irrlicht tracked visualization system.
 
void RenderTrackShoeFrames (VehicleSide side, bool state, double axis_length=1)
 Enable/disable rendering of track shoe body frames.
 
void RenderSprocketFrame (VehicleSide side, bool state, double axis_length=1)
 Enable/disable rendering of sprocket body frame.
 
void RenderIdlerFrame (VehicleSide side, bool state, double axis_length=1)
 Enable/disable rendering of idler body frame.
 
- Public Member Functions inherited from chrono::vehicle::ChVehicleVisualSystemIrrlicht
 ChVehicleVisualSystemIrrlicht ()
 Construct a vehicle Irrlicht visualization system.
 
void SetHUDLocation (int HUD_x, int HUD_y)
 Set the upper-left point of HUD elements.
 
void EnableStats (bool val)
 Turn on/off rendering of stats (HUD).
 
void EnableSound (bool sound)
 Turn on/off Irrklang sound generation. More...
 
virtual void Initialize () override
 Initialize the visualization system. More...
 
virtual void Render () override
 Render the Irrlicht scene and additional visual elements.
 
void RenderGrid (const ChVector<> &loc, int num_divs, double delta)
 Render a horizontal grid at the specified location.
 
void RenderFrame (const ChFrame<> &frame, double axis_length=1)
 Render the specified reference frame.
 
void Advance (double step)
 Advance the dynamics of the chase camera. More...
 
- Public Member Functions inherited from chrono::irrlicht::ChVisualSystemIrrlicht
virtual void AttachSystem (ChSystem *sys) override
 Attach another Chrono system to the run-time visualization system. More...
 
void SetAntialias (bool val)
 Enable/disable antialias (default true). More...
 
void SetFullscreen (bool val)
 Enable/disable full-screen mode (default false). More...
 
void SetShadows (bool val)
 Enable/disable shadows (default false). More...
 
void SetDriverType (irr::video::E_DRIVER_TYPE driver_type)
 Set the device driver type (default irr::video::EDT_DIRECT3D9). More...
 
void SetWindowSize (unsigned int width, unsigned int height)
 Set the window size (default 640x480). More...
 
void SetWindowTitle (const std::string &win_title)
 Set the windoiw title (default ""). More...
 
void SetCameraVertical (CameraVerticalDir vert)
 Use Y-up camera rendering (default CameraVerticalDir::Y). More...
 
void SetLogLevel (irr::ELOG_LEVEL log_level)
 Set the Irrlicht logging level (default irr::ELL_INFORMATION). More...
 
void SetSymbolScale (double scale)
 Set the scale for symbol drawing (default: 1).
 
void AddLogo (const std::string &logo_filename=GetChronoDataFile("logo_chronoengine_alpha.png"))
 Add a logo in a 3D scene. More...
 
void AddCamera (const ChVector<> &pos, ChVector<> targ=VNULL)
 Add a camera in an Irrlicht 3D scene. More...
 
void AddSkyBox (const std::string &texture_dir=GetChronoDataFile("skybox/"))
 Add a sky box in a 3D scene. More...
 
irr::scene::ILightSceneNode * AddLightDirectional (double elevation=60, double azimuth=60, ChColor ambient=ChColor(0.5f, 0.5f, 0.5f), ChColor specular=ChColor(0.2f, 0.2f, 0.2f), ChColor diffuse=ChColor(1.0f, 1.0f, 1.0f))
 Add a directional light to the scene. More...
 
irr::scene::ILightSceneNode * AddLight (const ChVector<> &pos, double radius, ChColor color=ChColor(0.7f, 0.7f, 0.7f))
 Add a point light to the scene. More...
 
irr::scene::ILightSceneNode * AddLightWithShadow (const ChVector<> &pos, const ChVector<> &aim, double radius, double near_value, double far_value, double angle, unsigned int resolution=512, ChColor color=ChColor(1, 1, 1), bool directional=false, bool clipborder=true)
 Add a point light that cast shadow (using soft shadows/shadow maps) Note that the quality of the shadow strictly depends on how close 'near_value' and 'far_value' are to the bounding box of the scene. More...
 
void AddTypicalLights ()
 Simple shortcut to set two point lights in the scene. More...
 
void AddUserEventReceiver (irr::IEventReceiver *receiver)
 Attach a custom event receiver to the application.
 
void EnableShadows (std::shared_ptr< ChPhysicsItem > item=nullptr)
 Enable shadow maps for all visual models in a scene or only for a single physics item. More...
 
void EnableContactDrawing (ContactsDrawMode mode)
 Enable contact rendering (default: none). More...
 
void EnableLinkDrawing (LinkDrawMode mode)
 Enable rendering of link (joint) frames (default: none). More...
 
void EnableBodyFrameDrawing (bool val)
 Enable rendering of body frames (default: false). More...
 
void EnableLinkFrameDrawing (bool val)
 Enable rendering of link frames (default: false). More...
 
void EnableCollisionShapeDrawing (bool val)
 Enable rendering of collision shapes (default: false). More...
 
virtual void EnableModalAnalysis (bool val) override
 Enable modal analysis visualization (default: false). More...
 
virtual void SetModalModeNumber (int val) override
 Set the mode to be shown (only if some ChModalAssembly is found).
 
virtual void SetModalAmplitude (double val) override
 Set the amplitude of the shown mode (only if some ChModalAssembly is found).
 
virtual void SetModalSpeed (double val) override
 Set the speed of the shown mode (only if some ChModalAssembly is found).
 
void ShowProfiler (bool val)
 Show the realtime profiler in the 3D view.
 
void ShowExplorer (bool val)
 Show the object explorer.
 
void ShowInfoPanel (bool val)
 Show the info panel in the 3D view.
 
void SetInfoTab (int ntab)
 Set the active tab on the info panel. More...
 
irr::IrrlichtDevice * GetDevice ()
 
irr::video::IVideoDriver * GetVideoDriver ()
 
irr::scene::ISceneManager * GetSceneManager ()
 
irr::scene::ICameraSceneNode * GetActiveCamera ()
 
irr::gui::IGUIEnvironment * GetGUIEnvironment ()
 
virtual void BindAll () override
 Process all visual assets in the associated ChSystem. More...
 
virtual void BindItem (std::shared_ptr< ChPhysicsItem > item) override
 Process the visual assets for the spcified physics item. More...
 
bool Run ()
 Run the Irrlicht device. More...
 
virtual void BeginScene (bool backBuffer=true, bool zBuffer=true, ChColor color=ChColor(0, 0, 0))
 Clean the canvas at the beginning of each animation frame.
 
virtual void EndScene ()
 End the scene draw at the end of each animation frame.
 
irr::gui::IGUIFont * GetMonospaceFont () const
 Return a fixed-size font for rendering GUI.
 
virtual void WriteImageToFile (const std::string &filename) override
 Create a snapshot of the last rendered frame and save it to the provided file. More...
 
- Public Member Functions inherited from chrono::ChVisualSystem
std::vector< ChSystem * > GetSystems () const
 Get the list of associated Chrono systems.
 
ChSystemGetSystem (int i) const
 Get the specified associated Chrono system.
 

Additional Inherited Members

- Protected Member Functions inherited from chrono::vehicle::ChVehicleVisualSystemIrrlicht
void renderLinGauge (const std::string &msg, double factor, bool sym, int xpos, int ypos, int length=120, int height=15)
 
void renderTextBox (const std::string &msg, int xpos, int ypos, int length=120, int height=15, irr::video::SColor color=irr::video::SColor(255, 20, 20, 20))
 
void renderStats ()
 
- Protected Attributes inherited from chrono::vehicle::ChVehicleVisualSystemIrrlicht
ChChaseCameraEventReceiver * m_camera_control
 event receiver for chase-cam control
 
bool m_renderStats
 turn on/off rendering of stats
 
int m_HUD_x
 x-coordinate of upper-left corner of HUD elements
 
int m_HUD_y
 y-coordinate of upper-left corner of HUD elements
 
- Protected Attributes inherited from chrono::ChVisualSystem
std::vector< ChSystem * > m_systems
 associated Chrono system(s)
 

The documentation for this class was generated from the following files:
  • /builds/uwsbel/chrono/src/chrono_vehicle/tracked_vehicle/utils/ChTrackedVehicleVisualSystemIrrlicht.h
  • /builds/uwsbel/chrono/src/chrono_vehicle/tracked_vehicle/utils/ChTrackedVehicleVisualSystemIrrlicht.cpp