diff --git a/GeoLib/Point.h b/GeoLib/Point.h
index 011e00e9f105ab2b0ada0d94d3f308d4ae05b683..4b27f267e0dad0f6509c37316f44e312a8c5450c 100644
--- a/GeoLib/Point.h
+++ b/GeoLib/Point.h
@@ -27,6 +27,9 @@ namespace GeoLib
  * \ingroup GeoLib
  */
 
+// forward declaration
+class PointVec;
+
 class Point : public MathLib::Point3dWithID, public GeoLib::GeoObject
 {
 public:
@@ -56,6 +59,11 @@ public:
 
 	/// return a geometry type
 	virtual GEOTYPE getGeoType() const {return GEOTYPE::POINT;}
+
+protected:
+	friend GeoLib::PointVec;
+	/// Resets the id.
+	void setID(std::size_t id) { _id = id; }
 };
 
 static const Point ORIGIN(0, 0, 0);