[GRASS-dev] trying to amend d.vect.chart - need for advice

Moritz Lennert mlennert at club.worldonline.be
Wed Sep 6 15:44:14 EDT 2006


On Wed, September 6, 2006 21:24, Michael Barton wrote:
> I know I may be asking a lot. But if you are successful with this project,
> what do you think about turning d.vect.thematic into a C-code module too?
> Many of the functions might be similar to those in d.vect.chart.

In the discussions about how to amend d.vect.chart, we have actually come
to the conclusion that what you suggest is what we need ideally. It just
is a larger project, so we might start with amending d.vect.chart.

The biggest problem is actually to learn the vector library. I have to
admit that I don't find the programmer's manual the most intuitive to find
what I am looking for.

Moritz

>
> Michael
> __________________________________________
> Michael Barton, Professor of Anthropology
> School of Human Evolution & Social Change
> Center for Social Dynamics and Complexity
> Arizona State University
>
> phone: 480-965-6213
> fax: 480-965-7671
> www: http://www.public.asu.edu/~cmbarton
>
>
>> From: Moritz Lennert <mlennert at club.worldonline.be>
>> Date: Wed, 06 Sep 2006 14:17:23 +0200
>> To: Grass Developers List <grass-dev at grass.itc.it>
>> Subject: [GRASS-dev] trying to amend d.vect.chart - need for advice
>>
>> Hello,
>>
>> With a colleague we are trying to amend d.vect.chart in order to
>>
>> 1) speed it up
>> 2) allow a where clause
>>
>> Currently, d.vect.chart loops through each vector feature and opens a
>> new db cursor to fetch the column information. On a map with a fair
>> amount of features (20464 centroids) with the table in Postgresql it
>> seems that the db connection is what takes the most of the time (even
>> worse obviously when the map is linked to a view which needs to be
>> recalculated for every feature).
>>
>> So currently, the program's logic is as follows (in
>> display/d.vect.chart/plot.c):
>>
>> - get number of features (little aside question: why is this done with
>> Vect_get_num_lines() which should return number of lines, not number of
>> features - as you can see I'm very new to the vector library)
>> - loop through each feature:
>>     - get cat of feature
>>     - open cursor selecting columns [and sizecol] for this feature
>> according to cat
>>     - close cursor
>>     - plot with this info
>>
>> We would like to modify this according to the following logic:
>>
>> - add a 'where' option
>> - open a cursor selecting cat, columns [and sizecol] limited by the
>> where option
>> - loop through the cursor:
>>     - find x,y values according to cat
>>     - plot with this info
>> - close cursor
>>
>> I have two main questions about this:
>>
>> 1) Does this sound reasonable ? Anything we are missing ?
>> 2) Is there a function to get x,y point values according to cat value ?
>>
>> Thanks,
>>
>> Moritz
>>
>>
>
>





More information about the grass-dev mailing list