/// <summary> /// 设置一个创建KML数据集的选项,具体请见AppDataSource::createDataset()。 /// </summary> /// <param name="kmlDatasetType">KML数据集类型。</param> /// <returns>EarthView::World::Utilities::DatasetOption数据集选项对象。</returns> public EarthView.World.Utilities.DatasetOption Kml(EarthView.World.Utilities.KMLDATASETTYPE kmlDatasetType) { IntPtr __ptr = EarthView_World_Utilities_DatasetOption_Create_File_kml_DatasetOption_KMLDatasetType(this.NativeObject, kmlDatasetType); if (__ptr == IntPtr.Zero) { return(null); } EarthView.World.Utilities.DatasetOption csObj = new EarthView.World.Utilities.DatasetOption(CreatedWhenConstruct.CWC_NotToCreate); csObj.BindNativeObject(__ptr, "DatasetOption"); csObj.Delegate = true; IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName()); if (csObjClassFactory != null) { csObj.Delegate = true; csObj = csObjClassFactory.Create() as EarthView.World.Utilities.DatasetOption; csObj.BindNativeObject(__ptr, "DatasetOption"); csObj.Delegate = true; } return(csObj); }
/// <summary> /// 设置一个创建模型数据集的选项,具体请见AppDataSource::createDataset()。 /// </summary> /// <param name="fields">数据集字段设置。</param> /// <param name="modelDatasetType">模型数据集类型。</param> /// <param name="espg">EVWellKnownGeoCSType或EVWellKnownProjCSType。</param> /// <returns>EarthView::World::Utilities::DatasetOption数据集选项对象。</returns> public EarthView.World.Utilities.DatasetOption Model(EarthView.World.Spatial.GeoDataset.Fields fields, EarthView.World.Utilities.MODELDATASETTYPE modelDatasetType, int espg) { IntPtr __ptr = EarthView_World_Utilities_DatasetOption_Create_DB_model_DatasetOption_CFields_ModelDatasetType_int(this.NativeObject, object.Equals(fields, null) ? IntPtr.Zero : fields.NativeObject, modelDatasetType, espg); if (__ptr == IntPtr.Zero) { return(null); } EarthView.World.Utilities.DatasetOption csObj = new EarthView.World.Utilities.DatasetOption(CreatedWhenConstruct.CWC_NotToCreate); csObj.BindNativeObject(__ptr, "DatasetOption"); csObj.Delegate = true; IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName()); if (csObjClassFactory != null) { csObj.Delegate = true; csObj = csObjClassFactory.Create() as EarthView.World.Utilities.DatasetOption; csObj.BindNativeObject(__ptr, "DatasetOption"); csObj.Delegate = true; } return(csObj); }
/// <summary> /// 设置一个创建特效数据集的选项,具体请见AppDataSource::createDataset()。 /// </summary> /// <param name="espg">EVWellKnownGeoCSType或EVWellKnownProjCSType。</param> /// <returns>EarthView::World::Utilities::DatasetOption数据集选项对象。</returns> public EarthView.World.Utilities.DatasetOption Effect(int espg) { IntPtr __ptr = EarthView_World_Utilities_DatasetOption_Create_DB_effect_DatasetOption_int(this.NativeObject, espg); if (__ptr == IntPtr.Zero) { return(null); } EarthView.World.Utilities.DatasetOption csObj = new EarthView.World.Utilities.DatasetOption(CreatedWhenConstruct.CWC_NotToCreate); csObj.BindNativeObject(__ptr, "DatasetOption"); csObj.Delegate = true; IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName()); if (csObjClassFactory != null) { csObj.Delegate = true; csObj = csObjClassFactory.Create() as EarthView.World.Utilities.DatasetOption; csObj.BindNativeObject(__ptr, "DatasetOption"); csObj.Delegate = true; } return(csObj); }
/// <summary> /// 设置一个创建矢量数据集的选项,具体请见AppDataSource::createDataset()。 /// </summary> /// <param name="geoType">EVGeometryType。</param> /// <param name="espg">EVWellKnownGeoCSType或EVWellKnownProjCSType。</param> /// <returns>EarthView::World::Utilities::DatasetOption数据集选项对象。</returns> public EarthView.World.Utilities.DatasetOption Vector(EarthView.World.Spatial.GeoDataset.Fields fields, int geoType, string wktCoordsys) { IntPtr __ptr = EarthView_World_Utilities_DatasetOption_Create_DB_vector_DatasetOption_CFields_int_EVString(this.NativeObject, object.Equals(fields, null) ? IntPtr.Zero : fields.NativeObject, geoType, wktCoordsys); if (__ptr == IntPtr.Zero) { return(null); } EarthView.World.Utilities.DatasetOption csObj = new EarthView.World.Utilities.DatasetOption(CreatedWhenConstruct.CWC_NotToCreate); csObj.BindNativeObject(__ptr, "DatasetOption"); csObj.Delegate = true; IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName()); if (csObjClassFactory != null) { csObj.Delegate = true; csObj = csObjClassFactory.Create() as EarthView.World.Utilities.DatasetOption; csObj.BindNativeObject(__ptr, "DatasetOption"); csObj.Delegate = true; } return(csObj); }
/// <summary> /// 创建数据集。 /// 需要注意的是创建数据集只是在数据源中创建,不能立即获取到EarthView::World::Spatial::GeoDataset::IDataset对象, /// 需要调用openDataset()才能获取EarthView::World::Spatial::GeoDataset::IDataset对象。 /// 你也可以通过getDataset()获取一个已经打开的数据集对象。 /// </summary> /// <param name="dataSourceAliasName">数据源的别名。</param> /// <param name="datasetName"> /// 要创建的数据集的名称。 /// 对于KML数据集,会根据创建的KML数据集类型在数据集名称后添加后缀。 /// </param> /// <param name="option"> /// 数据集创建选项,按如下格式设置一个打开选项: /// DatasetOption().create().数据库类型()【.数据库子类型()】(数据集创建参数) /// /// 创建数据集的层级关系如下: /// DatasetOption() /// .create() /// .db() /// .vector (EVGeometryType, EVWellKnownGeoCSType/EVWellKnownProjCSType) /// .model (CFields&, ModelDatasetType, EVWellKnownGeoCSType/EVWellKnownProjCSType) /// .effect (EVWellKnownGeoCSType/EVWellKnownProjCSType) /// .file() /// .kml(KMLDatasetType) /// /// 例如,创建一个特效(effect)类型的数据库数据源,使用如下代码: /// createDataset("mysqlite", "mydataset", /// DatasetOption().create().db().effect(GEO_Beijing54)); /// </param> /// <returns>创建是否成功。</returns> public bool CreateDataset(string dataSourceAliasName, string datasetName, EarthView.World.Utilities.DatasetOption option) { byte ret = EarthView_World_Utilities_AppDataSource_createDataset_bool_EVString_EVString_DatasetOption(this.NativeObject, dataSourceAliasName, datasetName, object.Equals(option, null) ? IntPtr.Zero : option.NativeObject); return(Convert.ToBoolean(ret)); }