ObjectNat 0.2.6__py3-none-any.whl → 1.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of ObjectNat might be problematic. Click here for more details.

Files changed (36) hide show
  1. objectnat/_api.py +6 -8
  2. objectnat/_config.py +0 -24
  3. objectnat/_version.py +1 -1
  4. objectnat/methods/coverage_zones/__init__.py +2 -0
  5. objectnat/methods/coverage_zones/graph_coverage.py +118 -0
  6. objectnat/methods/coverage_zones/radius_voronoi.py +45 -0
  7. objectnat/methods/isochrones/__init__.py +1 -0
  8. objectnat/methods/isochrones/isochrone_utils.py +130 -0
  9. objectnat/methods/isochrones/isochrones.py +325 -0
  10. objectnat/methods/noise/__init__.py +3 -0
  11. objectnat/methods/noise/noise_exceptions.py +14 -0
  12. objectnat/methods/noise/noise_init_data.py +10 -0
  13. objectnat/methods/noise/noise_reduce.py +155 -0
  14. objectnat/methods/noise/noise_sim.py +423 -0
  15. objectnat/methods/point_clustering/__init__.py +1 -0
  16. objectnat/methods/{cluster_points_in_polygons.py → point_clustering/cluster_points_in_polygons.py} +22 -28
  17. objectnat/methods/provision/__init__.py +1 -0
  18. objectnat/methods/provision/provision.py +10 -7
  19. objectnat/methods/provision/provision_exceptions.py +4 -4
  20. objectnat/methods/provision/provision_model.py +21 -20
  21. objectnat/methods/utils/__init__.py +0 -0
  22. objectnat/methods/utils/geom_utils.py +130 -0
  23. objectnat/methods/utils/graph_utils.py +127 -0
  24. objectnat/methods/utils/math_utils.py +32 -0
  25. objectnat/methods/visibility/__init__.py +6 -0
  26. objectnat/methods/{visibility_analysis.py → visibility/visibility_analysis.py} +222 -243
  27. objectnat-1.0.0.dist-info/METADATA +143 -0
  28. objectnat-1.0.0.dist-info/RECORD +32 -0
  29. objectnat/methods/balanced_buildings.py +0 -69
  30. objectnat/methods/coverage_zones.py +0 -90
  31. objectnat/methods/isochrones.py +0 -143
  32. objectnat/methods/living_buildings_osm.py +0 -168
  33. objectnat-0.2.6.dist-info/METADATA +0 -113
  34. objectnat-0.2.6.dist-info/RECORD +0 -19
  35. {objectnat-0.2.6.dist-info → objectnat-1.0.0.dist-info}/LICENSE.txt +0 -0
  36. {objectnat-0.2.6.dist-info → objectnat-1.0.0.dist-info}/WHEEL +0 -0
@@ -1,113 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: ObjectNat
3
- Version: 0.2.6
4
- Summary: ObjectNat is an open-source library created for geospatial analysis created by IDU team
5
- License: BSD-3-Clause
6
- Author: DDonnyy
7
- Author-email: 63115678+DDonnyy@users.noreply.github.com
8
- Requires-Python: >=3.10,<3.13
9
- Classifier: License :: OSI Approved :: BSD License
10
- Classifier: Programming Language :: Python :: 3
11
- Classifier: Programming Language :: Python :: 3.10
12
- Classifier: Programming Language :: Python :: 3.11
13
- Classifier: Programming Language :: Python :: 3.12
14
- Requires-Dist: geopandas (>=0.14.3,<0.15.0)
15
- Requires-Dist: iduedu (>=0.2.2,<0.3.0)
16
- Requires-Dist: networkx (>=3.3,<4.0)
17
- Requires-Dist: numpy (>=1.26.4,<2.0.0)
18
- Requires-Dist: pandarallel (>=1.6.5,<2.0.0)
19
- Requires-Dist: pandas (>=2.2.0,<3.0.0)
20
- Requires-Dist: population-restorator (>=0.2.3,<0.3.0)
21
- Requires-Dist: scikit-learn (>=1.4.0,<2.0.0)
22
- Requires-Dist: tqdm (>=4.66.2,<5.0.0)
23
- Description-Content-Type: text/markdown
24
-
25
- # ObjectNat - Meta Library
26
-
27
- [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
28
- [![PyPI version](https://img.shields.io/pypi/v/objectnat.svg)](https://pypi.org/project/objectnat/)
29
-
30
- - [РИДМИ (Russian)](README_ru.md)
31
- <p align="center">
32
- <img src="https://github.com/user-attachments/assets/d3878cce-8eba-4f96-8458-9a798d436120" alt="logo" width="400">
33
- </p>
34
-
35
- #### **ObjectNat** is an open-source library created for geospatial analysis created by **IDU team**
36
-
37
- ## ObjectNat Components
38
-
39
- - [IduEdu](https://github.com/DDonnyy/IduEdu) : `IduEdu` provides graph functions
40
- - [population-restorator](https://github.com/kanootoko/population-restorator) : `restorator` provides city resettlement
41
-
42
- ## Features and how to use
43
-
44
- 1. **[City graph from OSM (IduEdu)](./examples/get_any_graph.ipynb)** - Functions to assemble a road, pedestrian,
45
- and public transport graph from OpenStreetMap (OSM) and creating Intermodal graph.
46
-
47
- <img src="https://github.com/user-attachments/assets/8dc98da9-8462-415e-8cc8-bdfca788e206" alt="IntermodalGraph" height="250">
48
-
49
- 2. **[Adjacency matrix](./examples/calculate_adjacency_matrix.ipynb)** - Calculate adjacency matrix based on the provided
50
- graph and edge weight type (time or distance). The intermodal graph can be obtained using the previous example.
51
-
52
- 3. **[Isochrones,transport accessibility](./examples/isochrone_generator.ipynb)** - Function for generating isochrones to
53
- analyze transportation accessibility from specified starting coordinates. Isochrones can be constructed based on
54
- pedestrian, automobile, or public transport graphs, or a combination thereof.
55
-
56
- <img src="https://github.com/user-attachments/assets/37f308a5-db56-497d-b080-4edef3584fe5" alt="isochrones" height="250">
57
-
58
- 4. **[Population restoration](./examples/restore_population.ipynb)** - Function for resettling population into the provided
59
- layer of residential buildings. This function distributes people among dwellings based on the total city population
60
- and the living area of each house.
61
- 5. **[Service provision](./examples/calculate_provision.ipynb)** - Function for calculating the provision of residential
62
- buildings and population with services.
63
-
64
- <img src="https://github.com/user-attachments/assets/5f2b3c55-9a02-4d70-80f4-503b77023eda" alt="ProvisionSchools" height="250">
65
-
66
- 6. **[Visibility analysis](./examples/visibility_analysis.ipynb)** - Function to get a quick estimate of visibility from a
67
- given point(s) to buildings within a given distance. Also, there is a visibility catchment area calculator for a
68
- large
69
- urban area. This function is designed to work with at least 1000 points spaced 10-20 meters apart for optimal
70
- results. Points can be generated using a road graph and random point distribution along edges.
71
-
72
- <img src="https://github.com/user-attachments/assets/2927ac86-01e8-4b0e-9ea8-72ad81c13cf5" alt="visibility-from-point" height="250">
73
-
74
- <img src="https://github.com/user-attachments/assets/b5b0d4b3-a02f-4ade-8772-475703cd6435" alt="visibility-catchment-area" height="250">
75
-
76
- 7. **[Point clusterization](./examples/point_clusterization.ipynb)** - Function to generate cluster polygons for given
77
- points based on a specified minimum distance and minimum points per cluster. Optionally, calculate the relative ratio
78
- between types of services within the clusters.
79
-
80
- <img src="https://github.com/user-attachments/assets/2a9ad722-87d2-4954-9612-5ac3765aa824" alt="service-clusterization" height="250">
81
-
82
- 8. **[Living buildings from OSM](./examples/download_buildings_from_osm.ipynb)** - This function downloads building geometries from OpenStreetMap (OSM) for a specified territory and assigns attributes to each building. Specifically, it determines whether a building is residential (`is_living` attribute) and estimates the approximate number of inhabitants (`approximate_pop` attribute).
83
-
84
- <img src="https://github.com/user-attachments/assets/d60dcd85-1a2e-4342-aae4-561aeda18858" alt="Living buildings" height="250">
85
-
86
- ## Installation
87
-
88
- **ObjectNat** can be installed with ``pip``:
89
-
90
- ```
91
- pip install ObjectNat
92
- ```
93
- ### Configuration changes
94
-
95
- ```python
96
- from objectnat import config
97
-
98
- config.set_timeout(10) # Timeout for overpass queries
99
- config.change_logger_lvl('INFO') # To mute all debug msgs
100
- config.set_enable_tqdm(False) # To mute all tqdm's progress bars
101
- config.set_overpass_url('http://your.overpass-api.de/interpreter/URL')
102
- ```
103
- ## Contacts
104
-
105
- - [NCCR](https://actcognitive.org/) - National
106
- Center for Cognitive Research
107
- - [IDU](https://idu.itmo.ru/) - Institute of
108
- Design and Urban Studies
109
- - [Natalya Chichkova](https://t.me/nancy_nat) - project manager
110
- - [Danila Oleynikov (Donny)](https://t.me/ddonny_dd) - lead software engineer
111
-
112
- ## Publications
113
-
@@ -1,19 +0,0 @@
1
- objectnat/__init__.py,sha256=OnDvrLPLEeYIE_9qOVYgMc-PkRzIqShtGxirguEXiRU,260
2
- objectnat/_api.py,sha256=oiEO2P-tv6AMDdNoT8d0BWMmgeUJa4bhzGDTU2BWTXI,704
3
- objectnat/_config.py,sha256=sv13J3yMw1cmmkgPMf08zinLwPKYwXHJGfchqmurSg8,2268
4
- objectnat/_version.py,sha256=XC2MYZybet-wsd8zs6MBULy8nzAc7dUW0vmpI8ttNTI,18
5
- objectnat/methods/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
- objectnat/methods/balanced_buildings.py,sha256=hLT2QgmGWpROtnL8SJQIujeP6q9ou15yIdHpv66CfMs,2892
7
- objectnat/methods/cluster_points_in_polygons.py,sha256=ANoPHB89Ih6SYUTs0VoYqW7zi9GVIytSOGySoQ3vby4,5073
8
- objectnat/methods/coverage_zones.py,sha256=yMeK1DjneMAxxKv9busEKdAsP25xiJMcPCixlJCDI4s,2835
9
- objectnat/methods/isochrones.py,sha256=CBJprxcyPIYC4RJizqJ1MJL-Zkea4iyr7wHTOOQ7DC8,6146
10
- objectnat/methods/living_buildings_osm.py,sha256=Qdh9vq3Da7-aYayZ33eBdo012jleNmQ2evbbrGtdUj8,5820
11
- objectnat/methods/provision/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
- objectnat/methods/provision/provision.py,sha256=qPPE5G8kylCfWE5SUz8LlxqEsC4NFmIniKVKPeqyRGs,4713
13
- objectnat/methods/provision/provision_exceptions.py,sha256=-TK4A-vacUuzlPJGSt2YyawRwKDLCZFlAbuIvIf1FnY,1723
14
- objectnat/methods/provision/provision_model.py,sha256=UqF_4oTzclwaLhU5JvH2Pxqq-pm5GHxXorHAnA0Lpyo,14459
15
- objectnat/methods/visibility_analysis.py,sha256=__S01m4YcIZbUcr6Umzvr4NpaCsajXxKNcfJm3zquVY,20690
16
- objectnat-0.2.6.dist-info/LICENSE.txt,sha256=yPEioMfTd7JAQgAU6J13inS1BSjwd82HFlRSoIb4My8,1498
17
- objectnat-0.2.6.dist-info/METADATA,sha256=aB9-0qbiYOC0G-nPS0Vao_IWKuR81lvySTIkeLZcsUQ,5761
18
- objectnat-0.2.6.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
19
- objectnat-0.2.6.dist-info/RECORD,,