diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPcon.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPcon.h
index 080fd1ecf43d9e9028d573669a0a2b5603061c2c..8c986a3ef95490e4ab277bf627952a27be360631 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPcon.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPcon.h
@@ -70,16 +70,31 @@ class GeoPcon : public GeoShape {
       return m_zPlane[i];
   }
 
+  // Get a pointer to the memory buffer with Z Positions
+  const double* getZPlaneBuff() const {
+    return m_zPlane.data();
+  }
+
   //    Get the RMin of the specified plane.
   double getRMinPlane(unsigned int i) const {
       return m_rMinPlane[i];
   }
 
+  // Get a pointer to the memory buffer with RMin-s
+  const double* getRMinBuff() const {
+    return m_rMinPlane.data();
+  }
+
   //    Get the Z Position of the specified plane.
   double getRMaxPlane(unsigned int i) const {
       return m_rMaxPlane[i];
   }
 
+  // Get a pointer to the memory buffer with RMax-s
+  const double* getRMaxBuff() const {
+    return m_rMaxPlane.data();
+  }
+
   //    Executes a GeoShapeAction
   virtual void exec (GeoShapeAction *action) const;
 
diff --git a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPgon.h b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPgon.h
index cfca2b3b08b2113a4fd37e3d434b211ccb11ad13..5e23ca87a699c62514956ecfec51604dc86cc36a 100644
--- a/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPgon.h
+++ b/GeoModelCore/GeoModelKernel/GeoModelKernel/GeoPgon.h
@@ -62,16 +62,31 @@ class GeoPgon : public GeoShape
     return m_zPlane[i];
   }
 
+  // Get a pointer to the memory buffer with Z Positions
+  const double* getZPlaneBuff() const {
+    return m_zPlane.data();
+  }
+
   //    Get the RMin of the specified plane.
   double getRMinPlane (unsigned int i) const {
      return m_rMinPlane[i];
   }
 
+  // Get a pointer to the memory buffer with RMin-s
+  const double* getRMinBuff() const {
+    return m_rMinPlane.data();
+  }
+
   //    Get the Z Position of the specified plane.
   double getRMaxPlane (unsigned int i) const {
      return m_rMaxPlane[i];
   }
 
+  // Get a pointer to the memory buffer with RMax-s
+  const double* getRMaxBuff() const {
+    return m_rMaxPlane.data();
+  }
+
   //    Executes a GeoShapeAction
   virtual void exec (GeoShapeAction *action) const;