Radim Blazek blazek at itc.it Tue, 23 Sep 2003 12:11:27 +0200 [updated MN Oct 25 2003] I have modified G_site* functions to use vectors. It is temporary solution how to update s.* modules to 5.1/7 v.* without a lot of work. Attributes are supported by G_site_get() but G_site_put() writes CELL category only (attributes may be added later if needed). Old G_site* functions used by v.in.sites are renamed to G_oldsites*. There are only 2 s.* modules in 5.1/7 (s.in.ascii,s.out.ascii; to be removed later) for tests of new SITESLIB. I updated 2 other modules, v.random and v.surf.idw. It is not my intention to update all other s.* modules as mostly I don't know too much about them and don't need them. To updated s.* to v.*, it is typically necessary: 1) ->key = "sites" => "input" / "output" / "vector" 2) ->description="... sites ..." => "... vector points ..." 3) ->gisprompt="old,site_lists,sites" => "old,vector,vector" ->gisprompt="any,site_lists,sites" => "any,vector,vector" ->gisprompt="new,site_lists,sites" => "new,vector,vector" 4) new function name and less parameters: G_find_file ("site_lists",,) => G_find_sites (,) 5) fclose() => G_sites_close() (Hint: to find close(), search for related G_fopen_sites_old()) 6) add #include 7) The Makefile needs a reference to $(SITESLIB). New version is slower (dbf driver, 10000 points): time(200x200cells) time(667x667cells) s.surf.idw 0.43 10.71 v.surf.idw 1.76 11.35 Radim ################## G_site_put() currently only writes 2D sites files. ################## This modified sites lib reads *vector* maps. Any old sites files have to be imported with v.in.sites first.