Import CAD Annotation (Conversion)

License Level:BasicStandardAdvanced

Summary

Converts a collection of CAD annotation features to geodatabase annotation. You can convert each level to individual annotation classes or merge them into a single class. Also, if you choose map layers as input, the level and font overrides will be honored.

Usage

Syntax

ImportCADAnnotation_conversion (input_features, output_featureclass, reference_scale, {use_levels}, {match_symbols_from_first_input}, {require_symbol_from_table}, {feature_linked}, {linked_feature_class}, {create_annotation_when_feature_added}, {update_annotation_when_feature_modified})
ParameterExplanationData Type
input_features
[input_features,...]

The CAD annotation features that you want to convert to geodatabase annotation. If you choose a CAD annotation layer in ArcMap, the following properties of that layer will be honored during the conversion:

  • Visible drawing layers. Only those layers that are turned on for drawing will be converted.
  • Substitution of font and color properties for the text symbol.
  • Selection. Only the selected features will be converted.
  • Definition Query. Only visible features that match the definition query will be converted.
Feature Layer
output_featureclass

The geodatabase annotation feature class to which you want to convert CAD annotation.

Feature Class
reference_scale

Enter the scale to use as a reference for the annotation. This sets the scale to which all symbol and text sizes in the annotation will be made relative.

Double
use_levels
(Optional)
LicenseLicense:

This parameter is only available with ArcGIS for Desktop Standard and ArcGIS for Desktop Advanced licenses.

Specify whether all CAD drawing layers or levels will be converted to annotation classes within the feature class.

  • CLASSES_FROM_LEVELSEach CAD drawing level or layer will be converted to an annotation class within the Output Feature Class. This is the default.
  • ONE_CLASS_ONLYAll CAD drawing levels or layers will be converted to a single annotation class within the Output Feature Class.
Boolean
match_symbols_from_first_input
(Optional)

If you are converting CAD annotation from more than one drawing file and need to substitute the font properties for a symbol and apply that to all the input features, you can use this option.

  • MATCH_FIRST_INPUTMatch the symbols from the first input layer and have them apply to all layers.
  • NO_MATCHEach drawing file retains its own font properties. This is the default.
Boolean
require_symbol_from_table
(Optional)

Specify if the output annotation features will reference a symbol stored in the symbol collection for the feature class.

  • NO_SYMBOL_REQUIREDThe output annotation features will not reference a symbol stored in the symbol collection for the feature class. This is the default.
  • REQUIRE_SYMBOLThe output annotation features will reference a symbol stored in the symbol collection for the feature class.
Boolean
feature_linked
(Optional)
LicenseLicense:

This parameter is only available with ArcGIS for Desktop Standard and ArcGIS for Desktop Advanced licenses.

Choose whether the output annotation feature class will be linked to the features in another feature class. The feature-linked option will not be available with an ArcGIS for Desktop Basic license.

  • FEATURE_LINKEDThe output annotation feature class will be linked to the features in another feature class.
  • STANDARDThe output annotation feature class will not be linked to the features in another feature class. This is the default.
Boolean
linked_feature_class
(Optional)
LicenseLicense:

This parameter is only available with ArcGIS for Desktop Standard and ArcGIS for Desktop Advanced licenses.

The feature class to which you are linking annotation features. The feature class must be a point, line, or polygon feature class. If converting annotation into ArcSDE, the link feature class must not be registered as versioned.

This option is only available if you choose FEATURE_LINKED for the previous parameter.

Feature Layer
create_annotation_when_feature_added
(Optional)
LicenseLicense:

This parameter is only available with ArcGIS for Desktop Standard and ArcGIS for Desktop Advanced licenses.

Specify whether new annotation will be generated when you add new features to the feature class to which this annotation feature class is linked.

This option is only available if you choose FEATURE_LINKED for the Feature-linked parameter and specify a Linked Feature Class.

  • AUTO_CREATEThe ArcMap Editor will automatically generate a new piece of annotation when you add new features to the feature class to which this annotation feature class is linked. This is the default.
  • NO_AUTO_CREATEThe ArcMap Editor will not automatically generate a new piece of annotation when you add new features to the feature class to which this annotation feature class is linked.
Boolean
update_annotation_when_feature_modified
(Optional)
LicenseLicense:

This parameter is only available with ArcGIS for Desktop Standard and ArcGIS for Desktop Advanced licenses.

Specify whether to automatically update the placement of annotation when you edit features in the feature class to which this annotation feature class is linked.

This option is only available if you choose FEATURE_LINKED for the Feature-linked parameter and specify a Linked Feature Class.

  • AUTO_UPDATEThe annotation will be repositioned according to the modified feature shape. This is the default.
  • NO_AUTO_UPDATEThe annotation will remain in its original position.
Boolean

Code Sample

ImportCADAnnotation Example (Python Window)

The following Python Window script demonstrates how to use the ImportCADAnnotation tool in immediate mode.

import arcpy
arcpy.env.workspace = "C:\data"
arcpy.ImportCADAnnotation_conversion("roads.dxf/annotation", "roads.gdb/roadsanno", 1200, 
                                     "CLASSES_FROM_LEVELS", "NO_MATCH", "NO_SYMBOL_REQUIRED", 
                                     "STANDARD", "", "AUTO_CREATE", "NO_AUTO_UPDATE")
ImportCADAnnotation Example (stand-alone Python script)

The following stand-alone script demonstrates how to use the ImportCADAnnotation tool.

# Name: ImportCADAnnotation_Example.py
# Description: Create a geodatabase and import CAD annotation into it using the
#ImportCADAnnotation tool. 

# import system modules 
import arcpy, os
from arcpy import env

# Set environment settings

# User input workspace - eg. C:/data
env.workspace = raw_input('Workspace: ')
# User input data name - eg. roads.dxf
inputCADAnno = raw_input('Data name: ')

# Create file geodatabase based on CAD file
fgdb = env.workspace + os.sep + inputCADAnno[:-4] + ".gdb"
arcpy.CreateFileGDB_management(os.path.dirname(fgdb), os.path.basename(fgdb))

# Set variables
inputFeatureClass = inputCADAnno + os.sep + "Annotation"
outFeatureClass = fgdb + os.sep + inputCADAnno.replace(".", "") + "_Anno"
refScale = 1200
useLevels = "CLASSES_FROM_LEVELS"
matchSymbols = "NO_MATCH"
requireSymbol = "NO_SYMBOL_REQUIRED"
featLinked = "STANDARD"
linkedFeatClass = ""
autoCreate = "AUTO_CREATE"
autoUpdate = "AUTO_UPDATE"

print "Importing CAD annotation..."

try:
    arcpy.ImportCADAnnotation_conversion(inputFeatureClass, outFeatureClass,
                                         refScale, useLevels, matchSymbols,
                                         requireSymbol, featLinked,
                                         linkedFeatClass, autoCreate, autoUpdate) 
    
except:
    # If an error occurred while running a tool print the messages
    print arcpy.GetMessages()

    
print "Import complete"

Environments

Related Topics

Licensing Information

ArcGIS for Desktop Basic: Limited
ArcGIS for Desktop Standard: Yes
ArcGIS for Desktop Advanced: Yes
3/3/2014