Git Product home page Git Product logo

awapic / ic Goto Github PK

View Code? Open in Web Editor NEW
5.0 2.0 2.0 20.1 MB

IC QGIS plugin, calculates interface catchment within urban morphologies

Home Page: https://thud.msd.unimelb.edu.au/tools-and-models/awap-ic-an-open-source-gis-tool-for-measuring-walkable-access

License: GNU General Public License v3.0

Makefile 9.81% Python 83.55% Batchfile 3.37% Shell 2.00% QML 1.28%
urban-analytics urban-design urban-planning morphological-analysis catchment walkability

ic's People

Contributors

awapic avatar ivan-majic avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

ic's Issues

Advice regarding block formatting.

Thanks for the plugin, it is very interesting to use, along with reading your book.

I do not have an Issue per se. As you do not have a Discussion section, I can only post here.

The advice you gave to use the simplify tool (Issue #1) was very helpful in terms of speed and in finishing the IC computation.

After some time (errors) and step-wise using distance increments, I was able to successfully complete an IC run for a walking distance of 400 m.

However I have only a vague grasp of whether I have a properly formatted the "blocks" upon which to operate the IC tool.
Like Issue 1, the blocks are not regular grids and were derived from a land use file, "dissolved" using AwaP, then simplified.
There are some large white spaces of public areas (e.g. parks, plaza etc).

Would you be able to comment on the attached files as to whether I have missed something or improve?
Attached is the original land use, the simplified blocks, the starting point and the result (400 m)

Thanks for any suggestions, or confirmation that all is OK.

Landuse.zip
Awap1394_simplified.zip
IC_starting_point.zip
IC_10729_400m.zip

Plugin not working in QGIS 3.22 and newer

There has been a report that the plugin is not working in QGIS 3.24.2 (Thanks Rachid for reporting!) and I have seen the same issue in other newer versions of QGIS. The plugin can be set up and started but it would not produce any results.
I have tested the plugin on my Ubuntu machine and QGIS 3.22.4 and found an exception in the following line:

IC/icworker.py

Line 433 in ccc989f

newlines.append(line.buffer(0.01, 5, 2, 2, 2))

The exception is raised due to too many arguments in the buffer function and due to the third argument being an unexcepted format (integer).
I have looked at the QGIS API documentation for this buffer function (link) and I have found that the specification of EndCapStyle argument as an integer is no longer supported since QGIS 3.22 (link).

Various failures in QGIS 3.12

The data is in this GeoPackage:
IC plugin bug.zip

Albury dataset

Note: this dataset should be in MGA Zone 55. Reproject the data to EPSG:28355 before trying.

Blocks layer: Albury blocks - reprojected temporary layer
Dead-end removal: NO
Starting point layer; Albury startingpoint - reprojected temporary layer
Max walking distance: 200 m
--> succeeds

Blocks layer: Albury blocks - reprojected temporary layer
Dead-end removal: YES, 40 m
Starting point layer: Albury startingpoint - reprojected temporary layer
Max walking distance: 200 m
--> fails with following error:

Traceback (most recent call last):
  File "C:/Users/.../AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\interfacecatchment\interface_catchment.py", line 904, in execute
    'FIELD_PRECISION' : 1,
  File "C:/PROGRA~1/QGIS3~1.12/apps/qgis/./python/plugins\processing\tools\general.py", line 106, in run
    return Processing.runAlgorithm(algOrName, parameters, onFinish, feedback, context)
  File "C:/PROGRA~1/QGIS3~1.12/apps/qgis/./python/plugins\processing\core\Processing.py", line 181, in runAlgorithm
    raise QgsProcessingException(msg)
_core.QgsProcessingException: There were errors executing the algorithm.

Blocks layer: Albury blocks - reprojected temporary layer
Dead-end removal: YES, 40 m
Starting point layer: Albury startingpoint - reprojected temporary layer
Max walking distance: 280 m
--> QGIS hangs

Carlton dataset

Blocks layer: Carlton blocks
Dead-end removal: NO
Starting point layer; Carlton startingpoint
Max walking distance: 200 m
--> succeeds

Blocks layer: Carlton blocks
Dead-end removal: YES, 40 m
Starting point layer; Carlton startingpoint
Max walking distance: 250 m
--> succeeds

Blocks layer: Carlton blocks
Dead-end removal: YES, 40 m
Starting point layer; Carlton startingpoint
Max walking distance: 200 m
--> fails with following error:

Traceback (most recent call last):
              File "C:/Users/.../AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\interfacecatchment\interface_catchment.py", line 908, in execute
              IC = round(next(walkable_lines_layer.getFeatures())['IC'])
             TypeError: type QVariant doesn't define __round__ method

Blocks layer: Carlton blocks
Dead-end removal: YES, 40 m
Starting point layer; Carlton startingpoint
Max walking distance: 400 m
--> QGIS hangs

Version info

Python version: 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)] 
QGIS version: 3.12.3-București București, 8234261527 

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.