diff --git a/VirtualRobot/Visualization/CoinVisualization/CoinVisualizationFactory.cpp b/VirtualRobot/Visualization/CoinVisualization/CoinVisualizationFactory.cpp index c12c3dd21460094e2e0a5561d2d4184afad18a38..c25e1a0c622fb9d30612fba9394bb5869df94f1b 100644 --- a/VirtualRobot/Visualization/CoinVisualization/CoinVisualizationFactory.cpp +++ b/VirtualRobot/Visualization/CoinVisualization/CoinVisualizationFactory.cpp @@ -453,6 +453,22 @@ SoSeparator* CoinVisualizationFactory::CreateCoordSystemVisualization(float scal return result; } +SoSeparator* CoinVisualizationFactory::CreateText(const std::string &s) +{ + SoSeparator *textSep = new SoSeparator(); + SoTranslation *moveT = new SoTranslation(); + moveT->translation.setValue(2.0f,2.0f,0.0f); + textSep->addChild(moveT); + SoAsciiText *textNode = new SoAsciiText(); + /*std::string text2(*text); + text2.replace( ' ', "_" );*/ + SbString text2(s.c_str()); + text2.apply( &IVToolsHelper_ReplaceSpaceWithUnderscore ); + textNode->string.set(text2.getString()); + textSep->addChild(textNode); + return textSep; +} + SoSeparator* CoinVisualizationFactory::CreateVertexVisualization( const Eigen::Vector3f &position, float radius, float transparency, float colorR /*= 0.5f*/, float colorG /*= 0.5f*/, float colorB /*= 0.5f*/ ) { SoSeparator *res = new SoSeparator; diff --git a/VirtualRobot/Visualization/CoinVisualization/CoinVisualizationFactory.h b/VirtualRobot/Visualization/CoinVisualization/CoinVisualizationFactory.h index 16ec6cb866ed79c6a4e67d56e6bfb3b191e49efb..3cc8dfd9bf0d52a08fa01eaa2cba1961372c4291 100644 --- a/VirtualRobot/Visualization/CoinVisualization/CoinVisualizationFactory.h +++ b/VirtualRobot/Visualization/CoinVisualization/CoinVisualizationFactory.h @@ -108,6 +108,8 @@ public: */ static SoSeparator* CreateEndEffectorVisualization(EndEffectorPtr eef, SceneObject::VisualizationType = SceneObject::Full); + static SoSeparator* CreateText(const std::string &s); + /*! Convenient method to retrieve a coin visualization for a robot */