geosolutions-it / digital-twin-toolbox

Open source solution for inspecting and generating 3D Tiles for urban environments
GNU General Public License v3.0
40 stars 4 forks source link

Issues working with Building_Footprints_join_Building_3D_EPSG_26985 sample dataset #36

Closed tdipisa closed 2 weeks ago

tdipisa commented 2 weeks ago

Following steps reported in https://github.com/geosolutions-it/digital-twin-toolbox/wiki/%5BTutorial%5D-Conversion-of-shapefile-with-polygon-geometries-to-3D-Tiles

  1. It is necessary to change the extension of the sample ZIP dataset provided yo SHP.ZIP otherwise the following error occurs image

It would be good to provide sample files directly in the needed extension

  1. Running the pipeline with the requested setup fails with the following error:
proxy-1        | 172.20.0.1 - - [04/Sep/2024:10:47:36 +0000] "GET /api/v1/pipelines/7bd80aeb-8d81-43b3-ae85-0df0a7b9aefd HTTP/1.1" 200 1016 "-" "-" 77 "digital-twin-toolbox-backend-http@docker" "http://172.20.0.7:80" 9ms
worker-1       | [2024-09-04 10:47:36,967: WARNING/ForkPoolWorker-7] /app/app/worker/tasks.py:335: SAWarning: Did not recognize type 'geometry' of column 'geom'
worker-1       |   table = Table(table_name, MetaData(), autoload_with=engine_tasks)
worker-1       |
worker-1       | node:internal/modules/esm/resolve:853
worker-1       |   throw new ERR_MODULE_NOT_FOUND(packageName, fileURLToPath(base), null);
worker-1       |         ^
worker-1       |
worker-1       | Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'earcut' imported from /app/node/earcut.js
worker-1       |     at packageResolve (node:internal/modules/esm/resolve:853:9)
worker-1       |     at moduleResolve (node:internal/modules/esm/resolve:910:20)
worker-1       |     at defaultResolve (node:internal/modules/esm/resolve:1130:11)
worker-1       |     at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:396:12)
worker-1       |     at ModuleLoader.resolve (node:internal/modules/esm/loader:365:25)
worker-1       |     at ModuleLoader.getModuleJob (node:internal/modules/esm/loader:240:38)
worker-1       |     at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:85:39)
worker-1       |     at link (node:internal/modules/esm/module_job:84:36) {
worker-1       |   code: 'ERR_MODULE_NOT_FOUND'
worker-1       | }
worker-1       |
worker-1       | Node.js v20.11.1
worker-1       | [2024-09-04 10:47:37,070: ERROR/ForkPoolWorker-7] Task create_mesh_3dtiles[1708ae92-1542-4657-b23f-59b2f58b35a6] raised unexpected: ValueError("invalid literal for int() with base 10: ''")
worker-1       | Traceback (most recent call last):
worker-1       |   File "/root/micromamba/envs/ddt/lib/python3.10/site-packages/celery/app/trace.py", line 453, in trace_task
worker-1       |     R = retval = fun(*args, **kwargs)
worker-1       |   File "/root/micromamba/envs/ddt/lib/python3.10/site-packages/celery/app/trace.py", line 736, in __protected_call__
worker-1       |     return self.run(*args, **kwargs)
worker-1       |   File "/app/app/worker/main.py", line 60, in create_mesh_3dtiles
worker-1       |     return tasks.create_mesh_3dtiles(pipeline_extended)
worker-1       |   File "/app/app/worker/tasks.py", line 395, in create_mesh_3dtiles
worker-1       |     polyhedron_wkt = polyhedral_to_wkt(geometry_to_polyhedral_surface(geometry, geometry_options))
worker-1       |   File "/app/app/worker/polyhedron.py", line 130, in geometry_to_polyhedral_surface
worker-1       |     return polygon_to_polyhedral_surface(geometry, options)
worker-1       |   File "/app/app/worker/polyhedron.py", line 126, in polygon_to_polyhedral_surface
worker-1       |     return to_polyhedral_surface(lower, upper, remove_bottom_surface)
worker-1       |   File "/app/app/worker/polyhedron.py", line 87, in to_polyhedral_surface
worker-1       |     polyhedral_surface += triangulate(upper, False)
worker-1       |   File "/app/app/worker/polyhedron.py", line 34, in triangulate
worker-1       |     indices = earcut_js(coordinates)
worker-1       |   File "/app/app/worker/processes.py", line 21, in earcut_js
worker-1       |     output = list(map(int, result.stdout.decode("utf-8").split(',')))
worker-1       | ValueError: invalid literal for int() with base 10: ''
proxy-1        | 2024-09-04T10:47:37Z DBG github.com/traefik/traefik/v3/pkg/server/service/loadbalancer/wrr/wrr.go:196 > Service selected by WRR: cdd14721afc7b4c6
backend-1      | INFO:     172.20.0.5:35124 - "GET /api/v1/pipelines/7bd80aeb-8d81-43b3-ae85-0df0a7b9aefd HTTP/1.1" 200 OK

image

tdipisa commented 2 weeks ago

@allyoucanmap I tested with the latest update provided with https://github.com/geosolutions-it/digital-twin-toolbox/pull/40 and it works well.