[GRASS-dev] Re: [tlaronde: ticket #542: vector for GRASS 7]

Markus Neteler neteler at osgeo.org
Sat Dec 5 04:25:05 EST 2009


Forwarded to the list upon request from T Laronde.

On Fri, Dec 4, 2009 at 3:27 PM,  <tlaronde at polynum.com> wrote:
> Hello,
>
> I stumbled upon the "new ideas" for vector of GRASS 7 and wanted to give
> hints. I'm not subscribed to grass-dev (and don't want to) so I'm not
> sure if the message will be accepted or not by the program managing the
> list.
>
> FWIW, here are my comments. You can do whatever you feel with them.
>
> Since it is clear that the ones commenting---and they say it...---don't
> understand the vectorial stuff and are even not developers, it will be
> IMO a very bad idea to let people adding at haphazard mess in this
> area...
>
> Cheers,
> --
> Thierry Laronde (Alceste) <tlaronde +AT+ polynum +dot+ com>
>                 http://www.kergis.com/
> Key fingerprint = 0FF7 E906 FBAF FE95 FD89  250D 52B1 AE95 6006 F40C
>
>
> ---------- Forwarded message ----------
> From: tlaronde
> To: grass-dev at lists.osgeo.org
> Date: Fri, 4 Dec 2009 15:15:27 +0100
> Subject: ticket #542: vector for GRASS 7
> [Please CC me on replies, since I'm not subscribed.]
>
> FWIW, having given a look at GPL GRASS plans for 7.0, I stumbled upon
> ticket #542 about "new ideas" for vector.
>
> May I suggest: don't do that! It seems that, since Radim Blazek
> leaved, no one has really grasped the vector "philosophy"---at least if
> you want GRASS to continue to be topological.
>
> IMO, the first thing you should do is to create a lexicon, that is a
> list of normalised words for GRASS and their meaning; this will avoid
> the confusion between "lines" and "arcs" for example. Particularly,
> when, for GRASS, two things are clearly distinct, even if in current
> speaking there are fuzzy, you must impose two distinct words. Example:
> arcs are the primitives of the vector definition (level 0). "Lines" are
> geometrical objects deduced from primitives, as are "points", "faces"
> and, perhaps, "volumes". Nodes are not geometrical objects : they are
> topological creations. Centroïds are not geometrical objects neither, but
> just a topological mean to _store_ attribute information : this is
> attributed to a _geometrical_ object (hence: a "point", a "line", a
> "face" or a "volume") if the point is equal to a point, along a line, on
> a face or inside a volume. Note: I use special words, distinct words for
> the topological relations so that in the _code_ saying "equal" means
> point; saying "along" means line; saying "on" means face and so on.
> Always distinct words for distinct meanings, and when possible, the
> first letter, or the two first letters are sufficient to tell the
> complete word.
>
> The level 0 is just the storage of the _arcs_. Even geometrical elements
> "points" are stored as _arcs_ (two vertices identical).
>
> The level 0 is needed for the definition of the primitives and for the
> construction of the topology. It is not needed for a huge part of the
> applications when you do not need _metrics_. Topology gives _order_ ;
> coordinate system, definitions, arcs give you _metrics_. So improving
> the reading of the _arcs_ is only needed from time to time.
>
> The topology gives you direct access (offsets) to the metrics if needed.
> So there is already information to speed things.
>
> May I say that the main problems are not to "improve" your current (new)
> vector handling, but to clean the problems introduced. Specifically,
> merging the Sites as Points in the vector was, IMO, an error. There is a
> need for the grid (also called: raster but this is a bad name),
> singularities (Sites) and topological vector (arcs).
>
> Secondly, the introduction of 3D in vector is not perhaps a great idea
> if you remember what a GIS is mainly for. For the coordinates systems,
> there is a surface of reference: a geoïde, simplified as an ellipsoïde.
> The grid is a mean, along with a connexion of Sites to described a more
> complexe surface relative to the geoïde (via the ellipsoïde).
> Generally, in cartography, the vector lines are drawn on the surface.
> So the 3D is given by the grid or the triangulation of Sites
> underneath. Imagine a corrugated iron as a surface. You can draw
> two "straight lines" (view from above) ; view from the side, they
> are not straight at all. But since they are linked to the surface,
> you can describe them by a starting and an ending vertice; you do
> not need, at every moment, to drag a whole Bezier description. Only
> when you need the 3D, you combine the surface with the straight
> lines.  And if you change the description of the surface, you do
> not need to change the description of the vector:  it is "just"
> drawn on the surface linked, whatever it is. You need 3D only for
> metrics; and if the vectors objects are not on the same surface,
> you describe them in distinct layers.
>
> Just to give you the incentive to think twice about the vectorial stuff.
> It is really an interesting part, and the CERL GRASS strength is the
> topological stuff. Take the time to understand this deeply first, before
> making "something" just because "new" is an advertising word.
>
> HTH
> --
> Thierry Laronde (Alceste) <tlaronde +AT+ polynum +dot+ com>
>                 http://www.kergis.com/
> Key fingerprint = 0FF7 E906 FBAF FE95 FD89  250D 52B1 AE95 6006 F40C
>
>


More information about the grass-dev mailing list