¿Alguien sabe dónde puedo encontrar un archivo de forma de muestra que tenga entradas nulas (preferiblemente un archivo de forma poligonal)?
No estoy seguro de cómo crear uno con entradas nulas.
¿Alguien sabe dónde puedo encontrar un archivo de forma de muestra que tenga entradas nulas (preferiblemente un archivo de forma poligonal)?
No estoy seguro de cómo crear uno con entradas nulas.
Respuestas:
Tenga en cuenta que una gran cantidad de software que lee archivos SHP no admite valores nulos para la geometría. Incluso las versiones anteriores de ArcView tenían problemas.
He creado una muestra aquí: http://www.routeware.dk/temp/shp_null_sample.zip Tiene 3 registros, el segundo no tiene geometría.
Supongo que quiere decir nulo para la columna de geometría / forma, porque los archivos de forma no admiten nulo para ningún tipo de campo, excepto la geometría y (escucho) para los campos de fecha.
El siguiente código crea 1 archivo de forma con 1 registro / característica que tiene una geometría poli nula.
import arcpy
import os
outfc = r'c:\temp\outfc.shp'
arcpy.env.workspace = os.path.dirname(outfc)
arcpy.CreateFeatureclass_management(arcpy.env.workspace,os.path.basename(outfc), 'polygon')
cur = arcpy.InsertCursor(outfc)
row = cur.newRow()
cur.insertRow(row)
del(row)
del(cur)
r = arcpy.CheckGeometry_management(outfc,'in_memory\\outtable')
print r.getMessages()
Lo ejecuto y obtengo esto, que es lo que esperaría
ADVERTENCIA 000442: geometría nula en 0 en c: \ temp \ outfc.shp
Si está trabajando en el software ESRI, al menos puedo hablar por ArcGIS 9.3, entonces los shapefiles no admiten nulos. Me encontré con este problema hace unas semanas y pasé un día investigando. Encontré este enlace particularmente esclarecedor http://forums.esri.com/Thread.asp?c=93&f=993&t=125464. Parece que la única forma de admitir nulos dentro de los archivos de forma ESRI es usar geodatabases (luego los archivos de forma se convierten en clases de características. Usé el archivo de una geodatabase). Para admitir nulos, terminé haciendo una geodatabase y creando las clases de características (también conocidas como shapefiles) dentro de la geodatabase de archivos (esto admitirá nulos) en lugar de crear un shapefile y luego importarlo a la geodatabase (esto no admitirá nulos) . Si no recuerdo mal, también debe indicar explícitamente en las propiedades del campo que desea que se admitan los valores nulos. Aquí está el enlace que podría ayudar ¿Cómo crear una clase de entidad en una geodatabase de archivos en ArcGIS 9.3 con Python?