diff --git a/GUI/ba3d/model/object.cpp b/GUI/ba3d/model/object.cpp
index 189dc3415ff624b22c66c3f431dfa9c69f971b7d..388a0f61e583bd7f910af895ced8a91d09184b64 100644
--- a/GUI/ba3d/model/object.cpp
+++ b/GUI/ba3d/model/object.cpp
@@ -98,7 +98,7 @@ void Object::releaseGeometry()
     m_geo.reset();
 }
 
-const Geometry& Object::geo()
+const Geometry& Object::geo() const
 {
     if (!m_geo)
         m_geo = geometryStore().getGeometry(gky);
diff --git a/GUI/ba3d/model/object.h b/GUI/ba3d/model/object.h
index bf1a4bc2c41e42264c96a5b7669035f62a6cc37b..603be34369f82478f14a165d0ec0ba3c98647b97 100644
--- a/GUI/ba3d/model/object.h
+++ b/GUI/ba3d/model/object.h
@@ -44,7 +44,7 @@ public:
     void setColor(QColor color) { m_color = color; }
 
     bool valid() const { return !isNull; }
-    const Geometry& geo();
+    const Geometry& geo() const;
     const QMatrix4x4& matrix() const { return m_matrix; }
 
 protected:
@@ -54,7 +54,7 @@ private:
     QColor m_color;
     Model* model;
     GeometricID::Key gky;
-    GeometryHandle m_geo;     // retrieved on demand
+    mutable GeometryHandle m_geo;     // retrieved on demand
     QMatrix4x4 m_matrix;
 
     void releaseGeometry(); // can be released whenever
diff --git a/GUI/ba3d/view/canvas.h b/GUI/ba3d/view/canvas.h
index 4ca779b8a49622ea7de618607ae7a8f668cadae9..fac00d6c04d2f710a6a6e422ceeae4395e7bfd03 100644
--- a/GUI/ba3d/view/canvas.h
+++ b/GUI/ba3d/view/canvas.h
@@ -58,6 +58,7 @@ public:
 
     Camera* cam() { return camera; }
 
+//    void drawObject(const Object
 private:
     QRect viewport;
     float aspectRatio, colorBgR, colorBgG, colorBgB;