From 8e09bdbb67cdfc448b07494b17fa3957a7592788 Mon Sep 17 00:00:00 2001 From: Fabian Paus <fabian.paus@kit.edu> Date: Thu, 10 Oct 2019 10:55:40 +0200 Subject: [PATCH] Fix circle arrow visu --- .../ArViz/Coin/VisualizerArrowCircle.h | 16 +++++++++------- .../components/ArVizExample/ArVizExample.cpp | 2 +- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/source/RobotAPI/components/ArViz/Coin/VisualizerArrowCircle.h b/source/RobotAPI/components/ArViz/Coin/VisualizerArrowCircle.h index fe5cc9027..36ddd945e 100644 --- a/source/RobotAPI/components/ArViz/Coin/VisualizerArrowCircle.h +++ b/source/RobotAPI/components/ArViz/Coin/VisualizerArrowCircle.h @@ -35,14 +35,14 @@ namespace armarx::viz::coin } auto color = element.color; const float conv = 1.0f / 255.0f; - color.r *= conv; - color.g *= conv; - color.b *= conv; - color.a *= conv; - // This does not play well with + float r = color.r * conv; + float g = color.g * conv; + float b = color.b * conv; + float a = color.a * conv; + auto torusNode = VirtualRobot::CoinVisualizationFactory().createTorus( element.radius, element.width, torusCompletion, - color.r, color.g, color.b, 0.0f, + r, g, b, 1.0f - a, 8, rings); SoNode* torus = dynamic_cast<VirtualRobot::CoinVisualizationNode&>(*torusNode).getCoinVisualization(); @@ -59,7 +59,9 @@ namespace armarx::viz::coin tr->rotation.setValue(SbVec3f(0, 0, 1), angle1); subSep->addChild(tr); - //subSep->addChild(CreateArrow(Eigen::Vector3f::UnitY()*sign, 0, element.width, Color(1.0f, 1.0f, 1.0f))); + subSep->addChild(VirtualRobot::CoinVisualizationFactory::CreateArrow( + Eigen::Vector3f::UnitY()*sign, 0, element.width, + VirtualRobot::VisualizationFactory::Color(r, g, b, 1.0f - a))); node->removeAllChildren(); node->addChild(torus); diff --git a/source/RobotAPI/components/ArVizExample/ArVizExample.cpp b/source/RobotAPI/components/ArVizExample/ArVizExample.cpp index 3432c156b..64e7eaf80 100644 --- a/source/RobotAPI/components/ArVizExample/ArVizExample.cpp +++ b/source/RobotAPI/components/ArVizExample/ArVizExample.cpp @@ -196,7 +196,7 @@ void ArVizExample::update() Eigen::Vector3f pos = Eigen::Vector3f::Zero(); pos.z() = +300.0f; circle->pose = makeGlobalPose(pos, Eigen::Quaternionf::Identity()); - circle->color = armarx::viz::Color{255, 255, 0, 255}; + circle->color = armarx::viz::Color{200, 255, 0, 255}; layer.elements.push_back(circle); } -- GitLab