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

Vector library - clean geometry (remove duplicates) More...

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

Go to the source code of this file.


void Vect_remove_duplicates (struct Map_info *Map, int type, struct Map_info *Err)
 Remove duplicate lines from vector map. More...
int Vect_line_check_duplicate (const struct line_pnts *APoints, const struct line_pnts *BPoints, int with_z)
 Check for duplicate lines. More...

Detailed Description

Vector library - clean geometry (remove duplicates)

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.

Radim Blazek

Definition in file remove_duplicates.c.

Function Documentation

int Vect_line_check_duplicate ( const struct line_pnts *  APoints,
const struct line_pnts *  BPoints,
int  with_z 

Check for duplicate lines.

APointsfirst line geometry
BPointssecond line geometry
1 duplicate
0 not duplicate

Definition at line 129 of file remove_duplicates.c.

Referenced by wxdisplay.DisplayDriver::GetDuplicates(), and Vect_remove_duplicates().

void Vect_remove_duplicates ( struct Map_info *  Map,
int  type,
struct Map_info *  Err 

Remove duplicate lines from vector map.

Remove duplicate lines of given types from vector map. Duplicate lines may be optionally written to error map. Input map must be opened on level 2 for update. Categories are merged.

Mapvector map where duplicate lines will be deleted
typetype of line to be delete
Errvector map where duplicate lines will be written or NULL

Definition at line 38 of file remove_duplicates.c.

References G_debug(), G_percent(), G_verbose_message(), Vect_cat_set(), Vect_delete_line(), Vect_get_num_lines(), Vect_is_3d(), Vect_line_alive(), Vect_line_box(), Vect_line_check_duplicate(), Vect_new_cats_struct(), Vect_new_line_struct(), Vect_new_list(), Vect_read_line(), Vect_rewrite_line(), Vect_select_lines_by_box(), and Vect_write_line().