00001 /****************************************************************************/ 00007 // Stores the information about how to visualize structures 00008 /****************************************************************************/ 00009 // SUMO, Simulation of Urban MObility; see http://sumo.sourceforge.net/ 00010 // Copyright 2001-2010 DLR (http://www.dlr.de/) and contributors 00011 /****************************************************************************/ 00012 // 00013 // This program is free software; you can redistribute it and/or modify 00014 // it under the terms of the GNU General Public License as published by 00015 // the Free Software Foundation; either version 2 of the License, or 00016 // (at your option) any later version. 00017 // 00018 /****************************************************************************/ 00019 #ifndef GUIVisualizationSettings_h 00020 #define GUIVisualizationSettings_h 00021 00022 00023 // =========================================================================== 00024 // included modules 00025 // =========================================================================== 00026 #ifdef _MSC_VER 00027 #include <windows_config.h> 00028 #else 00029 #include <config.h> 00030 #endif 00031 00032 #include <string> 00033 #include <vector> 00034 #include <map> 00035 #include <utils/common/RGBColor.h> 00036 #include <guisim/GUIEdge.h> 00037 #include <guisim/GUILaneWrapper.h> 00038 #include <guisim/GUIVehicle.h> 00039 00040 00041 // =========================================================================== 00042 // class declarations 00043 // =========================================================================== 00044 class BaseSchemeInfoSource; 00045 class OutputDevice; 00046 00047 00048 // =========================================================================== 00049 // class definitions 00050 // =========================================================================== 00055 class GUIVisualizationSettings { 00056 public: 00058 GUIVisualizationSettings() throw(); 00059 00061 std::string name; 00062 00064 bool antialiase; 00066 bool dither; 00067 00069 00070 00072 RGBColor backgroundColor; 00074 bool showBackgroundDecals; 00076 bool showGrid; 00078 SUMOReal gridXSize, gridYSize; 00080 00081 00083 00084 00085 #ifdef HAVE_MESOSIM 00087 GUIEdge::Colorer edgeColorer; 00088 #endif 00090 GUILaneWrapper::Colorer laneColorer; 00092 bool laneShowBorders; 00094 bool showLinkDecals; 00096 bool showRails; 00098 bool drawEdgeName; 00100 float edgeNameSize; 00102 RGBColor edgeNameColor; 00104 bool drawInternalEdgeName; 00106 float internalEdgeNameSize; 00108 RGBColor internalEdgeNameColor; 00110 bool hideConnectors; 00111 00112 00113 00115 00116 00118 GUIVehicle::Colorer vehicleColorer; 00120 int vehicleQuality; 00122 float minVehicleSize; 00124 float vehicleExaggeration; 00126 bool showBlinker; 00128 bool drawLaneChangePreference; 00130 bool drawVehicleName; 00132 float vehicleNameSize; 00134 RGBColor vehicleNameColor; 00136 00137 00139 00140 00142 int junctionMode; 00144 bool drawLinkTLIndex; 00146 bool drawLinkJunctionIndex; 00148 bool drawJunctionName; 00150 float junctionNameSize; 00152 RGBColor junctionNameColor; 00154 00155 00157 bool showLane2Lane; 00158 00159 00161 00162 00164 int addMode; 00166 float minAddSize; 00168 float addExaggeration; 00170 bool drawAddName; 00172 float addNameSize; 00173 // The color of additionals' names 00174 //RGBColor addNameColor; 00176 00177 00179 00180 00182 float minPOISize; 00184 float poiExaggeration; 00186 bool drawPOIName; 00188 float poiNameSize; 00190 RGBColor poiNameColor; 00192 00194 bool showSizeLegend; 00195 00197 SUMOReal scale; 00199 bool needsGlID; 00200 00201 00205 void save(OutputDevice &dev) const throw(IOError); 00206 00210 size_t getLaneEdgeMode() const; 00211 00215 GUIColorScheme& getLaneEdgeScheme(); 00216 00218 bool operator==(const GUIVisualizationSettings &vs2); 00219 00220 }; 00221 00222 00223 #endif 00224 00225 /****************************************************************************/ 00226
1.5.6