[postgis-users] More information on the new curve type

Bruce Rindahl rindahl at lrcwe.com
Mon Jan 22 13:35:09 PST 2007


Paul
Maybe the genie is out of the bottle.  You now have a curve type with three
control points stored in the database.  What does area(the_geom) return?
Buffer?  I am assuming not supported.
Here is my idea.  You have various curve classes depending on the number of
control point required.  A circular arc needs 3, a Bezier curve needs 4, an
elliptical arc needs 5 (6?).  Enable PostGIS to store/input/output these
classes of curves so the user can do with them what they want.  Call them
curve_3, curve_4, curve_5...
Now when will circular arc be considered implemented?  When a circular arc
(stored as curve_3) correctly returns the appropriate values for area,
bounding_box, intersect, buffer, transform, affine, ....
If others want to store a Bezier curve, then store it as curve_4.  The
geometry functions will not work but the code is there if someone wants to
take a crack at it or pay for it.  Stranger things have happened :)
I know I would love to have these curve types available and would look into
updating the asSVG code to output them in similar displays as Andreas.

Bruce Rindahl

-----Original Message-----
From: postgis-users-bounces at postgis.refractions.net
[mailto:postgis-users-bounces at postgis.refractions.net] On Behalf Of Paul
Ramsey
Sent: Monday, January 22, 2007 9:29 AM
To: PostGIS Users Discussion
Subject: Re: [postgis-users] More information on the new curve type

Right now, because we don't do any operations on the curves, just 
indexing and input/output, they can be said to "support" any 
interpolation type you want... all we store are three control points for 
each curve segment, you can interpret what happens between them how you 
like.

However, once we start implementing operations, you'll find that the 
interpolation type is circular arc, as specified by ISO.  That doesn't 
stop you from using the storage/input/output routines and they doing any 
operations outside the database in a tool that understands your 
interpolation type.

Once you say "curve" everyone starts leaping up and down, asking about 
their favourite interpolation type (Spline! No, clothoid! No, circle! No 
bezier!), and I am not sure how to satisfy that demand without embarking 
on a 10 year development project.  Anyone have any ideas?

Paul

Andreas Neumann wrote:
> Hello,
> 
> I am interested in the new curve type. Is there any information (either 
> by ISO/Opengeospatial or Refractions) available with some examples?
> 
> Specifically, what geometry does the "curve" type support? Does it 
> support spline curves (if yes, which ones) or arc segments? I understand 
> that curve is sort of a superclass of Linestring, etc., but does it also 
> support more complex curves like splines/beziers?
> 
> Thanks for any information,
> Andreas
> 


-- 

   Paul Ramsey
   Refractions Research
   http://www.refractions.net
   pramsey at refractions.net
   Phone: 250-383-3022
   Cell: 250-885-0632
_______________________________________________
postgis-users mailing list
postgis-users at postgis.refractions.net
http://postgis.refractions.net/mailman/listinfo/postgis-users






More information about the postgis-users mailing list