From: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> |
---|---|
To: | Sean Chittenden <sean(at)chittenden(dot)org> |
Cc: | PostgreSQL-patches <pgsql-patches(at)postgresql(dot)org> |
Subject: | Re: Small doc patch for area() function... |
Date: | 2004-06-02 21:38:46 |
Message-ID: | 200406022138.i52LckI07263@candle.pha.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-patches |
Doc patch applied. The geometry diff you attached is related to
negative zeros. I think you will find geometry_1.out will be a better
match for you. I thought our code now automatically picked the proper
geometry file. However, I can't find out how that file is used.
---------------------------------------------------------------------------
Sean Chittenden wrote:
> Small patch that adds some documentation for the area() function.
> Specifically, point out that intersecting points in a path will yield
> (most likely), unexpected results. Visually these are identical paths,
> but mathematically they're not the same. Ex:
>
> area | plan
> ------
> +-----------------------------------------------------------------------
> -------------------
> -0 | ((0,0),(0,1),(2,1),(2,2),(1,2),(1,0),(0,0))
> 2 | ((0,0),(0,1),(1,1),(1,2),(2,2),(2,1),(1,1),(1,0),(0,0))
>
> The current algorithm for area(PATH) is very quick, but only handles
> non-intersecting paths. I'm going to work on two other functions for
> the PATH data type that determines if a PATH is intersecting or not,
> and a function that returns the area() for an intersecting PATH. The
> intersecting area() function will be considerably slower (I think it's
> going to be O(n!) or worse instead of the current O(n), but that comes
> with the territory).
>
> -sc
>
[ Attachment, skipping... ]
>
>
>
> PS Right now I'm developing on OS-X and there's a geometry regression
> test that's returning -0. FWIW
>
> *** ./expected/geometry.out Fri Oct 31 19:07:07 2003
> --- ./results/geometry.out Thu May 27 22:16:58 2004
> ***************
> *** 117,123 ****
> | (5.1,34.5) | [(1,2),(3,4)] | (3,4)
> | (-5,-12) | [(1,2),(3,4)] | (1,2)
> | (10,10) | [(1,2),(3,4)] | (3,4)
> ! | (0,0) | [(0,0),(6,6)] | (-0,0)
> | (-10,0) | [(0,0),(6,6)] | (0,0)
> | (-3,4) | [(0,0),(6,6)] | (0.5,0.5)
> | (5.1,34.5) | [(0,0),(6,6)] | (6,6)
> --- 117,123 ----
> | (5.1,34.5) | [(1,2),(3,4)] | (3,4)
> | (-5,-12) | [(1,2),(3,4)] | (1,2)
> | (10,10) | [(1,2),(3,4)] | (3,4)
> ! | (0,0) | [(0,0),(6,6)] | (0,0)
> | (-10,0) | [(0,0),(6,6)] | (0,0)
> | (-3,4) | [(0,0),(6,6)] | (0.5,0.5)
> | (5.1,34.5) | [(0,0),(6,6)] | (6,6)
>
> ======================================================================
>
>
>
> --
> Sean Chittenden
>
> ---------------------------(end of broadcast)---------------------------
> TIP 7: don't forget to increase your free space map settings
--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
From | Date | Subject | |
---|---|---|---|
Next Message | Laurent Ballester | 2004-06-02 22:33:29 | Re: eventlog fix |
Previous Message | Bruce Momjian | 2004-06-02 21:29:42 | Re: Cancel/Kill backend functions |