PARP Research Group | Universidad de Murcia |
src/qvmath/qvvectormap.h00001 /* 00002 * Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012. PARP Research Group. 00003 * <http://perception.inf.um.es> 00004 * University of Murcia, Spain. 00005 * 00006 * This file is part of the QVision library. 00007 * 00008 * QVision is free software: you can redistribute it and/or modify 00009 * it under the terms of the GNU Lesser General Public License as 00010 * published by the Free Software Foundation, version 3 of the License. 00011 * 00012 * QVision is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 * GNU Lesser General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU Lesser General Public 00018 * License along with QVision. If not, see <http://www.gnu.org/licenses/>. 00019 */ 00020 00021 #include <QMap> 00022 #include <QList> 00023 #include <QVVector> 00024 00025 #include <qvmath.h> 00026 00027 #ifndef QVVECTORMAP_H 00028 #define QVVECTORMAP_H 00029 00056 class QVVectorMap: public QMap<double, QVVector> 00057 { 00058 public: 00062 void add(const QVVector &vector); 00063 00067 QVVectorMap(const QList<QVVector> & vectors = QList<QVVector>()); 00068 00072 QVVector getClosestVector(const QVVector &vector) const; 00073 00078 QList<QVVector> getClosestVectors(const QVVector &vector, const int n) const; 00079 00081 static QList<QVVector> getClosestVectors(const QVVector actualVector, const QList<QVVector> &vectors, const int n); 00082 }; 00083 00084 00085 #endif |