/// <summary> /// Deserializes the layer. /// </summary> /// <param name="layer">The layer.</param> /// <param name="pointLayer">The point layer.</param> internal static void DeserializeLayer(dynamic layer, MapPointLayer pointLayer) { if (UseAlternateParser(layer)) { // TODO: write alternate parser for this layer information. return; } LegacyPointType typeOfPoint = (LegacyPointType)Enum.ToObject(typeof(LegacyPointType), Convert.ToInt32(layer.ShapeFileProperties["PointType"])); PointSymbolizer pointSymbolizer; if (ConvertLegacyPointTypeToPointShape(typeOfPoint) == PointShape.Undefined) { pointSymbolizer = new PointSymbolizer(); } else { var color = LegacyDeserializer.GetColor(layer.ShapeFileProperties["Color"]); var width = Convert.ToDouble(layer.ShapeFileProperties["LineOrPointSize"]); pointSymbolizer = new PointSymbolizer(color, ConvertLegacyPointTypeToPointShape(typeOfPoint), width); } pointLayer.Symbolizer = pointSymbolizer; }
private static PointShape ConvertLegacyPointTypeToPointShape(LegacyPointType typeOfPoint) { PointShape pointShape = PointShape.Undefined; switch (typeOfPoint) { case LegacyPointType.Circle: pointShape = PointShape.Ellipse; break; case LegacyPointType.Diamond: pointShape = PointShape.Diamond; break; case LegacyPointType.FontChar: break; case LegacyPointType.ImageList: break; case LegacyPointType.Square: pointShape = PointShape.Rectangle; break; case LegacyPointType.TriangleDown: case LegacyPointType.TriangleLeft: case LegacyPointType.TriangleRight: case LegacyPointType.TriangleUp: pointShape = PointShape.Triangle; break; case LegacyPointType.UserDefined: break; default: break; } return(pointShape); }
private static PointShape ConvertLegacyPointTypeToPointShape(LegacyPointType typeOfPoint) { PointShape pointShape = PointShape.Undefined; switch (typeOfPoint) { case LegacyPointType.Circle: pointShape = PointShape.Ellipse; break; case LegacyPointType.Diamond: pointShape = PointShape.Diamond; break; case LegacyPointType.FontChar: break; case LegacyPointType.ImageList: break; case LegacyPointType.Square: pointShape = PointShape.Rectangle; break; case LegacyPointType.TriangleDown: case LegacyPointType.TriangleLeft: case LegacyPointType.TriangleRight: case LegacyPointType.TriangleUp: pointShape = PointShape.Triangle; break; case LegacyPointType.UserDefined: break; default: break; } return pointShape; }