Index: src/Shapes/Shape.cpp
===================================================================
--- src/Shapes/Shape.cpp	(revision c67c65d4e13897fc13b0c5ff2c63be4e582854c9)
+++ src/Shapes/Shape.cpp	(revision da1e9282f7aecf587880d71ca5531b04c643fa70)
@@ -27,4 +27,7 @@
 #include "Shapes/ShapeExceptions.hpp"
 #include "Shapes/ShapeType.hpp"
+
+#include "Tesselation/ApproximateShapeArea.hpp"
+#include "Tesselation/ApproximateShapeVolume.hpp"
 
 #include <algorithm>
@@ -74,5 +77,6 @@
 		return volume;
 	} else {
-		ASSERT(0, "Shape::getVolume() - functionality not implemented for this specific shape.");
+		ApproximateShapeVolume Approximator(*this);
+		return Approximator();
 	}
 }
@@ -93,5 +97,6 @@
 		return surfacearea;
 	} else {
-		ASSERT(0, "Shape::getSurfaceArea() - functionality not implemented for this specific shape.");
+		ApproximateShapeArea Approximator(*this);
+		return Approximator();
 	}
 }
Index: src/Shapes/unittests/Makefile.am
===================================================================
--- src/Shapes/unittests/Makefile.am	(revision c67c65d4e13897fc13b0c5ff2c63be4e582854c9)
+++ src/Shapes/unittests/Makefile.am	(revision da1e9282f7aecf587880d71ca5531b04c643fa70)
@@ -30,5 +30,7 @@
 BaseShapesUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
 	../Shapes/unittests/BaseShapesUnitTest.cpp \
-	../Shapes/unittests/BaseShapesUnitTest.hpp
+	../Shapes/unittests/BaseShapesUnitTest.hpp \
+	../Shapes/unittests/stubs/ApproximateShapeAreaStub.cpp \
+	../Shapes/unittests/stubs/ApproximateShapeVolumeStub.cpp
 nodist_BaseShapesUnitTest_SOURCES = \
 	../Helpers/defs.hpp \
@@ -38,5 +40,7 @@
 ShapeOpsUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
 	../Shapes/unittests/ShapeOpsUnitTest.cpp \
-	../Shapes/unittests/ShapeOpsUnitTest.hpp
+	../Shapes/unittests/ShapeOpsUnitTest.hpp \
+	../Shapes/unittests/stubs/ApproximateShapeAreaStub.cpp \
+	../Shapes/unittests/stubs/ApproximateShapeVolumeStub.cpp
 nodist_ShapeOpsUnitTest_SOURCES = \
 	../Helpers/defs.hpp \
Index: src/Shapes/unittests/stubs/ApproximateShapeAreaStub.cpp
===================================================================
--- src/Shapes/unittests/stubs/ApproximateShapeAreaStub.cpp	(revision da1e9282f7aecf587880d71ca5531b04c643fa70)
+++ src/Shapes/unittests/stubs/ApproximateShapeAreaStub.cpp	(revision da1e9282f7aecf587880d71ca5531b04c643fa70)
@@ -0,0 +1,34 @@
+/*
+ * Project: MoleCuilder
+ * Description: creates and alters molecular systems
+ * Copyright (C)  2012 University of Bonn. All rights reserved.
+ * Please see the LICENSE file or "Copyright notice" in builder.cpp for details.
+ */
+
+/*
+ * ApproximateShapeArea.cpp
+ *
+ *  Created on: Jan 30, 2012
+ *      Author: heber
+ */
+
+// include config.h
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "CodePatterns/MemDebug.hpp"
+
+#include "Tesselation/ApproximateShapeArea.hpp"
+
+ApproximateShapeArea::ApproximateShapeArea(const Shape &_shape) :
+		shape(_shape)
+{}
+
+ApproximateShapeArea::~ApproximateShapeArea()
+{}
+
+double ApproximateShapeArea::operator()() const
+{
+	return 0.;
+}
Index: src/Shapes/unittests/stubs/ApproximateShapeVolumeStub.cpp
===================================================================
--- src/Shapes/unittests/stubs/ApproximateShapeVolumeStub.cpp	(revision da1e9282f7aecf587880d71ca5531b04c643fa70)
+++ src/Shapes/unittests/stubs/ApproximateShapeVolumeStub.cpp	(revision da1e9282f7aecf587880d71ca5531b04c643fa70)
@@ -0,0 +1,34 @@
+/*
+ * Project: MoleCuilder
+ * Description: creates and alters molecular systems
+ * Copyright (C)  2012 University of Bonn. All rights reserved.
+ * Please see the LICENSE file or "Copyright notice" in builder.cpp for details.
+ */
+
+/*
+ * ApproximateShapeVolume.cpp
+ *
+ *  Created on: Jan 30, 2012
+ *      Author: heber
+ */
+
+// include config.h
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include "CodePatterns/MemDebug.hpp"
+
+#include "Tesselation/ApproximateShapeVolume.hpp"
+
+ApproximateShapeVolume::ApproximateShapeVolume(const Shape &_shape) :
+		shape(_shape)
+{}
+
+ApproximateShapeVolume::~ApproximateShapeVolume()
+{}
+
+double ApproximateShapeVolume::operator()() const
+{
+	return 0.;
+}
