AequilibraE / qaequilibrae

Free QGIS add-on for transportation modeling
https://www.aequilibrae.com/qgis/latest/
Other
75 stars 24 forks source link

Updated processing provider with QGIS processing & better QGIS experience #250

Closed Art-Ev closed 6 months ago

Art-Ev commented 1 year ago

Updated version of processing provider in #175 with a simple export from omx file to a set of csv files

pedrocamargo commented 1 year ago

@Art-Ev , I gave this one a test and have a few comments/questions:

  1. The advanced section of the procedure has parameters for geo-operations, which I assume are part of some template. Can we remove them?
  2. The output of the algorithm is a matrix without indices (zone numbers), when I would expect to have something like "origin, destination, volume", and all in the same table. Is the intention really this?
  3. We need documentation for this section. Happy to help you with that if you'd like
  4. The translation scheme was not used, so this would not show in other languages
Art-Ev commented 1 year ago

@pedrocamargo :

  1. I don't understand which part of the code you're talking about, in which file?
  2. Was quicker (laziness...) and was thinking that it's the same format as EMME csv matrices. After checking (and some searches on openmatrix github) : have updated to include indices and better number formating
  3. Where can I start to update documentation ? https://github.com/AequilibraE/qaequilibrae/tree/develop/docs/source ? (do you have a good "model" for me to use as reference ?)
  4. How can I declare string variables for translation ? With self.tr('my_string') ?
Art-Ev commented 1 year ago

AequilibraE processings are usable by QGIS graphical modeller for "no-code" : AequilibraE_modeler_Example

pedrocamargo commented 1 year ago

@Art-Ev

  1. When you go to advanced-algorithm settings

image

It is also returning an error after the latest change. I fixed the bug, there is a conceptual issue that I am commenting on at the appropriate line of code. Testing would be good...

  1. Nice

  2. Yes. The softwaredevelopment.rst file is a good one

  3. https://aequilibrae.com/qgis/latest/development/softwaredevelopment.html#translatable-strings

Art-Ev commented 1 year ago

Changes summary :

Still to do (maybe after a first validation) : update documentation

For later : optimize 'create project from link layer' & 'Create/renumber nodes from centroid layer' as sqlite database is written one link/node at a time which result in a pretty slow processing time

Art-Ev commented 1 year ago

After some testing, the optimization done on the ProjectFromLayer algorithm reduces processing times by a factor of 10 (ok, 9.5) and allow for a small (not quantified) gain in RAM usage. Will definitively have to port the same method for "centroids update/creation" and eventually "connector creation" (in this case it means doing without AequilibraE python API to use QGIS API and letting the sql triggers do the rest of the magic). Process is still using only one core which still leaves a huge potential for optimisation but I think this is some restriction coming from spatialite

Art-Ev commented 1 year ago

@pedrocamargo, package download should be good now and translation should also work for directly displayed menus (if .qm file is added by compiling .ts file) :