GRASS Programmer's Manual  6.5.svn(2014)-r66266
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
clean_nodes.c File Reference

Vector library - Clean boundaries at nodes. More...

#include <stdlib.h>
#include <grass/gis.h>
#include <grass/Vect.h>
#include <grass/glocale.h>
Include dependency graph for clean_nodes.c:

Go to the source code of this file.

Functions

int Vect_clean_small_angles_at_nodes (struct Map_info *Map, int otype, struct Map_info *Err)
 Clean small angles at nodes. More...
 

Detailed Description

Vector library - Clean boundaries at nodes.

Higher level functions for reading/writing/manipulating vectors.

(C) 2001-2008 by the GRASS Development Team

This program is free software under the GNU General Public License (>=v2). Read the file COPYING that comes with GRASS for details.

Author
Radim Blazek
Date
2001-2008

Definition in file clean_nodes.c.

Function Documentation

int Vect_clean_small_angles_at_nodes ( struct Map_info *  Map,
int  otype,
struct Map_info *  Err 
)

Clean small angles at nodes.

It may happen that even if the angle between 2 boundaries at node is very small, the calculated angle is 0 because of representation error. The map must be built at least on level GV_BUILD_BASE

Parameters
Mapinput map
Errvector map where error line segments are written
Returns
number of line modifications

Definition at line 39 of file clean_nodes.c.

References G_debug(), G_percent(), main::GV_LINES, NULL, dialogs::type, Vect_append_point(), Vect_cat_set(), Vect_delete_line(), Vect_get_node_coor(), Vect_get_node_line(), Vect_get_node_line_angle(), Vect_get_node_n_lines(), Vect_get_num_nodes(), Vect_line_delete_point(), Vect_line_prune(), Vect_new_cats_struct(), Vect_new_line_struct(), Vect_node_alive(), Vect_points_distance(), Vect_read_line(), Vect_reset_cats(), Vect_reset_line(), Vect_rewrite_line(), Vect_write_line(), and y.