[postgis-users] Line To Path

Martin Davis mbdavis at refractions.net
Thu May 1 09:07:07 PDT 2008


I would say you want to apply an affine transform to the object.  This 
is supported in PostGIS, but I don't know the syntax offhand.

Bob Pawley wrote:
> I do have another novice question, if I may.
>  
> I have a non-geographical object whose shape is defined by 
> coordinates. These coordinates not ony establishe the shape of the 
> object but also the objects relative size and its position on the canvas.
>  
> Is there a method of using just the shape of the object dynamically 
> resizing it and choosing its placement on the canvas?
>  
> Bob Pawley
> www.automatingdesign.com <http://www.automatingdesign.com>
>  
>
>     ----- Original Message -----
>     *From:* Obe, Regina <mailto:robe.dnd at cityofboston.gov>
>     *To:* PostGIS Users Discussion
>     <mailto:postgis-users at postgis.refractions.net>
>     *Sent:* Thursday, May 01, 2008 5:19 AM
>     *Subject:* RE: [postgis-users] Line To Path
>
>     I wouldn't quite call it runnning the function in that table. 
>     Basically the SQL statement will create a temporary or in memory
>     table so to speak.  So short answer - yes it is correct - no need
>     to create a new table or geometry column.  Sometimes you may want
>     to if you use it often or you are grouping many geometries since
>     the planner has to recalculate each time if it is a dynamic query
>     as below or view (a saved dynamic query as Kevin pointed out in
>     last post) .
>      
>      
>     Well there should be an alias there otherwise it usually will just
>     alias it as something dumb like ST_Union - so let me correct my
>     mistake.
>     SELECT somefield, ST_Union(the_geom) as newgeom
>     FROM sometable
>     GROUP BY somefield;
>      
>     If you wanted to materialize it, I tend to do something like
>      
>     SELECT somefield, ST_Union(the_geom) as newgeom
>     INTO somenewtable
>     FROM sometable
>     GROUP BY somefield;
>      
>     A lot of people do
>     CREATE TABLE somenewtable As
>     SELECT somefield, ST_Union(the_geom) as newgeom
>     FROM sometable
>     GROUP BY somefield;
>      
>     But I tend to avoid that second syntax since its not as portable
>     as option 1 (from DBMS to DBMS at least the DBMS I tend to deal
>     with) and the speed is the same.  Granted
>     I guess the second version is a bit clearer.
>      
>     Hope that helps,
>     Regina
>
>
>     ------------------------------------------------------------------------
>     *From:* postgis-users-bounces at postgis.refractions.net
>     [mailto:postgis-users-bounces at postgis.refractions.net] *On Behalf
>     Of *George Silva
>     *Sent:* Wednesday, April 30, 2008 10:47 PM
>     *To:* PostGIS Users Discussion
>     *Subject:* Re: [postgis-users] Line To Path
>
>     In the same trailing of that question and the answer, that select
>     statement would run the function st_union in that table, without
>     the need to create a new table or geometry column?
>      
>     Sorry to use this post for this, just tought its a quite novice
>     question, so more people could use the answer.
>      
>     Thx
>      
>     Att.
>      
>     George
>
>     On Wed, Apr 30, 2008 at 7:20 PM, Paragon Corporation <lr at pcorp.us
>     <mailto:lr at pcorp.us>> wrote:
>
>         Bob,
>
>         If I understand you correctly, I think you want to use one of
>         the following
>
>         SELECT somefield, ST_Union(the_geom)
>         FROM sometable
>         GROUP BY somefield
>
>         So lets say you want to collapse 3 rows into 1 then you just
>         need to group
>         by some common field.
>
>         E.g. if somefield = 1 for your 3 records, then those would get
>         rolled into
>         the same record.
>
>         The above will give you a LINESTRING or MULTILINESTRING.  If
>         you have all
>         LINESTRINGS, then may be more efficient to do this.  The below
>         will first
>         collapse all with common somefield into a MULTILINESTRING and
>         then the
>         LineMerge will do the best it can to stitch back into a single
>         line string.
>         This is not possible with completely disjoint linestrings.
>
>         SELECT somefield, ST_LineMerge(ST_Collect(the_geom))
>         FROM sometable
>         GROUP BY somefield
>
>
>         If you are using the older version of Postgis, you can just
>         take out the ST_
>         in the examples I have above.
>
>         Hope that helps,
>         Regina
>
>         -----Original Message-----
>         From: postgis-users-bounces at postgis.refractions.net
>         <mailto:postgis-users-bounces at postgis.refractions.net>
>         [mailto:postgis-users-bounces at postgis.refractions.net
>         <mailto:postgis-users-bounces at postgis.refractions.net>] On
>         Behalf Of Bob
>         Pawley
>         Sent: Wednesday, April 30, 2008 12:40 PM
>         To: PostGIS Users Discussion
>         Subject: [postgis-users] Line To Path
>
>         Is there a method of converting three lines that require three
>         rows into a
>         path that occupies a single row??
>
>         Bob Pawley
>
>         _______________________________________________
>         postgis-users mailing list
>         postgis-users at postgis.refractions.net
>         <mailto:postgis-users at postgis.refractions.net>
>         http://postgis.refractions.net/mailman/listinfo/postgis-users
>
>
>
>         _______________________________________________
>         postgis-users mailing list
>         postgis-users at postgis.refractions.net
>         <mailto:postgis-users at postgis.refractions.net>
>         http://postgis.refractions.net/mailman/listinfo/postgis-users
>
>
>     ------------------------------------------------------------------------
>
>     *The substance of this message, including any attachments, may be
>     confidential, legally privileged and/or exempt from disclosure
>     pursuant to Massachusetts law. It is intended solely for the
>     addressee. If you received this in error, please contact the
>     sender and delete the material from any computer. *
>
>     ------------------------------------------------------------------------
>
>     *Help make the earth a greener place. If at all possible resist
>     printing this email and join us in saving paper. *
>
>     * *
>
>     ------------------------------------------------------------------------
>     _______________________________________________
>     postgis-users mailing list
>     postgis-users at postgis.refractions.net
>     http://postgis.refractions.net/mailman/listinfo/postgis-users
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
>   

-- 
Martin Davis
Senior Technical Architect
Refractions Research, Inc.
(250) 383-3022




More information about the postgis-users mailing list