CDT  1.4.2
C++ library for constrained Delaunay triangulation
 
Loading...
Searching...
No Matches
CDT.cpp
Go to the documentation of this file.
1/* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4
13
14#ifdef CDT_USE_AS_COMPILED_LIBRARY
15
16#include "CDT.hpp"
17#include "CDTUtils.hpp"
18#include "InitializeWithGrid.h"
19#include "Triangulation.hpp"
20#include "VerifyTopology.h"
21
22namespace CDT
23{
24
25template struct CDT_EXPORT V2d<float>;
26template struct CDT_EXPORT V2d<double>;
27
28template struct CDT_EXPORT Box2d<float>;
29template struct CDT_EXPORT Box2d<double>;
30
31template class CDT_EXPORT Triangulation<float>;
32template class CDT_EXPORT Triangulation<double>;
33
34template CDT_EXPORT DuplicatesInfo
36template CDT_EXPORT DuplicatesInfo
38
40 std::vector<V2d<float> >&,
41 std::vector<Edge>&);
43 std::vector<V2d<double> >&,
44 std::vector<Edge>&);
45
46template CDT_EXPORT bool
47verifyTopology<float>(const CDT::Triangulation<float>&);
48template CDT_EXPORT bool
49verifyTopology<double>(const CDT::Triangulation<double>&);
50
51template CDT_EXPORT void initializeWithRegularGrid<float>(
52 float,
53 float,
54 float,
55 float,
56 std::size_t,
57 std::size_t,
59template CDT_EXPORT void initializeWithRegularGrid<double>(
60 double,
61 double,
62 double,
63 double,
64 std::size_t,
65 std::size_t,
67
68} // namespace CDT
69
70#endif
Utilities and helpers - implementation.
Public API - implementation.
Helper function to initialize triangulation with regular grid instead of super-triangle.
Triangulation class - implementation.
Helper function to verify if triangulation has no inconsistencies.
Data structure representing a 2D constrained Delaunay triangulation.
void RemoveDuplicates(std::vector< TVertex, TAllocator > &vertices, const std::vector< std::size_t > &duplicates)
Remove duplicates in-place from vector of custom points.
Definition CDT.h:322
DuplicatesInfo RemoveDuplicatesAndRemapEdges(std::vector< TVertex, TVertexAllocator > &vertices, TGetVertexCoordX getX, TGetVertexCoordY getY, TEdgeIter edgesFirst, TEdgeIter edgesLast, TGetEdgeVertexStart getStart, TGetEdgeVertexEnd getEnd, TMakeEdgeFromStartAndEnd makeEdge)
Find point duplicates, remove them from vector (in-place) and remap edges (in-place)
Definition CDT.h:366
Namespace containing triangulation functionality.
bool verifyTopology(const CDT::Triangulation< T, TNearPointLocator > &cdt)
Verify that triangulation topology is consistent.
void initializeWithRegularGrid(const T xmin, const T xmax, const T ymin, const T ymax, const std::size_t xres, const std::size_t yres, Triangulation< T, TNearPointLocator > &out)
Make a triangulation that uses regular grid triangles instead of super-triangle.
2D bounding box
Definition CDTUtils.h:216
Information about removed duplicated vertices.
Definition CDT.h:68
2D vector
Definition CDTUtils.h:136