From a8c1d6168797526b9d24bc8c86f2578f3be59fa8 Mon Sep 17 00:00:00 2001 From: neoraider Date: Fri, 14 Dec 2007 02:47:03 +0000 Subject: zoomedit: Verallgemeinerte Level-Objekte implementiert. --- Vertex3d.cpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 Vertex3d.cpp (limited to 'Vertex3d.cpp') diff --git a/Vertex3d.cpp b/Vertex3d.cpp new file mode 100644 index 0000000..16c0e27 --- /dev/null +++ b/Vertex3d.cpp @@ -0,0 +1,35 @@ +#include "Vertex3d.h" +#include + +float Vertex3d::distanceSq(const Vertex3d &v) const { + return (x - v.x)*(x - v.x) + (y - v.y)*(y - v.y) + (z - v.z)*(z - v.z); +} + +float Vertex3d::distance(const Vertex3d &v) const { + return sqrtf(distanceSq(v)); +} + + +Vertex3d Vertex3d::operator+(const Vertex3d &v) const { + return Vertex3d(x + v.x, y + v.y, z + v.z); +} + +Vertex3d Vertex3d::operator-(const Vertex3d &v) const { + return Vertex3d(x - v.x, y - v.y, z - v.z); +} + +Vertex3d& Vertex3d::operator+=(const Vertex3d &v) { + x += v.x; + y += v.y; + z += v.z; + + return *this; +} + +Vertex3d& Vertex3d::operator-=(const Vertex3d &v) { + x -= v.x; + y -= v.y; + z -= v.z; + + return *this; +} -- cgit v1.2.3