From f1df2707c717c14ca54aece7f79f1007098ed40d Mon Sep 17 00:00:00 2001 From: Guillaume Doisy Date: Thu, 17 Jul 2025 22:24:37 +0100 Subject: [PATCH] Overcome 16384 size limit --- .../src/rviz_default_plugins/displays/map/map_display.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/rviz_default_plugins/src/rviz_default_plugins/displays/map/map_display.cpp b/rviz_default_plugins/src/rviz_default_plugins/displays/map/map_display.cpp index ad1a553f7..981091838 100644 --- a/rviz_default_plugins/src/rviz_default_plugins/displays/map/map_display.cpp +++ b/rviz_default_plugins/src/rviz_default_plugins/displays/map/map_display.cpp @@ -429,6 +429,12 @@ void MapDisplay::createSwatches() width << " x " << height << " using " << number_swatches << " swatches"); swatches_.clear(); try { + // OpenGL size limit is 16384x16384 + // TODO(Guillaume): find a cleaner way and autodetect size limit + if (swatch_width > 16384 || swatch_height > 16384) { + doubleSwatchNumber(swatch_width, swatch_height, number_swatches); + continue; + } tryCreateSwatches(width, height, resolution, swatch_width, swatch_height, number_swatches); updateDrawUnder(); return;