Skip to content

Instantly share code, notes, and snippets.

Avatar

Thomas Gratier ThomasG77

View GitHub Profile
@ThomasG77
ThomasG77 / README.md
Last active Jun 23, 2022
Run PyQGIS in Jupyter Notebook
View README.md
View gdal_csv_to_geopackage.py
import os
from osgeo import gdal
# gdal.UseExceptions()
# gdal.SetConfigOption('CPL_DEBUG', 'ON')
# Create a test CSV
file = "test.csv"
with open("test.csv", "w") as csv:
csv.write("latitude,longitude\n")
@ThomasG77
ThomasG77 / check_vat_vie.md
Last active Jun 18, 2022
SIREN et autres traitements autour dont la validation VIES (TVA intracommunautaire)
View check_vat_vie.md

SIREN et autres traitements autour dont la validation VIES (TVA intracommunautaire)

Formule SIREN vers TVA intracommunautaire

Approche Python

COUNTRIES = {
    "AT": "Autriche",
 "BE": "Belgique",
View pyqgis-point-cloud-layer-laz-ign.py
from qgis.core import QgsProject, QgsPointCloudLayer
# File url from the demo to download and uncompress
# https://wxs.ign.fr/c90xknypoz1flvgojchbphgt/telechargement/prepackage/LIDARHD_PACK_NP_2021$LIDARHD_1-0_LAZ_NP-0808_6307-2021/file/LIDARHD_1-0_LAZ_NP-0808_6307-2021.7z
# Add layer and add index automatically if not present
cl1 = QgsPointCloudLayer('LIDARHD_1-0_LAZ_NP-0808_6307-2021/Semis_2021_0808_6306_LA93_IGN69.laz', 'Semis_2021_0808_6306_LA93_IGN69', 'pdal')
if cl1.isValid():
QgsProject.instance().addMapLayer(cl1)
@ThomasG77
ThomasG77 / README.md
Last active May 12, 2022
Données centre des communes (centroide des mairies sinon centroide commune)
View README.md

Script pour générer les positions des mairies

Lancer le script bash ./get_mairies_from_ign_bdtopo.sh

Il permet de créer 2 fichiers GeoJSON:

  • mairies_multipolygons.geojson est celui des emplacements de la mairie principale pour chaque commune. Quelques lignes sont vides, certaines communes n'ayant plus de mairie (exemple des communes mortes pour la France)
  • centre_communes.geojson prend le centre du polygone de la mairie et sinon le centre de la commune. En réalité, il ne s'agit pas d'un centre mais d'un opération qui génère un centroide et le corrige pour s'assurer que ce dernier est bien dans le multipolygone.

Nous créons un 3ème fichier centre_communes.csv pour ceux qui préfèrent un fichier pla

View standalone-flask-qgis.py
import uuid
from io import BytesIO
import os
from flask import Flask, request, Response, send_file
app = Flask(__name__)
from qgis.PyQt.Qt import Qt
from qgis.PyQt.QtCore import QSize
@ThomasG77
ThomasG77 / README.md
Last active May 10, 2022
Recipe to use MySQL/MariaDB with QGIS and GDAL, with or without geom column
View README.md
@ThomasG77
ThomasG77 / index.html
Last active May 10, 2022
Simple OpenLayers Reverse Geocoding sample with Nominatim
View index.html
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8>
<meta name=description content="">
<meta name=viewport content="width=device-width, initial-scale=1">
<title>Reverse geocoding</title>
<link rel="stylesheet" href="https://openlayers.org/en/v4.4.2/css/ol.css" type="text/css">
<!-- The line below is only needed for old environments like Internet Explorer and Android 4.x -->
<script src="https://cdn.polyfill.io/v2/polyfill.min.js?features=requestAnimationFrame,Element.prototype.classList,URL,fetch"></script>
View communes_non_num_2021-07-01.geojson
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.