RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题

问题[карты]

Martin Hope
Dev18
Asked: 2024-10-23 23:53:33 +0000 UTC

如何在 Blazor 中使用 Leaflet 本地化 OpenStreetMap?

  • 6

在 GitHub Blazor Server上测试应用程序,我将OpenStreetMap与Leaflet集成以显示两个坐标之间的地图和路线。

我希望地图和路线说明以所选语言显示(例如,用于法语测试),但我遇到了问题:

界面问题截图

尽管使用了法语图块,但界面的某些部分(右侧的路线)仍然是英语,并且街道采用了所需的语言。

也就是说,地图已显示,但一些标签和路线说明仍为英文,尽管我使用“法语” OpenStreetMap osmfr瓷砖。

https://{s}.tile.openstreetmap.fr/osmfr/{z}/{x}/{y}.png

我听说过使用Mapbox或MapTiles等翻译服务的解决方案,但我还没有尝试过。

我尝试accept-language=fr向Nominatim API请求添加一个参数来获取地址:

string url = $"https://nominatim.openstreetmap.org/search?format=json&q={encodedAddress}&accept-language=fr";

但这并没有改变任何事情。

我还尝试使用所需的脚本实现第三方 API,但也没有帮助。


LeafletMap.js:

// LeafletMap.js

export function initializeLeafletMap(startCoordinates, endCoordinates) {
    var map = L.map('map').setView(startCoordinates, 13);

    L.tileLayer('https://{s}.tile.openstreetmap.fr/osmfr/{z}/{x}/{y}.png', {
        maxZoom: 19,
        attribution: '&copy; <a href="https://www.openstreetmap.fr/copyright">OpenStreetMap</a>'
    }).addTo(map);

    L.Routing.control({
        waypoints: [
            L.latLng(startCoordinates),
            L.latLng(endCoordinates)
        ],
        routeWhileDragging: true
    }).addTo(map);
}

LeafletMap.razor:

@rendermode InteractiveServer

@inject HttpClient httpClient
@using Microsoft.JSInterop
@inject IJSRuntime JsRuntimeMap

<div id="map"></div>

@code {
    #region property
    public double[] StartCoordinates { get; set; }
    public double[] EndCoordinates { get; set; }
    [Parameter] public string StartCoordinatesAdresse { get; set; }
    [Parameter] public string EndCoordinatesAdresse { get; set; }

    private IJSObjectReference _jsModule;
    #endregion

    protected override async Task OnInitializedAsync()
    {
        httpClient = new HttpClient();
        httpClient.DefaultRequestHeaders.UserAgent.ParseAdd("TestLeaflet"); //your projectName
    }
    protected override async Task OnAfterRenderAsync(bool firstRender)
    {
        if (firstRender)
        {
            try
            {
                _jsModule = await JsRuntimeMap.InvokeAsync<IJSObjectReference>("import", "/js/LeafletMap.js");
                StartCoordinates = await GetCoordinatesFromAddress(StartCoordinatesAdresse);
                EndCoordinates = await GetCoordinatesFromAddress(EndCoordinatesAdresse);
                if (StartCoordinates != null && EndCoordinates != null)
                {
                    await _jsModule.InvokeVoidAsync("initializeLeafletMap", StartCoordinates, EndCoordinates);
                }
            }
            catch (Exception ex)
            {
                // Log.WriteLogException(ex);
            }
        }
    }

    private async Task<double[]> GetCoordinatesFromAddress(string address)
    {
        try
        {
            string encodedAddress = Uri.EscapeDataString(address);
            string url = $"https://nominatim.openstreetmap.org/search?format=json&q={encodedAddress}&accept-language=fr";

            var response = await httpClient.GetFromJsonAsync<NominatimResponse[]>(url);

            if (response != null && response.Length > 0)
            {
                return new double[] { response[0].lat, response[0].lon };
            }
        }
        catch (Exception ex)
        {
            // Log.WriteLogException(ex);
        }
        return null;
    }

    public class NominatimResponse
    {
        public double lat { get; set; }
        public double lon { get; set; }
    }

    public async ValueTask DisposeAsync()
    {
        if (_jsModule != null)
        {
            await _jsModule.DisposeAsync();
        }
    }
}

问题:

如何翻译显示路线的右侧?

карты
  • 1 个回答
  • 65 Views
Martin Hope
andrew buksar
Asked: 2020-10-12 05:26:49 +0000 UTC

如何添加显示所需位置的谷歌地图

  • 0

以前也是,不过时间久了,不记得怎么弄了。谷歌通常不能给我我需要的信息,所以我在这里问。如何让网站有一张带有物品指定位置的地图?

карты
  • 1 个回答
  • 10 Views
Martin Hope
Dan
Asked: 2020-06-02 11:14:05 +0000 UTC

如何放置这样的标记+文字,Yandex Maps API?

  • 0

我将 Yandex 地图放在 API 上。如何在屏幕截图中放置这样的标记+名称 在此处输入图像描述

карты
  • 1 个回答
  • 10 Views
Martin Hope
Segrei Ulanov
Asked: 2020-02-11 04:59:47 +0000 UTC

如何检测地理坐标的交叉点[关闭]

  • 0
关闭。这个问题需要澄清或补充细节。目前不接受回复。

想改进这个问题?通过编辑此帖子添加更多详细信息并澄清问题。

3年前关闭。

改进问题

我有一个基于 Arduino 的 GPS 跟踪器,它将放置在移动物体上,它还将接收移动物体的当前坐标。

我试图找到点集(我有纬度和经度)之间的距离,我将它们显示为一条灰线。在实践中,将有 3 个或更多。

我需要找出对象与线的距离有多近,或者当它越过它时报告。

在此处输入图像描述

карты
  • 1 个回答
  • 10 Views
Martin Hope
And
Asked: 2020-02-24 15:05:29 +0000 UTC

2gis地图,地图查看位置

  • -1

center- 地图的初始地理中心。
一切正常,它始终以地图的中心为中心,但是我怎样才能使中心位置不移动到中心,而是保持在它停止的位置?

该方法的使用DG.latLngBounds并没有带来结果,虽然它有效,但不是那样的。
我需要留在我离开的地方。在2GIS-API中,我找不到我需要的信息,一切都不对,一切都来回跳动,没有以停止的位置为中心。

有没有人遇到过这样的问题?以及如何解决,请告诉我。

карты
  • 1 个回答
  • 10 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5