/// <summary> /// Not Implemented yet /// </summary> /// <param name="fileName"></param> /// <param name="featureType"></param> /// <param name="inRam"></param> /// <param name="container"></param> /// <param name="progressHandler"></param> /// <returns></returns> public IFeatureLayer CreateNew(string fileName, FeatureType featureType, bool inRam, ICollection<ILayer> container, IProgressHandler progressHandler) { ShapefileDataProvider dp = new ShapefileDataProvider(); IFeatureSet fs = dp.CreateNew(fileName, featureType, inRam, progressHandler); if (progressHandler == null) progressHandler = LayerManager.DefaultLayerManager.ProgressHandler; if (fs.FeatureType == FeatureType.Line) { return new MapLineLayer(fs, container); } if (fs.FeatureType == FeatureType.Polygon) { return new MapPolygonLayer(fs, container); } if (fs.FeatureType == FeatureType.Point || fs.FeatureType == FeatureType.MultiPoint) { return new MapPointLayer(fs, container); } return null; }
/// <summary> /// Opens a shapefile, but returns it as a FeatureLayer /// </summary> /// <param name="fileName">The string fileName</param> /// <param name="inRam">Boolean, if this is true it will attempt to open the entire layer in memory.</param> /// <param name="container">A container to hold this layer.</param> /// <param name="progressHandler">The progress handler that should receive status messages</param> /// <returns>An IFeatureLayer</returns> public ILayer OpenLayer(string fileName, bool inRam, ICollection<ILayer> container, IProgressHandler progressHandler) { ShapefileDataProvider dp = new ShapefileDataProvider(); IFeatureSet fs = dp.Open(fileName); if (fs != null) { if (fs.FeatureType == FeatureType.Line) { return new MapLineLayer(fs, container); } if (fs.FeatureType == FeatureType.Polygon) { return new MapPolygonLayer(fs, container); } if (fs.FeatureType == FeatureType.Point || fs.FeatureType == FeatureType.MultiPoint) { return new MapPointLayer(fs, container); } } return null; }