VirtualRobot::VisualizationNodePtr VisualizationNode::CreateUnitedVisualization( const std::vector<VisualizationNodePtr> &visualizations ) { if (visualizations.size()==0) return VisualizationNodePtr(); VisualizationFactoryPtr f; std::vector<VisualizationNodePtr>::const_iterator i = visualizations.begin(); while (!f && i!=visualizations.end()) { if ((*i)->getType() != VisualizationFactory::getName()) { f = VisualizationFactory::fromName((*i)->getType(),NULL); break; } i++; } if (i==visualizations.end()) { VR_ERROR << "Could not find visualization factory. Aborting..." << endl; return VisualizationNodePtr(); } THROW_VR_EXCEPTION_IF(!f,"No VisualizationFactory"); return f->createUnitedVisualization(visualizations); }
VisualizationNodePtr VisualizationNode::getAttachedVisualization(const std::string& name) { if (!hasAttachedVisualization(name)) { return VisualizationNodePtr(); } return attachedVisualizations[name]; }
VisualizationNodePtr Trajectory::getVisualization(std::string visualizationFactoryName) { VisualizationFactoryPtr visualizationFactory; if (visualizationFactoryName.empty()) visualizationFactory=VisualizationFactory::first(NULL); else visualizationFactory = VisualizationFactory::fromName(visualizationFactoryName, NULL); if (!visualizationFactory) { VR_ERROR << "Could not create factory for visu type " << visualizationFactoryName << endl; return VisualizationNodePtr(); } return visualizationFactory->createTrajectory(shared_from_this()); }
VirtualRobot::VisualizationNodePtr OSGVisualizationFactory::createTrajectory(TrajectoryPtr t, Color colorNode, Color colorLine, float nodeSize, float lineSize) { VR_INFO << "init nyi..." << endl; return VisualizationNodePtr(); }
VirtualRobot::VisualizationNodePtr OSGVisualizationFactory::createPlane( const Eigen::Vector3f &position, const Eigen::Vector3f &normal, float extend, float transparency, float colorR /*= 0.5f*/, float colorG /*= 0.5f*/, float colorB /*= 0.5f*/ ) { VR_INFO << "init nyi..." << endl; return VisualizationNodePtr(); }