Resumen
Convierte una captura de archivos CAD en clases de entidad y tablas de datos utilizando un esquema predefinido y normalizado con la finalidad de futuras conversiones en datos SIG.
La salida se almacena en una geodatabase provisional interna. A continuación, se puede utilizar la geodatabase o se puede realizar un postprocesamiento.
Uso
De forma predeterminada, esta herramienta generará una geodatabase de archivos, pero también una geodatabase personal si el usuario define la extensión adecuada.
Se generará un conjunto fijo de clases de entidad en el dataset de entidades de salida especificado. Estas clases de entidad contienen la geometría para las extensiones de líneas, áreas, puntos y documentos y también es posible generar clases de entidad de puntos para cada bloque o nombre de celda único.
Esta herramienta crea una geodatabase nueva y no se incorporará a ninguna existente.
Si necesita realizar uniones de los datos o relaciones, deberá realizar un postprocesamiento. El resultado serán datos de las entradas de CAD y no existirán relaciones. Su estructura plana permite colocarlos de nuevo como desee.
El parámetro Archivos de entrada permitirá agregar distintos tipos de datos CAD (DGN, DWG, DXF) en una operación.
Las tablas de las propiedades de CAD se crean en el espacio de trabajo de salida. Estas tablas normalizadas se pueden vincular utilizando campos clave, como el EntID que también se encuentra en las clases de entidad creadas mediante la herramienta Importar CAD.
Si una tabla del dataset de entidades o espacio de trabajo de salida tiene el mismo nombre que otra tabla creada mediante ImportCAD, la tabla se eliminará y se volverá a crear.
La herramienta Importar desde CAD no admite la creación de clases de entidad de anotación.
A las tablas de las propiedades de CAD se puede acceder desde el espacio de trabajo de salida en un modelo o una secuencia de comandos utilizando la herramienta Seleccionar datos. Del mismo modo, a las clases de entidad generadas mediante los datos de CAD se puede acceder utilizando la herramienta Seleccionar datos del dataset de entidades de salida.
Las entidades de atributo y texto de CAD se convierten a entidades de puntos.
Con la herramienta Importar desde CAD no se puede generar una clase de entidad de ArcSDE de salida, sino que se creará una geodatabase personal nueva.
Si va a copiar el campo DocPath de la clase de entidad CadDoc o el campo TextMemo de la tabla TxtProp a partir de la geodatabase provisional en una geodatabase de ArcSDE, existen algunas limitaciones que debe conocer. El campo DocPath de la clase de entidad CadDoc y el campo TextMemo de la tabla TxtProp tienen un campo de memorando que es demasiado largo para que quepa en una geodatabase de ArcSDE. Para obtener más información sobre las limitaciones de sus geodatabases de ArcSDE, póngase en contacto con el administrador. Parte de la información de estos campos está duplicada en otros campos. La longitud del campo es más corta, por lo que mueven moverse a una geodatabase de ArcSDE. El campo DocName contiene partes del campo DocPath y el campo TextValue contiene partes del campo TextMemo.
Esta función se suele utilizar para convertir datos CAD en una geodatabase existente utilizando otras funciones de geoprocesamiento de una secuencia de comandos o el modelo ModelBuilder y, por lo tanto, los resultados obtenidos con esta función normalmente serán temporales.
Las tablas normalizadas se generan en el espacio de trabajo de salida especificado. Estas tablas contienen los atributos tabulares de las propiedades de capa, propiedades de texto, propiedades de entidad, atributos de bloque o celda y datos de entidad extendidos o valores MSLink.
Si existe un archivo de proyección para el archivo CAD de entrada, automáticamente rellenará el parámetro de referencia espacial con la información de proyección. Si se utilizan varios archivos CAD como entradas, la referencia espacial se tomará del primer archivo CAD que tenga un archivo de proyección en la lista de entradas.
Al generar una referencia espacial predeterminada para la geodatabase provisional, siempre debe utilizar el modelo predeterminado extendido del archivo CAD como base. Esto significa que, si existen entidades fuera de las extensiones predeterminadas del campo CAD, estas deberán rechazarse. Asegúrese de utilizar el modelo que tenga la extensión más grande como modelo predeterminado en un dibujo DGN. Solo se admite el uso de varios modelos en un único archivo de diseño en la versión 8 de MicroStation.
Si un archivo DGN tiene varios modelos, asegúrese de que el primer modelo tenga el dominio más largo. La herramienta Importar desde CAD calcula el dominio para todo el archivo DGN desde el primer modelo. Si no es este el caso, asegúrese de expandir el dominio en su primer modelo para que sea suficientemente largo para adaptarse a él.
Si utiliza un archivo PRJ para el parámetro de referencia espacial, asegúrese de definir el dominio x,y,z. Si no define un dominio, puede que algunas entidades no se importen si quedan fuera del dominio calculado al vuelo.
Si necesita convertir una anotación de CAD en una anotación de geodatabase, hay varias herramientas específicas que puede utilizar, como Importar anotación CAD.
Sintaxis
arcpy.conversion.ImportCAD(Input_Files, out_personal_gdb, {spatial_reference}, {Explode_Complex})
Parámetro | Explicación | Tipo de datos |
Input_Files [Input_Files,...] | La captura de archivos CAD para convertir en entidades de geodatabase. | CAD Drawing Dataset |
out_personal_gdb | La nueva geodatabase de salida donde se colocarán todas las entidades de CAD de entrada junto con las tablas correspondientes. Si necesita realizar uniones de las tablas o entidades, deberá realizar un postprocesamiento. | Workspace |
spatial_reference (Opcional) | La referencia espacial que se aplicará a la geodatabase provisional de salida. | Spatial Reference |
Explode_Complex (Opcional) | Especifica si las inserciones de bloque en DWG, DXF o en celdas de DGN crearán una entidad para cada elemento constituyente del objeto complejo o solo una entidad de puntos simple en el punto de inserción definido.
| Boolean |
Muestra de código
# To create Points from the CAD block inserts.
# Create the Geoprocessor object
import arcgisscripting
gp = arcgisscripting.create()
# Script arguments...
blocks = sys.argv[1]
if blocks == '#':
blocks = "C:/Test_data/CAD/MetroGAS/res00051_pc22j_ImportCAD1.mdb/blocks"
# provide a default value if unspecified
res00051_pc22j_dwg = sys.argv[2]
if res00051_pc22j_dwg == '#':
res00051_pc22j_dwg = "C:/Test_data/CAD/MetroGAS/res00051_pc22j.dwg"
# provide a default value if unspecified
Select_Set_Name = sys.argv[3]
if Select_Set_Name == '#':
Select_Set_Name = "[SetName] = 'COD_90_50M'"
# Local variables...
Pivoted_AttrTags_by_OwnerID = "C:/Test_data/CAD/MetroGAS/res00051_pc22j_ImportCAD1.mdb/Attrib_PivotTable"
Attrib_Table = "C:/Test_data/CAD/MetroGAS/res00051_pc22j_ImportCAD1.mdb/Attrib"
Entities_Table = "C:/Test_data/CAD/MetroGAS/res00051_pc22j_ImportCAD1.mdb/Entity"
joined = "joined"
Output_Staging_Geodatabase = "C:/Test_data/CAD/MetroGAS/res00051_pc22j_ImportCAD1.mdb"
points_new2 = "points_new"
Point = "C:/Test_data/CAD/MetroGAS/res00051_pc22j_ImportCAD1.mdb/CADStaging/Point"
points_new = "points_new"
points_new3 = "points_new"
try:
# Process: Import from CAD...
gp.ImportCAD_conversion("'C:/Test_data/CAD/MetroGAS/res00051_pc22j.dwg'", Output_Staging_Geodatabase, "", "Do_Not_Explode_Complex")
# Process: Select Data...
gp.SelectData_management(Output_Staging_Geodatabase, "CADStaging/Point", )
# Process: Make Layer...
gp.MakeFeatureLayer_management(Point, points_new, "", "", "EntID EntID VISIBLE")
# Process: Select Data (Entities Table)...
gp.SelectData_management(Output_Staging_Geodatabase, "Entity", )
# Process: Add Join...
gp.AddJoin_management(points_new, "EntID", Entities_Table, "EntID", "OUTER", )
# Process: Select Data (Attrib Table)...
gp.SelectData_management(Output_Staging_Geodatabase, "Attrib", )
# Process: Make Table View...
gp.MakeTableView_management(Attrib_Table, joined, Select_Set_Name, "", "EntID EntID VISIBLE;OwnerID OwnerID VISIBLE;AttrFlag AttrFlag VISIBLE;MSSet MSSet VISIBLE;AtrTag AtrTag VISIBLE;AtrHndl AtrHndl VISIBLE;AttrType AttrType VISIBLE;AttrStr AttrStr VISIBLE;AttrLong AttrLong VISIBLE;AttrDbl AttrDbl VISIBLE")
# Process: Pivot Table...
gp.PivotTable_management(joined, "'Attrib.OwnerID';'OwnerID'", "AttrTag", "AttrStr", Pivoted_AttrTags_by_OwnerID)
# Process: Add Join2...
gp.AddJoin_management(points_new2, "Point.EntID", Pivoted_AttrTags_by_OwnerID, "OwnerID", "INNER", )
# Process: Copy Features...
gp.CopyFeatures_management(points_new3, blocks, "", "0", "0", "0")
except:
# If an error occurred while running a tool print the messages
print gp.GetMessages()
Entornos
- Espacio de trabajo actual
- Valor Z de salida predeterminado
- Palabra clave CONFIG de salida
- Palabra clave CONFIG de salida
- Dominio XY de salida
- Dominio Z de salida
- Sistema de coordenadas de salida
- Extensión
- La salida tiene valores M
- Cuadrícula espacial de salida 1
- Cuadrícula espacial de salida 2
- Cuadrícula espacial de salida 3
- Espacio de trabajo temporal
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí