Esempio n. 1
0
            public async static Task <Bitmap> GetSquareAsync(int row, int column, int zoom)
            {
                Bitmap bitmapImage;

                try
                {
                    var requesParams = new MapVieArgs()
                    {
                        Zoom   = zoom,
                        Column = column,
                        Row    = row
                    };
                    string target = CreateUrl(requesParams);

                    using (var response = await client.GetAsync(target))
                    {
                        response.EnsureSuccessStatusCode();

                        using (Stream stream = await response.Content.ReadAsStreamAsync())
                        {
                            bitmapImage = new Bitmap(stream);
                        }
                    }

                    return(bitmapImage);
                }
                catch
                {
                    throw;
                }
            }
Esempio n. 2
0
            /// <summary>
            /// Create URL for HERE REST API
            /// </summary>
            /// <param name="args"></param>
            /// <param name="type"></param>
            /// <returns>Returns null on bad arguments or ready to use URL</returns>
            private static string CreateUrl(MapVieArgs args)
            {
                int    balancedServer = 1 + ((args.Row + args.Column) % 4);
                string baseUrl        = $"https://{balancedServer}.base.maps.api.here.com";
                string apiVersion     = "maptile/2.1";
                string resource       = "maptile";
                string mapVersion     = "newest";
                string viewScheme     = "normal.day";

                string zoom   = args.Zoom.ToString();
                string column = args.Column.ToString();
                string row    = args.Row.ToString();
                string size   = args.Size.ToString();

                string format = "png8";

                string credentialParameters = $"?app_id={Credentials.AppId}&app_code={Credentials.AppCode}";

                string res =
                    $"{baseUrl}/{apiVersion}/{resource}/{mapVersion}/{viewScheme}/" +
                    $"{zoom}/{column}/{row}/{size}/{format}" +
                    credentialParameters;

                return(res);
            }