Créer Spatia Lite en Python

À propos de cet article

Remarques sur la création de Spatialite en Python

Environnement d'exécution

OS Windows7-64bit Python 2.7.10

Téléchargement de DLL

Téléchargez le binaire de la version Windows à partir de [ici] [link-1] [link-1]:https://www.gaia-gis.it/spatialite-2.3.1/binaries.html

Copie DLL

Lorsque vous le décompressez, il y a une DLL dans chaque dossier bin, donc copiez-le dans un dossier qui passe le chemin

scénario

Un script simple pour créer un Spatialite contenant POINT, LINESTRING, POLYGON Le sample.spatialite créé peut être référencé avec des outils SIG tels que QGIS.

sample.py


# -*- coding: utf-8 -*- 
import sys
import os
import sqlite3

if __name__ == "__main__":
  conn = sqlite3.connect("sample.spatialite")
  if conn:
    print 'connect success'
  else:
    print 'connect failes'
    sys.exit()
  conn.enable_load_extension(True)
  conn.execute('SELECT load_extension("libspatialite-1.dll")')
  conn.execute('SELECT InitSpatialMetaData()')
  conn.execute("INSERT INTO spatial_ref_sys (srid, auth_name, auth_srid, ref_sys_name, proj4text) VALUES (4326, 'epsg', 4326, 'WGS 84', '+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs')")

  #POINT
  conn.execute('CREATE TABLE "point" ("OBJECTID" INTEGER PRIMARY KEY AUTOINCREMENT)')
  conn.execute('Select AddGeometryColumn ("point", "Geometry", 4326, "POINT", 2)')
  conn.execute('INSERT INTO point (Geometry) VALUES(GeomFromText("POINT(139.69 35.679)",4326))')

  #LINESTRING
  conn.execute('CREATE TABLE "line" ("OBJECTID" INTEGER PRIMARY KEY AUTOINCREMENT)')
  conn.execute('Select AddGeometryColumn ("line", "Geometry", 4326, "LINESTRING", 2)')
  conn.execute('INSERT INTO line (Geometry) VALUES(GeomFromText("LINESTRING(139.69 35.68, 139.691 35.681, 139.692 35.68)",4326))')

  #POLYGON
  conn.execute('CREATE TABLE "polygon" ("OBJECTID" INTEGER PRIMARY KEY AUTOINCREMENT)')
  conn.execute('Select AddGeometryColumn ("polygon", "Geometry", 4326, "POLYGON", 2)')
  #Exterior CCW - Interior:CW
  conn.execute('INSERT INTO polygon (Geometry) VALUES(GeomFromText("POLYGON((139.69 35.682, 139.69 35.681, 139.691 35.681, 139.691 35.682, 139.69 35.682),(139.6902 35.6818, 139.6908 35.6818, 139.6908 35.6812, 139.6902 35.6812, 139.6902 35.6818))",4326))')

  conn.commit()
  conn.close()

Autre

Recommended Posts

Créer Spatia Lite en Python
Créer une fonction en Python
Créer un dictionnaire en Python
Créer un conteneur DI avec Python
Créer un fichier binaire en Python
Créez Gmail en Python sans utiliser l'API
Créer une documentation de projet Python dans Sphinx
Créer une chaîne aléatoire en Python
Créer et lire des paquets de messages en Python
Quadtree en Python --2
Python en optimisation
CURL en Python
Métaprogrammation avec Python
Python 3.3 avec Anaconda
Géocodage en python
SendKeys en Python
Méta-analyse en Python
Unittest en Python
Époque en Python
Discord en Python
Allemand en Python
DCI en Python
tri rapide en python
nCr en python
N-Gram en Python
Programmation avec Python
Plink en Python
Constante en Python
FizzBuzz en Python
Sqlite en Python
Étape AIC en Python
LINE-Bot [0] en Python
CSV en Python
Assemblage inversé avec Python
Réflexion en Python
Constante en Python
nCr en Python.
format en python
Scons en Python 3
Puyopuyo en python
python dans virtualenv
PPAP en Python
Quad-tree en Python
Réflexion en Python
Chimie avec Python
Hashable en Python
DirectLiNGAM en Python
LiNGAM en Python
Aplatir en Python
Aplatir en python
Créez vos propres commandes Linux en Python
Créer ScriptableObject en Python lors de la construction d'ADX2
[LLDB] Créez votre propre commande avec Python
Créer une application GUI simple en Python
Créer des pièces de concepteur Qt avec Python (PyQt)
[GPS] Créer un fichier kml avec Python