Skip to main content
Question

Create 3D mesh DTM from rasters,Create a 3D DTM from photo raster and elevation raster

  • August 27, 2018
  • 1 reply
  • 227 views

Hye, 

I'm trying to create a 3D terrain model (export format : .obj/.fbx/.3ds or any other textured mesh format) from imagery raster (France, IGN) and elevation raster (France, IGN).

Inputs formats are : 

1. For imagery

Multiple *.jp2 files with *.tab files associated (same file name) 

A sample of .tab file : 

!table
!version 300
!charset WindowsLatin1
Definition Table
File "01-2015-0830-6540-LA93-5M00-E100.jp2"
Type "RASTER"
(830000.00,6540000.00) (0,0) Label "Pt 1",
(840000.00,6540000.00) (2000,0) Label "Pt 2",
(840000.00,6530000.00) (2000,2000) Label "Pt 3",
(830000.00,6530000.00) (0,2000) Label "Pt 4"
CoordSys Earth Projection 2003337346.54449.000000000017000006600000, -792421527823135207789741029
Units "m"

2. For elevation

Multiple *.asc files with *.asc.aux.xml files associated (same file name) 

An extract of *.asc file :

ncols        1000
nrows        1000
xllcorner    74962.500000000000
yllcorner    6750037.500000000000
cellsize     75.000000000000
NODATA_value  -99999.00
 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -9999[...]

An extract of *.asc.aux.xml file : 

<PAMDataset>
  <SRS>COMPD_CS["RGF93 / Lambert-93 + NGF-IGN69 height",PROJCS["RGF93 / Lambert-93",GEOGCS["RGF93",DATUM["Reseau_Geodesique_Francais_1993",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6171"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4171"]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",49],PARAMETER["standard_parallel_2",44],PARAMETER["latitude_of_origin",46.5],PARAMETER["central_meridian",3],PARAMETER["false_easting",700000],PARAMETER["false_northing",6600000],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],AUTHORITY["EPSG","2154"]],VERT_CS["NGF-IGN69 height",VERT_DATUM["Nivellement General de la France - IGN69",2005,AUTHORITY["EPSG","5119"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Up",UP],AUTHORITY["EPSG","5720"]],AUTHORITY["EPSG","5698"]]</SRS>
  <PAMRasterBand band="1">
    <Metadata>
      <MDI key="STATISTICS_MAXIMUM">102.4</MDI>
      <MDI key="STATISTICS_MEAN">43.77518150174</MDI>
      <MDI key="STATISTICS_MINIMUM">-2.79</MDI>
      <MDI key="STATISTICS_STDDEV">26.137841691288</MDI>
    </Metadata>
  </PAMRasterBand>
</PAMDataset>

I'm discovering FME and I'm working with a demo licence, so I need a complete explaination of the workflow please... 

And... I'm French, so... my english is very bad :/ Sorry !

,

Hye, 

I'm trying to create a 3D terrain model (export format : .obj/.fbx/.3ds or any other textured mesh format) from imagery raster (France, IGN) and elevation raster (France, IGN).

Inputs formats are : 

1. For imagery

Multiple *.jp2 files with *.tab files associated (same file name) 

A sample of .tab file : 

!table
!version 300
!charset WindowsLatin1


Definition Table
File "01-2015-0830-6540-LA93-5M00-E100.jp2"
Type "RASTER"
(830000.00,6540000.00) (0,0) Label "Pt 1",
(840000.00,6540000.00) (2000,0) Label "Pt 2",
(840000.00,6530000.00) (2000,2000) Label "Pt 3",
(830000.00,6530000.00) (0,2000) Label "Pt 4"
CoordSys Earth Projection 2003337346.54449.000000000017000006600000, -792421527823135207789741029
Units "m"

2. For elevation

Multiple *.asc files with *.asc.aux.xml files associated (same file name) 

An extract of *.asc file :

ncols        1000
nrows        1000
xllcorner    74962.500000000000
yllcorner    6750037.500000000000
cellsize     75.000000000000
NODATA_value  -99999.00
 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -99999.00 -9999[...]

An extract of *.asc.aux.xml file : 

<PAMDataset>
  <SRS>COMPD_CS["RGF93 / Lambert-93 + NGF-IGN69 height",PROJCS["RGF93 / Lambert-93",GEOGCS["RGF93",DATUM["Reseau_Geodesique_Francais_1993",SPHEROID["GRS 1980",6378137,298.257222101,AUTHORITY["EPSG","7019"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY["EPSG","6171"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4171"]],PROJECTION["Lambert_Conformal_Conic_2SP"],PARAMETER["standard_parallel_1",49],PARAMETER["standard_parallel_2",44],PARAMETER["latitude_of_origin",46.5],PARAMETER["central_meridian",3],PARAMETER["false_easting",700000],PARAMETER["false_northing",6600000],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],AUTHORITY["EPSG","2154"]],VERT_CS["NGF-IGN69 height",VERT_DATUM["Nivellement General de la France - IGN69",2005,AUTHORITY["EPSG","5119"]],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Up",UP],AUTHORITY["EPSG","5720"]],AUTHORITY["EPSG","5698"]]</SRS>
  <PAMRasterBand band="1">
    <Metadata>
      <MDI key="STATISTICS_MAXIMUM">102.4</MDI>
      <MDI key="STATISTICS_MEAN">43.77518150174</MDI>
      <MDI key="STATISTICS_MINIMUM">-2.79</MDI>
      <MDI key="STATISTICS_STDDEV">26.137841691288</MDI>
    </Metadata>
  </PAMRasterBand>
</PAMDataset>

I'm discovering FME and I'm working with a demo licence, so I need a complete explaination of the workflow please... 

And... I'm French, so... my english is very bad :/ Sorry !

1 reply

daveatsafe
Safer
Forum|alt.badge.img+19
  • Safer
  • August 27, 2018

Hi @loicroybonjob,

The basic process would be to use CsmapReprojectors to reproject the data into a common coordinate system (if they are not already in one), then use a TINGenerator to convert the elevation raster to a surface. Next, use an AppearanceSetter to texture the surface, with Texture Coordinate Generation Parameters -> Texture Mapping Type set to Top Down Georeferenced.

The resulting textured surface can then be written to your desired 3d output format.

texturedem.fmw


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings