From 4932e89d8bb1e31358ba670e7d0f50edcf0430ae Mon Sep 17 00:00:00 2001 From: Alex Bilger Date: Mon, 2 Mar 2026 15:19:44 +0100 Subject: [PATCH] [Visual] Compute bounding box in VisualMesh --- .../Visual/src/sofa/component/visual/VisualMesh.cpp | 13 +++++++++++++ .../Visual/src/sofa/component/visual/VisualMesh.h | 1 + 2 files changed, 14 insertions(+) diff --git a/Sofa/Component/Visual/src/sofa/component/visual/VisualMesh.cpp b/Sofa/Component/Visual/src/sofa/component/visual/VisualMesh.cpp index ebe816f329c..1d2d5fd9427 100644 --- a/Sofa/Component/Visual/src/sofa/component/visual/VisualMesh.cpp +++ b/Sofa/Component/Visual/src/sofa/component/visual/VisualMesh.cpp @@ -56,6 +56,19 @@ void VisualMesh::init() } } +void VisualMesh::computeBBox(const core::ExecParams* exec_params, bool cond) +{ + if (!d_enable.getValue()) + return; + + type::BoundingBox bbox; + for (const auto& i : sofa::helper::getReadAccessor(d_position)) + { + bbox.include(i); + } + this->f_bbox.setValue(bbox); +} + void VisualMesh::doDrawVisual(const core::visual::VisualParams* vparams) { auto* drawTool = vparams->drawTool(); diff --git a/Sofa/Component/Visual/src/sofa/component/visual/VisualMesh.h b/Sofa/Component/Visual/src/sofa/component/visual/VisualMesh.h index ba7c447f30c..0920a939bd7 100644 --- a/Sofa/Component/Visual/src/sofa/component/visual/VisualMesh.h +++ b/Sofa/Component/Visual/src/sofa/component/visual/VisualMesh.h @@ -41,6 +41,7 @@ class VisualMesh : public core::visual::VisualModel sofa::BaseLink::FLAG_STOREPATH | sofa::BaseLink::FLAG_STRONGLINK> l_topology; void init() override; + void computeBBox(const core::ExecParams*, bool) override; protected: