From 16437869f2c3de679ebc3087a6148ce5a2f52aa5 Mon Sep 17 00:00:00 2001 From: Brad Barber <bradb@shore.net> Date: Sun, 20 Dec 2009 18:13:56 -0500 Subject: [PATCH] Redid include files from specific to general Moved vector<> from base type of Coordinates to a field Changes to Coordinates to match iterator and subtype guidelines Add PointCoordinatesIterator Split dynamic and static libs for qhull and qhullcpp Move class objects after fields in .h files Added more changes.txt Changed version to 2009.0.1 --- cpp/Coordinates.cpp | 21 +- cpp/Coordinates.h | 260 ++++++++++++-- cpp/PointCoordinates.cpp | 26 +- cpp/PointCoordinates.h | 47 ++- cpp/Qhull.cpp | 17 +- cpp/QhullError.cpp | 8 +- cpp/QhullEvent.h | 10 +- cpp/QhullFacet.cpp | 12 +- cpp/QhullFacet.h | 12 +- cpp/QhullFacetList.h | 5 +- cpp/QhullFacetSet.h | 8 +- cpp/QhullHyperplane.cpp | 8 +- cpp/QhullHyperplane.h | 17 +- cpp/QhullIterator.h | 12 +- cpp/QhullLinkedList.h | 35 +- cpp/QhullLog.cpp | 8 +- cpp/QhullLog.h | 12 +- cpp/QhullPoint.cpp | 12 +- cpp/QhullPoint.h | 34 +- cpp/QhullPointSet.cpp | 10 +- cpp/QhullPointSet.h | 28 +- cpp/QhullPoints.cpp | 10 +- cpp/QhullPoints.h | 92 ++--- cpp/QhullQh.cpp | 9 +- cpp/QhullQh.h | 10 +- cpp/QhullRidge.h | 8 +- cpp/QhullSet.h | 50 ++- cpp/QhullStat.cpp | 10 +- cpp/QhullStat.h | 22 +- cpp/QhullVertex.h | 10 +- cpp/QhullVertexSet.h | 12 +- cpp/RboxPoints.cpp | 8 +- cpp/RboxPoints.h | 21 +- cpp/UsingLibQhull.h | 20 +- cpp/functionObjects.h | 6 +- cpp/qhulltest/Coordinates_test.cpp | 13 +- cpp/qhulltest/PointCoordinates_test.cpp | 72 +++- cpp/qhulltest/QhullFacetList_test.cpp | 9 +- cpp/qhulltest/QhullFacetSet_test.cpp | 9 +- cpp/qhulltest/QhullFacet_test.cpp | 12 +- cpp/qhulltest/QhullHyperplane_test.cpp | 15 +- cpp/qhulltest/QhullLinkedList_test.cpp | 5 +- cpp/qhulltest/QhullPointSet_test.cpp | 12 +- cpp/qhulltest/QhullPoint_test.cpp | 13 +- cpp/qhulltest/QhullPoints_test.cpp | 8 +- cpp/qhulltest/QhullRidge_test.cpp | 10 +- cpp/qhulltest/QhullSet_test.cpp | 7 +- cpp/qhulltest/QhullVertex_test.cpp | 11 +- cpp/qhulltest/Qhull_test.cpp | 7 +- cpp/qhulltest/RboxPoints_test.cpp | 13 +- cpp/qhulltest/UsingLibQhull_test.cpp | 9 +- cpp/qhulltest/qhulltest.cpp | 13 +- cpp/road/RoadError.cpp | 12 +- cpp/road/RoadError.h | 12 +- cpp/road/RoadLogEvent.cpp | 12 +- cpp/road/RoadTest.cpp | 6 +- cpp/road/RoadTest.h | 5 +- cpp/user_eg3.cpp | 10 +- html/trolltech2.rtf | 335 ++++++++++++++++++ qtpro/libqhull/libqhull.pro | 21 +- .../libqhullcpp.pro} | 42 +-- qtpro/qhull/qhull.pro | 16 +- qtpro/qhulltest/qhulltest.pro | 94 +---- qtpro/rbox/rbox.pro | 17 +- qtpro/user_eg3/user_eg3.pro | 76 +--- src/Changes.txt | 50 ++- src/global.c | 6 +- src/qh-geom.htm | 2 +- src/qh-io.htm | 2 +- vcproj/qhulltest.vcproj | 50 +-- 70 files changed, 1225 insertions(+), 671 deletions(-) create mode 100644 html/trolltech2.rtf rename qtpro/{qhull-qt/qhull-qt.pro => libqhullcpp/libqhullcpp.pro} (62%) diff --git a/cpp/Coordinates.cpp b/cpp/Coordinates.cpp index 04ac6d0..38a9f58 100644 --- a/cpp/Coordinates.cpp +++ b/cpp/Coordinates.cpp @@ -1,17 +1,18 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/Coordinates.cpp#13 $$Change: 1087 $ -** $DateTime: 2009/11/22 23:02:55 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/Coordinates.cpp#15 $$Change: 1114 $ +** $DateTime: 2009/12/12 13:49:07 $$Author: bbarber $ ** ****************************************************************************/ -#include <algorithm> -#include <iostream> - -#include "Coordinates.h" #include "functionObjects.h" #include "QhullError.h" +#include "Coordinates.h" + +#include <iostream> +#include <iterator> +#include <algorithm> #ifdef _MSC_VER // Microsoft Visual C++ -- warning level 4 #endif @@ -32,7 +33,7 @@ mid(int index, int length) const } Coordinates result; if(newLength>0){ - copy(begin()+index, begin()+(index+newLength), back_inserter(result)); + std::copy(begin()+index, begin()+(index+newLength), std::back_inserter(result)); } return result; }//mid @@ -49,7 +50,7 @@ Coordinates Coordinates:: operator+(const Coordinates &other) const { Coordinates result(*this); - copy(other.begin(), other.end(), back_inserter(result)); + std::copy(other.begin(), other.end(), std::back_inserter(result)); return result; }//operator+ @@ -58,9 +59,9 @@ operator+=(const Coordinates &other) { if(&other==this){ Coordinates clone(other); - copy(clone.begin(), clone.end(), back_inserter(*this)); + std::copy(clone.begin(), clone.end(), std::back_inserter(*this)); }else{ - copy(other.begin(), other.end(), back_inserter(*this)); + std::copy(other.begin(), other.end(), std::back_inserter(*this)); } return *this; }//operator+= diff --git a/cpp/Coordinates.h b/cpp/Coordinates.h index 272bb39..51d90cf 100644 --- a/cpp/Coordinates.h +++ b/cpp/Coordinates.h @@ -1,8 +1,8 @@ /**************************************************************************** ** -** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/Coordinates.h#23 $$Change: 1096 $ -** $DateTime: 2009/12/04 21:52:01 $$Author: bbarber $ +** Copyright (Coordinates) 2009-2009 Coordinates. Bradford Barber. All rights reserved. +** $Id: //product/qhull/main/rel/cpp/Coordinates.h#27 $$Change: 1116 $ +** $DateTime: 2009/12/13 22:31:48 $$Author: bbarber $ ** ****************************************************************************/ @@ -11,14 +11,15 @@ #include "QhullError.h" #include "QhullIterator.h" - -#include <ostream> -#include <vector> - extern "C" { #include "../src/qhull_a.h" }; + +#include <cstddef> // ptrdiff_t, size_t +#include <ostream> +#include <vector> + namespace orgQhull { #//Types @@ -26,77 +27,109 @@ namespace orgQhull { //! Used by PointCoordinates for RboxPoints //! A QhullPoint refers to previously allocated coordinates class Coordinates; + class MutableCoordinatesIterator; -class Coordinates : public std::vector<coordT> { +class Coordinates { + +private: +#//Fields + std::vector<coordT> coordinate_array; -#//Types - // inherited types -- const_iterator, const_pointer, const_reference, iterator, iterator_category, pointer, reference, size_type, value_type public: - typedef Coordinates::iterator Iterator; - typedef Coordinates::const_iterator ConstIterator; +#//Subtypes + + class const_iterator; + class iterator; + typedef iterator Iterator; + typedef const_iterator ConstIterator; + + typedef coordT value_type; + typedef const value_type *const_pointer; + typedef const value_type &const_reference; + typedef value_type *pointer; + typedef value_type &reference; + typedef ptrdiff_t difference_type; + typedef int size_type; #//Construct Coordinates() {}; - explicit Coordinates(const std::vector<coordT> &other) : std::vector<coordT>(other) {} - Coordinates(const Coordinates &other) : std::vector<coordT>(other) {} - Coordinates &operator=(const Coordinates &other) { std::vector<coordT>::operator=(other); return *this; } - Coordinates &operator=(const std::vector<coordT> &other) { std::vector<coordT>::operator=(other); return *this; } + explicit Coordinates(const std::vector<coordT> &other) : coordinate_array(other) {} + Coordinates(const Coordinates &other) : coordinate_array(other.coordinate_array) {} + Coordinates &operator=(const Coordinates &other) { coordinate_array= other.coordinate_array; return *this; } + Coordinates &operator=(const std::vector<coordT> &other) { coordinate_array= other; return *this; } ~Coordinates() {} #//Conversion - coordT *data() { return isEmpty() ? 0 : &at(0); } + coordT *data() { return isEmpty() ? 0 : &at(0); } const coordT *data() const { return const_cast<const pointT*>(isEmpty() ? 0 : &at(0)); } #ifndef QHULL_NO_STL - std::vector<coordT> toStdVector() const { return static_cast< std::vector<coordT> >(*this); } + std::vector<coordT> toStdVector() const { return coordinate_array; } #endif //QHULL_NO_STL #ifdef QHULL_USES_QT QList<coordT> toQList() const; #endif //QHULL_USES_QT #//GetSet - // std::vector -- empty, size int count() const { return static_cast<int>(size()); } + bool empty() const { return coordinate_array.empty(); } bool isEmpty() const { return empty(); } + bool operator==(const Coordinates &other) const { return coordinate_array==other.coordinate_array; } + bool operator!=(const Coordinates &other) const { return coordinate_array!=other.coordinate_array; } + size_t size() const { return coordinate_array.size(); } #//Element access - // std::vector -- at (const& only), back, front, [] + coordT &at(int index) { return coordinate_array.at(index); } + const coordT &at(int index) const { return coordinate_array.at(index); } + coordT &back() { return coordinate_array.back(); } + const coordT &back() const { return coordinate_array.back(); } coordT &first() { return front(); } const coordT &first() const { return front(); } + coordT &front() { return coordinate_array.front(); } + const coordT &front() const { return coordinate_array.front(); } coordT &last() { return back(); } const coordT &last() const { return back(); } Coordinates mid(int index, int length= -1) const; + coordT &operator[](int index) { return coordinate_array.operator[](index); } + const coordT &operator[](int index) const { return coordinate_array.operator[](index); } coordT value(int index, const coordT &defaultValue) const; -#//Operator - // std::vector -- ==, != - Coordinates operator+(const Coordinates &other) const; - Coordinates &operator+=(const Coordinates &other); - Coordinates &operator+=(const coordT &c) { append(c); return *this; } - Coordinates &operator<<(const Coordinates &other) { return *this += other; } - Coordinates &operator<<(const coordT &c) { return *this += c; } - #//Iterator - // std::vector -- begin, end, *, [], ->, ++, --, +, -, ==, !=, <, <=, >, >= - inline const_iterator constBegin() const { return begin(); } - inline const_iterator constEnd() const { return end(); } + iterator begin() { return iterator(coordinate_array.begin()); } + const_iterator begin() const { return const_iterator(coordinate_array.begin()); } + const_iterator constBegin() const { return begin(); } + const_iterator constEnd() const { return end(); } + iterator end() { return iterator(coordinate_array.end()); } + const_iterator end() const { return const_iterator(coordinate_array.end()); } + +#//Read-only + Coordinates operator+(const Coordinates &other) const; -#//Read-write - // std::vector -- clear, erase, insert, pop_back, push_back +#//Modify void append(const coordT &c) { push_back(c); } + void clear() { coordinate_array.clear(); } + iterator erase(iterator index) { return iterator(coordinate_array.erase(index.base())); } + iterator erase(iterator begin, iterator end) { return iterator(coordinate_array.erase(begin.base(), end.base())); } void insert(int before, const coordT &c) { insert(begin()+before, c); } - using std::vector<coordT>::insert; + iterator insert(iterator before, const coordT &c) { return iterator(coordinate_array.insert(before.base(), c)); } void move(int from, int to) { insert(to, takeAt(from)); } + Coordinates &operator+=(const Coordinates &other); + Coordinates &operator+=(const coordT &c) { append(c); return *this; } + Coordinates &operator<<(const Coordinates &other) { return *this += other; } + Coordinates &operator<<(const coordT &c) { return *this += c; } + void pop_back() { coordinate_array.pop_back(); } void pop_front() { removeFirst(); } void prepend(const coordT &c) { insert(begin(), c); } + void push_back(const coordT &c) { coordinate_array.push_back(c); } void push_front(const coordT &c) { insert(begin(), c); } //removeAll below void removeAt(int index) { erase(begin()+index); } void removeFirst() { erase(begin()); } void removeLast() { erase(--end()); } void replace(int index, const coordT &c) { (*this)[index]= c; } + void reserve(int i) { coordinate_array.reserve(i); } void swap(int index, int other); coordT takeAt(int index); coordT takeFirst() { return takeAt(0); } @@ -109,12 +142,167 @@ public: int lastIndexOf(const coordT &t, int from = -1) const; void removeAll(const coordT &t); +#//Coordinates::iterator -- from QhullPoints, forwarding to coordinate_array + // before const_iterator for conversion with comparison operators + class iterator { + + private: + std::vector<coordT>::iterator i; + friend class const_iterator; + + public: + typedef std::random_access_iterator_tag iterator_category; + typedef coordT value_type; + typedef value_type *pointer; + typedef value_type &reference; + typedef ptrdiff_t difference_type; + + iterator() {} + iterator(const iterator &other) { i= other.i; } + explicit iterator(const std::vector<coordT>::iterator &vi) { i= vi; } + iterator &operator=(const iterator &other) { i= other.i; return *this; } + std::vector<coordT>::iterator &base() { return i; } + // No operator-> for base types + coordT &operator*() const { return *i; } + coordT &operator[](int index) const { return i[index]; } + + bool operator==(const iterator &other) const { return i==other.i; } + bool operator!=(const iterator &other) const { return i!=other.i; } + bool operator<(const iterator &other) const { return i<other.i; } + bool operator<=(const iterator &other) const { return i<=other.i; } + bool operator>(const iterator &other) const { return i>other.i; } + bool operator>=(const iterator &other) const { return i>=other.i; } + // reinterpret_cast to break circular dependency + bool operator==(const Coordinates::const_iterator &other) const { return *this==reinterpret_cast<const iterator &>(other); } + bool operator!=(const Coordinates::const_iterator &other) const { return *this!=reinterpret_cast<const iterator &>(other); } + bool operator<(const Coordinates::const_iterator &other) const { return *this<reinterpret_cast<const iterator &>(other); } + bool operator<=(const Coordinates::const_iterator &other) const { return *this<=reinterpret_cast<const iterator &>(other); } + bool operator>(const Coordinates::const_iterator &other) const { return *this>reinterpret_cast<const iterator &>(other); } + bool operator>=(const Coordinates::const_iterator &other) const { return *this>=reinterpret_cast<const iterator &>(other); } + + iterator operator++() { return iterator(++i); } //FIXUP Should return reference, but get reference to temporary + iterator operator++(int) { return iterator(i++); } + iterator operator--() { return iterator(--i); } + iterator operator--(int) { return iterator(i--); } + iterator operator+=(int index) { return iterator(i += index); } + iterator operator-=(int index) { return iterator(i -= index); } + iterator operator+(int index) const { return iterator(i+index); } + iterator operator-(int index) const { return iterator(i-index); } + difference_type operator-(iterator other) const { return i-other.i; } + };//Coordinates::iterator + +#//Coordinates::const_iterator + class const_iterator { + + private: + std::vector<coordT>::const_iterator i; + + public: + typedef std::random_access_iterator_tag iterator_category; + typedef coordT value_type; + typedef const value_type *pointer; + typedef const value_type &reference; + typedef ptrdiff_t difference_type; + + const_iterator() {} + const_iterator(const const_iterator &other) { i= other.i; } + const_iterator(iterator o) : i(o.i) {} + explicit const_iterator(const std::vector<coordT>::const_iterator &vi) { i= vi; } + const_iterator &operator=(const const_iterator &other) { i= other.i; return *this; } + // No operator-> for base types + // No reference to a base type for () and [] + const coordT &operator*() const { return *i; } + const coordT &operator[](int index) const { return i[index]; } + + bool operator==(const const_iterator &other) const { return i==other.i; } + bool operator!=(const const_iterator &other) const { return i!=other.i; } + bool operator<(const const_iterator &other) const { return i<other.i; } + bool operator<=(const const_iterator &other) const { return i<=other.i; } + bool operator>(const const_iterator &other) const { return i>other.i; } + bool operator>=(const const_iterator &other) const { return i>=other.i; } + + const_iterator operator++() { return const_iterator(++i); } //FIXUP -- too much copying + const_iterator operator++(int) { return const_iterator(i++); } + const_iterator operator--() { return const_iterator(--i); } + const_iterator operator--(int) { return const_iterator(i--); } + const_iterator operator+=(int index) { return const_iterator(i += index); } + const_iterator operator-=(int index) { return const_iterator(i -= index); } + const_iterator operator+(int index) const { return const_iterator(i+index); } + const_iterator operator-(int index) const { return const_iterator(i-index); } + difference_type operator-(const_iterator other) const { return i-other.i; } + };//Coordinates::const_iterator + };//Coordinates +//FIXUP IO for Coordinates + //class CoordinatesIterator -QHULL_DECLARE_SEQUENTIAL_ITERATOR(Coordinates, coordT) +//QHULL_DECLARE_SEQUENTIAL_ITERATOR(Coordinates, coordT) + +class CoordinatesIterator +{ + typedef Coordinates::const_iterator const_iterator; + const Coordinates *c; + const_iterator i; + public: + inline CoordinatesIterator(const Coordinates &container) + : c(&container), i(c->constBegin()) {} + inline CoordinatesIterator &operator=(const Coordinates &container) + { c = &container; i = c->constBegin(); return *this; } + inline void toFront() { i = c->constBegin(); } + inline void toBack() { i = c->constEnd(); } + inline bool hasNext() const { return i != c->constEnd(); } + inline const coordT &next() { return *i++; } + inline const coordT &peekNext() const { return *i; } + inline bool hasPrevious() const { return i != c->constBegin(); } + inline const coordT &previous() { return *--i; } + inline const coordT &peekPrevious() const { const_iterator p = i; return *--p; } + inline bool findNext(const coordT &t) + { while (i != c->constEnd()) if (*i++ == t) return true; return false; } + inline bool findPrevious(const coordT &t) + { while (i != c->constBegin()) if (*(--i) == t) return true; + return false; } +};//CoordinatesIterator + //class MutableCoordinatesIterator -QHULL_DECLARE_MUTABLE_SEQUENTIAL_ITERATOR(Coordinates, coordT) +//QHULL_DECLARE_MUTABLE_SEQUENTIAL_ITERATOR(Coordinates, coordT) +class MutableCoordinatesIterator +{ + typedef Coordinates::iterator iterator; + typedef Coordinates::const_iterator const_iterator; + Coordinates *c; + iterator i, n; + inline bool item_exists() const { return const_iterator(n) != c->constEnd(); } + public: + inline MutableCoordinatesIterator(Coordinates &container) + : c(&container) + { i = c->begin(); n = c->end(); } + inline ~MutableCoordinatesIterator() + {} + inline MutableCoordinatesIterator &operator=(Coordinates &container) + { c = &container; + i = c->begin(); n = c->end(); return *this; } + inline void toFront() { i = c->begin(); n = c->end(); } + inline void toBack() { i = c->end(); n = i; } + inline bool hasNext() const { return c->constEnd() != const_iterator(i); } + inline coordT &next() { n = i++; return *n; } + inline coordT &peekNext() const { return *i; } + inline bool hasPrevious() const { return c->constBegin() != const_iterator(i); } + inline coordT &previous() { n = --i; return *n; } + inline coordT &peekPrevious() const { iterator p = i; return *--p; } + inline void remove() + { if (c->constEnd() != const_iterator(n)) { i = c->erase(n); n = c->end(); } } + inline void setValue(const coordT &t) const { if (c->constEnd() != const_iterator(n)) *n = t; } + inline coordT &value() { QHULL_ASSERT(item_exists()); return *n; } + inline const coordT &value() const { QHULL_ASSERT(item_exists()); return *n; } + inline void insert(const coordT &t) { n = i = c->insert(i, t); ++i; } + inline bool findNext(const coordT &t) + { while (c->constEnd() != const_iterator(n = i)) if (*i++ == t) return true; return false; } + inline bool findPrevious(const coordT &t) + { while (c->constBegin() != const_iterator(i)) if (*(n = --i) == t) return true; + n = c->end(); return false; } +};//MutableCoordinatesIterator + }//namespace orgQhull diff --git a/cpp/PointCoordinates.cpp b/cpp/PointCoordinates.cpp index b292126..61280a8 100644 --- a/cpp/PointCoordinates.cpp +++ b/cpp/PointCoordinates.cpp @@ -1,16 +1,16 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/PointCoordinates.cpp#14 $$Change: 1095 $ -** $DateTime: 2009/12/01 22:40:56 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/PointCoordinates.cpp#19 $$Change: 1118 $ +** $DateTime: 2009/12/20 16:19:59 $$Author: bbarber $ ** ****************************************************************************/ -#include <iostream> - +#include "QhullError.h" #include "QhullPoint.h" #include "PointCoordinates.h" -#include "QhullError.h" + +#include <iostream> using std::istream; using std::string; @@ -30,7 +30,9 @@ PointCoordinates() : QhullPoints() , point_coordinates() , point_comment() -{ } +{ + makeValid(); +} #//Construct PointCoordinates:: @@ -38,7 +40,9 @@ PointCoordinates(int dimension) : QhullPoints(dimension) , point_coordinates() , point_comment() -{ } +{ + makeValid(); +} PointCoordinates:: PointCoordinates(const std::string &comment) @@ -47,6 +51,7 @@ PointCoordinates(const std::string &comment) , point_comment() { appendComment(comment); + makeValid(); } PointCoordinates:: @@ -56,6 +61,7 @@ PointCoordinates(int dimension, const std::string &comment) , point_comment() { appendComment(comment); + makeValid(); } PointCoordinates:: @@ -94,9 +100,9 @@ PointCoordinates:: void PointCoordinates:: checkValid() const { - if(getCoordinates().data()!=QhullPoints::point_first + if(getCoordinates().data()!=data() || getCoordinates().count()!=coordinateCount()){ - throw QhullError(10060, "Qhull error: first point (%x) is not PointCoordinates.data() or count (%d) is not PointCoordinates.count (%d)", coordinateCount(), getCoordinates().count(), 0.0, point_first); + throw QhullError(10060, "Qhull error: first point (%x) is not PointCoordinates.data() or count (%d) is not PointCoordinates.count (%d)", coordinateCount(), getCoordinates().count(), 0.0, data()); } }//checkValid @@ -240,7 +246,7 @@ void PointCoordinates:: reserveCoordinates(int newCoordinates) { // vector::reserve is not const - point_coordinates.reserve(point_coordinates.size()+newCoordinates); + point_coordinates.reserve((int)point_coordinates.size()+newCoordinates); // WARN64 makeValid(); }//reserveCoordinates diff --git a/cpp/PointCoordinates.h b/cpp/PointCoordinates.h index 2b6e203..cb7eb30 100644 --- a/cpp/PointCoordinates.h +++ b/cpp/PointCoordinates.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/PointCoordinates.h#8 $$Change: 1094 $ -** $DateTime: 2009/11/24 20:04:16 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/PointCoordinates.h#11 $$Change: 1117 $ +** $DateTime: 2009/12/14 20:55:32 $$Author: bbarber $ ** ****************************************************************************/ @@ -11,14 +11,13 @@ #include "QhullPoints.h" #include "Coordinates.h" - -#include <ostream> -#include <vector> - extern "C" { #include "../src/qhull_a.h" }; +#include <ostream> +#include <vector> + namespace orgQhull { #//Types @@ -56,7 +55,6 @@ public: QList<coordT> toQList() const { return point_coordinates.toQList(); } #endif //QHULL_USES_QT - #//GetSet //! See QhullPoints for coordinates, coordinateCount, dimension, empty, isEmpty, ==, != void checkValid() const; @@ -86,6 +84,10 @@ public: #//Search //! See QhullPoints for contains, count, indexOf, lastIndexOf +#//Read-only + PointCoordinates operator+(const PointCoordinates &other) const; + + //FIXUP: Add other modify operators from Coordinates.h, including QhullPoint::operator=() #//Modify void append(int count, const coordT *c); //! Dimension previously defined void append(const coordT &c) { append(1, &c); } //! Dimension previously defined @@ -95,14 +97,13 @@ public: void append(const PointCoordinates &other); void appendComment(const std::string &s); void appendPoints(std::istream &in); - PointCoordinates operator+(const PointCoordinates &other) const; PointCoordinates &operator+=(const PointCoordinates &other) { append(other); return *this; } PointCoordinates &operator+=(const coordT &c) { append(c); return *this; } PointCoordinates &operator+=(const QhullPoint &p) { append(p); return *this; } PointCoordinates &operator<<(const PointCoordinates &other) { return *this += other; } PointCoordinates &operator<<(const coordT &c) { return *this += c; } PointCoordinates &operator<<(const QhullPoint &p) { return *this += p; } - // reserve() is non-const + // reserve() is non-const void reserveCoordinates(int newCoordinates); #//Helpers @@ -111,6 +112,34 @@ private: };//PointCoordinates +// No references to QhullPoint. Prevents use of QHULL_DECLARE_SEQUENTIAL_ITERATOR(PointCoordinates, QhullPoint) +class PointCoordinatesIterator +{ + typedef PointCoordinates::const_iterator const_iterator; + const PointCoordinates *c; + const_iterator i; + public: + inline PointCoordinatesIterator(const PointCoordinates &container) + : c(&container), i(c->constBegin()) {} + inline PointCoordinatesIterator &operator=(const PointCoordinates &container) + { c = &container; i = c->constBegin(); return *this; } + inline void toFront() { i = c->constBegin(); } + inline void toBack() { i = c->constEnd(); } + inline bool hasNext() const { return i != c->constEnd(); } + inline const QhullPoint next() { return *i++; } + inline const QhullPoint peekNext() const { return *i; } + inline bool hasPrevious() const { return i != c->constBegin(); } + inline const QhullPoint previous() { return *--i; } + inline const QhullPoint peekPrevious() const { const_iterator p = i; return *--p; } + inline bool findNext(const QhullPoint &t) + { while (i != c->constEnd()) if (*i++ == t) return true; return false; } + inline bool findPrevious(const QhullPoint &t) + { while (i != c->constBegin()) if (*(--i) == t) return true; + return false; } +};//CoordinatesIterator + +// FIXUP: Add MutablePointCoordinatesIterator after adding Modify operators +\ }//namespace orgQhull #//Global functions diff --git a/cpp/Qhull.cpp b/cpp/Qhull.cpp index f7077e3..2c950fd 100644 --- a/cpp/Qhull.cpp +++ b/cpp/Qhull.cpp @@ -1,28 +1,27 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/Qhull.cpp#37 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/Qhull.cpp#38 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #//! Qhull -- invoke qhull from C++ #//! Compile libqhull and Qhull together due to use of setjmp/longjmp() -#include <iostream> - -#include "Qhull.h" #include "QhullError.h" +#include "UsingLibQhull.h" +#include "RboxPoints.h" +#include "QhullQh.h" #include "QhullFacet.h" #include "QhullFacetList.h" -#include "QhullQh.h" -#include "RboxPoints.h" -#include "UsingLibQhull.h" - +#include "Qhull.h" extern "C" { #include "../src/qhull_a.h" }; +#include <iostream> + using std::cerr; using std::string; using std::vector; diff --git a/cpp/QhullError.cpp b/cpp/QhullError.cpp index 3e2e656..2a8404e 100644 --- a/cpp/QhullError.cpp +++ b/cpp/QhullError.cpp @@ -6,12 +6,12 @@ #//! QhullError -- All exceptions thrown by Qhull are QhullErrors -#include <iostream> +#include "QhullError.h" + #include <memory> -#include <sstream> #include <string> - -#include "QhullError.h" +#include <sstream> +#include <iostream> using std::cout; using std::ostringstream; diff --git a/cpp/QhullEvent.h b/cpp/QhullEvent.h index 09efa17..fc9ff12 100644 --- a/cpp/QhullEvent.h +++ b/cpp/QhullEvent.h @@ -1,20 +1,20 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullEvent.h#6 $$Change: 1053 $ -** $DateTime: 2009/10/02 22:00:28 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullEvent.h#7 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #ifndef QHULLEVENT_H #define QHULLEVENT_H -#include <string> - extern "C" { #include "../src/qhull_a.h" }; +#include <string> + namespace orgQhull { #//Types @@ -34,8 +34,8 @@ public: ReturnEvent= 0x2 }; -#//Fields private: +#//Fields unsigned int time_s:24; unsigned int event_type:2; unsigned int trace_level:3; diff --git a/cpp/QhullFacet.cpp b/cpp/QhullFacet.cpp index 6606f41..e9f3ec0 100644 --- a/cpp/QhullFacet.cpp +++ b/cpp/QhullFacet.cpp @@ -1,24 +1,24 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullFacet.cpp#29 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullFacet.cpp#30 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #//! QhullFacet -- Qhull's facet structure, facetT, as a C++ class -#include <ostream> - #include "QhullError.h" #include "QhullSet.h" +#include "QhullPoint.h" +#include "QhullPointSet.h" #include "QhullRidge.h" #include "QhullFacet.h" #include "QhullFacetSet.h" -#include "QhullPoint.h" -#include "QhullPointSet.h" #include "QhullVertex.h" +#include <ostream> + using std::endl; using std::string; using std::vector; diff --git a/cpp/QhullFacet.h b/cpp/QhullFacet.h index 130f919..6928d61 100644 --- a/cpp/QhullFacet.h +++ b/cpp/QhullFacet.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullFacet.h#31 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullFacet.h#32 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ @@ -14,15 +14,14 @@ #include "QhullPoint.h" #include "QhullSet.h" #include "QhullPointSet.h" +extern "C" { + #include "../src/qhull_a.h" +}; #include <string> #include <vector> #include <ostream> -extern "C" { - #include "../src/qhull_a.h" -}; - namespace orgQhull { #//ClassRef @@ -39,6 +38,7 @@ namespace orgQhull { //! A QhullFacet is the C++ equivalent to Qhull's facetT* class QhullFacet { +private: #//Fields -- no additions (QhullFacetSet of facetT*) facetT *qh_facet; //! May be 0 (!isDefined) for corner cases (e.g., *facetSet.end()==0) diff --git a/cpp/QhullFacetList.h b/cpp/QhullFacetList.h index 2678927..54fa54d 100644 --- a/cpp/QhullFacetList.h +++ b/cpp/QhullFacetList.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullFacetList.h#17 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullFacetList.h#18 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ @@ -10,6 +10,7 @@ #define QHULLFACETLIST_H #include "QhullLinkedList.h" +#include "QhullFacet.h" #include <ostream> diff --git a/cpp/QhullFacetSet.h b/cpp/QhullFacetSet.h index de9f284..31a62da 100644 --- a/cpp/QhullFacetSet.h +++ b/cpp/QhullFacetSet.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullFacetSet.h#15 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullFacetSet.h#16 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ @@ -26,12 +26,12 @@ namespace orgQhull { class QhullFacetSet : public QhullSet<QhullFacet> { -#//Fields private: +#//Fields bool select_all; //! True if include bad facets. Default is false. -#//Constructor public: +#//Constructor //Conversion from setT* is not type-safe. Implicit conversion for void* to T explicit QhullFacetSet(setT *s) : QhullSet<QhullFacet>(s), select_all(false) {} //Copy constructor copies pointer but not contents. Needed for return by value. diff --git a/cpp/QhullHyperplane.cpp b/cpp/QhullHyperplane.cpp index 32024db..86dc78f 100644 --- a/cpp/QhullHyperplane.cpp +++ b/cpp/QhullHyperplane.cpp @@ -1,16 +1,16 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullHyperplane.cpp#5 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullHyperplane.cpp#6 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ -#include <iostream> - #include "QhullHyperplane.h" #include "QhullPoint.h" +#include <iostream> + #ifdef _MSC_VER // Microsoft Visual C++ -- warning level 4 #endif diff --git a/cpp/QhullHyperplane.h b/cpp/QhullHyperplane.h index 32e4f94..dd13c70 100644 --- a/cpp/QhullHyperplane.h +++ b/cpp/QhullHyperplane.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullHyperplane.h#5 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullHyperplane.h#7 $$Change: 1112 $ +** $DateTime: 2009/12/11 19:53:07 $$Author: bbarber $ ** ****************************************************************************/ @@ -12,13 +12,12 @@ #include "QhullError.h" #include "QhullIterator.h" #include "UsingLibQhull.h" - -#include <ostream> - extern "C" { #include "../src/qhull_a.h" }; +#include <ostream> + namespace orgQhull { #//ClassRef class QhullPoint; @@ -38,10 +37,10 @@ private: coordT hyperplane_offset; public: -#//Types - typedef const coordT * iterator; - typedef const coordT * const_iterator; - typedef QhullHyperplane::iterator Iterator; +#//Subtypes + typedef const coordT * iterator; + typedef const coordT * const_iterator; + typedef QhullHyperplane::iterator Iterator; typedef QhullHyperplane::const_iterator ConstIterator; #//Construct diff --git a/cpp/QhullIterator.h b/cpp/QhullIterator.h index 6475846..06a7f50 100644 --- a/cpp/QhullIterator.h +++ b/cpp/QhullIterator.h @@ -1,24 +1,24 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullIterator.h#16 $$Change: 1059 $ -** $DateTime: 2009/10/30 18:26:26 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullIterator.h#17 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #ifndef QHULLITERATOR_H #define QHULLITERATOR_H +extern "C" { + #include "../src/qhull_a.h" +}; + #include <assert.h> #include <string> #include <vector> //! Avoid dependence on <iterator> namespace std { struct bidirectional_iterator_tag; struct random_access_iterator_tag; } -extern "C" { -#include "../src/qhull_a.h" -}; - namespace orgQhull { #//Defined here diff --git a/cpp/QhullLinkedList.h b/cpp/QhullLinkedList.h index d8ccd26..9f44a74 100644 --- a/cpp/QhullLinkedList.h +++ b/cpp/QhullLinkedList.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullLinkedList.h#25 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullLinkedList.h#27 $$Change: 1114 $ +** $DateTime: 2009/12/12 13:49:07 $$Author: bbarber $ ** ****************************************************************************/ @@ -44,7 +44,7 @@ private: T end_node; //! Sentinel node at end of list public: -#//Types +#//Subtypes and types class const_iterator; class iterator; typedef const_iterator ConstIterator; @@ -108,12 +108,17 @@ public: const_iterator end() const { return end_node; } class iterator { - public: - typedef ptrdiff_t difference_type; - typedef std::bidirectional_iterator_tag iterator_category; - typedef T value_type; + private: T i; + friend class const_iterator; + + public: + typedef std::bidirectional_iterator_tag iterator_category; + typedef T value_type; + typedef value_type *pointer; + typedef value_type &reference; + typedef ptrdiff_t difference_type; iterator() : i() {} iterator(T t) : i(t) {} @@ -137,15 +142,17 @@ public: };//QhullLinkedList::iterator class const_iterator { - public: - typedef ptrdiff_t difference_type; - typedef std::bidirectional_iterator_tag iterator_category; - typedef const T *pointer; - typedef const T &reference; - typedef T value_type; + private: T i; + public: + typedef std::bidirectional_iterator_tag iterator_category; + typedef T value_type; + typedef const value_type *pointer; + typedef const value_type &reference; + typedef ptrdiff_t difference_type; + const_iterator() : i() {} const_iterator(T t) : i(t) {} const_iterator(const const_iterator &o) : i(o.i) {} @@ -201,7 +208,7 @@ std::vector<T> QhullLinkedList<T>:: toStdVector() const { std::vector<T> tmp; - copy(constBegin(), constEnd(), std::back_inserter(tmp)); + std::copy(constBegin(), constEnd(), std::back_inserter(tmp)); return tmp; }//toStdVector #endif diff --git a/cpp/QhullLog.cpp b/cpp/QhullLog.cpp index abf03b4..c747d68 100644 --- a/cpp/QhullLog.cpp +++ b/cpp/QhullLog.cpp @@ -1,17 +1,17 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullLog.cpp#6 $$Change: 1053 $ -** $DateTime: 2009/10/02 22:00:28 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullLog.cpp#7 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #//! QhullLog -- A recorded event in a circular buffer -#include <time.h> - #include "QhullLog.h" +#include <time.h> + #ifdef _MSC_VER // Microsoft Visual C++ -- warning level 4 #endif diff --git a/cpp/QhullLog.h b/cpp/QhullLog.h index c36edc5..50e1ca0 100644 --- a/cpp/QhullLog.h +++ b/cpp/QhullLog.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullLog.h#8 $$Change: 1098 $ -** $DateTime: 2009/12/04 22:47:59 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullLog.h#9 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ @@ -10,14 +10,13 @@ #define QHULLLOG_H #include "QhullEvent.h" - -#include <string> -#include <vector> - extern "C" { #include "../src/qhull_a.h" }; +#include <string> +#include <vector> + namespace orgQhull { #//Types @@ -26,6 +25,7 @@ namespace orgQhull { class QhullLog { +private: #//Fields public: diff --git a/cpp/QhullPoint.cpp b/cpp/QhullPoint.cpp index 0b76700..9aa3875 100644 --- a/cpp/QhullPoint.cpp +++ b/cpp/QhullPoint.cpp @@ -1,16 +1,16 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullPoint.cpp#22 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullPoint.cpp#23 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ -#include <algorithm> -#include <iostream> - -#include "QhullPoint.h" #include "UsingLibQhull.h" +#include "QhullPoint.h" + +#include <iostream> +#include <algorithm> #ifdef _MSC_VER // Microsoft Visual C++ -- warning level 4 #endif diff --git a/cpp/QhullPoint.h b/cpp/QhullPoint.h index bbf5f28..ebb185c 100644 --- a/cpp/QhullPoint.h +++ b/cpp/QhullPoint.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullPoint.h#25 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullPoint.h#27 $$Change: 1112 $ +** $DateTime: 2009/12/11 19:53:07 $$Author: bbarber $ ** ****************************************************************************/ @@ -13,13 +13,12 @@ #include "QhullIterator.h" #include "UsingLibQhull.h" #include "Coordinates.h" - -#include <ostream> - extern "C" { #include "../src/qhull_a.h" }; +#include <ostream> + namespace orgQhull { #//Types @@ -30,14 +29,7 @@ namespace orgQhull { class QhullPoint { -#//Class objects - //! QhullPoint and UsingLibQhull store QhullQh fields - -#//Class methods -- Convert point to id w/o QhullQh data structure -public: - static int id(const coordT *c) { return QhullPoint::id(UsingLibQhull::NOqhRunId, 0, c); } - static int id(int qhRunId, const coordT *c) { return QhullPoint::id(qhRunId, 0, c); } - static int id(int qhRunId, int dimension, const coordT *c); + //! A point is a pointer into an array of coordinates. private: #//Fields @@ -49,12 +41,16 @@ private: //friend std::ostream &operator<<(std::ostream &os, QhullPoint &p); public: -#//Types - // A point is a pointer into an array of coordinates. - typedef const coordT * iterator; - typedef const coordT * const_iterator; - typedef QhullPoint::iterator Iterator; - typedef QhullPoint::const_iterator ConstIterator; +#//Subtypes + typedef const coordT * iterator; + typedef const coordT * const_iterator; + typedef QhullPoint::iterator Iterator; + typedef QhullPoint::const_iterator ConstIterator; + +#//Class methods -- Convert point to id w/o QhullQh data structure + static int id(const coordT *c) { return QhullPoint::id(UsingLibQhull::NOqhRunId, 0, c); } + static int id(int qhRunId, const coordT *c) { return QhullPoint::id(qhRunId, 0, c); } + static int id(int qhRunId, int dimension, const coordT *c); #//Construct QhullPoint() : point_coordinates(0), point_dimension(0) {}; diff --git a/cpp/QhullPointSet.cpp b/cpp/QhullPointSet.cpp index 11c8e7d..5e04e42 100644 --- a/cpp/QhullPointSet.cpp +++ b/cpp/QhullPointSet.cpp @@ -1,16 +1,16 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 c-> Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullPointSet.cpp#4 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullPointSet.cpp#5 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ -#include <algorithm> -#include <iostream> - #include "QhullPointSet.h" +#include <iostream> +#include <algorithm> + #ifdef _MSC_VER // Microsoft Visual C++ -- warning level 4 #endif diff --git a/cpp/QhullPointSet.h b/cpp/QhullPointSet.h index 6967927..750b5ce 100644 --- a/cpp/QhullPointSet.h +++ b/cpp/QhullPointSet.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullPointSet.h#11 $$Change: 1098 $ -** $DateTime: 2009/12/04 22:47:59 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullPointSet.h#14 $$Change: 1114 $ +** $DateTime: 2009/12/12 13:49:07 $$Author: bbarber $ ** ****************************************************************************/ @@ -11,12 +11,12 @@ #include "QhullSet.h" #include "QhullPoint.h" -#include <ostream> - extern "C" { #include "../src/qhull_a.h" }; +#include <ostream> + namespace orgQhull { #//Types @@ -31,31 +31,31 @@ namespace orgQhull { class QhullPointSet : public QhullSet<coordT *> { -#//Types +private: +#//Field + int point_dimension; + public: +#//Subtypes and types class const_iterator; class iterator; typedef QhullPointSet::const_iterator ConstIterator; typedef QhullPointSet::iterator Iterator; + typedef QhullPoint value_type; typedef ptrdiff_t difference_type; typedef int size_type; - typedef QhullPoint value_type; //typedef const value_type *const_pointer; // FIXUP: Pointers and reference types not available due to missing dimension //typedef const value_type &const_reference; //typedef value_type *pointer; //typedef value_type &reference; - -#//Field -private: - int point_dimension; #//Construct -public: //Conversion from setT* is not type-safe. Implicit conversion for void* to T QhullPointSet(int dimension, setT *s) : QhullSet<coordT *>(s), point_dimension(dimension) {} //Copy constructor copies pointer but not contents. Needed for return by value. QhullPointSet(const QhullPointSet &o) : QhullSet<coordT *>(o), point_dimension(o.point_dimension) {} + ~QhullPointSet() {} //disabled since p= p2 is ambiguous (coord* vs coord) private: @@ -167,11 +167,11 @@ public: int point_dimension; public: - typedef ptrdiff_t difference_type; typedef std::random_access_iterator_tag iterator_category; - typedef QhullPoint *pointer; - typedef QhullPoint &reference; typedef QhullPoint value_type; + typedef value_type *pointer; + typedef value_type &reference; + typedef ptrdiff_t difference_type; const_iterator() : i(0), point_dimension(0) {} const_iterator(int dimension, coordT **c) : i(c), point_dimension(dimension) {} diff --git a/cpp/QhullPoints.cpp b/cpp/QhullPoints.cpp index e5d59d3..2b134c8 100644 --- a/cpp/QhullPoints.cpp +++ b/cpp/QhullPoints.cpp @@ -1,16 +1,16 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullPoints.cpp#14 $$Change: 1107 $ -** $DateTime: 2009/12/07 21:05:37 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullPoints.cpp#15 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ -#include <algorithm> -#include <iostream> - #include "QhullPoints.h" +#include <iostream> +#include <algorithm> + #ifdef _MSC_VER // Microsoft Visual C++ -- warning level 4 #endif diff --git a/cpp/QhullPoints.h b/cpp/QhullPoints.h index 7b54d77..46082ce 100644 --- a/cpp/QhullPoints.h +++ b/cpp/QhullPoints.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullPoints.h#20 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullPoints.h#24 $$Change: 1116 $ +** $DateTime: 2009/12/13 22:31:48 $$Author: bbarber $ ** ****************************************************************************/ @@ -10,12 +10,12 @@ #define QHULLPOINTS_H #include "QhullPoint.h" -#include <ostream> - extern "C" { #include "../src/qhull_a.h" }; +#include <ostream> + namespace orgQhull { #//Types @@ -27,20 +27,21 @@ namespace orgQhull { class QhullPoints { -public: -#//Types // QhullPoints consists of pointers into an array of coordinates. - class const_iterator; - class iterator; - typedef QhullPoints::const_iterator ConstIterator; - typedef QhullPoints::iterator Iterator; +private: #//Field coordT *point_first; coordT *point_end; // end>=first. Trailing coordinates ignored int point_dimension; // >= 0 public: +#//Subtypes + class const_iterator; + class iterator; + typedef QhullPoints::const_iterator ConstIterator; + typedef QhullPoints::iterator Iterator; + #//Construct QhullPoints() : point_first(0), point_end(0), point_dimension(0) {}; QhullPoints(int dimension) : point_first(0), point_end(0), point_dimension(dimension) { QHULL_ASSERT(dimension>=0); } @@ -52,6 +53,7 @@ public: private: QhullPoints &operator=(const QhullPoints &other) { point_first= other.point_first; point_end= other.point_end; point_dimension= other.point_dimension; return *this; } public: + #//Conversion const coordT *constData() const { return coordinates(); } // See coordinates() @@ -118,33 +120,33 @@ public: public: typedef std::random_access_iterator_tag iterator_category; - typedef ptrdiff_t difference_type; typedef QhullPoint value_type; - typedef QhullPoint *pointer; - typedef QhullPoint &reference; + typedef value_type *pointer; + typedef value_type &reference; + typedef ptrdiff_t difference_type; iterator() : QhullPoint() {} - iterator(const iterator &o): QhullPoint(*o) {} + iterator(const iterator &other): QhullPoint(*other) {} explicit iterator(const QhullPoints &ps) : QhullPoint(ps.dimension(), ps.coordinates()) {} explicit iterator(int dimension, coordT *c): QhullPoint(dimension, c) {} - iterator &operator=(const iterator &o) { defineAs( const_cast<iterator &>(o)); return *this; } + iterator &operator=(const iterator &other) { defineAs( const_cast<iterator &>(other)); return *this; } QhullPoint *operator->() { return this; } // value instead of reference since advancePoint() modifies self QhullPoint operator*() const { return *this; } QhullPoint operator[](int index) const { QhullPoint n= *this; n.advancePoint(index); return n; } - bool operator==(const iterator &o) const { QHULL_ASSERT(dimension()==o.dimension()); return coordinates()==o.coordinates(); } - bool operator!=(const iterator &o) const { return !operator==(o); } - bool operator<(const iterator &o) const { QHULL_ASSERT(dimension()==o.dimension()); return coordinates() < o.coordinates(); } - bool operator<=(const iterator &o) const { QHULL_ASSERT(dimension()==o.dimension()); return coordinates() <= o.coordinates(); } - bool operator>(const iterator &o) const { QHULL_ASSERT(dimension()==o.dimension()); return coordinates() > o.coordinates(); } - bool operator>=(const iterator &o) const { QHULL_ASSERT(dimension()==o.dimension()); return coordinates() >= o.coordinates(); } + bool operator==(const iterator &other) const { QHULL_ASSERT(dimension()==other.dimension()); return coordinates()==other.coordinates(); } + bool operator!=(const iterator &other) const { return !operator==(other); } + bool operator<(const iterator &other) const { QHULL_ASSERT(dimension()==other.dimension()); return coordinates() < other.coordinates(); } + bool operator<=(const iterator &other) const { QHULL_ASSERT(dimension()==other.dimension()); return coordinates() <= other.coordinates(); } + bool operator>(const iterator &other) const { QHULL_ASSERT(dimension()==other.dimension()); return coordinates() > other.coordinates(); } + bool operator>=(const iterator &other) const { QHULL_ASSERT(dimension()==other.dimension()); return coordinates() >= other.coordinates(); } // reinterpret_cast to break circular dependency - bool operator==(const QhullPoints::const_iterator &o) const { QHULL_ASSERT(dimension()==reinterpret_cast<const iterator &>(o).dimension()); return coordinates()==reinterpret_cast<const iterator &>(o).coordinates(); } - bool operator!=(const QhullPoints::const_iterator &o) const { return !operator==(reinterpret_cast<const iterator &>(o)); } - bool operator<(const QhullPoints::const_iterator &o) const { QHULL_ASSERT(dimension()==reinterpret_cast<const iterator &>(o).dimension()); return coordinates() < reinterpret_cast<const iterator &>(o).coordinates(); } - bool operator<=(const QhullPoints::const_iterator &o) const { QHULL_ASSERT(dimension()==reinterpret_cast<const iterator &>(o).dimension()); return coordinates() <= reinterpret_cast<const iterator &>(o).coordinates(); } - bool operator>(const QhullPoints::const_iterator &o) const { QHULL_ASSERT(dimension()==reinterpret_cast<const iterator &>(o).dimension()); return coordinates() > reinterpret_cast<const iterator &>(o).coordinates(); } - bool operator>=(const QhullPoints::const_iterator &o) const { QHULL_ASSERT(dimension()==reinterpret_cast<const iterator &>(o).dimension()); return coordinates() >= reinterpret_cast<const iterator &>(o).coordinates(); } + bool operator==(const QhullPoints::const_iterator &other) const { QHULL_ASSERT(dimension()==reinterpret_cast<const iterator &>(other).dimension()); return coordinates()==reinterpret_cast<const iterator &>(other).coordinates(); } + bool operator!=(const QhullPoints::const_iterator &other) const { return !operator==(reinterpret_cast<const iterator &>(other)); } + bool operator<(const QhullPoints::const_iterator &other) const { QHULL_ASSERT(dimension()==reinterpret_cast<const iterator &>(other).dimension()); return coordinates() < reinterpret_cast<const iterator &>(other).coordinates(); } + bool operator<=(const QhullPoints::const_iterator &other) const { QHULL_ASSERT(dimension()==reinterpret_cast<const iterator &>(other).dimension()); return coordinates() <= reinterpret_cast<const iterator &>(other).coordinates(); } + bool operator>(const QhullPoints::const_iterator &other) const { QHULL_ASSERT(dimension()==reinterpret_cast<const iterator &>(other).dimension()); return coordinates() > reinterpret_cast<const iterator &>(other).coordinates(); } + bool operator>=(const QhullPoints::const_iterator &other) const { QHULL_ASSERT(dimension()==reinterpret_cast<const iterator &>(other).dimension()); return coordinates() >= reinterpret_cast<const iterator &>(other).coordinates(); } iterator &operator++() { advancePoint(1); return *this; } iterator operator++(int) { iterator n= *this; operator++(); return iterator(n); } iterator &operator--() { advancePoint(-1); return *this; } @@ -153,7 +155,7 @@ public: iterator &operator-=(int index) { advancePoint(-index); return *this; } iterator operator+(int index) const { iterator n= *this; n.advancePoint(index); return n; } iterator operator-(int index) const { iterator n= *this; n.advancePoint(-index); return n; } - difference_type operator-(iterator o) const { QHULL_ASSERT(dimension()==o.dimension()); return (coordinates()-o.coordinates())/dimension(); } + difference_type operator-(iterator other) const { QHULL_ASSERT(dimension()==other.dimension()); return (coordinates()-other.coordinates())/dimension(); } };//QhullPoints::iterator #//QhullPoints::const_iterator //FIXUP what does const_... mean? @@ -161,27 +163,27 @@ public: public: typedef std::random_access_iterator_tag iterator_category; - typedef ptrdiff_t difference_type; - typedef QhullPoint *pointer; - typedef QhullPoint &reference; - typedef QhullPoint value_type; + typedef QhullPoint value_type; + typedef const value_type *pointer; + typedef const value_type &reference; + typedef ptrdiff_t difference_type; const_iterator() : QhullPoint() {} - const_iterator(const const_iterator &o) : QhullPoint(*o) {} - const_iterator(QhullPoints::iterator &o) : QhullPoint(*o) {} + const_iterator(const const_iterator &other) : QhullPoint(*other) {} + const_iterator(const QhullPoints::iterator &other) : QhullPoint(*other) {} explicit const_iterator(const QhullPoints &ps) : QhullPoint(ps.dimension(), ps.coordinates()) {} explicit const_iterator(int dimension, coordT *c): QhullPoint(dimension, c) {} - const_iterator &operator=(const const_iterator &o) { defineAs(const_cast<const_iterator &>(o)); return *this; } + const_iterator &operator=(const const_iterator &other) { defineAs(const_cast<const_iterator &>(other)); return *this; } // value/non-const since advancePoint(1), etc. modifies self QhullPoint operator*() const { return *this; } QhullPoint *operator->() { return this; } QhullPoint operator[](int index) const { QhullPoint n= *this; n.advancePoint(index); return n; } - bool operator==(const const_iterator &o) const { QHULL_ASSERT(dimension()==o.dimension()); return coordinates()==o.coordinates(); } - bool operator!=(const const_iterator &o) const { return !operator==(o); } - bool operator<(const const_iterator &o) const { QHULL_ASSERT(dimension()==o.dimension()); return coordinates() < o.coordinates(); } - bool operator<=(const const_iterator &o) const { QHULL_ASSERT(dimension()==o.dimension()); return coordinates() <= o.coordinates(); } - bool operator>(const const_iterator &o) const { QHULL_ASSERT(dimension()==o.dimension()); return coordinates() > o.coordinates(); } - bool operator>=(const const_iterator &o) const { QHULL_ASSERT(dimension()==o.dimension()); return coordinates() >= o.coordinates(); } + bool operator==(const const_iterator &other) const { QHULL_ASSERT(dimension()==other.dimension()); return coordinates()==other.coordinates(); } + bool operator!=(const const_iterator &other) const { return !operator==(other); } + bool operator<(const const_iterator &other) const { QHULL_ASSERT(dimension()==other.dimension()); return coordinates() < other.coordinates(); } + bool operator<=(const const_iterator &other) const { QHULL_ASSERT(dimension()==other.dimension()); return coordinates() <= other.coordinates(); } + bool operator>(const const_iterator &other) const { QHULL_ASSERT(dimension()==other.dimension()); return coordinates() > other.coordinates(); } + bool operator>=(const const_iterator &other) const { QHULL_ASSERT(dimension()==other.dimension()); return coordinates() >= other.coordinates(); } const_iterator &operator++() { advancePoint(1); return *this; } const_iterator operator++(int) { const_iterator n= *this; operator++(); return const_iterator(n); } const_iterator &operator--() { advancePoint(-1); return *this; } @@ -190,7 +192,7 @@ public: const_iterator &operator-=(int index) { advancePoint(-index); return *this; } const_iterator operator+(int index) const { const_iterator n= *this; n.advancePoint(index); return n; } const_iterator operator-(int index) const { const_iterator n= *this; n.advancePoint(-index); return n; } - difference_type operator-(const_iterator o) const { QHULL_ASSERT(dimension()==o.dimension()); return (coordinates()-o.coordinates())/dimension(); } + difference_type operator-(const_iterator other) const { QHULL_ASSERT(dimension()==other.dimension()); return (coordinates()-other.coordinates())/dimension(); } };//QhullPoints::const_iterator #//IO @@ -212,13 +214,15 @@ public: class QhullPointsIterator { typedef QhullPoints::const_iterator const_iterator; + +private: #//Fields const QhullPoints *ps; const_iterator i; public: - QhullPointsIterator(const QhullPoints &o) : ps(&o), i(ps->constBegin()) {} - QhullPointsIterator &operator=(const QhullPoints &o) { ps = &o; i = ps->constBegin(); return *this; } + QhullPointsIterator(const QhullPoints &other) : ps(&other), i(ps->constBegin()) {} + QhullPointsIterator &operator=(const QhullPoints &other) { ps = &other; i = ps->constBegin(); return *this; } bool findNext(const QhullPoint &t); bool findPrevious(const QhullPoint &t); bool hasNext() const { return i != ps->constEnd(); } diff --git a/cpp/QhullQh.cpp b/cpp/QhullQh.cpp index aee151a..8311411 100644 --- a/cpp/QhullQh.cpp +++ b/cpp/QhullQh.cpp @@ -1,21 +1,22 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullQh.cpp#21 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullQh.cpp#22 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #//! QhullQh -- Qhull's global data structure, qhT, as a C++ class -#include <iostream> -#include <sstream> #include "QhullError.h" #include "QhullQh.h" #include "QhullStat.h" +#include <sstream> +#include <iostream> + using std::cerr; using std::string; using std::vector; diff --git a/cpp/QhullQh.h b/cpp/QhullQh.h index 16b1f8e..e74f328 100644 --- a/cpp/QhullQh.h +++ b/cpp/QhullQh.h @@ -1,21 +1,21 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullQh.h#15 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullQh.h#16 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #ifndef QHULLQH_H #define QHULLQH_H -#include <string> -#include <vector> - extern "C" { #include "../src/qhull_a.h" }; +#include <string> +#include <vector> + namespace orgQhull { #//defined here diff --git a/cpp/QhullRidge.h b/cpp/QhullRidge.h index d30aa9b..cc228d8 100644 --- a/cpp/QhullRidge.h +++ b/cpp/QhullRidge.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullRidge.h#18 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullRidge.h#19 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ @@ -13,12 +13,12 @@ #include "QhullVertex.h" #include "QhullVertexSet.h" #include "QhullFacet.h" -#include <ostream> - extern "C" { #include "../src/qhull_a.h" }; +#include <ostream> + namespace orgQhull { #//ClassRef diff --git a/cpp/QhullSet.h b/cpp/QhullSet.h index c9e2f8e..ee769cd 100644 --- a/cpp/QhullSet.h +++ b/cpp/QhullSet.h @@ -1,14 +1,20 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullSet.h#29 $$Change: 1087 $ -** $DateTime: 2009/11/22 23:02:55 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullSet.h#32 $$Change: 1114 $ +** $DateTime: 2009/12/12 13:49:07 $$Author: bbarber $ ** ****************************************************************************/ #ifndef QhullSet_H #define QhullSet_H +#include "QhullError.h" +extern "C" { + #include "../src/qhull_a.h" +}; + + #ifndef QHULL_NO_STL #include <vector> #endif @@ -17,12 +23,6 @@ #include <QtCore/QList> #endif -#include "QhullError.h" - -extern "C" { - #include "../src/qhull_a.h" -}; - namespace orgQhull { #//Type @@ -40,24 +40,26 @@ namespace orgQhull { //See: QhullPointSet, QhullLinkedList<T> class QhullSetBase { -#//Class objects and functions + private: +#//Fields -- + setT *qh_set; + +#//Class objects static setT s_empty_set; //! Workaround for no setT allocator. Used if setT* is NULL public: +#//Class methods static int count(const setT *set); - //s may be null + //s may be null static bool isEmpty(const setT *s) { return SETempty_(s); } -#//Fields -- -private: - setT *qh_set; -public: #//Constructors //! Copy constructor copies the pointer but not the set. Needed for return by value. QhullSetBase(const QhullSetBase &o) : qh_set(o.qh_set) {} explicit QhullSetBase(setT *s) : qh_set(s ? s : &s_empty_set) {} + ~QhullSetBase() {} private: //!disabled since memory allocation for QhullSet not defined @@ -91,14 +93,23 @@ protected: template <typename T> class QhullSet : public QhullSetBase { +private: +#//Fields -- see QhullSetBase + +#//Class objects + static setT s_empty_set; //! Workaround for no setT allocator. Used if setT* is NULL + public: -#//Types +#//Subtypes typedef T *iterator; typedef const T *const_iterator; typedef typename QhullSet<T>::iterator Iterator; typedef typename QhullSet<T>::const_iterator ConstIterator; -#//Fields -- see QhullSetBase +#//Class methods + static int count(const setT *set); + //s may be null + static bool isEmpty(const setT *s) { return SETempty_(s); } #//Constructors //Copy constructor copies pointer but not contents. Needed for return by value. @@ -124,6 +135,7 @@ public: #//Read-only -- see QhullSetBase for count(), empty(), isEmpty(), size() using QhullSetBase::count; + using QhullSetBase::isEmpty; // operator== defined for QhullSets of the same type bool operator==(const QhullSet<T> &other) const { return qh_setequal(getSetT(), other.getSetT()); } bool operator!=(const QhullSet<T> &other) const { return !operator==(other); } @@ -172,8 +184,12 @@ public: template <typename T> class QhullSetIterator { -#//Fields + +#//Subtypes typedef typename QhullSet<T>::const_iterator const_iterator; + +private: +#//Fields const_iterator i; const_iterator begin_i; const_iterator end_i; diff --git a/cpp/QhullStat.cpp b/cpp/QhullStat.cpp index 11dcd2c..952cc26 100644 --- a/cpp/QhullStat.cpp +++ b/cpp/QhullStat.cpp @@ -1,20 +1,20 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullStat.cpp#5 $$Change: 1045 $ -** $DateTime: 2009/08/22 21:30:33 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullStat.cpp#6 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #//! QhullStat -- Qhull's global data structure, statT, as a C++ class -#include <iostream> -#include <sstream> - #include "QhullError.h" #include "QhullStat.h" +#include <sstream> +#include <iostream> + using std::cerr; using std::string; using std::vector; diff --git a/cpp/QhullStat.h b/cpp/QhullStat.h index 9a0471b..7a638d1 100644 --- a/cpp/QhullStat.h +++ b/cpp/QhullStat.h @@ -1,21 +1,21 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullStat.h#7 $$Change: 1053 $ -** $DateTime: 2009/10/02 22:00:28 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullStat.h#8 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #ifndef QHULLSTAT_H #define QHULLSTAT_H -#include <string> -#include <vector> - extern "C" { #include "../src/qhull_a.h" }; +#include <string> +#include <vector> + namespace orgQhull { #//defined here @@ -25,15 +25,15 @@ namespace orgQhull { class QhullStat : public qhstatT { +private: +#//Fields (empty) -- POD type equivalent to qhstatT. No data or virtual members + public: -#//class methods - static void clearStatistics(); - #//Constants -#//Fields (empty) -- POD type equivalent to qhstatT. No data or virtual members +#//class methods + static void clearStatistics(); -public: #//constructor, assignment, destructor, invariant QhullStat(); ~QhullStat(); @@ -42,8 +42,8 @@ private: //!disable copy constructor and assignment QhullStat(const QhullStat &); QhullStat &operator=(const QhullStat &); - public: + #//Access };//class QhullStat diff --git a/cpp/QhullVertex.h b/cpp/QhullVertex.h index e312199..c743e7c 100644 --- a/cpp/QhullVertex.h +++ b/cpp/QhullVertex.h @@ -1,25 +1,24 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullVertex.h#21 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullVertex.h#22 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #ifndef QHULLVERTEX_H #define QHULLVERTEX_H -#include <ostream> - #include "UsingLibQhull.h" #include "QhullPoint.h" #include "QhullLinkedList.h" #include "QhullSet.h" - extern "C" { #include "../src/qhull_a.h" }; +#include <ostream> + namespace orgQhull { #//ClassRef @@ -43,6 +42,7 @@ namespace orgQhull { class QhullVertex { +private: #//Fields vertexT *qh_vertex; diff --git a/cpp/QhullVertexSet.h b/cpp/QhullVertexSet.h index 865142c..82761cc 100644 --- a/cpp/QhullVertexSet.h +++ b/cpp/QhullVertexSet.h @@ -1,18 +1,18 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/QhullVertexSet.h#4 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/QhullVertexSet.h#5 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #ifndef QHULLVERTEXSET_H #define QHULLVERTEXSET_H -#include <ostream> - #include "QhullSet.h" +#include <ostream> + namespace orgQhull { #//ClassRef @@ -27,13 +27,13 @@ namespace orgQhull { class QhullVertexSet : public QhullSet<QhullVertex> { -#//Fields private: +#//Fields Qhull *qhsettemp_qhull; //! For sets allocated with qh_settemp() bool qhsettemp_defined; //! Set was allocated with q_memalloc() -#//Constructor public: +#//Constructor //Conversion from setT* is not type-safe. Implicit conversion for void* to T explicit QhullVertexSet(setT *s) : QhullSet<QhullVertex>(s), qhsettemp_qhull(0), qhsettemp_defined(false) {} QhullVertexSet(int qhRunId, facetT *facetlist, setT *facetset, bool allfacets); diff --git a/cpp/RboxPoints.cpp b/cpp/RboxPoints.cpp index 2c18d6b..4c9c340 100644 --- a/cpp/RboxPoints.cpp +++ b/cpp/RboxPoints.cpp @@ -1,16 +1,16 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/RboxPoints.cpp#28 $$Change: 1100 $ -** $DateTime: 2009/12/06 22:53:01 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/RboxPoints.cpp#29 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ -#include <iostream> - #include "QhullError.h" #include "RboxPoints.h" +#include <iostream> + using std::cerr; using std::endl; using std::istream; diff --git a/cpp/RboxPoints.h b/cpp/RboxPoints.h index c379194..3678685 100644 --- a/cpp/RboxPoints.h +++ b/cpp/RboxPoints.h @@ -1,28 +1,27 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/RboxPoints.h#24 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/RboxPoints.h#25 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #ifndef RBOXPOINTS_H #define RBOXPOINTS_H -#include <istream> -#include <ostream> -#include <sstream> -#include <stdarg.h> -#include <string> -#include <vector> - -#include "PointCoordinates.h" #include "QhullPoint.h" - +#include "PointCoordinates.h" extern "C" { #include "../src/libqhull.h" }; +#include <stdarg.h> +#include <string> +#include <vector> +#include <istream> +#include <ostream> +#include <sstream> + namespace orgQhull { #//Types diff --git a/cpp/UsingLibQhull.h b/cpp/UsingLibQhull.h index 28c19d6..c4c6469 100644 --- a/cpp/UsingLibQhull.h +++ b/cpp/UsingLibQhull.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/UsingLibQhull.h#1 $$Change: 1107 $ -** $DateTime: 2009/12/07 21:05:37 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/UsingLibQhull.h#2 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ @@ -10,7 +10,6 @@ #define USINGlibqhull_H #include "QhullError.h" - extern "C" { #include "../src/libqhull.h" }; @@ -62,21 +61,14 @@ private: static int s_points_dimension; static int s_vertex_dimension; //! Default dimension (e.g., if Vertex::dimension() >= 16) -#//Class constants public: +#//Class constants static const int NOqhRunId= 0; //! qh_qh is not available static const int NOthrow= 1; //! Do not throw from maybeThrowQhullMessage static const int FACTORepsilon= 10; //! static const double DEFAULTdistanceEpsilon; //! ~DISTround*FACTORepsilon for unit cube static const double DEFAULTangleEpsilon; //! ~ANGLEround*FACTORepsilon for unit cube -#//Constructors - UsingLibQhull(Qhull *p); - UsingLibQhull(Qhull *p, int noThrow); - UsingLibQhull(int qhRunId); - ~UsingLibQhull(); - -public: #//Class members static void checkQhullMemoryEmpty(); static double currentAngleEpsilon(); @@ -102,6 +94,12 @@ public: static void unsetGlobalVertexDimension() { s_has_vertex_dimension= false; } static void unsetGlobals(); +#//Constructors + UsingLibQhull(Qhull *p); + UsingLibQhull(Qhull *p, int noThrow); + UsingLibQhull(int qhRunId); + ~UsingLibQhull(); + #//Methods bool defined() const { return my_qhull!=0; } void maybeThrowQhullMessage(int exitCode) const; diff --git a/cpp/functionObjects.h b/cpp/functionObjects.h index 9cf317e..e979b74 100644 --- a/cpp/functionObjects.h +++ b/cpp/functionObjects.h @@ -1,14 +1,16 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/functionObjects.h#2 $$Change: 995 $ -** $DateTime: 2009/02/14 14:02:01 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/functionObjects.h#4 $$Change: 1114 $ +** $DateTime: 2009/12/12 13:49:07 $$Author: bbarber $ ** ****************************************************************************/ #ifndef QHFUNCTIONOBJECTS_H #define QHFUNCTIONOBJECTS_H +#include <stdlib.h> // abs() + namespace orgQhull { #//Type diff --git a/cpp/qhulltest/Coordinates_test.cpp b/cpp/qhulltest/Coordinates_test.cpp index d589363..7ec085a 100644 --- a/cpp/qhulltest/Coordinates_test.cpp +++ b/cpp/qhulltest/Coordinates_test.cpp @@ -1,18 +1,19 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/Coordinates_test.cpp#11 $$Change: 1095 $ -** $DateTime: 2009/12/01 22:40:56 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/Coordinates_test.cpp#13 $$Change: 1116 $ +** $DateTime: 2009/12/13 22:31:48 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> #include "../road/RoadTest.h" // QT_VERSION -#include "Qhull.h" -#include "QhullError.h" #include "Coordinates.h" +#include "QhullError.h" #include "RboxPoints.h" +#include "Qhull.h" using std::cout; using std::endl; @@ -210,6 +211,10 @@ t_const_iterator() QVERIFY(i>=c.begin()); QVERIFY(i+1<=c.end()); QVERIFY(i+1>c.begin()); + Coordinates::iterator i2= c.begin(); + Coordinates::const_iterator i3(i2); + QCOMPARE(*i3, 1.0); + QCOMPARE(i3[1], 3.0); }//t_const_iterator void Coordinates_test:: diff --git a/cpp/qhulltest/PointCoordinates_test.cpp b/cpp/qhulltest/PointCoordinates_test.cpp index 2856260..482b5a8 100644 --- a/cpp/qhulltest/PointCoordinates_test.cpp +++ b/cpp/qhulltest/PointCoordinates_test.cpp @@ -1,18 +1,19 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/PointCoordinates_test.cpp#7 $$Change: 1094 $ -** $DateTime: 2009/11/24 20:04:16 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/PointCoordinates_test.cpp#11 $$Change: 1118 $ +** $DateTime: 2009/12/20 16:19:59 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> #include "../road/RoadTest.h" // QT_VERSION -#include "Qhull.h" -#include "QhullError.h" #include "PointCoordinates.h" +#include "QhullError.h" #include "RboxPoints.h" +#include "Qhull.h" using std::cout; using std::endl; @@ -37,6 +38,7 @@ private slots: void t_search(); void t_modify(); void t_append_points(); + void t_coord_iterator(); void t_io(); };//PointCoordinates_test @@ -201,12 +203,11 @@ t_foreach() i= pc.end(); QCOMPARE(i[-1], p3); const PointCoordinates pc2(2, "2-d points", 6, c); - // QhullPoints::ConstIterator i2= pc.begin(); // g++ error, begin() returns iterator - QhullPoints::ConstIterator i2= pc2.begin(); + QhullPoints::ConstIterator i2= pc.begin(); const QhullPoint p0= pc2[0]; QCOMPARE(*i2, p0); QCOMPARE((*i2)[0], 0.0); - QhullPoints::ConstIterator i3= pc2.constBegin(); + QhullPoints::ConstIterator i3= i2; QCOMPARE(i3, i2); QCOMPARE((*i3)[0], 0.0); i3= pc.constEnd(); @@ -319,6 +320,63 @@ t_append_points() QCOMPARE(pc.count(), 3); }//t_append_points +void PointCoordinates_test:: +t_coord_iterator() +{ + PointCoordinates c(2); + c << 0.0 << 1.0 << 2.0 << 3.0 << 4.0 << 5.0; + PointCoordinatesIterator i(c); + QhullPoint p0(c[0]); + QhullPoint p1(c[1]); + QhullPoint p2(c[2]); + coordT c2[] = {-1.0, -2.0}; + QhullPoint p3(2, c2); + PointCoordinatesIterator i2= c; + QVERIFY(i.findNext(p1)); + QVERIFY(!i.findNext(p1)); + QVERIFY(!i.findNext(p2)); + QVERIFY(!i.findNext(p3)); + QVERIFY(i.findPrevious(p2)); + QVERIFY(!i.findPrevious(p2)); + QVERIFY(!i.findPrevious(p0)); + QVERIFY(!i.findPrevious(p3)); + QVERIFY(i2.findNext(p2)); + QVERIFY(i2.findPrevious(p0)); + QVERIFY(i2.findNext(p1)); + QVERIFY(i2.findPrevious(p0)); + QVERIFY(i2.hasNext()); + QVERIFY(!i2.hasPrevious()); + QVERIFY(i.hasNext()); + QVERIFY(!i.hasPrevious()); + i.toBack(); + i2.toFront(); + QVERIFY(!i.hasNext()); + QVERIFY(i.hasPrevious()); + QVERIFY(i2.hasNext()); + QVERIFY(!i2.hasPrevious()); + PointCoordinates c3; + PointCoordinatesIterator i3= c3; + QVERIFY(!i3.hasNext()); + QVERIFY(!i3.hasPrevious()); + i3.toBack(); + QVERIFY(!i3.hasNext()); + QVERIFY(!i3.hasPrevious()); + QCOMPARE(i.peekPrevious(), p2); + QCOMPARE(i.previous(), p2); + QCOMPARE(i.previous(), p1); + QCOMPARE(i.previous(), p0); + QVERIFY(!i.hasPrevious()); + QCOMPARE(i.peekNext(), p0); + // i.peekNext()= 1.0; // compiler error + QCOMPARE(i.next(), p0); + QCOMPARE(i.peekNext(), p1); + QCOMPARE(i.next(), p1); + QCOMPARE(i.next(), p2); + QVERIFY(!i.hasNext()); + i.toFront(); + QCOMPARE(i.next(), p0); +}//t_coord_iterator + void PointCoordinates_test:: t_io() { diff --git a/cpp/qhulltest/QhullFacetList_test.cpp b/cpp/qhulltest/QhullFacetList_test.cpp index 75263d1..3c4ded5 100644 --- a/cpp/qhulltest/QhullFacetList_test.cpp +++ b/cpp/qhulltest/QhullFacetList_test.cpp @@ -1,19 +1,20 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullFacetList_test.cpp#11 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullFacetList_test.cpp#12 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> #include "../road/RoadTest.h" // QT_VERSION -#include "Qhull.h" +#include "QhullFacetList.h" #include "QhullError.h" #include "QhullFacet.h" -#include "QhullFacetList.h" #include "QhullVertexSet.h" +#include "Qhull.h" using std::cout; using std::endl; diff --git a/cpp/qhulltest/QhullFacetSet_test.cpp b/cpp/qhulltest/QhullFacetSet_test.cpp index fcbda0e..c0e35bf 100644 --- a/cpp/qhulltest/QhullFacetSet_test.cpp +++ b/cpp/qhulltest/QhullFacetSet_test.cpp @@ -1,18 +1,19 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullFacetSet_test.cpp#8 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullFacetSet_test.cpp#9 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> #include "../road/RoadTest.h" // FIXUP First for QHULL_USES_QT -#include "Qhull.h" +#include "QhullFacetSet.h" #include "QhullError.h" #include "QhullFacet.h" -#include "QhullFacetSet.h" +#include "Qhull.h" using std::cout; using std::endl; diff --git a/cpp/qhulltest/QhullFacet_test.cpp b/cpp/qhulltest/QhullFacet_test.cpp index c8f1b67..5424391 100644 --- a/cpp/qhulltest/QhullFacet_test.cpp +++ b/cpp/qhulltest/QhullFacet_test.cpp @@ -1,24 +1,24 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullFacet_test.cpp#26 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullFacet_test.cpp#27 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> #include "../road/RoadTest.h" #include "QhullFacet.h" - -#include "Coordinates.h" -#include "Qhull.h" #include "QhullError.h" +#include "Coordinates.h" +#include "RboxPoints.h" #include "QhullFacetList.h" #include "QhullFacetSet.h" #include "QhullPointSet.h" #include "QhullRidge.h" -#include "RboxPoints.h" +#include "Qhull.h" using std::cout; using std::endl; diff --git a/cpp/qhulltest/QhullHyperplane_test.cpp b/cpp/qhulltest/QhullHyperplane_test.cpp index 6c7e544..d1ee25c 100644 --- a/cpp/qhulltest/QhullHyperplane_test.cpp +++ b/cpp/qhulltest/QhullHyperplane_test.cpp @@ -1,25 +1,23 @@ /**************************************************************************** ** ** Copyright (C) 2009-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullHyperplane_test.cpp#6 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullHyperplane_test.cpp#7 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> #include <vector> - #include "../road/RoadTest.h" -#include <numeric> // After RoadTest.h for precompiled headers - #include "QhullHyperplane.h" - -#include "Qhull.h" #include "QhullError.h" +#include "RboxPoints.h" #include "QhullFacet.h" #include "QhullFacetList.h" -#include "RboxPoints.h" +#include "Qhull.h" +#include <numeric> using std::cout; using std::endl; @@ -94,6 +92,7 @@ t_convert() double offset= fs.back(); fs.pop_back(); QCOMPARE(offset, -0.5); + double squareNorm= inner_product(fs.begin(), fs.end(), fs.begin(), 0.0); QCOMPARE(squareNorm, 1.0); QList<double> qs= h.toQList(); diff --git a/cpp/qhulltest/QhullLinkedList_test.cpp b/cpp/qhulltest/QhullLinkedList_test.cpp index 0653d5e..1688fee 100644 --- a/cpp/qhulltest/QhullLinkedList_test.cpp +++ b/cpp/qhulltest/QhullLinkedList_test.cpp @@ -1,11 +1,12 @@ /**************************************************************************** ** ** Copyright (f) 2009-2009 f. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullLinkedList_test.cpp#10 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullLinkedList_test.cpp#11 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <QtCore/QList> #include "../road/RoadTest.h"// FIXUP First for QHULL_USES_QT diff --git a/cpp/qhulltest/QhullPointSet_test.cpp b/cpp/qhulltest/QhullPointSet_test.cpp index 2f94b24..d688079 100644 --- a/cpp/qhulltest/QhullPointSet_test.cpp +++ b/cpp/qhulltest/QhullPointSet_test.cpp @@ -1,21 +1,21 @@ /**************************************************************************** ** ** Copyright (p) 2009-2009 p. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullPointSet_test.cpp#4 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullPointSet_test.cpp#5 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled header #include <iostream> #include "../road/RoadTest.h" // QT_VERSION #include "QhullPointSet.h" - -#include "Qhull.h" +#include "RboxPoints.h" +#include "QhullPoint.h" #include "QhullFacet.h" #include "QhullFacetList.h" -#include "QhullPoint.h" -#include "RboxPoints.h" +#include "Qhull.h" using std::cout; using std::endl; diff --git a/cpp/qhulltest/QhullPoint_test.cpp b/cpp/qhulltest/QhullPoint_test.cpp index 0a7766c..a824d6a 100644 --- a/cpp/qhulltest/QhullPoint_test.cpp +++ b/cpp/qhulltest/QhullPoint_test.cpp @@ -1,23 +1,24 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullPoint_test.cpp#10 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullPoint_test.cpp#11 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> -#include <numeric> #include "../road/RoadTest.h" #include "QhullPoint.h" - #include "Coordinates.h" -#include "Qhull.h" +#include "RboxPoints.h" #include "QhullError.h" #include "QhullFacet.h" #include "QhullPoint.h" -#include "RboxPoints.h" +#include "Qhull.h" + +#include <numeric> using std::cout; using std::endl; diff --git a/cpp/qhulltest/QhullPoints_test.cpp b/cpp/qhulltest/QhullPoints_test.cpp index 666e602..f502b0a 100644 --- a/cpp/qhulltest/QhullPoints_test.cpp +++ b/cpp/qhulltest/QhullPoints_test.cpp @@ -1,18 +1,18 @@ /**************************************************************************** ** ** Copyright (p) 2009-2009 p. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullPoints_test.cpp#13 $$Change: 1107 $ -** $DateTime: 2009/12/07 21:05:37 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullPoints_test.cpp#14 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled header #include <iostream> #include "../road/RoadTest.h" // QT_VERSION #include "QhullPoints.h" - -#include "Qhull.h" #include "RboxPoints.h" +#include "Qhull.h" using std::cout; using std::endl; diff --git a/cpp/qhulltest/QhullRidge_test.cpp b/cpp/qhulltest/QhullRidge_test.cpp index ca0b0e2..177cd93 100644 --- a/cpp/qhulltest/QhullRidge_test.cpp +++ b/cpp/qhulltest/QhullRidge_test.cpp @@ -1,20 +1,20 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullRidge_test.cpp#7 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullRidge_test.cpp#8 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> #include "../road/RoadTest.h" #include "QhullRidge.h" - -#include "Qhull.h" #include "QhullError.h" -#include "QhullFacet.h" #include "RboxPoints.h" +#include "QhullFacet.h" +#include "Qhull.h" using std::cout; using std::endl; diff --git a/cpp/qhulltest/QhullSet_test.cpp b/cpp/qhulltest/QhullSet_test.cpp index 8ab9bac..31ee344 100644 --- a/cpp/qhulltest/QhullSet_test.cpp +++ b/cpp/qhulltest/QhullSet_test.cpp @@ -1,17 +1,18 @@ /**************************************************************************** ** ** Copyright (f) 2009-2009 f. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullSet_test.cpp#15 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullSet_test.cpp#16 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> #include <QtCore/QList> #include "../road/RoadTest.h" // QT_VERSION -#include "Qhull.h" #include "QhullFacetSet.h" +#include "Qhull.h" using std::cout; using std::endl; diff --git a/cpp/qhulltest/QhullVertex_test.cpp b/cpp/qhulltest/QhullVertex_test.cpp index b201a55..cbc697b 100644 --- a/cpp/qhulltest/QhullVertex_test.cpp +++ b/cpp/qhulltest/QhullVertex_test.cpp @@ -1,23 +1,22 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullVertex_test.cpp#7 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/QhullVertex_test.cpp#8 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ - +//pre-compiled headers #include <iostream> #include "../road/RoadTest.h" #include "QhullVertex.h" - #include "Coordinates.h" -#include "Qhull.h" #include "QhullError.h" +#include "RboxPoints.h" #include "QhullFacet.h" #include "QhullFacetSet.h" #include "QhullVertexSet.h" -#include "RboxPoints.h" +#include "Qhull.h" using std::cout; using std::endl; diff --git a/cpp/qhulltest/Qhull_test.cpp b/cpp/qhulltest/Qhull_test.cpp index dc19d68..2300b71 100644 --- a/cpp/qhulltest/Qhull_test.cpp +++ b/cpp/qhulltest/Qhull_test.cpp @@ -1,18 +1,19 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/Qhull_test.cpp#32 $$Change: 1102 $ -** $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/Qhull_test.cpp#33 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> #include "../road/RoadTest.h" // QT_VERSION #include "Qhull.h" #include "QhullError.h" -#include "QhullFacetList.h" #include "RboxPoints.h" +#include "QhullFacetList.h" using std::cout; using std::endl; diff --git a/cpp/qhulltest/RboxPoints_test.cpp b/cpp/qhulltest/RboxPoints_test.cpp index 19b3bfa..63f73a8 100644 --- a/cpp/qhulltest/RboxPoints_test.cpp +++ b/cpp/qhulltest/RboxPoints_test.cpp @@ -1,16 +1,16 @@ /**************************************************************************** ** ** Copyright (C) 2006-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/RboxPoints_test.cpp#14 $$Change: 1096 $ -** $DateTime: 2009/12/04 21:52:01 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/RboxPoints_test.cpp#16 $$Change: 1114 $ +** $DateTime: 2009/12/12 13:49:07 $$Author: bbarber $ ** ****************************************************************************/ - +//pre-compiled headers #include <iostream> #include "../road/RoadTest.h" // QT_VERSION -#include "QhullError.h" #include "RboxPoints.h" +#include "QhullError.h" using std::cout; using std::endl; @@ -153,10 +153,11 @@ t_foreach() } QVERIFY(++ci==rp.endCoordinates()); QCOMPARE(i, 8*3); - orgQhull::Coordinates::ConstIterator cci4= rp.beginCoordinates(4); orgQhull::Coordinates::Iterator ci4= rp.beginCoordinates(4); - QCOMPARE(rp.endCoordinates()-cci4, 4*3); QCOMPARE(rp.endCoordinates()-ci4, 4*3); + orgQhull::Coordinates::ConstIterator cci4= rp.beginCoordinates(4); + orgQhull::Coordinates::ConstIterator cci5= rp.endCoordinates(); + QCOMPARE(cci5-cci4, 4*3); }//t_foreach void RboxPoints_test:: diff --git a/cpp/qhulltest/UsingLibQhull_test.cpp b/cpp/qhulltest/UsingLibQhull_test.cpp index e182002..53855f7 100644 --- a/cpp/qhulltest/UsingLibQhull_test.cpp +++ b/cpp/qhulltest/UsingLibQhull_test.cpp @@ -1,17 +1,18 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/UsingLibQhull_test.cpp#1 $$Change: 1107 $ -** $DateTime: 2009/12/07 21:05:37 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/UsingLibQhull_test.cpp#2 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> #include "../road/RoadTest.h" // QT_VERSION -#include "Qhull.h" -#include "QhullError.h" #include "UsingLibQhull.h" +#include "QhullError.h" +#include "Qhull.h" using std::cout; using std::endl; diff --git a/cpp/qhulltest/qhulltest.cpp b/cpp/qhulltest/qhulltest.cpp index 5a76692..43dcea7 100644 --- a/cpp/qhulltest/qhulltest.cpp +++ b/cpp/qhulltest/qhulltest.cpp @@ -1,18 +1,19 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/qhulltest/qhulltest.cpp#47 $$Change: 1107 $ -** $DateTime: 2009/12/07 21:05:37 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/qhulltest/qhulltest.cpp#50 $$Change: 1118 $ +** $DateTime: 2009/12/20 16:19:59 $$Author: bbarber $ ** ****************************************************************************/ -#include "../road/RoadTest.h" // Before RoadError.h for precompiled headers -#include "../road/RoadError.h" - +//pre-compiled headers #include <iostream> #include <sstream> #include <string> #include <stdexcept> +#include "../road/RoadTest.h" + +#include "../road/RoadError.h" using std::cout; using std::endl; @@ -21,7 +22,7 @@ namespace orgQhull { void addQhullTests(QStringList &args) { - TESTadd_(add_QhullPoints_test); //copy + TESTadd_(add_PointCoordinates_test); //copy if(args.contains("--all")){ args.removeAll("--all"); diff --git a/cpp/road/RoadError.cpp b/cpp/road/RoadError.cpp index a85acd2..3cbb0f5 100644 --- a/cpp/road/RoadError.cpp +++ b/cpp/road/RoadError.cpp @@ -1,20 +1,20 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/road/RoadError.cpp#12 $$Change: 1100 $ -** $DateTime: 2009/12/06 22:53:01 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/road/RoadError.cpp#13 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #//! RoadError -- All exceptions thrown by Qhull are RoadErrors #//! Do not throw RoadError's from destructors. Use e.logError() instead. -#include <iostream> -#include <sstream> -#include <string> - #include "RoadError.h" +#include <string> +#include <sstream> +#include <iostream> + using std::cerr; using std::cout; using std::string; diff --git a/cpp/road/RoadError.h b/cpp/road/RoadError.h index c64d209..c45c5b5 100644 --- a/cpp/road/RoadError.h +++ b/cpp/road/RoadError.h @@ -1,8 +1,8 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/road/RoadError.h#15 $$Change: 1096 $ -** $DateTime: 2009/12/04 21:52:01 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/road/RoadError.h#16 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ @@ -29,15 +29,15 @@ namespace orgQhull { class RoadError : public std::exception { private: -#//Class fields - static const char * ROADtag; - static std::ostringstream global_log; //! May be replaced with any ostream object - #//Fields int error_code; //! Non-zero code (not logged), maybe returned as program status RoadLogEvent log_event; //! Format string w/ arguments mutable std::string error_message; //! Formated error message. Must be after log_event. +#//Class fields + static const char * ROADtag; + static std::ostringstream global_log; //! May be replaced with any ostream object + public: #//Constants diff --git a/cpp/road/RoadLogEvent.cpp b/cpp/road/RoadLogEvent.cpp index 7c1b26b..31b56d8 100644 --- a/cpp/road/RoadLogEvent.cpp +++ b/cpp/road/RoadLogEvent.cpp @@ -1,19 +1,19 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/road/RoadLogEvent.cpp#8 $$Change: 1053 $ -** $DateTime: 2009/10/02 22:00:28 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/road/RoadLogEvent.cpp#9 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #//! RoadError -- All exceptions thrown by Qhull are RoadErrors -#include <iostream> -#include <sstream> -#include <string> - #include "RoadError.h" +#include <string> +#include <sstream> +#include <iostream> + using std::cout; using std::endl; using std::ostringstream; diff --git a/cpp/road/RoadTest.cpp b/cpp/road/RoadTest.cpp index 9a9bced..2f7fd93 100644 --- a/cpp/road/RoadTest.cpp +++ b/cpp/road/RoadTest.cpp @@ -1,14 +1,14 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/road/RoadTest.cpp#8 $$Change: 1057 $ -** $DateTime: 2009/10/22 20:38:42 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/road/RoadTest.cpp#9 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ +//pre-compiled headers #include <iostream> #include <stdexcept> - #include "../road/RoadTest.h" using std::cout; diff --git a/cpp/road/RoadTest.h b/cpp/road/RoadTest.h index 9a478da..4a3e5f7 100644 --- a/cpp/road/RoadTest.h +++ b/cpp/road/RoadTest.h @@ -1,14 +1,15 @@ /**************************************************************************** ** ** Copyright (C) 2008-2009 C. Bradford Barber. All rights reserved. -** $Id: //product/qhull/main/rel/cpp/road/RoadTest.h#11 $$Change: 1097 $ -** $DateTime: 2009/12/04 21:54:00 $$Author: bbarber $ +** $Id: //product/qhull/main/rel/cpp/road/RoadTest.h#12 $$Change: 1111 $ +** $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ ** ****************************************************************************/ #ifndef ROADTEST_H #define ROADTEST_H +//pre-compiled with RoadTest.h #include <QObject> #include <QtTest/QtTest> diff --git a/cpp/user_eg3.cpp b/cpp/user_eg3.cpp index ea2325e..9957a02 100644 --- a/cpp/user_eg3.cpp +++ b/cpp/user_eg3.cpp @@ -1,16 +1,16 @@ #//! user_eg3.cpp -- Invoke rbox and qhull from C++ -#include <cstdio> /* for printf() of help message */ -#include <ostream> - #include "RboxPoints.h" -#include "Qhull.h" #include "QhullError.h" +#include "QhullQh.h" #include "QhullFacet.h" #include "QhullFacetList.h" #include "QhullLinkedList.h" -#include "QhullQh.h" #include "QhullVertex.h" +#include "Qhull.h" + +#include <cstdio> /* for printf() of help message */ +#include <ostream> using std::cerr; using std::cin; diff --git a/html/trolltech2.rtf b/html/trolltech2.rtf new file mode 100644 index 0000000..c181751 --- /dev/null +++ b/html/trolltech2.rtf @@ -0,0 +1,335 @@ +{\rtf1\ansi\ansicpg1252\deff0\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}{\f1\fnil\fcharset0 Tahoma;}{\f2\fnil\fprq1\fcharset0 Courier New;}{\f3\fnil\fprq1\fcharset0 Lucida Console;}{\f4\fswiss Arial;}{\f5\fswiss\fcharset0 Arial;}{\f6\froman\fcharset0 Times New Roman;}} +{\colortbl ;\red255\green0\blue0;\red0\green0\blue255;\red1\green0\blue1;\red0\green128\blue0;\red163\green21\blue21;\red0\green0\blue165;} +{\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\nowidctlpar\f0\fs20 Problems with Qt 4.5.2. documentation Qt 4.4.3 and Thid\par +Christrine and Joanna\par +\par +----\par +Creator\par +\par +Integrate with QTestLib\par +\par +-------\par +/git/bin/ssh-keygen does not work under MSYS\par +\par +------\par +Qt 4.6.0\par +\par +If QTDIR set in qtvars but not system environment, get\par +\par +-----\par +Did not update qhulltest.vcproj after installing a new version.\par +\par +Depends reports\par +\pard \cf1\b\f1\fs17 Error: The Side-by-Side configuration information for "c:\\qt\\4.6.0\\bin\\MOC.EXE" contains errors. This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem (14001).\par +\pard\nowidctlpar\cf0\b0\f0\fs20\par +\par +\f2\fs16 Moc'ing RboxPoints_test.cpp...\par +The system cannot execute the specified program.\par +Project : error PRJ0019: A tool returned an error code from "Moc'ing RboxPoints_test.cpp..."\par +\f0\fs20\par +\f2\fs16 WARNING: Can't find the Qt version that's associated with this project. Defaulting to 4.6.0 instead.\par +\f0\fs20\par +qhulltest.vcproj\par +\tab <Globals>\par +\tab\tab <Global\par +\tab\tab\tab Name="QtVersion"\par +\tab\tab\tab Value="4.5.2"\par +\tab\tab />\par +\tab\tab <Global\par +\tab\tab\tab Name="QtVersion Win32"\par +\tab\tab\tab Value="4.5.3"\par +\tab\tab />\par +\tab </Globals>\par +--------------\par +git\par +\par +exclude ConvexHull/* included the ConvexHull directory? Not tmp/* or cpp/unused/*\par +\par +What does D mean? Why not these files?\par +ISPY-/local/qhull/html> git checkout next\par +D File_id.diz\par +D QHULL-GO.pif\par +D eg/Qhull-go.bat\par +D eg/q_eg\par +D eg/q_egtest\par +D eg/q_test\par +D eg/q_test.bat\par +D html/qh--4d.gif\par +D html/qh--cone.gif\par +D html/qh--dt.gif\par +D html/qh--geom.gif\par +D html/qh--half.gif\par +D html/qh--rand.gif\par +D html/rbox.htm\par +D html/rbox.man\par +D html/rbox.txt\par +Switched to branch 'next'\par +\par +--\par +cd qhull3.0\par +164 git init\par +165 git add .\par +166 git commit\par +167 git config --global user.name bbarber\par +168 git config --global user.email bradb@shore.net\par +169 mv .git ../qhull3.1\par +170 cd ../qhull3.1\par +171 git add .\par +172 git commit -a\par +173 cd ../qhull2002.1\par +174 mv ../qhull3.1/.git .\par +175 git add .\par +176 git commit -a\par +177 mv .git ../qhull-2003.1/\par +178 cd ../qhull-2003.1/\par +179 git add .\par +180 git commit -a\par +git branch next\par +191 git checkout next\par +192 git status\par +193 git add .\par +194 git commit -a\par +195 git add .\par +196 git commit -a\par +197 git log --stat --summary\par +git remote add origin git@gitorious.org:qhull/qhull.git\par +\par +On CMD\par +/qt/git/bin\par +./sh\par +PATH=/bin:$PATH\par +ssh-agent \par +SSH_AUTH_SOCK=/tmp/ssh-JeBcgds488/agent.488; export SSH_AUTH_SOCK;\par +SSH_AGENT_PID=5252; export SSH_AGENT_PID;\par +echo Agent pid 5252;\par +ssh-add c:/bash/home/bbarber/.ssh/bradb@shore.net-091205\par +\par +On bash\par +export SSH_AUTH_SOCK=c:/qt/git/tmp/ssh-JeBcgds488/agent.488;\par +git push origin master\par +git push origin next\par +\par +e .git/info/exclude\par +html/trolltech.rtf\par +ConvexHull\par +ConvexHull/*\par +cpp/unused/*\par +news/*\par +qtpro/*/Makefile*\par +qtpro/*/object_script*\par +tmp/*\par +\par +# Executables\par +*.a\par +*.dll\par +*.exe\par +\par +# DevStudio files\par +*.bsc\par +*.ncb\par +*.pdb\par +*.suo\par +\par +# Data files\par +*.off\par +*.x\par +\par +\par +-----\par +\f3 ** Change to static link library before shipping, or define Qt for static linking.\par +\f0\par +-----\par +\pard\f4 4) No complaints if qhull.pro has 'CONFIG += debug', but the command line adds 'release'.\f5 It should be debug_and_release\par +\par +\f4 Running build steps for project qhull...\par +Starting: c:/qt/2009.05/qt/bin/qmake.exe C:/bash/local/qhull/qtpro/qhull/qhull.pro -spec win32-g++ -r CONFIG+=release \par +Exited with code 0.\par +Starting: C:/Qt/2009.05/mingw/bin/mingw32-make.exe -w \par +mingw32-make: Entering directory `C:/bash/local/qhull/qtpro/qhull'\par +C:/Qt/2009.05/mingw/bin/mingw32-make -f Makefile.Debug\par +mingw32-make[1]: Entering directory `C:/bash/local/qhull/qtpro/qhull'\par +mingw32-make[1]: Nothing to be done for `first'.\par +mingw32-make[1]: Leaving directory `C:/bash/local/qhull/qtpro/qhull'\par +mingw32-make: Leaving directory `C:/bash/local/qhull/qtpro/qhull'\par +Exited with code 0.\par +\par +\f5 --------\par +\f4 'Handling external libraries' has a bad URL to 'Declaring other Libraries\par +\par +Why does the make file call both gcc and g++. These appear to be the same in mingw, but is that necessarily so?\par +\par +gcc -c -g -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I"c:\\Qt\\2009.05\\qt\\include\\QtCore" -I"c:\\Qt\\2009.05\\qt\\include" -I"c:\\Qt\\2009.05\\qt\\include\\ActiveQt" -I"..\\..\\tmp\\moc" -I"c:\\Qt\\2009.05\\qt\\mkspecs\\win32-g++" -o ..\\..\\tmp\\obj\\usermem.o ..\\..\\src\\usermem.c\par +g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -mthreads -Wl -shared -Wl,--out-implib,..\\..\\tmp\\lib\\..\\..\\\\libqhull.a -o ..\\..\\qhull.dll object_script.qhull.Debug -L"c:\\Qt\\2009.05\\qt\\lib" -lQtCored4\par +Creating library file: ..\\..\\tmp\\lib\\..\\..\\\\libqhull.a\par +\par +\f5 ------\par +Executable is not relative to $BUILDDIR in qtcreator 'Could not find the executable". It is relative to QTDIR/.. instead\f4\par +\pard\nowidctlpar\f0\par +\par +-----\par +Qhull users on 'const' and warn64\par +\par +-------\par +\f3 - Ask Jim and Andy about operator<<\par + - Note to Jim Frost on coding conventions\par +\f0\par +-----\par +\f3 Style &*r.Coordinates() -- Search Qt\par +\par +\f0 -----\par +Find python program for counters. Change user.h to last code instead of next. When were error codes added? Put into changes.txt\par +\par +----\par +Options->Text Editor->File Formats->XML -- Review formating options\par +\par +---\par +#def symbol for QT_VERSION\par +\par +---\par +\cf2\f3 How to\par + using\cf0 \cf3 orgQhull\cf0 ::\cf3 QhullVertexSet::PrintVertexSet\cf0 ;\par +\par +\f2\fs16 ..\\cpp\\QhullVertex.cpp(46) : error C2885: 'orgQhull::QhullVertexSet::PrintVertexSet': not a valid using-declaration at non-class scope\par +\f3\fs20\par +\f0 ---\par +Why does moving operator<< into orgQhull cause errors for RboxPoints_test?\par +\par +\pard\sb100\sa100\f6\fs24 ------\par +C++, why does \f3\fs20 \cf4 //friend std::ostream & operator<<(std::ostream &os, Point &p);\par +\cf0\f6\fs24 in point.h cause operator<< to fail for Points and QhullFacet? Is the friend in orgQhull hide the operator in global?\par +-----\par +Add documentation 'Initializing References' in 'Initializers[C++]' . Tricky rules\par +----\par +next, previous, peekPrevious, and peekNext returns an iterator [typedef'd as 'Item' in qiterator.h], but the documented signature is T&. How is the conversion done?\f2\fs16 \f6\fs24\par +----\par +What is role of operator=?\par +----\par +Need to count XPASSs per testcase. These need fixing in the test code. Otherwise hidden in log. (QEXPECTED_FAIL)\par +---\par +Can you use ostream<<FacetList to write to a QString? \par +---\par +QFIXUP(int, message) for messages into the test log. Need callback or count of each type\par +Workaround\par +\f3\fs20 \cf3 QEXPECT_FAIL\cf0 (0,\cf5 "toQList for QhullFacetList"\cf0 , \cf3 QTest\cf0 ::\cf3 Continue\cf0 );\par + \cf3 QCOMPARE\cf0 (\cf3 fs2\cf0 .\cf3 count\cf0 (),6);\par +\cf2 ----\par +Can not conditional compile a member function e.g., QHullFacetSet.toStdVector. So a library needs to know all includes.\par +toQList must be defined outside of class.\par +toQLIst(QHullFacet)\par +qhullcpp includes\par +"..\\..\\4.3.0\\include\\QtCore","..\\..\\4.3.0\\include\\QtCore","..\\..\\4.3.0\\include\\QtGui","..\\..\\4.3.0\\include\\QtGui","..\\..\\4.3.0\\include","..\\..\\4.3.0\\include\\QtTest","..\\src","..\\..\\4.3.0\\include\\ActiveQt","moc","uic_h",".",..\\..\\4.3.0\\mkspecs\\win32-msvc2005\par +Qhulltest includes\par +.,..\\cpp,..\\..\\cpp,..\\src,..\\..\\src,..\\tmp,..\\..\\tmp,"\\qt\\4.3.0\\include\\QtCore","\\qt\\4.3.0\\include\\QtGui","\\qt\\4.3.0\\include","\\qt\\4.3.0\\include\\QtTest","\\qt\\4.3.0\\include\\ActiveQt",\\qt\\4.3.0\\mkspecs\\win32-msvc2005\par +How does template instantiation know when to define a function and where. Is the same rule for globals as members?\par +Can you specialize a templated base class or does the declaration need to be specialized as well? Can not specialize a templated base class. The specialization has to occur before declaring the derived class, but need the derived class to implement the specialization\par +#\cf4 //Conversion \par +#//ClassRefs before //Types\par +\cf0 \cf3 std\cf0 ::\cf3 vector\cf0 <\cf3 QhullVertex\cf0 > \cf3 vertices_toStdVector\cf0 () \cf2 const\cf0 ;\par +\cf4 How to use precompiled headers with Qt\par +Need QSTOP or QBREAK to cancel a test\par +'\cf6\f2\fs16 scalar deleting destructor' What does this mean in calling ~QhullQh from ~Qhull\cf4\f3\fs20\par +copy assignment needed for vector<T> \par +\cf2 #ifndef\cf0 \cf3 QT_NO_STL\par +std\cf0 ::\cf3 vector\cf0 <\cf3 QhullFacet\cf0 > \cf3 QhullFacetSet\cf0 ::\par +\cf3 toStdVector\cf0 () \cf2 const\par +\cf0\{\par + \cf3 QhullFacetSetIterator\cf0 \cf3 i\cf0 (*\cf2 this\cf0 );\par + \cf3 std\cf0 ::\cf3 vector\cf0 <\cf3 QhullFacet\cf0 > \cf3 vs\cf0 ;\par + \cf3 vs\cf0 .\cf3 reserve\cf0 (\cf3 i\cf0 .\cf3 countRemaining\cf0 ());\par + \cf2 while\cf0 (\cf3 i\cf0 .\cf3 hasNext\cf0 ())\{\par + \cf3 vs\cf0 .\cf3 push_back\cf0 (\cf3 i\cf0 .\cf3 next\cf0 ());\par + \}\par + \cf2 return\cf0 \cf3 vs\cf0 ;\par +\}\cf4 //toStdVector\par +\cf2 #endif\par +\par +\cf0\f6\fs24\par +---\par +Highlights 'operator' as misspelled\par +\f3\fs20 \cf2 using\cf0 \cf3 Point\cf0 ::\cf2 operator\cf0 [];\par +\f6\fs24 ---------\par +Gotcha\par +\f3\fs20 \cf3 Point\cf0 \cf3 p2\cf0 ();\par + \cf3 QVERIFY\cf0 (\cf3 p2\cf0 ==\cf3 p\cf0 );\par +\f2\fs16 ..\\cpp\\qhulltest\\Point_test.cpp(62) : error C2679: binary '==' : no operator found which takes a right-hand operand of type 'orgQhull::Point' (or there is no acceptable conversion)\par +\f6\fs24 ---\par + <no include file>\par + \cf3\f3\fs20 QHULL_DECLARE_SEQUENTIAL_ITERATOR\cf0 (\cf3 Point\cf0 , \cf3 coordT\cf0 )\par +\f2\fs16 c:\\bash\\local\\qhull\\cpp\\Point.h(137) : error C4430: missing type specifier - int assumed.\par +\pard\nowidctlpar\f0\fs20 ----\par +Use an extra space '\f3 : ' in initializer lists\par +\f0\par +============================\par +== Qt newsletter\par +============================\par +\par +QLineEdit\par +QToolBox\par +http://www.froglogic.com/freeware/\par +missed a Taste of Qt 4\par +See http://doc.trolltech.com/ 3.3/activeqt-dotnet.html for details.\par +For more information about using precompiled headers, see http://doc.trolltech.com/3.3/qmake-manual-7.html.\par +add defrag for paging file\par +\par +mssing\par +file://localhost/C:/download/Qt Quarterly/qq11-events.html\par +\par +============================\par +== DevStudio notes\par +============================\par +\par +\pard\keepn\sb100\sa100 DevStudio8/vc/include/vector -- change ++* to ++\par +\pard\nowidctlpar\tab _Myt operator--(int)\par +\tab\tab\{\tab // postdecrement\par +\tab\tab _Myt _Tmp = *this;\par +\tab\tab _SCL_SECURE_VALIDATE(this->_Mycont != NULL);\par +\tab\tab _SCL_SECURE_VALIDATE_RANGE(_Myptr >= ((_Myvec *)(this->_Mycont))->_Myfirst);\par +\tab\tab --_Myptr;\par +\tab\tab return (_Tmp);\par +\tab\tab\}\par +\par +\par +\tab # Instead of\par +\tab _Myt operator--(int)\par +\tab\tab\{\tab // postdecrement\par +\tab\tab _Myt _Tmp = *this;\par +\tab\tab --*this;\par +\tab\tab return (_Tmp);\par +\tab\tab\}\par +\par +============================\par +== Qt notes\par +============================\par +\par +-----------------------\par +Cust ID 43151\par +Licence 1530522\par +Brad Barber\par +\par +---------------------------------------\par +vcapp does not set "Configuration->C++->Output files->Program Database Filename" and "Configuation->C++->Browse Information->Browse file" By default, both are set to DESTDIR.\par +\par +ProgramDatabaseFile="thidd.pdb"\par +\par +------------------------------------------\par +vcapp/vclib does not set "Configuration->C++->Browse Information->Enable Browse Information->Include all Browse Information (/FR)\par +\par +QRegExp is not precompiled\par +\par +QRegExp does not capture positive look-ahead #163710\par +\par +Xml Schema for .ui files #163702\par +\par +Use "docked=true" to position DockWidgets\par +\par + * [156793] Introduced PRECOMPILED_DIR for PCH output (defaults to\par + OBJECTS_DIR).\par + * [257985] Fixed qmake location detection bug.\par + * Ensured that empty INCLUDEPATH definitions are stripped out.\par + * Allow QMAKE_UUID to override qmake deteremined UUID in the vcproj\par + generator.\par +\par +----\par +EOF\par +} +� \ No newline at end of file diff --git a/qtpro/libqhull/libqhull.pro b/qtpro/libqhull/libqhull.pro index 7c3d279..ddff30f 100644 --- a/qtpro/libqhull/libqhull.pro +++ b/qtpro/libqhull/libqhull.pro @@ -1,17 +1,21 @@ # ------------------------------------------------- -# qhulllib.pro -- Qt project file +# libqhull.pro -- Qt project for Qhull static library # ------------------------------------------------- -# configure -commercial -no-qt3support -no-opengl -no-rtti -qt-style-plastique -QT -= gui -TARGET = ../../qhull + CONFIG += staticlib -CONFIG -= app_bundle qt TEMPLATE = lib -DESTDIR = ../../tmp/lib -OBJECTS_DIR = ../../tmp/obj +DESTDIR = ../.. +build_pass:CONFIG(debug, debug|release):{ + TARGET = qhulld + OBJECTS_DIR = ../../tmp/libqhull/Debug +}else:build_pass:CONFIG(release, debug|release):{ + TARGET = qhull + OBJECTS_DIR = ../../tmp/libqhull/Release +} +CONFIG -= app_bundle qt MOC_DIR = ../../tmp/moc RCC_DIR = ../../tmp/rcc -# INCLUDEPATH = ../src + VPATH= ../.. SOURCES += src/geom.c SOURCES += src/geom2.c @@ -49,7 +53,6 @@ HEADERS += src/io.h HEADERS += src/mem.h HEADERS += src/merge.h HEADERS += src/poly.h - # qhull.h is for backwards compatibility HEADERS += src/libqhull.h HEADERS += src/qhull_a.h diff --git a/qtpro/qhull-qt/qhull-qt.pro b/qtpro/libqhullcpp/libqhullcpp.pro similarity index 62% rename from qtpro/qhull-qt/qhull-qt.pro rename to qtpro/libqhullcpp/libqhullcpp.pro index 035403d..6c40613 100644 --- a/qtpro/qhull-qt/qhull-qt.pro +++ b/qtpro/libqhullcpp/libqhullcpp.pro @@ -1,17 +1,25 @@ # ------------------------------------------------- -# qhull-qt.pro -- Qt project file +# libqhullcpp.pro -- Qt project for Qhull cpp shared library # ------------------------------------------------- + +DESTDIR = ../.. +CONFIG += shared +TEMPLATE = lib +build_pass:CONFIG(debug, debug|release):{ + TARGET = qhullcppd + LIBS += ../../libqhulld.a + OBJECTS_DIR = ../../tmp/libqhullcpp/Debug +}else:build_pass:CONFIG(release, debug|release):{ + TARGET = qhullcpp + LIBS += ../../libqhull.a + OBJECTS_DIR = ../../tmp/libqhullcpp/Release +} QT -= gui -TARGET = qhull-qt -CONFIG += console qtestlib CONFIG -= app_bundle -TEMPLATE = app -LIBS = ../../libqhull.a -DESTDIR = ../.. -OBJECTS_DIR = ../../tmp/obj MOC_DIR = ../../tmp/moc RCC_DIR = ../../tmp/rcc INCLUDEPATH = ../../cpp;../../cpp/road;../../tmp + VPATH = ../.. SOURCES += cpp/Coordinates.cpp SOURCES += cpp/QhullVertexSet.cpp @@ -35,24 +43,6 @@ SOURCES += cpp/RboxPoints.cpp SOURCES += cpp/UsingLibQhull.cpp SOURCES += cpp/road/RoadError.cpp SOURCES += cpp/road/RoadLogEvent.cpp -SOURCES += cpp/road/RoadTest.cpp -SOURCES += cpp/qhulltest/Coordinates_test.cpp -SOURCES += cpp/qhulltest/PointCoordinates_test.cpp -SOURCES += cpp/qhulltest/Qhull_test.cpp -SOURCES += cpp/qhulltest/QhullFacet_test.cpp -SOURCES += cpp/qhulltest/QhullFacetList_test.cpp -SOURCES += cpp/qhulltest/QhullFacetSet_test.cpp -SOURCES += cpp/qhulltest/QhullHyperplane_test.cpp -SOURCES += cpp/qhulltest/QhullLinkedList_test.cpp -SOURCES += cpp/qhulltest/QhullPoint_test.cpp -SOURCES += cpp/qhulltest/QhullPoints_test.cpp -SOURCES += cpp/qhulltest/QhullPointSet_test.cpp -SOURCES += cpp/qhulltest/QhullRidge_test.cpp -SOURCES += cpp/qhulltest/QhullSet_test.cpp -SOURCES += cpp/qhulltest/qhulltest.cpp -SOURCES += cpp/qhulltest/QhullVertex_test.cpp -SOURCES += cpp/qhulltest/UsingLibQhull_test.cpp -SOURCES += cpp/qhulltest/RboxPoints_test.cpp HEADERS += cpp/Coordinates.h HEADERS += cpp/QhullHyperplane.h HEADERS += cpp/functionObjects.h @@ -78,4 +68,4 @@ HEADERS += cpp/RboxPoints.h HEADERS += cpp/UsingLibQhull.h HEADERS += cpp/road/RoadError.h HEADERS += cpp/road/RoadLogEvent.h -HEADERS += cpp/road/RoadTest.h + diff --git a/qtpro/qhull/qhull.pro b/qtpro/qhull/qhull.pro index 300f769..6459103 100644 --- a/qtpro/qhull/qhull.pro +++ b/qtpro/qhull/qhull.pro @@ -1,14 +1,20 @@ # ------------------------------------------------- # qhull.pro -- Qt project file for qhull.exe # ------------------------------------------------- -QT -= gui + TARGET = qhull +DESTDIR = ../.. +TEMPLATE = app CONFIG += console +build_pass:CONFIG(debug, debug|release):{ + LIBS += ../../libqhulld.a + OBJECTS_DIR = ../../tmp/qhull/Debug +}else:build_pass:CONFIG(release, debug|release):{ + LIBS += ../../libqhull.a + OBJECTS_DIR = ../../tmp/qhull/Release +} +QT -= gui CONFIG -= app_bundle -TEMPLATE = app -LIBS = ../../libqhull.a -DESTDIR = ../.. -OBJECTS_DIR = ../../tmp/obj MOC_DIR = ../../tmp/moc RCC_DIR = ../../tmp/rcc INCLUDEPATH = ../../cpp;../../cpp/road;../../tmp diff --git a/qtpro/qhulltest/qhulltest.pro b/qtpro/qhulltest/qhulltest.pro index e40f1ec..c199cf6 100644 --- a/qtpro/qhulltest/qhulltest.pro +++ b/qtpro/qhulltest/qhulltest.pro @@ -1,39 +1,27 @@ # ------------------------------------------------- -# qhull-qt.pro -- Qt project file +# qhulltest.pro -- Qt project for qhulltest.exe (QTestLib) # ------------------------------------------------- -QT -= gui + TARGET = qhulltest +DESTDIR = ../.. +TEMPLATE = app CONFIG += console qtestlib +build_pass:CONFIG(debug, debug|release):{ + LIBS += ../../qhullcppd.dll + OBJECTS_DIR = ../../tmp/qhulltest/Debug +}else:build_pass:CONFIG(release, debug|release):{ + LIBS += ../../qhullcpp.dll + OBJECTS_DIR = ../../tmp/qhulltest/Release +} +QT -= gui CONFIG -= app_bundle -TEMPLATE = app -DESTDIR = ../.. -OBJECTS_DIR = ../../tmp/obj MOC_DIR = ../../tmp/moc RCC_DIR = ../../tmp/rcc INCLUDEPATH = ../../cpp;../../cpp/road;../../tmp +PRECOMPILED_HEADER = cpp/road/RoadTest.h + +# MAKEFILE = Makefile.qhulltest -- does not work (it's ignored) VPATH = ../.. -SOURCES += cpp/Coordinates.cpp -SOURCES += cpp/QhullVertexSet.cpp -SOURCES += cpp/QhullHyperplane.cpp -SOURCES += cpp/PointCoordinates.cpp -SOURCES += cpp/Qhull.cpp -SOURCES += cpp/QhullError.cpp -SOURCES += cpp/QhullEvent.cpp -SOURCES += cpp/QhullFacet.cpp -SOURCES += cpp/QhullFacetList.cpp -SOURCES += cpp/QhullFacetSet.cpp -SOURCES += cpp/QhullPoint.cpp -SOURCES += cpp/QhullPoints.cpp -SOURCES += cpp/QhullPointSet.cpp -SOURCES += cpp/QhullQh.cpp -SOURCES += cpp/QhullRidge.cpp -SOURCES += cpp/QhullSet.cpp -SOURCES += cpp/QhullStat.cpp -SOURCES += cpp/QhullVertex.cpp -SOURCES += cpp/RboxPoints.cpp -SOURCES += cpp/UsingLibQhull.cpp -SOURCES += cpp/road/RoadError.cpp -SOURCES += cpp/road/RoadLogEvent.cpp SOURCES += cpp/road/RoadTest.cpp SOURCES += cpp/qhulltest/Coordinates_test.cpp SOURCES += cpp/qhulltest/PointCoordinates_test.cpp @@ -79,55 +67,3 @@ HEADERS += cpp/road/RoadError.h HEADERS += cpp/road/RoadLogEvent.h HEADERS += cpp/road/RoadTest.h - - -# Add all files explicitly. The library did not work -# ------------------------------------------------- -# qhulllib.pro -- Qt project file -# ------------------------------------------------- -# configure -commercial -no-qt3support -no-opengl -no-rtti -qt-style-plastique - -SOURCES += src/geom.c -SOURCES += src/geom2.c -SOURCES += src/global.c -SOURCES += src/io.c -SOURCES += src/mem.c -SOURCES += src/merge.c -SOURCES += src/poly2.c -SOURCES += src/poly.c -SOURCES += src/libqhull.c -SOURCES += src/qset.c -SOURCES += src/random.c -SOURCES += src/rboxlib.c -SOURCES += src/stat.c -SOURCES += src/user.c -# SOURCES += src/usermem.c -# SOURCES += src/userprintf.c -OTHER_FILES += src/Changes.txt -OTHER_FILES += src/index.htm -OTHER_FILES += src/Make-config.sh -OTHER_FILES += src/Makefile.txt -OTHER_FILES += src/Mborland -OTHER_FILES += src/qh-geom.htm -OTHER_FILES += src/qh-globa.htm -OTHER_FILES += src/qh-io.htm -OTHER_FILES += src/qh-mem.htm -OTHER_FILES += src/qh-merge.htm -OTHER_FILES += src/qh-poly.htm -OTHER_FILES += src/qh-qhull.htm -OTHER_FILES += src/qh-set.htm -OTHER_FILES += src/qh-stat.htm -OTHER_FILES += src/qh-user.htm -HEADERS += src/geom.h -HEADERS += src/io.h -HEADERS += src/mem.h -HEADERS += src/merge.h -HEADERS += src/poly.h - -# qhull.h is for backwards compatibility -HEADERS += src/libqhull.h -HEADERS += src/qhull_a.h -HEADERS += src/qset.h -HEADERS += src/random.h -HEADERS += src/stat.h -HEADERS += src/user.h diff --git a/qtpro/rbox/rbox.pro b/qtpro/rbox/rbox.pro index 4438810..d93aacf 100644 --- a/qtpro/rbox/rbox.pro +++ b/qtpro/rbox/rbox.pro @@ -1,14 +1,19 @@ # ------------------------------------------------- -# qhull.pro -- Qt project file for qhull.exe +# rbox.pro -- Qt project for rbox.exe # ------------------------------------------------- -QT -= gui TARGET = rbox +DESTDIR = ../.. +TEMPLATE = app CONFIG += console +build_pass:CONFIG(debug, debug|release):{ + LIBS += ../../libqhulld.a + OBJECTS_DIR = ../../tmp/rbox/Debug +}else:build_pass:CONFIG(release, debug|release):{ + LIBS += ../../libqhull.a + OBJECTS_DIR = ../../tmp/rbox/Release +} +QT -= gui CONFIG -= app_bundle -TEMPLATE = app -LIBS = ../../libqhull.a -DESTDIR = ../.. -OBJECTS_DIR = ../../tmp/obj MOC_DIR = ../../tmp/moc RCC_DIR = ../../tmp/rcc INCLUDEPATH = ../../cpp;../../cpp/road;../../tmp diff --git a/qtpro/user_eg3/user_eg3.pro b/qtpro/user_eg3/user_eg3.pro index 65c5e86..a3a847e 100644 --- a/qtpro/user_eg3/user_eg3.pro +++ b/qtpro/user_eg3/user_eg3.pro @@ -1,40 +1,25 @@ # ------------------------------------------------- -# user_eg3.pro -- Qt project file for cpp demonstration program +# user_eg3.pro -- Qt project for cpp demonstration user_eg3.exe # ------------------------------------------------- -QT -= gui TARGET = user_eg3 +DESTDIR = ../.. +TEMPLATE = app CONFIG += console +build_pass:CONFIG(debug, debug|release):{ + LIBS += ../../qhullcppd.dll + OBJECTS_DIR = ../../tmp/user_eg3/Debug +}else:build_pass:CONFIG(release, debug|release):{ + LIBS += ../../qhullcpp.dll + OBJECTS_DIR = ../../tmp/user_eg3/Release +} +QT -= gui CONFIG -= app_bundle -TEMPLATE = app -DESTDIR = ../.. -OBJECTS_DIR = ../../tmp/obj MOC_DIR = ../../tmp/moc RCC_DIR = ../../tmp/rcc INCLUDEPATH = ../../cpp;../../cpp/road;../../tmp + VPATH = ../.. SOURCES += cpp/user_eg3.cpp -SOURCES += cpp/Coordinates.cpp -SOURCES += cpp/QhullVertexSet.cpp -SOURCES += cpp/QhullHyperplane.cpp -SOURCES += cpp/PointCoordinates.cpp -SOURCES += cpp/Qhull.cpp -SOURCES += cpp/QhullError.cpp -SOURCES += cpp/QhullEvent.cpp -SOURCES += cpp/QhullFacet.cpp -SOURCES += cpp/QhullFacetList.cpp -SOURCES += cpp/QhullFacetSet.cpp -SOURCES += cpp/QhullPoint.cpp -SOURCES += cpp/QhullPoints.cpp -SOURCES += cpp/QhullPointSet.cpp -SOURCES += cpp/QhullQh.cpp -SOURCES += cpp/QhullRidge.cpp -SOURCES += cpp/QhullSet.cpp -SOURCES += cpp/QhullStat.cpp -SOURCES += cpp/QhullVertex.cpp -SOURCES += cpp/RboxPoints.cpp -SOURCES += cpp/UsingLibQhull.cpp -SOURCES += cpp/road/RoadError.cpp -SOURCES += cpp/road/RoadLogEvent.cpp HEADERS += cpp/Coordinates.h HEADERS += cpp/QhullHyperplane.h @@ -61,40 +46,3 @@ HEADERS += cpp/RboxPoints.h HEADERS += cpp/UsingLibQhull.h HEADERS += cpp/road/RoadError.h HEADERS += cpp/road/RoadLogEvent.h - -# Add all files explicitly. The library did not work -# ------------------------------------------------- -# qhulllib.pro -- Qt project file -# ------------------------------------------------- -# configure -commercial -no-qt3support -no-opengl -no-rtti -qt-style-plastique - -SOURCES += src/geom.c -SOURCES += src/geom2.c -SOURCES += src/global.c -SOURCES += src/io.c -SOURCES += src/mem.c -SOURCES += src/merge.c -SOURCES += src/poly2.c -SOURCES += src/poly.c -SOURCES += src/libqhull.c -SOURCES += src/qset.c -SOURCES += src/random.c -SOURCES += src/rboxlib.c -SOURCES += src/stat.c -SOURCES += src/user.c -SOURCES += src/usermem.c -# SOURCES += src/userprintf.c - -HEADERS += src/geom.h -HEADERS += src/io.h -HEADERS += src/mem.h -HEADERS += src/merge.h -HEADERS += src/poly.h - -# qhull.h is for backwards compatibility -HEADERS += src/libqhull.h -HEADERS += src/qhull_a.h -HEADERS += src/qset.h -HEADERS += src/random.h -HEADERS += src/stat.h -HEADERS += src/user.h diff --git a/src/Changes.txt b/src/Changes.txt index 3edb772..0e874cd 100644 --- a/src/Changes.txt +++ b/src/Changes.txt @@ -8,6 +8,7 @@ Doc - How to handle 64-bit possible loss of data. WARN64 - Show custom of qh_fprintf - grep 'qh_mem ' x | sort | awk '{ print $2; }' | uniq -c | grep -vE ' (2|4|6|8|10|12|14|16|20|64|162)[^0-9]' +- qtpro/qhulltest contains .pro and Makefile. Remove Makefiles by setting shadow directory to ../../tmp/projectname Rules for use of qh_qh and multi processes UsingQhull @@ -35,9 +36,14 @@ Suggestions - Merge small volume boundary cells into unbounded regions [Dominik Szczerba] - Postmerge with merge options - Add const to C code + - Add modify operators and MutablePointCoordinateIterator to PointCoordinates + - Add Qtest::toString() functions for QhullPoint and others. QByteArray and qstrdup() + - Fix option Qt for conformant triangulations + - Fix doc comments Qhull cpp questions - size() as size_t, size_type, or int + - Should all containers have a reserve()? - Qhull.feasiblePoint interface - Qhull and RboxPoints messaging - change qh_printf() to a virtual function @@ -47,34 +53,42 @@ Qhull cpp questions - Interface for UsingLibQhull::globalDimension - Infinite point as !defined() - qlist and qlinkedlist define pointer, reference, size_type, difference_type, const_pointer, const_reference for the class but not for iterator and const_iterator + vector.h -- reference operator[](difference_type _Off) const + - Is Q_GLOBAL_STATIC non-threaded/threaded, needed for Qhull? + - When forwarding an implementation is base() an approriate name (e.g., Coordinates::iterator::base() as std::vector<coordT>::iterator). + - When forwarding an implementation, does not work "returning address of temporary" + - Alsoo --, +=, and -= + iterator &operator++() { return iterator(i++); } + - if vector<coordT> inheritance is bad, is QhullVertexSet OK? To do + - ConvexHull is a submodule to git. How to get rid of? ** Change to static link library before shipping, or define Qt for static linking. - - ignoreWarnings? How to configure Qhull output. Trace and results should go to stdout/stderr - - Fix Qt for conformant triangulations - - Add Qtest::toString() functions for QhullPoint and others. QByteArray and qstrdup() - - rbox"10000" is 10x slower. See Qhull_test -- debug mode? - - Fix gcc failure - - fix const problems + - Configure qhull-qt.dll + - ignore Warnings? How to configure Qhull output. Trace and results should go to stdout/stderr - Review Warn64 - - Fix doc comments - review all FIXUP. Add dates? - - Qhull_test - Clear out QhullQh -- it is just the POD type void checkIfQhullRan(); void errorAnotherUser(); void startQhullAccess(); void stopQhullAccess(); - - PointCoordinatesIterator - - PointCoordinates_test, RboxPoints - - Cleanup PointCoordinates with conversions, etc - - Redo Coordinates w/o vector<> - - Change #include to specific -> general - - Remove class-static code, check K_GLOBAL_STATIC - - Rename libqhull to libqhull libqhull.h UsingLibQhull etc. - ConvexHull is a submodule to git. How to get rid of? - -qhull 2009.1 2008/03/20 + - Redo .pro files for shared cpp library and static qhull library + - Add dependencies between the .pro files, or define in the .pro files + If you want to specify it in the pro file then you can follow the following steps to get the dependencies to be generated automatically: + 1a) there is a Lib/DLL project with the target name (the .lib is used, not the .dll of course) being that of what is used on link line of an other project in your solution + 1b) there is a Exe project with the target name being that of what is used in a custom build-step of an other project in your solution + 2) you don't use paths in the TARGET variable (use DESTDIR/DLLDESTDIR for that), like TARGET=$(SOME_VARIABLE)/myLib, won't work + 3) if you have a special location for your libs, you specify the -Lmy/library/path and LIBS += mylib, instead of just using LIBS += my/library/path/mylib + 4) the leaf projects are created before you generate the solution file. (You can use the recursive flag for qmake to do this, like "qmake -tp vc -r [yourproject.pro]" + +This is achievable by utilizing the MAKEFILE variable to indicate what you want to call the makefile, as for the location of it then you just need to call qmake from where you want it to be generated in. To get the pro file how you want it something like: + + +Pick up changes from Kent Williams + +qhull 2009.0.1 2009/12/08 + - Reordered #include from specific to general. Move up .h for module. - Use gcc 4.4.0 or later. gcc 4.2.1, 4.2.2, and 4.3.2 -O2 segfaults in qset.c . gcc 4.1.1 was OK - Bug report http://gcc.gnu.org/ml/gcc-bugs/2007-09/msg00474.html - Added user_eg3 as an example of Qhull.cpp diff --git a/src/global.c b/src/global.c index 852650d..eb636eb 100644 --- a/src/global.c +++ b/src/global.c @@ -12,8 +12,8 @@ see qhull_a.h for internal functions copyright (c) 1993-2009 The Geometry Center. - $Id: //product/qhull/main/rel/src/global.c#46 $$Change: 1102 $ - $DateTime: 2009/12/07 20:26:04 $$Author: bbarber $ + $Id: //product/qhull/main/rel/src/global.c#47 $$Change: 1111 $ + $DateTime: 2009/12/10 22:15:38 $$Author: bbarber $ */ #include "qhull_a.h" @@ -47,7 +47,7 @@ qhT qh_qh; /* all global variables. recompile user_eg.c, rbox.c, libqhull.c, qconvex.c, qdelaun.c qvoronoi.c, qhalf.c */ -char *qh_version = "2003.1 2003/12/30"; +char *qh_version = "2009.0.1 2009/12/08"; /*-<a href="qh-globa.htm#TOC" >-------------------------------</a><a name="appendprint">-</a> diff --git a/src/qh-geom.htm b/src/qh-geom.htm index c3119cf..c14969e 100644 --- a/src/qh-geom.htm +++ b/src/qh-geom.htm @@ -54,7 +54,7 @@ computations is determined at initialization. The roundoff error in halfspace computation is accounted for by computing the distance from vertices to the halfspace. </p> </blockquote> -<p><b>Copyright © 1995-2003 The Geometry Center, Minneapolis MN</b></p> +<p><b>Copyright © 1995-2009 The Geometry Center, Minneapolis MN</b></p> <hr> <p><a href="#TOP">»</a> <b>Geom</b> <a name="TOC">•</a> <a href="qh-globa.htm#TOC">Global</a> • diff --git a/src/qh-io.htm b/src/qh-io.htm index 7d6dd61..b85f1fb 100644 --- a/src/qh-io.htm +++ b/src/qh-io.htm @@ -53,7 +53,7 @@ the same driver: </p> qh_skipfacet() is tested. </p> </blockquote> -<p><b>Copyright © 1995-2003 The Geometry Center, Minneapolis MN</b></p> +<p><b>Copyright © 1995-2009 The Geometry Center, Minneapolis MN</b></p> <hr> <p><a href="#TOP">»</a> <a href="qh-geom.htm#TOC">Geom</a> <a name="TOC">•</a> <a href="qh-globa.htm#TOC">Global</a> • <b>Io</b> • diff --git a/vcproj/qhulltest.vcproj b/vcproj/qhulltest.vcproj index e3d9094..63d063e 100644 --- a/vcproj/qhulltest.vcproj +++ b/vcproj/qhulltest.vcproj @@ -45,8 +45,8 @@ Name="VCCLCompilerTool" AdditionalOptions="-Zm200 -EHsc -w34100 -w34189" Optimization="4" - AdditionalIncludeDirectories=".,..\cpp,..\..\cpp,..\src,..\..\src,..\tmp,..\..\tmp,"$(QTDIR)\include\QtCore","$(QTDIR)\include\QtGui","$(QTDIR)\include","$(QTDIR)\include\QtTest","$(QTDIR)\include\ActiveQt",$(QTDIR)\mkspecs\win32-msvc2005" - PreprocessorDefinitions="UNICODE,WIN32,QT_LARGEFILE_SUPPORT,QT_DLL,QT_GUI_LIB,QT_CORE_LIB,QT_THREAD_SUPPORT" + AdditionalIncludeDirectories=".,..\cpp,..\..\cpp,..\src,..\..\src,..\tmp,..\..\tmp,"$(QTDIR)\include\QtCore","$(QTDIR)\include","$(QTDIR)\include\QtTest",$(QTDIR)\mkspecs\win32-msvc2005" + PreprocessorDefinitions="UNICODE,WIN32,QT_LARGEFILE_SUPPORT,QT_DLL,QT_CORE_LIB,QT_THREAD_SUPPORT" GeneratePreprocessedFile="0" RuntimeLibrary="3" BufferSecurityCheck="false" @@ -143,7 +143,7 @@ AdditionalOptions="-Zm200 -EHsc -w34100 -w34189" Optimization="2" AdditionalIncludeDirectories=".,..\cpp,..\..\cpp,..\src,..\..\src,..\tmp,..\..\tmp,"\Qt\4.5.2\include\QtCore","\Qt\4.5.2\include\QtCore","\Qt\4.5.2\include\QtGui","\Qt\4.5.2\include\QtGui","\Qt\4.5.2\include","\Qt\4.5.2\include\QtTest","\Qt\4.5.2\include\ActiveQt",\Qt\4.5.2\mkspecs\win32-msvc2005" - PreprocessorDefinitions="QT_NO_DEBUG,NDEBUG,UNICODE,WIN32,QT_LARGEFILE_SUPPORT,QT_DLL,QT_NO_DEBUG,QT_GUI_LIB,QT_CORE_LIB,QT_THREAD_SUPPORT,NDEBUG" + PreprocessorDefinitions="QT_NO_DEBUG,NDEBUG,UNICODE,WIN32,QT_LARGEFILE_SUPPORT,QT_DLL,QT_NO_DEBUG,QT_CORE_LIB,QT_THREAD_SUPPORT,NDEBUG" GeneratePreprocessedFile="0" RuntimeLibrary="2" BufferSecurityCheck="false" @@ -301,7 +301,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing RoadTest.h..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\road\RoadTest.h" -o ".\..\tmp\moc\moc_RoadTest.cpp" "-f../road/RoadTest.h" "-f..\..\cpp\road\RoadTest.h"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\road\RoadTest.h" -o ".\..\tmp\moc\moc_RoadTest.cpp" "-f../road/RoadTest.h" "-f..\..\cpp\road\RoadTest.h"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\road\RoadTest.h" Outputs="".\..\tmp\moc\moc_RoadTest.cpp"" /> @@ -312,7 +312,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing RoadTest.h..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DQT_NO_DEBUG -DNDEBUG -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DNDEBUG -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\." -I"\Qt\4.5.2\include\QtTest\." -I"\Qt\4.5.2\include\ActiveQt\." -I"\Qt\4.5.2\mkspecs\win32-msvc2005\." "..\cpp\road\RoadTest.h" -o ".\..\tmp\moc\moc_RoadTest.cpp"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DQT_NO_DEBUG -DNDEBUG -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DNDEBUG -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\." -I"\Qt\4.5.2\include\QtTest\." -I"\Qt\4.5.2\include\ActiveQt\." -I"\Qt\4.5.2\mkspecs\win32-msvc2005\." "..\cpp\road\RoadTest.h" -o ".\..\tmp\moc\moc_RoadTest.cpp"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\road\RoadTest.h" Outputs="".\..\tmp\moc\moc_RoadTest.cpp"" /> @@ -333,7 +333,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing Coordinates_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\Coordinates_test.cpp" -o ".\..\tmp\moc\Coordinates_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\Coordinates_test.cpp" -o ".\..\tmp\moc\Coordinates_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\Coordinates_test.cpp" Outputs="".\..\tmp\moc\Coordinates_test.moc"" /> @@ -355,7 +355,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing PointCoordinates_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\PointCoordinates_test.cpp" -o ".\..\tmp\moc\PointCoordinates_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\PointCoordinates_test.cpp" -o ".\..\tmp\moc\PointCoordinates_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\PointCoordinates_test.cpp" Outputs="".\..\tmp\moc\PointCoordinates_test.moc"" /> @@ -366,7 +366,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing PointCoordinates_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DQT_NO_DEBUG -DNDEBUG -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DNDEBUG -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\." -I"\Qt\4.5.2\include\QtTest\." -I"\Qt\4.5.2\include\ActiveQt\." -I"\Qt\4.5.2\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\PointCoordinates_test.cpp" -o ".\..\tmp\moc\PointCoordinates_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DQT_NO_DEBUG -DNDEBUG -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DNDEBUG -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\." -I"\Qt\4.5.2\include\QtTest\." -I"\Qt\4.5.2\include\ActiveQt\." -I"\Qt\4.5.2\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\PointCoordinates_test.cpp" -o ".\..\tmp\moc\PointCoordinates_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\PointCoordinates_test.cpp" Outputs="".\..\tmp\moc\PointCoordinates_test.moc"" /> @@ -381,7 +381,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing Qhull_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\Qhull_test.cpp" -o ".\..\tmp\moc\Qhull_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\Qhull_test.cpp" -o ".\..\tmp\moc\Qhull_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\Qhull_test.cpp" Outputs="".\..\tmp\moc\Qhull_test.moc"" /> @@ -403,7 +403,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullFacet_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullFacet_test.cpp" -o ".\..\tmp\moc\QhullFacet_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullFacet_test.cpp" -o ".\..\tmp\moc\QhullFacet_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullFacet_test.cpp" Outputs="".\..\tmp\moc\QhullFacet_test.moc"" /> @@ -425,7 +425,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullFacetList_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullFacetList_test.cpp" -o ".\..\tmp\moc\QhullFacetList_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullFacetList_test.cpp" -o ".\..\tmp\moc\QhullFacetList_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullFacetList_test.cpp" Outputs="".\..\tmp\moc\QhullFacetList_test.moc"" /> @@ -447,7 +447,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullFacetSet_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullFacetSet_test.cpp" -o ".\..\tmp\moc\QhullFacetSet_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullFacetSet_test.cpp" -o ".\..\tmp\moc\QhullFacetSet_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullFacetSet_test.cpp" Outputs="".\..\tmp\moc\QhullFacetSet_test.moc"" /> @@ -469,7 +469,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullHyperplane_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullHyperplane_test.cpp" -o ".\..\tmp\moc\QhullHyperplane_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullHyperplane_test.cpp" -o ".\..\tmp\moc\QhullHyperplane_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullHyperplane_test.cpp" Outputs="".\..\tmp\moc\QhullHyperplane_test.moc"" /> @@ -480,7 +480,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullHyperplane_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DQT_NO_DEBUG -DNDEBUG -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DNDEBUG -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\." -I"\Qt\4.5.2\include\QtTest\." -I"\Qt\4.5.2\include\ActiveQt\." -I"\Qt\4.5.2\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullHyperplane_test.cpp" -o ".\..\tmp\moc\QhullHyperplane_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DQT_NO_DEBUG -DNDEBUG -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DNDEBUG -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtCore\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\QtGui\." -I"\Qt\4.5.2\include\." -I"\Qt\4.5.2\include\QtTest\." -I"\Qt\4.5.2\include\ActiveQt\." -I"\Qt\4.5.2\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullHyperplane_test.cpp" -o ".\..\tmp\moc\QhullHyperplane_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullHyperplane_test.cpp" Outputs="".\..\tmp\moc\QhullHyperplane_test.moc"" /> @@ -495,7 +495,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullLinkedList_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullLinkedList_test.cpp" -o ".\..\tmp\moc\QhullLinkedList_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullLinkedList_test.cpp" -o ".\..\tmp\moc\QhullLinkedList_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullLinkedList_test.cpp" Outputs="".\..\tmp\moc\QhullLinkedList_test.moc"" /> @@ -517,7 +517,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullPoint_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullPoint_test.cpp" -o ".\..\tmp\moc\QhullPoint_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullPoint_test.cpp" -o ".\..\tmp\moc\QhullPoint_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullPoint_test.cpp" Outputs="".\..\tmp\moc\QhullPoint_test.moc"" /> @@ -539,7 +539,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullPoints_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullPoints_test.cpp" -o ".\..\tmp\moc\QhullPoints_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullPoints_test.cpp" -o ".\..\tmp\moc\QhullPoints_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullPoints_test.cpp" Outputs="".\..\tmp\moc\QhullPoints_test.moc"" /> @@ -561,7 +561,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullPointSet_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullPointSet_test.cpp" -o ".\..\tmp\moc\QhullPointSet_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullPointSet_test.cpp" -o ".\..\tmp\moc\QhullPointSet_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullPointSet_test.cpp" Outputs="".\..\tmp\moc\QhullPointSet_test.moc"" /> @@ -583,7 +583,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullRidge_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullRidge_test.cpp" -o ".\..\tmp\moc\QhullRidge_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullRidge_test.cpp" -o ".\..\tmp\moc\QhullRidge_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullRidge_test.cpp" Outputs="".\..\tmp\moc\QhullRidge_test.moc"" /> @@ -605,7 +605,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullSet_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullSet_test.cpp" -o ".\..\tmp\moc\QhullSet_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullSet_test.cpp" -o ".\..\tmp\moc\QhullSet_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullSet_test.cpp" Outputs="".\..\tmp\moc\QhullSet_test.moc"" /> @@ -627,7 +627,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing QhullVertex_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullVertex_test.cpp" -o ".\..\tmp\moc\QhullVertex_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\QhullVertex_test.cpp" -o ".\..\tmp\moc\QhullVertex_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\QhullVertex_test.cpp" Outputs="".\..\tmp\moc\QhullVertex_test.moc"" /> @@ -649,7 +649,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing RboxPoints_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\RboxPoints_test.cpp" -o ".\..\tmp\moc\RboxPoints_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\RboxPoints_test.cpp" -o ".\..\tmp\moc\RboxPoints_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\RboxPoints_test.cpp" Outputs="".\..\tmp\moc\RboxPoints_test.moc"" /> @@ -671,7 +671,7 @@ <Tool Name="VCCustomBuildTool" Description="Moc'ing UsingLibQhull_test.cpp..." - CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\QtGui\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\include\ActiveQt\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\UsingLibQhull_test.cpp" -o ".\..\tmp\moc\UsingLibQhull_test.moc"
" + CommandLine=""$(QTDIR)\bin\moc.exe" -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I".\." -I".\..\cpp\." -I".\..\..\cpp\." -I".\..\src\." -I".\..\..\src\." -I".\..\tmp\." -I".\..\..\tmp\." -I"$(QTDIR)\include\QtCore\." -I"$(QTDIR)\include\." -I"$(QTDIR)\include\QtTest\." -I"$(QTDIR)\mkspecs\win32-msvc2005\." "..\cpp\qhulltest\UsingLibQhull_test.cpp" -o ".\..\tmp\moc\UsingLibQhull_test.moc"
" AdditionalDependencies=""$(QTDIR)\bin\moc.exe";..\cpp\qhulltest\UsingLibQhull_test.cpp" Outputs="".\..\tmp\moc\UsingLibQhull_test.moc"" /> @@ -689,11 +689,11 @@ <Globals> <Global Name="QtVersion" - Value="4.5.2" + Value="4.6.0" /> <Global Name="QtVersion Win32" - Value="4.5.3" + Value="4.6.0" /> </Globals> </VisualStudioProject> -- GitLab