GRASS GIS 8 Programmer's Manual
8.5.0dev(2024)-36359e2344
|
Vector library - topology level functions. More...
Go to the source code of this file.
Functions | |
plus_t | Vect_get_num_nodes (struct Map_info *Map) |
Get number of nodes in vector map. More... | |
plus_t | Vect_get_num_primitives (struct Map_info *Map, int type) |
Get number of primitives in vector map. More... | |
plus_t | Vect_get_num_lines (struct Map_info *Map) |
Fetch number of features (points, lines, boundaries, centroids) in vector map. More... | |
plus_t | Vect_get_num_areas (struct Map_info *Map) |
Get number of areas in vector map. More... | |
plus_t | Vect_get_num_kernels (struct Map_info *Map) |
Fetch number of kernels in vector map. More... | |
plus_t | Vect_get_num_faces (struct Map_info *Map) |
Get number of faces in vector map. More... | |
plus_t | Vect_get_num_volumes (struct Map_info *Map) |
Fetch number of volumes in vector map. More... | |
plus_t | Vect_get_num_islands (struct Map_info *Map) |
Get number of islands in vector map. More... | |
plus_t | Vect_get_num_holes (struct Map_info *Map) |
Fetch number of holes in vector map. More... | |
int | Vect_get_num_dblinks (struct Map_info *Map) |
Get number of defined dblinks. More... | |
int | Vect_get_num_updated_lines (struct Map_info *Map) |
Get number of updated features. More... | |
int | Vect_get_updated_line (struct Map_info *Map, int idx) |
Get updated line by index. More... | |
off_t | Vect_get_updated_line_offset (struct Map_info *Map, int idx) |
Get updated line offset by index. More... | |
int | Vect_get_num_updated_nodes (struct Map_info *Map) |
Get number of updated nodes. More... | |
int | Vect_get_updated_node (struct Map_info *Map, int idx) |
Get updated (modified) node by index. More... | |
int | Vect_get_line_type (struct Map_info *Map, int line) |
Get line type. More... | |
int | Vect_get_node_coor (struct Map_info *Map, int num, double *x, double *y, double *z) |
Get node coordinates. More... | |
int | Vect_get_line_nodes (struct Map_info *Map, int line, int *n1, int *n2) |
Get line nodes. More... | |
int | Vect_get_line_areas (struct Map_info *Map, int line, int *left, int *right) |
Get area id on the left and right side of the boundary. More... | |
int | Vect_get_node_n_lines (struct Map_info *Map, int node) |
Get number of lines for node. More... | |
int | Vect_get_node_line (struct Map_info *Map, int node, int line) |
Get line id for node line index. More... | |
float | Vect_get_node_line_angle (struct Map_info *Map, int node, int line) |
Angle of segment of the line connected to the node. More... | |
int | Vect_get_centroid_area (struct Map_info *Map, int centroid) |
Get area id the centroid is within. More... | |
void | Vect_set_updated (struct Map_info *Map, int enable) |
Enable/disable maintenance of list of updated lines/nodes. More... | |
void | Vect_reset_updated (struct Map_info *Map) |
Reset list of updated lines/nodes. More... | |
Vector library - topology level functions.
(C) 2001-2009, 2011-2012 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.
Definition in file level_two.c.
int Vect_get_centroid_area | ( | struct Map_info * | Map, |
int | centroid | ||
) |
Get area id the centroid is within.
Map | pointer to Map_info struct |
centroid | centroid id |
Definition at line 429 of file level_two.c.
Referenced by Vedit_delete_area_centroid().
int Vect_get_line_areas | ( | struct Map_info * | Map, |
int | line, | ||
int * | left, | ||
int * | right | ||
) |
Get area id on the left and right side of the boundary.
Negative area id indicates an isle.
Map | pointer to Map_info struct | |
line | line id | |
[out] | left,right | area id on the left and right side |
Definition at line 346 of file level_two.c.
int Vect_get_line_nodes | ( | struct Map_info * | Map, |
int | line, | ||
int * | n1, | ||
int * | n2 | ||
) |
Get line nodes.
Map | pointer to Map_info struct |
line | line id |
n1 | (start node), n2 (end node) ids of line nodes (or NULL) |
Definition at line 303 of file level_two.c.
int Vect_get_line_type | ( | struct Map_info * | Map, |
int | line | ||
) |
Get line type.
Map | pointer to Map_info struct |
line | line id |
Definition at line 254 of file level_two.c.
int Vect_get_node_coor | ( | struct Map_info * | Map, |
int | num, | ||
double * | x, | ||
double * | y, | ||
double * | z | ||
) |
Get node coordinates.
Map | pointer to Map_info struct | |
num | node id (starts at 1) | |
[out] | x,y,z | coordinates values (for 2D coordinates z is NULL) |
Definition at line 274 of file level_two.c.
References _, G_warning(), Plus_head::n_nodes, Plus_head::Node, NULL, Map_info::plus, P_node::x, x, P_node::y, and P_node::z.
Referenced by Vect_find_node().
int Vect_get_node_line | ( | struct Map_info * | Map, |
int | node, | ||
int | line | ||
) |
Get line id for node line index.
Map | pointer to Map_info struct |
node | node id |
line | line index (range: 0 - Vect_get_node_n_lines()) |
Definition at line 396 of file level_two.c.
float Vect_get_node_line_angle | ( | struct Map_info * | Map, |
int | node, | ||
int | line | ||
) |
Angle of segment of the line connected to the node.
Map | pointer to Map_info struct |
node | node number |
line | line index (range: 0 - Vect_get_node_n_lines()) |
Definition at line 412 of file level_two.c.
int Vect_get_node_n_lines | ( | struct Map_info * | Map, |
int | node | ||
) |
Get number of lines for node.
Map | pointer to Map_info struct |
node | node id |
Definition at line 380 of file level_two.c.
Get number of areas in vector map.
Map | pointer to Map_info struct |
Definition at line 87 of file level_two.c.
References Plus_head::n_areas, and Map_info::plus.
Referenced by vector2perimeters(), and Vedit_delete_areas_cat().
int Vect_get_num_dblinks | ( | struct Map_info * | Map | ) |
Get number of defined dblinks.
Map | pointer to Map_info struct |
Definition at line 159 of file level_two.c.
References Map_info::dblnk, and dblinks::n_fields.
Referenced by Vect_copy_map_dblinks(), Vect_get_field2(), and Vect_get_field_number().
Get number of faces in vector map.
Map | pointer to Map_info struct |
Definition at line 111 of file level_two.c.
References Plus_head::n_flines, and Map_info::plus.
Fetch number of holes in vector map.
Map | pointer to Map_info struct |
Definition at line 147 of file level_two.c.
References Plus_head::n_holes, and Map_info::plus.
Get number of islands in vector map.
Map | pointer to Map_info struct |
Definition at line 135 of file level_two.c.
References Plus_head::n_isles, and Map_info::plus.
Fetch number of kernels in vector map.
Map | pointer to Map_info struct |
Definition at line 99 of file level_two.c.
References Plus_head::n_klines, and Map_info::plus.
Fetch number of features (points, lines, boundaries, centroids) in vector map.
Map | pointer to Map_info struct |
Definition at line 75 of file level_two.c.
References Plus_head::n_lines, and Map_info::plus.
Referenced by NetA_initialise_varray(), and Vect_fidx_dump().
Get number of nodes in vector map.
Map | pointer to Map_info struct |
Definition at line 34 of file level_two.c.
References Plus_head::n_nodes, and Map_info::plus.
Get number of primitives in vector map.
Map | pointer to Map_info struct |
type | feature type |
Definition at line 47 of file level_two.c.
int Vect_get_num_updated_lines | ( | struct Map_info * | Map | ) |
Get number of updated features.
Note: Vect_set_updated() must be called to maintain list of updated features
Map | pointer to Map_info struct |
Definition at line 175 of file level_two.c.
References Plus_head::n_uplines, Map_info::plus, and Plus_head::uplist.
int Vect_get_num_updated_nodes | ( | struct Map_info * | Map | ) |
Get number of updated nodes.
Map | pointer to Map_info struct |
Definition at line 219 of file level_two.c.
References Plus_head::n_upnodes, Map_info::plus, and Plus_head::uplist.
Fetch number of volumes in vector map.
Map | pointer to Map_info struct |
Definition at line 123 of file level_two.c.
References Plus_head::n_volumes, and Map_info::plus.
int Vect_get_updated_line | ( | struct Map_info * | Map, |
int | idx | ||
) |
Get updated line by index.
Note: Vect_set_updated() must be called to maintain list of updated features
Map | pointer to Map_info struct |
idx | index |
Definition at line 191 of file level_two.c.
References Map_info::plus, Plus_head::uplines, and Plus_head::uplist.
off_t Vect_get_updated_line_offset | ( | struct Map_info * | Map, |
int | idx | ||
) |
Get updated line offset by index.
Note: Vect_set_updated() must be called to maintain list of updated features
Map | pointer to Map_info struct |
idx | index |
Definition at line 207 of file level_two.c.
References Map_info::plus, Plus_head::uplines_offset, and Plus_head::uplist.
int Vect_get_updated_node | ( | struct Map_info * | Map, |
int | idx | ||
) |
Get updated (modified) node by index.
Note: Vect_set_updated() must be called to maintain list of updated features
Negative id:
Map | pointer to Map_info struct |
idx | index |
Definition at line 241 of file level_two.c.
References Map_info::plus, Plus_head::uplist, and Plus_head::upnodes.
void Vect_reset_updated | ( | struct Map_info * | Map | ) |
Reset list of updated lines/nodes.
Map | pointer to Map_info struct |
Definition at line 469 of file level_two.c.
void Vect_set_updated | ( | struct Map_info * | Map, |
int | enable | ||
) |
Enable/disable maintenance of list of updated lines/nodes.
See Plus_head.uplist for details.
Map | pointer to Map_info struct |
enable | TRUE/FALSE to enable/disable |
Definition at line 454 of file level_two.c.
References G_debug(), and Map_info::name.