php osm static api
PHP OpenStreetMap Static API
PHP 库可轻松从 OpenStreetMap 获取带有标记、线条、圆形和多边形的静态图像。
该项目使用 OpenStreetMap 基金会的 Tile Server,该服务器完全在捐赠的资源上运行,有关更多信息,请参阅 Tile 使用策略。
为该存储库加注星标以支持该项目。您将为提高该图书馆的知名度做出贡献吗?
使用composer轻松安装这个库:
composer require dantsu/php-osm-static-api
use DantSu OpenStreetMapStaticAPI OpenStreetMap ;
use DantSu OpenStreetMapStaticAPI LatLng ;
use DantSu OpenStreetMapStaticAPI Polygon ;
use DantSu OpenStreetMapStaticAPI Markers ;
header ( ' Content-type: image/png ' );
( new OpenStreetMap ( new LatLng ( 44.351933 , 2.568113 ), 17 , 600 , 400 ))
-> addMarkers (
( new Markers ( __DIR__ . ' /resources/marker.png ' ))
-> setAnchor (Markers:: ANCHOR_CENTER , Markers:: ANCHOR_BOTTOM )
-> addMarker ( new LatLng ( 44.351933 , 2.568113 ))
-> addMarker ( new LatLng ( 44.351510 , 2.570020 ))
-> addMarker ( new LatLng ( 44.351873 , 2.566250 ))
)
-> addDraw (
( new Polygon ( ' FF0000 ' , 2 , ' FF0000DD ' ))
-> addPoint ( new LatLng ( 44.351172 , 2.571092 ))
-> addPoint ( new LatLng ( 44.352097 , 2.570045 ))
-> addPoint ( new LatLng ( 44.352665 , 2.568107 ))
-> addPoint ( new LatLng ( 44.352887 , 2.566503 ))
-> addPoint ( new LatLng ( 44.352806 , 2.565972 ))
-> addPoint ( new LatLng ( 44.351517 , 2.565672 ))
)
-> getImage ()
-> displayPNG ();
->fitToDraws(int $padding = 0)
->fitToMarkers(int $padding = 0)
->fitToDrawsAndMarkers(int $padding = 0)
->fitToPoints(LatLng[] $points, int $padding = 0)
$padding
设置地图边框的填充量,在设置视图以适合边界时不应考虑该填充量。根据您的需要,这可以是正数或负数。
use DantSu OpenStreetMapStaticAPI OpenStreetMap ;
use DantSu OpenStreetMapStaticAPI LatLng ;
use DantSu OpenStreetMapStaticAPI Polygon ;
use DantSu OpenStreetMapStaticAPI Markers ;
header ( ' Content-type: image/png ' );
( new OpenStreetMap ( new LatLng ( 0 , 0 ), 0 , 600 , 400 ))
-> addMarkers (
( new Markers ( __DIR__ . ' /resources/marker.png ' ))
-> setAnchor (Markers:: ANCHOR_CENTER , Markers:: ANCHOR_BOTTOM )
-> addMarker ( new LatLng ( 44.351933 , 2.568113 ))
-> addMarker ( new LatLng ( 44.351510 , 2.570020 ))
-> addMarker ( new LatLng ( 44.351873 , 2.566250 ))
)
-> addDraw (
( new Polygon ( ' FF0000 ' , 2 , ' FF0000DD ' ))
-> addPoint ( new LatLng ( 44.351172 , 2.571092 ))
-> addPoint ( new LatLng ( 44.352097 , 2.570045 ))
-> addPoint ( new LatLng ( 44.352665 , 2.568107 ))
-> addPoint ( new LatLng ( 44.352887 , 2.566503 ))
-> addPoint ( new LatLng ( 44.352806 , 2.565972 ))
-> addPoint ( new LatLng ( 44.351517 , 2.565672 ))
)
-> fitToDraws ( 10 )
-> getImage ()
-> displayPNG ();
班级 | 描述 |
---|---|
圆圈 | DantSuOpenStreetMapStaticAPICircle 在地图上绘制圆圈。 |
拉丁语 | DantSuOpenStreetMapStaticAPILatLng 定义地图、线条、标记的纬度和经度。 |
线 | DantSuOpenStreetMapStaticAPILine 在地图上绘制线。 |
地图数据 | DantSuOpenStreetMapStaticAPIMapData 将纬度和经度转换为图像像素位置。 |
标记 | DantSuOpenStreetMapStaticAPIMarkers 在地图上显示标记。 |
打开街道地图 | DantSuOpenStreetMapStaticAPIOpenStreetMap 是一个 PHP 库,用于轻松从 OpenStreetMap 获取带有标记、线条、多边形和圆形的静态图像。 |
多边形 | DantSuOpenStreetMapStaticAPIPolygon 在地图上绘制多边形。 |
平铺层 | DantSuOpenStreetMapStaticAPITileLayer 定义图块服务器 url 和相关配置 |
XY | DantSuOpenStreetMapStaticAPIXY 定义地图、线条、标记的 X 和 Y 像素位置。 |
请分叉此存储库并使用拉取请求做出贡献。
任何贡献,无论大小,主要功能,错误修复,都受到欢迎和赞赏,但都会经过彻底审查。