Estoy trabajando en algunos scripts con polígonos 3D utilizando ArcPy (ArcGIS 10). La lectura y manipulación de datos funciona bien. Sin embargo, parece que escribir la salida de nuevo en un archivo de forma no funciona, solo genera archivos 2D. Para escribir, utilizo la siguiente función:
import arcpy
def write_new_MP(data,outfile):
array = arcpy.Array()
point = arcpy.Point()
features=[]
for feature in data:
for part in feature:
point.X=part[0]
point.Y=part[1]
point.Z=part[2]
array.add(point)
MP=arcpy.Polygon(array,None,True,True)
array.removeAll()
features.append(MP)
arcpy.CopyFeatures_management(features, outfile,"", "0", "0", "0")
return
Los datos son una lista como data=[[[5,5,5],[10,5,5],[10,10,5],[5,10,5],[5,5,5]],[[15,15,15],[10,15,15],[10,10,15],[15,10,15],[15,15,15]]]
¿Alguien sabe por qué los valores de Z no se están utilizando al generar la salida?
0 votos
¿Cómo has confirmado que la Z no está escrita en el archivo? ¿Estás viendo esto en el Analista 3D?
0 votos
Al ver en arcscene, todos los objetos aparecen planos sin importar los datos de z que se escriban
0 votos
¿Estás utilizando una clase de entidad existente o estás creando la fc como parte de este script? Si es parte del script, ¿puedes publicar esa parte también? ¿Cómo estás configurando el sistema de coordenadas, etc.?
0 votos
Dependiendo de tus datos, es posible que también necesites incluir otro bucle anidado para tener en cuenta las características de varias partes (un array de arrays). Por lo tanto, iría Características -> Partes -> Vértices.
0 votos
Traer de vuelta una publicación antigua de entre los muertos. ¿Puedes intentar habilitar la variable de entorno "outputZFlag" para ver si eso hace alguna diferencia?