Thank you Daniel and Mateusz for your input! I have spent the last
few days getting acquainted with the source code, and currently my
theory is that most of the time is spent reading attribute data - our
test data also has over 50 attribute fields. But since we primarily
want to render the objects on the screen, we are not interested in
loading the attribute data for all objects. So I'll try to remove the
attribute loading and see if it makes a big difference.
In another use case, we would like to run attribute querys, and here
we might want to do the opposite - avoid loading the geometry data.
It is also becoming clear to me that the attribute indexes aren't
used when using GetNextFeature(), but the search is linear - am I
right? We will probably need to implement support for indexed search.
Another detail that I've found (but that probably doesn't affect this
particular case) is that the envelope of a polygon seems to be
calculated for each polygon object to be tested for a spatial query,
although the envelope is already known from the object header in the
MAP file. So if a polygon has 100 000 points, all the points will be
gone through just to calculate the envelope that is already known.
I'll see if I can fix this. Please correct me if I'm wrong.
Any modifications of MITAB that we make will of course be posted back
to Daniel for the benefit of others.
> It should be efficient enough. However, there may be performance
> difference between accessing built-in flash memory and memory card.
> I'd suggest to try to read data from memory and from card and
> compare results.
You're right in that our data is on a storage card, but it has to be
that way. I also believe that disk access is the main problem here,
so the solution should be to minimize disk access.
Any comments or suggestions are of course most welcome!
Regards,
Jerker
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/mitab/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/mitab/join
(Yahoo! ID required)
<*> To change settings via email:
mailto:[EMAIL PROTECTED]
mailto:[EMAIL PROTECTED]
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/