/// <summary>Получить метку</summary>
        /// <param name="record"></param>
        /// <param name="projection"></param>
        /// <returns></returns>
        public static Placemark GetKml(this MyRecord record, ProjectionInfo projection)
        {
            var feature = new Placemark();
            var geom    = record.GetGeometry() as TPolygon;

            feature.Geometry = geom.GetKml(projection);
            feature.Name     = "test";

            return(feature);
        }
 private Placemark GetKml(MyRecord record)
 {
     return(new Placemark()
     {
         Name = record.Rule.Entpath,
         Geometry = GetKmlGeometry(record.GetGeometry()),
         Description = new Description()
         {
             Text = record.GetFieldsString()
         }
     });
 }
Exemple #3
0
        /// <summary>Добавить сущность</summary>
        /// <param name="rec">Запись</param>
        /// <returns></returns>
        public Feature AddFeature(MyRecord rec)
        {
            var geom = rec.GetGeometry();
            var type = FeatureType.TABFC_NoGeom;

            if (geom == null)
            {
                return(AddFeature(type, new List <List <Vertex> >(),
                                  GetFieldValues(rec), null));
            }
            switch (geom.GetGeometryType())
            {
            case GeometryType.Point:
                type = FeatureType.TABFC_Point;
                break;

            case GeometryType.LineString:
                type = FeatureType.TABFC_Polyline;
                break;

            case GeometryType.Polygon:
            case GeometryType.MultiPolygon:
                type = FeatureType.TABFC_Region;
                break;

            case GeometryType.No:
                break;

            case GeometryType.GeometryCollection:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
            if (geom.IsValid())
            {
                return(AddFeature(type, GetParts(geom), GetFieldValues(rec), null));
            }
            return(type == FeatureType.TABFC_NoGeom ? AddFeature(type, new List <List <Vertex> >(),
                                                                 GetFieldValues(rec), null) : null);
        }