Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Errors, missing information, unclear explanations in wiki #63

Closed
Bakaniko opened this issue Nov 29, 2018 · 22 comments
Closed

Errors, missing information, unclear explanations in wiki #63

Bakaniko opened this issue Nov 29, 2018 · 22 comments

Comments

@Bakaniko
Copy link
Contributor

This issue aims to provide insight from a new user about the project wiki.

It aims to list missing or broken links, non clear explanations and such.

01 Installation

@nicolas-f
Copy link
Member

Welcome here,

Thanks, 01 is fixed now

@Bakaniko
Copy link
Contributor Author

Thanks, Nicolas.

Here is my recommandations for step 02

02 - Quick start

  • For a non specialist user, it lacks a description of the required fields like load_speed, junction_speed, etc.
    There is a description of functions signatures in 03 but I think a description of entry data is would be better in order to format real data. This true for the following functions:

    • BR_EvalSource()
    • BR_SpectrumRepartition()
  • In the sound propagation section, the function signature it the one of BR_PtGrid() or it is BR_TriGrid() who is called.

  • How to create the sound propagation map from TRI_LVL ? There is no explanation on the symbology.
    Maybe you can also provide a style file ?

  • No problem with the code, I was able to generate all outputs, but the countouring noise map looks different (it might me normal, but you should mention it)

    • expected output map:
      02_contouring_noise_map_from_quickstart

    • obtained output map:

02_contouring_noise_map

  • Geometry column is called 'geom' since PostGIS 2.0, as H2GIS aims to be closer as possible to PostGIS, it would be nice to change that, sadly it will require to change the BR_TriGrid3D function. I think it needs a separate issue as it could affect several functions and code file.

  • One extra comment is purely cosmetic as some SQL words are in uppercase and some don't.

@ebocher
Copy link
Collaborator

ebocher commented Nov 30, 2018

* How to create the  [sound propagation map from TRI_LVL](https://raw.githubusercontent.com/wiki/Ifsttar/NoiseModelling/images/orbisgis_tri_lvl.png) ? There is no explanation on the symbology.
  Maybe you can also provide a style file ?

If a style is provided it must be a SLD encoding.

* Geometry column is called 'geom' since PostGIS 2.0, as H2GIS aims to be closer as possible to PostGIS, it would be nice to change that, sadly it will require to change the [BR_TriGrid3D](https://github.com/Ifsttar/NoiseModelling/blob/d9cc2b9800e3e5fe6375895c52cbff8606fd2e07/noisemap-h2/src/main/java/org/orbisgis/noisemap/h2/BR_TriGrid3D.java#L238) function. I think it needs a separate issue as it could affect several functions and code file.

Not sure about that. Coud you point us a link ?

@Bakaniko
Copy link
Contributor Author

I can't find the PostGIS discussion about it but it raised some concerns on several places:

Ideally, you should be able to name the geometry column as you want. It is functionnal right now. As it is a newcomer review, I made the suggestion.

@Bakaniko
Copy link
Contributor Author

Bakaniko commented Nov 30, 2018

03 SQL functions

This section details the fucntions used during the processing

BR_EvalSource

  • good explanation of the parameters
  • vl_per_hour and pl_per_hour seems to be half translated (comparing to lv_speed and hv_speed)
  • copound_roadtype: based on IGN Route500 road model ? I guess that each type as a numeral code.
    More explanations will be welcomed on those type, eventually a correlation table to OSM model would be useful

BTW_EvalSource

No comments

BR_SpectrumRepartition

  • What is surface 1 ? A coating like asphalt and such ? New types will be proposed ?

BTW_SpectrumRepartition

no comments

BR_TriGrid

  • What are W_V1, W_V2 and W_V3 ?
  • What is the CELL_ID ?
  • VARCHAR parameters in BR_TriGrid are String in other functions

BR_TriGrid3D

No comments

BR_PtGrid

No list of returned columns

BR_PtGrid3D

No list of returned columns

General comments

  • Is BR for "Bruit Routier" and BTW "Bruit TramWay" ?
  • maybe having parameters types of function signatures in italic or bold will help identified them.
  • Units might be provided like maximumAreaOfTriangle in square meters, roadsWidth in meters, etc

@Bakaniko
Copy link
Contributor Author

04 Industrial sound sources application

There is not particular comments on that section just general ones.

  • A map of the bounding box with the 2 "artificial sources points" might be useful as I only understood their usage after the calculation.

  • no issue with the code, it works flawlessly

  • output map is different of the map shown in the quickstart. Is that because a finer algorithm in the latest version (2.1.2) ?

    • quickstart map
      04_contouring_noise_map_from_quickstart
    • output map
      04_contouring_noise_map
  • Some section titles like in 02 Quick Start might help comprehension. This showcase is short so it doesn't disturb too much but that can help to see the key features

  • same comments as before: uppercase/lowercase SQL keywords,

  • code is well commented, there is no problem to understand what it does.

@ebocher
Copy link
Collaborator

ebocher commented Dec 3, 2018

I can't find the PostGIS discussion about it but it raised some concerns on several places:

* https://gis.stackexchange.com/questions/49455/geometry-column-naming-convention-geom-or-the-geom

* https://georezo.net/forum/viewtopic.php?id=101461 (in French)

Ideally, you should be able to name the geometry column as you want. It is functionnal right now. As it is a newcomer review, I made the suggestion.

The name of the geometry column "geom" or "the_geom" is just for conventional naming (recommendation). There is no constraint about that in the SQL standard.

I think using a specific name for Noise function is good choise. The user is welcome to apply an alias to change on the fly the name of its column.

@nicolas-f What do u think ?

@Bakaniko
Copy link
Contributor Author

Bakaniko commented Dec 3, 2018

05 Ground effect

no major concerns on this part as it is similar to the previous part.

  • code is working flawlessly
  • A little structuration with headers could help to understand where landuse affects the processing:
    • Test data generation (buildings, roads, traffic, noise, etc)
    • Transforming the landuse in G coefficient
    • Calculing the triangles with the Land_G parameter
    • Calculing noise map as seen before
  • about illustrations:
    • the illustrations are not side by side but on top of each other. A caption for each will be more comprehensible
    • the produced output is different from the quickstart (the purple area is way more extended):
      • quickstart output
        05_contouring_noise_map_quickstart
      • produced output
        05_contouring_noise_map
    • the illustrations shows points that are not produced in the quickstart (not a big deal but confusing)

@Bakaniko
Copy link
Contributor Author

Bakaniko commented Dec 4, 2018

06 Modelling barrier using digital elevation model

Same comments as before:

  • code is working flawlessly
  • A little structuration with headers could help to understand:
    • Producing genreric data:
      • Create buildings
      • Create sources
    • Create Digital Elevation Model
    • Create the Noise Map
      • Create triangular grid
      • Create Noise propagation on triangularr grid
      • Create countoring noise map
  • Groovy part not tested (waiting to have done 10 Scripting with Groovy

@Bakaniko
Copy link
Contributor Author

Bakaniko commented Dec 4, 2018

07 Horizontal noise map

Create input data for demonstration

No comments, working as expected

Launch sound propagation and triangulation

Encounter one issue with this line:
import org.h2gis.h2spatialapi.EmptyProgressVisitor;

Corrected with import org.h2gis.api.EmptyProgressVisitor; as the api name changed

I'm stuck to the next line:
def sql = Sql.newInstance(grv_ds); as it seems the grv_ds seems to be connections information to the H2 database but grv_ds is created nowhere.

Create contouring noise map

  • not treated yet

@nicolas-f
Copy link
Member

nicolas-f commented Dec 4, 2018

I think sql variable is predefined now in the OrbisGIS groovy console

@Bakaniko
Copy link
Contributor Author

Bakaniko commented Dec 4, 2018

Ok, I deleted the line.
Still have an issue with the following line:
TriangleNoiseMap nm = new TriangleNoiseMap("result", "BATI_HAUTEUR", "SOURCE_SOURCE_2002_MERGED");

Console says "Script1.groovy: 1: unable to resolve class TriangleNoiseMap " but TriangleNoiseMap seems to be at the right place.

Plus I don't see where are created the functions parameters.

@nicolas-f
Copy link
Member

This class has been edited.

https://github.com/Ifsttar/NoiseModelling/blob/master/noisemap-core/src/main/java/org/orbisgis/noisemap/core/jdbc/TriangleNoiseMap.java#L60

It expect only two arguments now.

TriangleNoiseMap nm = new TriangleNoiseMap("BATI_HAUTEUR", "SOURCE_SOURCE_2002_MERGED");

@nicolas-f
Copy link
Member

Maybe 7 is an outdated wiki article, and should be removed ? As it doesn't add anything compared to the other articles?

@Bakaniko
Copy link
Contributor Author

Bakaniko commented Dec 4, 2018

I don't know, is it seems to be like 06 but with groovy code.
There is no output to compare.

@Bakaniko
Copy link
Contributor Author

Bakaniko commented Dec 4, 2018

08 Vertical noise map

I have hard time to understand what are the created objects:

  • receivers_cut
  • propa_line (I guess propagation line, where calculations are made ?)
  • grid_del is a Delauney grid, what is the difference with the BR_TriGrid ?
  • RECEIVER_LVL
  • receiver_cloud
  • delaun

Therefore, I have hard time to understand the output. It is a cross-section view ?
Where the blue part is the hill ? I think that can be explained to help understanding.

The output I get is different as it seems that there is no mask for the hill or the building.

08_contouring_noise_map

Does the graph represent the sound levels on the "propa_line" ?

@Bakaniko
Copy link
Contributor Author

Bakaniko commented Dec 7, 2018

09 Using data from OpenStreetMap

General comments:

  • Great doc structuration with headers
  • Clear explanations
  • Code works very well

1. Export All open street map informations

  • An archive with a (small) dataset will be great as not everybody is familiar with OpenStreetMap and how to extract data from it. Thus, it is hard to choose a not too big dataset with too much buildings in it.
  • It might be interesting to specify that you'll need to use the export tab in OpenStreetMap to get the extract.

2. Transfer osm file into OrbisGIS database

No comments on this part

3. Extract 2D buildings from tables

This section could explain more where to change the projection in the code: ``ST_SETSRID(ST_MAKEPOLYGON(ST_MAKELINE(THE_GEOM)), 4326), 32630)`

It could explain that the datasource is in WGS84 and it is corresponding to the 4326 code.

There no indication that the indicated UTM 30N is great for a dataset from the west part of France for example.

Note about the Coordinate System

4. Extract roads

  • no comments on this part

5. Fake traffic

  • might be good to explain briefly that it creates the columns SPEED_LV, SPEED_HV, LV_HOUR, HV_HOUR and what it represents (even if it is detailed in previous tutorials) in order to had to local legislations for example.

Compute noisemap

  • Might be part 6 ?

Extended noise propagation

This is nice to provide this informations for 3D noise propagation. I'm wondering if it can be made into a tutorial too (with provided dataset).

Extra note: this is my output for the Lorient city center:
09_contouring_noise_map

@Bakaniko
Copy link
Contributor Author

Bakaniko commented Dec 7, 2018

10 Scripting with Groovy

  • Proposed version (orbisgis-5.0.1-noisemap-2.0.1.SNAPSHOT) is not the latest (2.1.2-SNAPSHOT/orbisgis-noisemodelling-2018-07-18)
  • Command lines provided not updated to the proposed version of OrbisGIS (and the latest). For example:
    • noisemap-h2-2.0.0-SNAPSHOT => org.orbisgis.noisemap-h2.jar
    • org.orbisgis.noisemap-core.jar
    • For latest version, changes are too important:
      • bin/cts-1.3.3.jar => bundle/cts.jar
      • bin/h2spatial-api-1.1.1-20141203.151348-41.jar => bundle/h2gis-api.jar; ?
      • bin/jts-1.13.jar; => ?
  • reorganize jar dependencies in commands by location and alphabetical order to make it easier to check and maintain. For example, all libraries in bin/ then all in bundle/

I used this command (with orbisgis-dist-5.0.1-2015-01-30):

groovy -cp "bin/cts-1.3.3.jar;bin/h2spatial-api-1.2.0.jar;bin/jts-1.13.jar;bin/log4j-1.2.16.jar;bin/slf4j-api-1.6.0.jar;bin/slf4j-log4j12-1.6.0.jar;bin/spatial-utilities-1.2.0.jar;bundle/commons-compress.jar;bundle/h2.jar;bundle/h2drivers.jar;bundle/h2network.jar;bundle/h2spatial.jar;bundle/h2spatial-ext.jar;bundle/jackson-core.jar;bundle/java-network-analyzer.jar;bundle/jdelaunay.jar;bundle/jgrapht-core.jar;bundle/org.orbisgis.noisemap-core.jar;bundle/org.orbisgis.noisemap-h2.jar;bundle/postgis-jts-osgi.jar" noisemodelling_script.groovy

I got this error:

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.codehaus.groovy.vmplugin.v7.Java7$1 (file:/C:/PROGRA~2/Groovy/GROOVY~1.0/lib/groovy-3.0.0-alpha-3.jar) to constructor java.lang.invoke.MethodHandles$Lookup(java.lang.Class,int)
WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.vmplugin.v7.Java7$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Caught: java.lang.NoClassDefFoundError: Unable to load class groovy.xml.jaxb.JaxbGroovyMethods due to missing dependency javax/xml/bind/JAXBContext
java.lang.NoClassDefFoundError: Unable to load class groovy.xml.jaxb.JaxbGroovyMethods due to missing dependency javax/xml/bind/JAXBContext
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

@nicolas-f
Copy link
Member

thanks
@qhesry is working on updating scripting with groovy with the last release

@Bakaniko
Copy link
Contributor Author

Bakaniko commented Dec 7, 2018

11 Scripting with Python

  • Python version is not advised (probably python 2.7 if there is from __future__ import print_function)
  • Proposed version (2.0.0) is not the latest
  • same comments as 10: dependancies are not up to date
  • psycopg2 install link does not work (should be : http://initd.org/psycopg/docs/install.html)

It appears I can't launch the H2 server, I get this error:

PS D:\Roelandt\PROJETS\InProgress\UMRAE\ANR_CENSE\orbisgis_2-0-0> groovy -cp "bin/cts-1.3.3.jar;bin/h2spatial-api-1.2.0.
jar;bin/jts-1.13.jar;bin/log4j-1.2.16.jar;bin/slf4j-api-1.6.0.jar;bin/slf4j-log4j12-1.6.0.jar;bin/spatial-utilities-1.2.
0.jar;bundle/commons-compress.jar;bundle/h2.jar;bundle/h2drivers.jar;bundle/h2network.jar;bundle/h2spatial.jar;bundle/h2
spatial-ext.jar;bundle/jackson-core.jar;bundle/java-network-analyzer.jar;bundle/jdelaunay.jar;bundle/jgrapht-core.jar;bu
ndle/org.orbisgis.noisemap-core.jar;bundle/org.orbisgis.noisemap-h2.jar;bundle/postgis-jts-osgi.jar" org.h2.tools.Server
 -pg
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.codehaus.groovy.vmplugin.v7.Java7$1 (file:/C:/PROGRA~2/Groovy/GROOVY~1.0/lib/groovy-3.0.0-alpha-3.jar) to constructor java.lang.invoke.MethodHandles$Lookup(java.lang.Class,int)
WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.vmplugin.v7.Java7$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Caught: java.io.FileNotFoundException: D:\Roelandt\PROJETS\InProgress\UMRAE\ANR_CENSE\orbisgis_2-0-0\org.h2.tools.Server (D:\Roelandt\PROJETS\InProgress\UMRAE\ANR_CENSE\orbisgis_2-0-0\org.h2.tools.Server)
java.io.FileNotFoundException: D:\Roelandt\PROJETS\InProgress\UMRAE\ANR_CENSE\orbisgis_2-0-0\org.h2.tools.Server (D:\Roelandt\PROJETS\InProgress\UMRAE\ANR_CENSE\orbisgis_2-0-0\org.h2.tools.Server)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

I tried to install the H2 server with the officially recommended installer but got the same error.

I'm using java8 on Windows10:

java -version
java version "1.8.0_192"
Java(TM) SE Runtime Environment (build 1.8.0_192-b12)
Java HotSpot(TM) Client VM (build 25.192-b12, mixed mode)

@Bakaniko
Copy link
Contributor Author

Bakaniko commented Dec 7, 2018

12 Create a gain noise map

  • Clear mention that it is not a finished document 👍
  • Does it needs to be run from a previous step like 6 ?
  • Got stuck at line 6:
    SET @XCOUNT = SELECT ROUND((ST_XMAX(THE_GEOM) - ST_XMIN(THE_GEOM)) / @DIST_RECEIVER)::integer FROM FENCE;
    Can't find FENCE => is it an object to create or to load ?

@qhesry
Copy link

qhesry commented Feb 5, 2019

Correction on 02 - Quick Start

  • Link to description on function added
  • Correction of the function signature in sound propagation section
  • Correction of the result image

Correction on 03 SQL functions

  • Complete traduction of vl_per_hour and pl_per_hour -> lv_per_hour and hv_per_hour (light vehicule and heavy vehicule)
  • Change String to VARCHAR in other function

Missing :
What are W_V1, W_V2 and W_V3 ?
What is the CELL_ID ?

Correction in 04 Industrial soun sources application

  • Add section titles
  • Change output map

Correction in 05 Ground Effect

  • Add section titles
  • Add caption to both result image

Correction in 06 Modelling barrier using digital elevation model

  • Add section titles

Correction in 08 Vertical noise map

  • Add comments on sql code.

Correction in 09 Using data from OpenStreetMap

  • Add sample file to download from OpenStreetMap
  • Add instructions to download OpenStreetMap data
  • Add instructions to change the projection code
  • Add link to the map with projection code

Correction in 10 Scripting with Groovy

  • Update of the wiki with the new version of NoiseModelling

Correction in 11 Scripting with Python

  • Updated with the new version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants