Esempio n. 1
0
	def to_json(self):
		return obj_to_json(self)
Esempio n. 2
0
	layer_infos = { }
	map_doc = arcpy.mapping.MapDocument(mxd_path)
	print mxd_path
	for i, layer in enumerate(arcpy.mapping.ListLayers(map_doc)):
		if layer.supports('dataSource'):
			if layer.isGroupLayer: # annotation
				for j, anno_layer in enumerate(layer):
					anno_idx = i + j + 1
					layer_infos[anno_idx] = _get_layer_info(anno_layer, anno_idx)
			else: # feature or raster layer
				layer_infos[i] = _get_layer_info(layer, i)
		else: # group layer
			layer_infos[i] = layer.name
	return layer_infos

def _get_layer_info(layer, index):
	layer_info = map_layer()
	layer_info.index = index
	layer_info.name = layer.name
	layer_info.feature_class = os.path.basename(layer.dataSource)
	return layer_info

if __name__ == '__main__':
	config = Config.from_file("config.json").for_environment('Dev')
	rt_path = config.maps.documents_source
	#rt_path = sys.argv[-1]
	#rt_path = 'C:/users/jroebuck/projects/agdc/gis/mapservices'
	map_services = [ map_service.from_path_info(mxd, rt_path) for mxd in get_all_files(rt_path, '.mxd') ]
	map_services_json = obj_to_json(map_services)
	with open('map_services.json','w') as txt_out:
		txt_out.write(map_services_json)