作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我能够使用 ngx-openlayers 加载 map 使用以下代码
<aol-map [width]="'100%'" [height]="'100%'">
<aol-view [zoom]="zoom">
<aol-coordinate [x]="5" [y]="45" [srid]="'EPSG:4326'"></aol-coordinate>
</aol-view>
<aol-layer-tile [opacity]="opacity">
<aol-source-osm></aol-source-osm>
</aol-layer-tile>
<aol-layer-vector [opacity]="opacity">
<aol-source-vector>
<aol-feature>
<aol-geometry-point>
<aol-coordinate [x]="5" [y]="45" [srid]="'EPSG:4326'"></aol-coordinate>
</aol-geometry-point>
<aol-style>
<aol-style-circle [radius]="10">
<aol-style-stroke [color]="'black'" [width]="width"></aol-style-stroke>
<aol-style-fill [color]="'green'"></aol-style-fill>
</aol-style-circle>
</aol-style>
</aol-feature>
<aol-feature>
<aol-geometry-point>
<aol-coordinate [x]="5.1" [y]="45.1" [srid]="'EPSG:4326'"></aol-coordinate>
</aol-geometry-point>
<aol-style>
<aol-style-icon [src]="'assets/marker.png'" [anchor]="[0.5, 1]" [anchorXUnits]="'fraction'" [anchorYUnits]="'fraction'" [scale]="0.1"
[anchorOrigin]="'top-left'">
</aol-style-icon>
</aol-style>
</aol-feature>
</aol-source-vector>
</aol-layer-vector>
</aol-map>
我的问题是我想加载一个自定义 map 位置,该位置是我使用 http://localhost:8090/tileserver.php#trails/ol3 上的 MapTile 服务器在本地计算机上提供的。网址。现在来自上述服务器的 XYZ URL 为 ( http://localhost:8090/tileserver.php?/index.json?/trails/ {z}/{x}/{y}.pbf)
如何使用 ngx-openlayers packkage 加载此 map
我尝试过使用它,但它不起作用
<aol-map [width]="'500px'" [height]="'300px'">
<aol-interaction-default></aol-interaction-default>
<aol-control-defaults></aol-control-defaults>
<aol-control-fullscreen></aol-control-fullscreen>
<aol-layer-tile>
<aol-source-osm></aol-source-osm>
<aol-source-xyz [url]="'http://localhost:8090/tileserver.php?/index.json?/trails/{z}/{x}/{y}.pbf'">
</aol-source-xyz>
</aol-layer-tile>
<aol-view [zoom]="12">
<aol-coordinate [x]="6.47" [y]="53.44" [srid]="'EPSG:4326'"></aol-coordinate>
</aol-view>
</aol-map>
最佳答案
所以,是的,我即将回答我自己的问题,因为它可能会对将来的某人有所帮助。
基础知识
OSM (OpenStreetMap) 的 map 有两大类
1.光栅格式:这是 map 的光栅图像(PNG、JPEG、SVG ...)图 block 。这种格式可以被压缩并变成.mbtiles格式。您可以使用类似 mbuilt 的工具将内容提取到 tms、wsm 或 XYZ 文件夹结构中。这是一种简单快捷的选择。
解决离线托管问题后,我使用了 Angular 的默认 leaflet.js 包,一切正常,没有出现问题。
我用了OpenMaptiles映射文件以使用tileserver-gl 托管它们
关于javascript - 如何在 ngx-openlayers 中加载自定义 .pbf 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50116450/
我是一名优秀的程序员,十分优秀!