Markus Metz baa791e3e9 avoid struct stat %!s(int64=14) %!d(string=hai) anos
..
Makefile 002bbe23df Keep all library dependencies in Grass.make %!s(int64=15) %!d(string=hai) anos
README da6b6e3a9f orthography %!s(int64=15) %!d(string=hai) anos
area.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
array.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
ascii.c 92ba88a4e4 accept D:M:S coords in standard mode (merge from devbr6) %!s(int64=14) %!d(string=hai) anos
box.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
break_lines.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
break_polygons.c 62a5737c3b add balanced search tree to lib, update Vlib and segment %!s(int64=15) %!d(string=hai) anos
bridges.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
buffer.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
buffer2.c 73623901d6 added missing headers %!s(int64=15) %!d(string=hai) anos
build.c e62a3956c9 libvect: implement V1/2_delete_line_ogr() %!s(int64=15) %!d(string=hai) anos
build_nat.c aee6f2ede5 only attach isles that are not attached %!s(int64=14) %!d(string=hai) anos
build_ogr.c e62a3956c9 libvect: implement V1/2_delete_line_ogr() %!s(int64=15) %!d(string=hai) anos
cats.c 5e156c2c1a v.clean: OGR support (read access) %!s(int64=15) %!d(string=hai) anos
cindex.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
clean_nodes.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
close.c 6d806ab04c support GV_FORMAT_OGR_DIRECT %!s(int64=15) %!d(string=hai) anos
close_nat.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
close_ogr.c 994deb050b initial steps towards direct OGR support (map/layer <-> OGR dsn/layer) %!s(int64=15) %!d(string=hai) anos
constraint.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
dangles.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
dbcolumns.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
dgraph.c 73623901d6 added missing headers %!s(int64=15) %!d(string=hai) anos
dgraph.h b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
e_intersect.c 1118067a86 vlib: modify prototypes to use 'const' %!s(int64=16) %!d(string=hai) anos
e_intersect.h 11cd111cbd Vlib: Vect_line_buffe2(), Vect_area_buffer2(), Vect_point_buffer2() and %!s(int64=16) %!d(string=hai) anos
error.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
field.c 14a816989c don't set layer to 0 for layers without table %!s(int64=15) %!d(string=hai) anos
find.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
geos.c bffe7d50e6 Revert https://trac.osgeo.org/grass/changeset/38872 (re-instate https://trac.osgeo.org/grass/changeset/38867) %!s(int64=15) %!d(string=hai) anos
graph.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
header.c 619b3f6325 Eliminate G_index(), G_rindex(); replace with strchr(), strrchr() %!s(int64=15) %!d(string=hai) anos
hist.c f2f1c00894 Vect_hist_copy: skip empty old hist %!s(int64=15) %!d(string=hai) anos
init_head.c bfe1fa1a17 initialize and set proj and zone in vector head %!s(int64=15) %!d(string=hai) anos
intersect.c 69268e2741 Vlib new spatial index %!s(int64=16) %!d(string=hai) anos
legal_vname.c 69ac420b2f gislib G__name_is_fully_qualified() renamed to %!s(int64=15) %!d(string=hai) anos
level.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
level_two.c 654df1b78e long -> plus_t %!s(int64=15) %!d(string=hai) anos
line.c 2b364a9280 vlib: new fns - Vect_line_get_point() & Vect_get_num_line_points() %!s(int64=15) %!d(string=hai) anos
list.c 2b364a9280 vlib: new fns - Vect_line_get_point() & Vect_get_num_line_points() %!s(int64=15) %!d(string=hai) anos
map.c baa791e3e9 avoid struct stat %!s(int64=14) %!d(string=hai) anos
merge_lines.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
net.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
open.c 31176b9605 fix https://trac.osgeo.org/grass/changeset/42320 %!s(int64=15) %!d(string=hai) anos
open_nat.c 31176b9605 fix https://trac.osgeo.org/grass/changeset/42320 %!s(int64=15) %!d(string=hai) anos
open_ogr.c 9bc3508fdb cosmetics %!s(int64=15) %!d(string=hai) anos
overlap.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
overlay.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
poly.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
read.c d308642604 vlib: Vect_get_field_number() added %!s(int64=15) %!d(string=hai) anos
read_nat.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
read_ogr.c 4b918ac7d8 vlib: fix reading areas from OGR sources %!s(int64=15) %!d(string=hai) anos
remove_areas.c f7d1fde6fa partially revert https://trac.osgeo.org/grass/changeset/42962 %!s(int64=14) %!d(string=hai) anos
remove_duplicates.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
rewind.c 6d806ab04c support GV_FORMAT_OGR_DIRECT %!s(int64=15) %!d(string=hai) anos
rewind_nat.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
rewind_ogr.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
select.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
simple_features.c 16ef6508ae fix prototype names (SFA) %!s(int64=15) %!d(string=hai) anos
sindex.c 309fab1b5f select 3D lines with 2D polygon %!s(int64=15) %!d(string=hai) anos
snap.c 62a5737c3b add balanced search tree to lib, update Vlib and segment %!s(int64=15) %!d(string=hai) anos
tin.c b06b8a0105 vectorlib: %!s(int64=15) %!d(string=hai) anos
type.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
window.c c6a35b1124 Vect.h renamed to vector.h %!s(int64=16) %!d(string=hai) anos
write.c 021f34879d format %!s(int64=15) %!d(string=hai) anos
write_nat.c 61b671bb99 cosmetics %!s(int64=14) %!d(string=hai) anos
write_ogr.c 6221b2619e vlib: add missing doxygen strings %!s(int64=15) %!d(string=hai) anos

README

Dangles
---------
GRASS doesn't allow areas/islands with dangles. If an island has dangle, it is not built
and attached to outer area and as a consequence, some functions do not work as expected.
For example Vect_area_area() and Vect_find_area().
Se comments in build_nat.c: Vect_attach_centroids()

Category index
----------------
Category index is created when Vect_build(), i.e. Vect_build_partial(, GV_BUILD_ALL,)
is called. Plus_head.cidx_up_to_date is set to 1 if Category index is created.
Any later call to Vect_write_line() / Vect_rewrite_line() / Vect_delete_line() resets
Plus_head.cidx_up_to_date to 0 and doesn't update category index.
All modules using update on level 2 must call full build, i.e. Vect_build(), at the end.

All features without category are written to category index of field 0.
The category index also stores type of feature, that makes it possible to find areas
without centroid through category index.