diff -r 767592024ec5 -r 4c41bfe2ec6e src/vertex.cpp
--- a/src/vertex.cpp Sun Jan 26 01:06:27 2020 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,221 +0,0 @@
-/*
- * LDForge: LDraw parts authoring CAD
- * Copyright (C) 2013 - 2020 Teemu Piippo
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
- */
-
-#include "main.h"
-#include "vertex.h"
-
-/*
-void Vertex::transform(const Matrix& matrix, const Vertex& pos)
-{
- double x2 = (matrix(0, 0) * x) + (matrix(0, 1) * y) + (matrix(0, 2) * z) + pos.x;
- double y2 = (matrix(1, 0) * x) + (matrix(1, 1) * y) + (matrix(1, 2) * z) + pos.y;
- double z2 = (matrix(2, 0) * x) + (matrix(2, 1) * y) + (matrix(2, 2) * z) + pos.z;
- this->x = x2;
- this->y = y2;
- this->z = z2;
-}
-*/
-
-Point3D::CoordinateType& Point3D::get(Axis axis)
-{
- switch (axis)
- {
- case X:
- return this->x;
- case Y:
- return this->y;
- case Z:
- return this->z;
- default:
- throw std::runtime_error("Non-axis given to Vertex::operator[]");
- }
-}
-
-Point3D::CoordinateType Point3D::get(Axis axis) const
-{
- switch (axis)
- {
- case X:
- return this->x;
- case Y:
- return this->y;
- case Z:
- return this->z;
- default:
- return 0;
- }
-}
-
-Point3D::operator QVariant() const
-{
- return QVariant::fromValue(*this);
-}
-
-void Point3D::assign(Axis axis, CoordinateType value)
-{
- this->get(axis) = value;
-}
-
-Point3D VertexFromVector(const QVector3D& vector)
-{
- return {vector.x(), vector.y(), vector.z()};
-}
-
-Point3D operator*(const Point3D& point, Point3D::CoordinateType scalar)
-{
- return {point.x * scalar, point.y * scalar, point.z * scalar};
-}
-
-Point3D& operator+=(Point3D& point, const QVector3D& other)
-{
- point.x += other.x();
- point.y += other.y();
- point.z += other.z();
- return point;
-}
-
-Point3D operator+(Point3D point, const QVector3D& other)
-{
- point += other;
- return point;
-}
-
-
-QVector3D vertexToVector(const Point3D& vertex)
-{
- return {
- static_cast(vertex.x),
- static_cast(vertex.y),
- static_cast(vertex.z)
- };
-}
-
-Point3D operator-(Point3D point, const QVector3D& vector)
-{
- point -= vector;
- return point;
-}
-
-Point3D& operator-=(Point3D& point, const QVector3D& vector)
-{
- point.x -= vector.x();
- point.y -= vector.y();
- point.z -= vector.z();
- return point;
-}
-
-QVector3D operator-(const Point3D& point, const Point3D& other)
-{
- return {
- static_cast(point.x - other.x),
- static_cast(point.y - other.y),
- static_cast(point.z - other.z)
- };
-}
-
-Point3D& operator*=(Point3D& point, Point3D::CoordinateType scalar)
-{
- point.x *= scalar;
- point.y *= scalar;
- point.z *= scalar;
- return point;
-}
-
-bool operator==(const Point3D& point, const Point3D& other)
-{
- return point.x == other.x and point.y == other.y and point.z == other.z;
-}
-
-bool operator!=(const Point3D& point, const Point3D& other)
-{
- return not (point == other);
-}
-
-bool operator<(const Point3D& point, const Point3D& other)
-{
- if (not qFuzzyCompare(point.x, other.x))
- return point.x < other.x;
- else if (not qFuzzyCompare(point.y, other.y))
- return point.y < other.y;
- else
- return point.z < other.z;
-}
-
-/*
- * Transforms the specified vertex with a transformation matrix
- */
-Point3D math::transform(const Point3D& point, const Matrix4x4& matrix)
-{
- return {
- matrix(0, 0) * point.x
- + matrix(0, 1) * point.y
- + matrix(0, 2) * point.z
- + matrix(0, 3),
- matrix(1, 0) * point.x
- + matrix(1, 1) * point.y
- + matrix(1, 2) * point.z
- + matrix(1, 3),
- matrix(2, 0) * point.x
- + matrix(2, 1) * point.y
- + matrix(2, 2) * point.z
- + matrix(2, 3),
- };
-}
-
-/*
- * Returns the distance from one vertex to another.
- */
-qreal math::distance(const Point3D& one, const Point3D& other)
-{
- return (one - other).length();
-}
-
-/*
- * Returns a vertex with all coordinates inverted.
- */
-Point3D operator-(const Point3D& vertex)
-{
- return {-vertex.x, -vertex.y, -vertex.z};
-}
-
-/*
- * Inserts this vertex into a data stream. This is needed for vertices to be
- * stored in QSettings.
- */
-QDataStream& operator<<(QDataStream& out, const Point3D& vertex)
-{
- return out << vertex.x << vertex.y << vertex.z;
-}
-
-/*
- * Takes a vertex from a data stream.
- */
-QDataStream& operator>>(QDataStream& in, Point3D& vertex)
-{
- return in >> vertex.x >> vertex.y >> vertex.z;
-}
-
-unsigned int qHash(const Point3D& key)
-{
- return qHash(key.x) ^ utility::rotl10(qHash(key.y)) ^ utility::rotl20(qHash(key.z));
-}
-
-QString vertexToStringParens(const Point3D& vertex)
-{
- return utility::format("(%1, %2, %3)", vertex.x, vertex.y, vertex.z);
-}