Esempio n. 1
0
        /// <summary>
        ///  在指定路径(shp/mdb/gdb)中创建新的要素类,并返回该要素类(注意路径中不能存在同名要素类)
        /// </summary>
        /// <param name="fullPath">
        /// 要素类的完整保存路径,包含以下情况:
        /// ①shp文件路径,创建shp文件;若shp文件所在目录不存在则自动创建;
        /// ②mdb文件路径[\DatasetName]\FeatureClassName,在mdb中或mdb的指定要素集中,创建指定名称的图层;若mdb或要素集不存在则自动创建;
        /// ③gdb目录[\DatasetName]\FeatureClassName,在gdb中或gdb的指定要素集中,创建指定名称的图层;若gdb或要素集不存在则自动创建;
        /// </param>
        /// <param name="geoType">要素类的几何类型</param>
        /// <param name="spatialRef">空间参考(坐标系),创建方法参考<see cref="SpatialRefOpt.CreateSpatialRef(int, ESrType)"/>及该方法的重载</param>
        /// <param name="otherFields">除了OID和SHAPE字段的其他字段</param>
        /// <returns></returns>
        public static IFeatureClass CreateToPath(string fullPath, esriGeometryType geoType, ISpatialReference spatialRef, IEnumerable <IField> otherFields = null)
        {
            IFields fields = FieldOpt.CreateBaseFields(geoType, spatialRef);

            fields.AddFields(otherFields);
            return(CreateToPath(fullPath, fields));
        }