|
INET Framework for OMNeT++/OMNEST
|
#include <PathOsgVisualizerBase.h>
|
| virtual void | initialize (int stage) override |
| |
| virtual void | refreshDisplay () const override |
| |
| virtual const PathVisualization * | createPathVisualization (const char *label, const std::vector< int > &path, cPacket *packet) const override |
| |
| virtual void | addPathVisualization (const PathVisualization *pathVisualization) override |
| |
| virtual void | removePathVisualization (const PathVisualization *pathVisualization) override |
| |
| virtual void | setAlpha (const PathVisualization *pathVisualization, double alpha) const override |
| |
| virtual void | handleParameterChange (const char *name) override |
| |
| virtual void | preDelete (cComponent *root) override |
| |
| virtual void | subscribe () |
| |
| virtual void | unsubscribe () |
| |
| virtual bool | isPathStart (cModule *module) const =0 |
| |
| virtual bool | isPathEnd (cModule *module) const =0 |
| |
| virtual bool | isPathElement (cModule *module) const =0 |
| |
| virtual void | processPathStart (cModule *networkNode, const char *label, Packet *packet) |
| |
| virtual void | processPathElement (cModule *networkNode, const char *label, Packet *packet) |
| |
| virtual void | processPathEnd (cModule *networkNode, const char *label, Packet *packet) |
| |
| virtual const PathVisualization * | getPathVisualization (const std::vector< int > &path) |
| |
| virtual void | removeAllPathVisualizations () |
| |
| virtual const std::vector< int > * | getIncompletePath (const std::string &label, int chunkId) |
| |
| virtual void | addToIncompletePath (const std::string &label, int chunkId, cModule *module) |
| |
| virtual void | removeIncompletePath (const std::string &label, int chunkId) |
| |
| virtual std::string | getPathVisualizationText (const PathVisualization *pathVisualization, cPacket *packet) const |
| |
| virtual void | refreshPathVisualization (const PathVisualization *pathVisualization, cPacket *packet) |
| |
| virtual int | numInitStages () const override |
| |
| virtual Coord | getPosition (const cModule *networkNode) const |
| |
| virtual Coord | getContactPosition (const cModule *networkNode, const Coord &fromPosition, const char *contactMode, double contactSpacing) const |
| |
| virtual Quaternion | getOrientation (const cModule *networkNode) const |
| |
| virtual void | mapChunks (const Ptr< const Chunk > &chunk, const std::function< void(const Ptr< const Chunk > &, int)> &thunk) const |
| |
◆ addPathVisualization()
| void inet::visualizer::PathOsgVisualizerBase::addPathVisualization |
( |
const PathVisualization * |
pathVisualization | ) |
|
|
overrideprotectedvirtual |
Reimplemented from inet::visualizer::PathVisualizerBase.
60 auto pathOsgVisualization =
static_cast<const PathOsgVisualization *
>(pathVisualization);
63 scene->addChild(pathOsgVisualization->node);
◆ createPathVisualization()
| const PathVisualizerBase::PathVisualization * inet::visualizer::PathOsgVisualizerBase::createPathVisualization |
( |
const char * |
label, |
|
|
const std::vector< int > & |
path, |
|
|
cPacket * |
packet |
|
) |
| const |
|
overrideprotectedvirtual |
Implements inet::visualizer::PathVisualizerBase.
47 std::vector<Coord> points;
48 for (
auto id : path) {
49 auto node = getSimulation()->getModule(
id);
54 return new PathOsgVisualization(label, path, node);
◆ initialize()
| void inet::visualizer::PathOsgVisualizerBase::initialize |
( |
int |
stage | ) |
|
|
overrideprotectedvirtual |
◆ refreshDisplay()
| void inet::visualizer::PathOsgVisualizerBase::refreshDisplay |
( |
| ) |
const |
|
overrideprotectedvirtual |
◆ removePathVisualization()
| void inet::visualizer::PathOsgVisualizerBase::removePathVisualization |
( |
const PathVisualization * |
pathVisualization | ) |
|
|
overrideprotectedvirtual |
Reimplemented from inet::visualizer::PathVisualizerBase.
69 auto pathOsgVisualization =
static_cast<const PathOsgVisualization *
>(pathVisualization);
70 auto node = pathOsgVisualization->node;
72 node->getParent(0)->removeChild(node);
◆ setAlpha()
| void inet::visualizer::PathOsgVisualizerBase::setAlpha |
( |
const PathVisualization * |
pathVisualization, |
|
|
double |
alpha |
|
) |
| const |
|
overrideprotectedvirtual |
Implements inet::visualizer::PathVisualizerBase.
77 auto pathOsgVisualization =
static_cast<const PathOsgVisualization *
>(pathVisualization);
78 auto node = pathOsgVisualization->node;
79 auto stateSet = node->getOrCreateStateSet();
80 auto material =
static_cast<osg::Material *
>(stateSet->getAttribute(osg::StateAttribute::MATERIAL));
81 material->setAlpha(osg::Material::FRONT_AND_BACK,
alpha);
The documentation for this class was generated from the following files:
virtual void removePathVisualization(const PathVisualization *pathVisualization)
Definition: PathVisualizerBase.cc:176
void removeModulePath(const ModulePath *modulePath)
Definition: LineManager.cc:94
double fadeOutAnimationSpeed
Definition: PathVisualizerBase.h:71
StateSet * createLineStateSet(const cFigure::Color &color, const cFigure::LineStyle &style, double width, bool overlay)
Definition: OsgUtils.cc:293
virtual void refreshDisplay() const override
Definition: PathVisualizerBase.cc:103
cModule * visualizationTargetModule
Definition: VisualizerBase.h:25
virtual SimulationScene * getSimulationScene()
Definition: OsgScene.cc:22
void addModulePath(const ModulePath *modulePath)
Definition: LineManager.cc:83
osg::Node * createPolyline(const std::vector< Coord > &coords, cFigure::Arrowhead startArrowhead, cFigure::Arrowhead endArrowhead)
Definition: OsgUtils.cc:185
virtual void addPathVisualization(const PathVisualization *pathVisualization)
Definition: PathVisualizerBase.cc:170
cFigure::LineStyle lineStyle
Definition: PathVisualizerBase.h:58
virtual Coord getPosition(const cModule *networkNode) const
Definition: VisualizerBase.cc:39
INET_API InitStage INITSTAGE_LOCAL
Initialization of local state that don't use or affect other modules includes:
ColorSet lineColorSet
Definition: PathVisualizerBase.h:57
static LineManager * getOsgLineManager(const cCanvas *canvas)
Definition: LineManager.cc:24
const value< double, units::unit > alpha(7.2973525376e-3)
double lineWidth
Definition: PathVisualizerBase.h:59
virtual void initialize(int stage) override
Definition: PathVisualizerBase.cc:59
std::multimap< std::pair< int, int >, const PathVisualization * > pathVisualizations
Maps source/destination modules to multiple paths between them.
Definition: PathVisualizerBase.h:89
LineManager * lineManager
Definition: PathVisualizerBase.h:77
cFigure::Color getColor(int index) const
Definition: ColorSet.cc:33