/[zanavi_public1]/navit/navit/maptool/poly2tri-c/002/poly2tri-c/refine/refiner.c
ZANavi

Contents of /navit/navit/maptool/poly2tri-c/002/poly2tri-c/refine/refiner.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 31 - (show annotations) (download)
Mon Feb 4 17:41:59 2013 UTC (11 years, 2 months ago) by zoff99
File MIME type: text/plain
File size: 2561 byte(s)
new map version, lots of fixes and experimental new features
1 /*
2 * This file is a part of Poly2Tri-C
3 * (c) Barak Itkin <lightningismyname@gmail.com>
4 * http://code.google.com/p/poly2tri-c/
5 *
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without modification,
9 * are permitted provided that the following conditions are met:
10 *
11 * * Redistributions of source code must retain the above copyright notice,
12 * this list of conditions and the following disclaimer.
13 * * Redistributions in binary form must reproduce the above copyright notice,
14 * this list of conditions and the following disclaimer in the documentation
15 * and/or other materials provided with the distribution.
16 * * Neither the name of Poly2Tri nor the names of its contributors may be
17 * used to endorse or promote products derived from this software without specific
18 * prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */
32
33 #include <glib.h>
34 #include "cdt.h"
35 #include "delaunay-terminator.h"
36 #include "refiner.h"
37
38 #define P2TR_REFINER_REAL_TYPE P2trDelaunayTerminator
39
40 #define P2T_REFINER_TO_IMP(X) ((P2TR_REFINER_REAL_TYPE*)(X))
41 #define P2T_IMP_TO_REFINER(X) ((P2trRefiner*)(X))
42
43 gboolean
44 p2tr_refiner_false_too_big (P2trTriangle *tri)
45 {
46 return FALSE;
47 }
48
49 P2trRefiner*
50 p2tr_refiner_new (gdouble min_angle,
51 P2trTriangleTooBig size_control,
52 P2trCDT *cdt)
53 {
54 return P2T_IMP_TO_REFINER (p2tr_dt_new (min_angle, size_control, cdt));
55 }
56
57 void
58 p2tr_refiner_free (P2trRefiner *self)
59 {
60 p2tr_dt_free (P2T_REFINER_TO_IMP (self));
61 }
62
63 void
64 p2tr_refiner_refine (P2trRefiner *self,
65 gint max_steps,
66 P2trRefineProgressNotify on_progress)
67 {
68 p2tr_dt_refine (P2T_REFINER_TO_IMP (self), max_steps, on_progress);
69 }
70

   
Visit the ZANavi Wiki