Re: [GRASS-user] 3D Streets Data
On Jan 14, 2008 4:47 PM, Matthew Pulis [EMAIL PROTECTED] wrote: ... ( BTW is there an online version of the Grass book I can buy? Since I am really getting fed up of waiting for it to come by post :\ ) Matthew, the first printing is sold out - Springer told me that the second printing should be ready in three weeks. Yes, there is a digital version, too: http://www.springerlink.com/content/j21632/ Markus ___ grass-user mailing list grass-user@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] 3D Streets Data
Matthew, On Jan 13, 2008 10:20 PM, Matthew Pulis [EMAIL PROTECTED] wrote: Thanks for your prompt answer Markus. The v.out.ogr is what I tried before, but redid it on the new shape-file. These are the first row of the new data : wkt_geom,cat,STSEG,STID,STNAME,DIR_PRE,DIR_SUF,STYPE,CLASS,F_ELEV,T_ELEV,MAP ,PRIV,FRLEFT,TOLEFT,FRRIGHT,TORIGHT,FRLEFT_A,TOLEFT_A,FRRIGHT_A,TORIGHT_A,ST ATEROAD,CARTONAME,CORP,SPEED,ONE_WAY,CLASSNAME,L_ZIPNAME,R_ZIPNAME,FT_COST,T F_COST,LABELNAME,F_NODE,T_NODE,CARTOLEVEL,SHAPE_LEN LINESTRING(625304.649659 214113.544271, 625301.199687 214078.520974, 625299.489761 214056.176602, 625299.289850 214050.649031),1,36074,20863,FIREFLY,,,RD,12,8,8,W0750-03,,101,199,100,198,1 01,119,100,118,0,FIREFLY RD,HS,25,BI,CITY,HOLLY SPRINGS,HOLLY SPRINGS,0.094452,0.094452,FIREFLY RD,0,0,,207.131131 This is how I generated the shape file : GRASS 6.3.0RC1 (nc_spm_06):~ v.out.ogr input=streets3d_new type=line dsn=streets3d_new_shps olayer=testogr lco=SPHT=ARCZ There is a trick here - avoid typos: It is lco=SHPT=ARCZ not: lco=SPHT=ARCZ (I again recommend copy-paste from the manual page) If you specify lco=SPHT=ARCZ correctly, it will indicate 3D export: v.out.ogr input=streets3d type=line dsn=streets3d_new_shps olayer=testogr lco=SHPT=ARCZ WARNING: Vector map streets3d is 3D. Use format specific layer creation options (parameter 'lco') to export in 3D rather than 2D (default) Exporting 49746 points/lines... ... (personally I find the WARNING here inappropriate since I use lco!) Ogrinfo on the streets3d new shape file gave me : GRASS 6.3.0RC1 (nc_spm_06):~ ogrinfo streets3d_new_shps/ INFO: Open of `streets3d_new_shps/' using driver `ESRI Shapefile' successful. 1: testogr (Line String) To get useful output, better run ogrinfo -so streets3d_new_shps/ testogr INFO: Open of `streets3d_new_shps/' using driver `ESRI Shapefile' successful. Layer name: testogr Geometry: 3D Line String = !! worked Feature Count: 49746 Extent: (610869.384850, 196653.348553) - (676816.248304, 258102.572101) Layer SRS WKT: PROJCS[Lambert Conformal Conic, GEOGCS[grs80, DATUM[North_American_Datum_1983, SPHEROID[Geodetic_Reference_System_1980,6378137,298.257222101]], PRIMEM[Greenwich,0], UNIT[Degree,0.017453292519943295]], PROJECTION[Lambert_Conformal_Conic_2SP], PARAMETER[standard_parallel_1,36.16], PARAMETER[standard_parallel_2,34.34], PARAMETER[latitude_of_origin,33.75], PARAMETER[central_meridian,-79], PARAMETER[false_easting,609601.22], PARAMETER[false_northing,0], UNIT[Meter,1]] cat: Real (11.0) STSEG: Real (11.0) STID: Real (11.0) STNAME: String (80.0) ... What I am seeing wrong is that there is no extra column being added to the dataset which contains the elevation. I am attaching a screenshot which shows this : http://solutions-lab.net/thesis/elevation.jpg Ah, you want it as *attribute* column? This wasn't clear to me. So far we worked on creating 3D geometry. Please note that GRASS is not other proprietary GIS and hence it supports true 3D geometry. But you can also generate a 2D SHAPE with 3rd dimension as attribute, check the v.to.db page for this (or enjoy the new GRASS book :-) good luck, Markus ___ grass-user mailing list grass-user@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-user
RE: [GRASS-user] 3D Streets Data
Thanks again Markus, I am trying to follow your suggestions, and tried to use the v.to.db however I read that you need to prepare the table first, so am trying to do so : GRASS 6.3.0RC1 (nc_spm_06):~ v.db.addtable streets3d columns=the_geom geometry Using vector map name as table name: streets3d ERROR: There is already a table linked to layer 1 So I tried to delete the table using v.db.droptable but gave me this : GRASS 6.3.0RC1 (nc_spm_06):~ v.db.droptable -f streets3d layer=1 Removing table streets3d linked to layer 1 of vector map streets3d Dropping table streets3d... DBMI-Postgres driver error: Cannot execute: DROP TABLE streets3d ERROR: table streets3d does not exist ERROR: Error while executing: 'DROP TABLE streets3d ' ERROR: An error occured while running db.execute GRASS 6.3.0RC1 (nc_spm_06):~ In the whole process there was NO streets3d table created. I am for sure connected to the PostGIS database and this is the result of my db.connect -p : GRASS 6.3.0RC1 (nc_spm_06):~ db.connect -p driver:pg database:host=localhost,dbname=thesis schema: group: I have tried some db.columns, db.describe, db.select commands on the tables in the database, and they show that I am connected to the database. The problem then is why it is hard to add a new table streets3d with the 3d data. I tried to follow the manual but it still gave me that error. I also tried to run db.test to see if there is a problem with the PostgreSQL connection but to my eyes there are no significant problems : GRASS 6.3.0RC1 (nc_spm_06):~ db.test test=test1 create table grass_test1 (i1 integer, d1 double precision, c1 varchar(20)) EXECUTE: OK insert into grass_test1 values ( 1, 123.456, 'abcd' ) EXECUTE: OK insert into grass_test1 values ( 2, null, 'xxx' ) EXECUTE: OK select * from grass_test1 EXECUTE: OK 1c1 1|123.456|abcd --- 1|123.456000|abcd ERROR: RESULT: ERROR select c1 from grass_test1 where d1 500 / 2 and i1 2 and c1 ~ 'bc' EXECUTE: OK RESULT: OK insert into grass_test1 values ( 3, 0.0, '_''_' ) EXECUTE: OK alter table grass_test1 add column i2 integer EXECUTE: OK update grass_test1 set d1 = 18.6, i2 = 987 where i1 = 2 EXECUTE: OK select * from grass_test1 EXECUTE: OK 1,3c1,3 1|123.456|abcd| 3|0|_'_| 2|18.6|xxx|987 --- 1|123.456000|abcd| 2|18.60|xxx|987 3|0.00|_'_| ERROR: RESULT: ERROR drop table grass_test1 EXECUTE: OK GRASS 6.3.0RC1 (nc_spm_06):~ Anyone else has any suggestion please on how I can import this 3d data file into PostGIS please? Thanks a lot for your continous support and sorry for so many questions :( ( BTW is there an online version of the Grass book I can buy? Since I am really getting fed up of waiting for it to come by post :\ ) Matthew -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Markus Neteler Sent: Monday, January 14, 2008 9:44 AM To: Matthew Pulis Cc: grass-user@lists.osgeo.org Subject: Re: [GRASS-user] 3D Streets Data Matthew, On Jan 13, 2008 10:20 PM, Matthew Pulis [EMAIL PROTECTED] wrote: Thanks for your prompt answer Markus. The v.out.ogr is what I tried before, but redid it on the new shape-file. These are the first row of the new data : wkt_geom,cat,STSEG,STID,STNAME,DIR_PRE,DIR_SUF,STYPE,CLASS,F_ELEV,T_ELEV,MAP ,PRIV,FRLEFT,TOLEFT,FRRIGHT,TORIGHT,FRLEFT_A,TOLEFT_A,FRRIGHT_A,TORIGHT_A,ST ATEROAD,CARTONAME,CORP,SPEED,ONE_WAY,CLASSNAME,L_ZIPNAME,R_ZIPNAME,FT_COST,T F_COST,LABELNAME,F_NODE,T_NODE,CARTOLEVEL,SHAPE_LEN LINESTRING(625304.649659 214113.544271, 625301.199687 214078.520974, 625299.489761 214056.176602, 625299.289850 214050.649031),1,36074,20863,FIREFLY,,,RD,12,8,8,W0750-03,,101,199,100,198,1 01,119,100,118,0,FIREFLY RD,HS,25,BI,CITY,HOLLY SPRINGS,HOLLY SPRINGS,0.094452,0.094452,FIREFLY RD,0,0,,207.131131 This is how I generated the shape file : GRASS 6.3.0RC1 (nc_spm_06):~ v.out.ogr input=streets3d_new type=line dsn=streets3d_new_shps olayer=testogr lco=SPHT=ARCZ There is a trick here - avoid typos: It is lco=SHPT=ARCZ not: lco=SPHT=ARCZ (I again recommend copy-paste from the manual page) If you specify lco=SPHT=ARCZ correctly, it will indicate 3D export: v.out.ogr input=streets3d type=line dsn=streets3d_new_shps olayer=testogr lco=SHPT=ARCZ WARNING: Vector map streets3d is 3D. Use format specific layer creation options (parameter 'lco') to export in 3D rather than 2D (default) Exporting 49746 points/lines... ... (personally I find the WARNING here inappropriate since I use lco!) Ogrinfo on the streets3d new shape file gave me : GRASS 6.3.0RC1 (nc_spm_06):~ ogrinfo streets3d_new_shps/ INFO: Open of `streets3d_new_shps/' using driver `ESRI Shapefile' successful. 1: testogr (Line String) To get useful output, better run ogrinfo -so streets3d_new_shps/ testogr INFO: Open of `streets3d_new_shps/' using driver `ESRI Shapefile' successful. Layer name: testogr Geometry: 3D Line String = !! worked
Re: [GRASS-user] 3D Streets Data
On Jan 13, 2008 6:06 PM, Matthew Pulis [EMAIL PROTECTED] wrote: ... However, the problem is that when I exported this layer to a shape file to load it from QGis, and when I exported this to a PostGIS database there is no showings of the Altitude layer. Did you check the manual? Export 3D lines from GRASS vector map to Shapefile format: v.out.ogr input=lines_3dtype=linedsn=/tmp olayer=testogr lco=SHPT=ARCZ Without lco= it won't work... Markus ___ grass-user mailing list grass-user@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] 3D Streets Data
Sun 13 Jan 2008 22:20, Matthew Pulis wrote: What I am seeing wrong is that there is no extra column being added to the dataset which contains the elevation. I am attaching a screenshot which shows this : http://solutions-lab.net/thesis/elevation.jpg Am I testing the wrong way? /me thinks, yes. if i understand you correctly, you want a 2D shapefile, with the v.drape output added as an extra category.? If yes can you please mention some keywords I can use to search for such operation please? http://grass.itc.it/grass63/manuals/html63_user/v.category.html s. ___ grass-user mailing list grass-user@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/grass-user