Greetings List,<br><br>I am working with 4d flight track data that I use for display in MapServer and many analyses using PostGIS.  <br><br>Flight track data is not able to make good use of spatial indices for any types of analyses (usually crosses() or intersects()) due to the fact that the track geometry tends to be so much larger than the feature being compared to (bounding box for almost all lines will overlap with just about any feature you could come up with within the area of interest).  As such, based on advice from the list, in a restructuring of our db, I am looking at storing our track data as a single segment per record tied together with an id.  This will allow for very accurate use of the spatial index.
<br><br>In addition, this will allow for better indexing and granularity for the time dimension as well as rather than storing a T coordinate with each point, I could make use of the fact that each record only has two points to store a start time and an end time per record.  This would let me only show the _parts_ of a line within a period of time with (currently, I use a time overlap and if a flight is in the air at any point in time during the window, the entire line is shown.  This should, I am guessing, be faster than using the LRS locate_between_measures() function.
<br><br>Can anyone see any options that I am missing here?  Does anyone have an inkling if, for display in MapServer, I should collect and or simplify the data before sending it to MapServer? I am likely to be frequently dealing with hundreds of lines with at the very least dozens of segments a piece.
<br><br>David<br>