Ejemplo n.º 1
0
 /// <summary>
 /// Create feature layer of a selected type (if it doesn't already exist)
 /// TODO: test this funciton
 /// </summary>
 /// <param name="layerType"></param>
 /// <returns></returns>
 private static FeatureLayer makeLayer(FeatureLayerType layerType)
 {
     try
     {
         var name   = layerType.ToString("g");
         var symRef = createSymbol(layerType);
         var rd     = new SimpleRendererDefinition(symRef, label: name, description: name);
         // TODO: create new dataconnection for Rhino with attributes as needed
         var dc = MapView.Active.Map.Layers.FirstOrDefault().GetDataConnection();
         return(LayerFactory.Instance.CreateFeatureLayer(dc, MapView.Active.Map, layerName: layerType.ToString("g"), rendererDefinition: rd));
     }
     catch
     {
         return(null);
     }
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Get the relevant GH Feature layer based on the type (Point, Line, Polygon)
        /// </summary>
        /// <param name="type">Feature layer type (point, line, polygon)</param>
        /// <returns>Feature Layer</returns>
        private static BasicFeatureLayer getFeatureLayer(FeatureLayerType type)
        {
            var ghPreviewLayer = MapView.Active.Map.FindLayers(type.ToString("g")).FirstOrDefault();

            if (ghPreviewLayer != null)
            {
                return(ghPreviewLayer as BasicFeatureLayer);
            }
            else
            {
                // TODO: uncomment once fully tested
                // ghPreviewLayer = makeLayer(type);
                if (ghPreviewLayer != null)
                {
                    return(ghPreviewLayer as BasicFeatureLayer);
                }
                else
                {
                    return(null);
                }
            }
        }