Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00025
00028
00029 #ifndef THOR_TRIANGULATION_HPP
00030 #define THOR_TRIANGULATION_HPP
00031
00032 #include <SFML/System/Vector2.hpp>
00033
00034 #include <Thor/Math/TriangulationFigures.hpp>
00035
00036 #include <Aurora/Tools/ForEach.hpp>
00037 #include <Aurora/SmartPtr/CopiedPtr.hpp>
00038
00039 #include <vector>
00040 #include <deque>
00041 #include <list>
00042 #include <set>
00043 #include <map>
00044 #include <iterator>
00045 #include <type_traits>
00046 #ifndef NDEBUG
00047 #include <typeinfo>
00048 #endif
00049
00050
00051 namespace thor
00052 {
00053
00056
00068 template <typename InputIterator, typename OutputIterator>
00069 OutputIterator triangulate(InputIterator verticesBegin, InputIterator verticesEnd, OutputIterator trianglesOut);
00070
00085 template <typename InputIterator1, typename InputIterator2, typename OutputIterator>
00086 OutputIterator triangulateConstrained(InputIterator1 verticesBegin, InputIterator1 verticesEnd,
00087 InputIterator2 constrainedEdgesBegin, InputIterator2 constrainedEdgesEnd, OutputIterator trianglesOut);
00088
00099 template <typename InputIterator, typename OutputIterator>
00100 OutputIterator triangulatePolygon(InputIterator verticesBegin, InputIterator verticesEnd, OutputIterator trianglesOut);
00101
00115 template <typename InputIterator, typename OutputIterator1, typename OutputIterator2>
00116 OutputIterator1 triangulatePolygon(InputIterator verticesBegin, InputIterator verticesEnd, OutputIterator1 trianglesOut, OutputIterator2 edgesOut);
00117
00119
00120 }
00121
00122 #include <Thor/Math/Detail/Triangulation.inl>
00123 #endif // THOR_TRIANGULATION_HPP