예제 #1
0
 void LoadMap()
 {
     GeoStar.Core.SqliteDatabaseFactory fac  = new GeoStar.Core.SqliteDatabaseFactory();
     GeoStar.Core.ConnectProperties     conn = new GeoStar.Core.ConnectProperties();
     conn.Server = @"D:\02-Work\8888-GeoStarKernel\GPS\data";
     GeoStar.Core.GeoDatabase gdb       = fac.Open(conn);
     GeoStar.Core.TileClass   tileclass = gdb.OpenTileClass("shenzhenImage")  as GeoStar.Core.TileClass;
     GeoStar.Core.Control.WPF.TileClassGraphicsLayer tilelayer =
         new GeoStar.Core.Control.WPF.TileClassGraphicsLayer(tileclass);
     m_GeoSpace.LayerBox.AddLayer(tilelayer);
 }
예제 #2
0
        void CacheTileClass(GeoStar.Core.TMSTileClass tms)
        {
            GeoStar.Core.ConnectProperties connn = new GeoStar.Core.ConnectProperties();
            connn.Server = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "TileCache");
            if (!System.IO.Directory.Exists(connn.Server))
            {
                System.IO.Directory.CreateDirectory(connn.Server);
            }
            GeoStar.Core.SqliteDatabaseFactory fac       = new GeoStar.Core.SqliteDatabaseFactory();
            GeoStar.Core.GeoDatabase           gdb       = fac.Open(connn);
            GeoStar.Core.TileClass             tileclass = gdb.OpenTileClass(tms.Name) as GeoStar.Core.TileClass;
            if (null == tileclass)
            {
                tileclass = gdb.CreateTileClass(tms.Name, tms.SpatialReference, tms.Pyramid, tms.TileColumnInfo) as GeoStar.Core.TileClass;
            }

            tms.Cache = tileclass;
        }
예제 #3
0
        void LoadFCS(string str, bool bSingle, bool bVec)
        {
            StringBuilder hashStr = new StringBuilder();

            hashStr.Append(str);

            GeoStar.Core.Map map = new GeoStar.Core.Map();
            GeoStar.Core.SqliteDatabaseFactory fac  = new GeoStar.Core.SqliteDatabaseFactory();
            GeoStar.Core.ConnectProperties     conn = new GeoStar.Core.ConnectProperties();
            conn.Server = str;
            GeoStar.Core.GeoDatabase gdb = fac.Open(conn);
            foreach (var item in gdb.DataRoomName(GeoStarCore.geoDataRoomType.GEO_DATAROOM_FEATURECLASS))
            {
                if (bSingle)
                {
                    hashStr = new StringBuilder();
                    hashStr.Append(str);
                    map = new GeoStar.Core.Map();
                }
                GeoStar.Core.FeatureClass fcs = gdb.OpenFeatureClass(item) as GeoStar.Core.FeatureClass;
                GeoStar.Core.FeatureLayer lyr = new GeoStar.Core.FeatureLayer(fcs);
                map.AddLayer(lyr);
                hashStr.Append(item);
                if (bSingle)
                {
                    GeoStar.Core.Control.WPF.BaseMapGraphicsLayer basem = new GeoStar.Core.Control.WPF.BaseMapGraphicsLayer(
                        map, new GeoStar.Core.Pyramid());
                    basem.VectorTile = bVec;
                    basem.DataHash   = hashStr.ToString().GetHashCode();
                    m_GeoSpace.LayerBox.AddLayer(basem);
                }
            }
            if (bSingle)
            {
                return;
            }

            GeoStar.Core.Control.WPF.BaseMapGraphicsLayer baseMap = new GeoStar.Core.Control.WPF.BaseMapGraphicsLayer(
                map, new GeoStar.Core.Pyramid());
            baseMap.VectorTile = bVec;
            baseMap.DataHash   = hashStr.ToString().GetHashCode();
            m_GeoSpace.LayerBox.AddLayer(baseMap);
        }