Thread: code contribution
Hello, I'd like to contribute new code for Postgres geometry type 'path' operations (including line buffer). Where should I send this? ----------- Alex Shevlakov, Motivation Free Software consulting, Moscow, Russia ----------- http://motivation.ru
> I'd like to contribute new code for Postgres geometry type 'path' operations > (including line buffer). Where should I send this? Send to pgsql-patches@postgresql.org. It may be helpful to (i.e. please do) post a summary of what you are intending to send to this mailing list so folks have an idea of what is coming... Regards. - Tom
And remember to use 'cvs diff -c' to generate context sensitive diffs against CVS... Chris > -----Original Message----- > From: pgsql-hackers-owner@postgresql.org > [mailto:pgsql-hackers-owner@postgresql.org]On Behalf Of Thomas Lockhart > Sent: Tuesday, 7 May 2002 10:01 PM > To: Alex Shevlakov > Cc: pgsql-hackers@postgresql.org > Subject: Re: [HACKERS] code contribution > > > > I'd like to contribute new code for Postgres geometry type > 'path' operations > > (including line buffer). Where should I send this? > > Send to pgsql-patches@postgresql.org. It may be helpful to (i.e. please > do) post a summary of what you are intending to send to this mailing > list so folks have an idea of what is coming... > > Regards. > > - Tom > > ---------------------------(end of broadcast)--------------------------- > TIP 5: Have you checked our extensive FAQ? > > http://www.postgresql.org/users-lounge/docs/faq.html >
New 'path' functions (test results can be found at http://motivation.ru/grass/buff_q_example.html): There are not many (as my task was only limited to extending GRASS vector capabilities to buffering): /*check if a point is within buffer of line*/ Datum path_buffer_contain_pt(PG_FUNCTION_ARGS); /*removes multiple repeated points from path*/ Datum path_without_doubles (PG_FUNCTION_ARGS); static PATH * path_no_dbles(PATH *path); /*returns closed path which is buffer to another path*/ Datum return_path_buffer(PG_FUNCTION_ARGS); /*used to insert points along circle segment between two ends of non-intersecting buffer segments, smoothing the buffer*/ static Point * point_rotate (Point *lpoint, Point *ax_point, float ang, int k, int n, int napr); /*writes path to arcinfo UNGENERATE format which is particularly useful for viewing buffer in GRASS*/ Datum write_path_to_file(PG_FUNCTION_ARGS); int write_path_to_file_internal(PATH *path, char *str ); /*generalize path,i.e., leave each third, or fourth, etc., point*/ Datum reduce_path_points(PG_FUNCTION_ARGS); static PATH *path_reduce(PATH * path, int n_reduce); On Tue, May 07, 2002 at 07:01:05AM -0700, Thomas Lockhart wrote: > > I'd like to contribute new code for Postgres geometry type 'path' operations > > (including line buffer). Where should I send this? > > Send to pgsql-patches@postgresql.org. It may be helpful to (i.e. please > do) post a summary of what you are intending to send to this mailing > list so folks have an idea of what is coming... > > Regards. > > - Tom
Sorry, I am just getting to this. I have the patch in my email box too. Can you explain what "buffer of line" is? I want to know if it is of general usefulness. --------------------------------------------------------------------------- Alex Shevlakov wrote: > New 'path' functions (test results can be found at http://motivation.ru/grass/buff_q_example.html): > > There are not many (as my task was only limited to extending GRASS vector > capabilities to buffering): > > /*check if a point is within buffer of line*/ > Datum path_buffer_contain_pt(PG_FUNCTION_ARGS); > > /*removes multiple repeated points from path*/ > Datum path_without_doubles (PG_FUNCTION_ARGS); > static PATH * path_no_dbles(PATH *path); > > /*returns closed path which is buffer to another path*/ > Datum return_path_buffer(PG_FUNCTION_ARGS); > > /*used to insert points along circle segment between two ends of non-intersecting buffer segments, smoothing the buffer*/ > static Point * point_rotate (Point *lpoint, Point *ax_point, float ang, > int k, int n, int napr); > > /*writes path to arcinfo UNGENERATE format which is particularly useful for viewing buffer in GRASS*/ > Datum write_path_to_file(PG_FUNCTION_ARGS); > int write_path_to_file_internal(PATH *path, char *str ); > > /*generalize path,i.e., leave each third, or fourth, etc., point*/ > Datum reduce_path_points(PG_FUNCTION_ARGS); > static PATH *path_reduce(PATH * path, int n_reduce); > > On Tue, May 07, 2002 at 07:01:05AM -0700, Thomas Lockhart wrote: > > > I'd like to contribute new code for Postgres geometry type 'path' operations > > > (including line buffer). Where should I send this? > > > > Send to pgsql-patches@postgresql.org. It may be helpful to (i.e. please > > do) post a summary of what you are intending to send to this mailing > > list so folks have an idea of what is coming... > > > > Regards. > > > > - Tom > > ---------------------------(end of broadcast)--------------------------- > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania19026
I am not sure that this has enough general interest to be included in our code. If you make a loadable module, we can add it to our web site. --------------------------------------------------------------------------- Alex Shevlakov wrote: > New 'path' functions (test results can be found at http://motivation.ru/grass/buff_q_example.html): > > There are not many (as my task was only limited to extending GRASS vector > capabilities to buffering): > > /*check if a point is within buffer of line*/ > Datum path_buffer_contain_pt(PG_FUNCTION_ARGS); > > /*removes multiple repeated points from path*/ > Datum path_without_doubles (PG_FUNCTION_ARGS); > static PATH * path_no_dbles(PATH *path); > > /*returns closed path which is buffer to another path*/ > Datum return_path_buffer(PG_FUNCTION_ARGS); > > /*used to insert points along circle segment between two ends of non-intersecting buffer segments, smoothing the buffer*/ > static Point * point_rotate (Point *lpoint, Point *ax_point, float ang, > int k, int n, int napr); > > /*writes path to arcinfo UNGENERATE format which is particularly useful for viewing buffer in GRASS*/ > Datum write_path_to_file(PG_FUNCTION_ARGS); > int write_path_to_file_internal(PATH *path, char *str ); > > /*generalize path,i.e., leave each third, or fourth, etc., point*/ > Datum reduce_path_points(PG_FUNCTION_ARGS); > static PATH *path_reduce(PATH * path, int n_reduce); > > On Tue, May 07, 2002 at 07:01:05AM -0700, Thomas Lockhart wrote: > > > I'd like to contribute new code for Postgres geometry type 'path' operations > > > (including line buffer). Where should I send this? > > > > Send to pgsql-patches@postgresql.org. It may be helpful to (i.e. please > > do) post a summary of what you are intending to send to this mailing > > list so folks have an idea of what is coming... > > > > Regards. > > > > - Tom > > ---------------------------(end of broadcast)--------------------------- > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania19026