Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在谷歌地图中绘制与日线相交的多边形_Javascript_Google Maps - Fatal编程技术网

Javascript 如何在谷歌地图中绘制与日线相交的多边形

Javascript 如何在谷歌地图中绘制与日线相交的多边形,javascript,google-maps,Javascript,Google Maps,我想在谷歌地图上画一个与日线相交的多边形,但它只给我日线一侧的部分,即一个较小的阴影部分,如图所示: 这是我的座标: 北纬:71.2683° 东经:145.7786° 南纬:-14.3576° 西经:-178.8774° 以下是我的代码: var north = 71.2683; var south = -14.3576; var east = 145.7786; var west = -178.8774; var rectCoords = [ {lat: north, lng: w

我想在谷歌地图上画一个与日线相交的多边形,但它只给我日线一侧的部分,即一个较小的阴影部分,如图所示:

这是我的座标:

北纬:71.2683°

东经:145.7786°

南纬:-14.3576°

西经:-178.8774°

以下是我的代码:

var north = 71.2683;
var south = -14.3576;
var east = 145.7786;
var west = -178.8774;

var rectCoords = [
    {lat: north, lng: west},
    {lat: north, lng: east},
    {lat: south, lng: east},
    {lat: south, lng: west}
];

var rect = new google.maps.Polygon({
    paths: [rectCoords],
    strokeColor: '#FF0000',
    strokeOpacity: 0.35,
    strokeWeight: 2,
    fillColor: '#FF0000',
    fillOpacity: 0,
    clickable: false
});

rect.setMap(maps["my_map"]);

我知道在GoogleMap中使用矩形API可能可以解决这个问题,但出于我的项目目的,我需要使用多边形API。有人知道吗?谢谢

< P>沿路径中部的顶部和底部边缘添加点:

var rectCoords = [
    {lat: north, lng: west},
    {lat: north, lng: (west+east)/2},
    {lat: north, lng: east},
    {lat: south, lng: east},
    {lat: south, lng: (west+east)/2},
    {lat: south, lng: west}
];

代码片段:

函数初始化(){
var map=new google.maps.map(
document.getElementById(“地图画布”){
中心:新google.maps.LatLng(37.4419,-122.1419),
缩放:13,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
var north=71.2683;
var south=-14.3576;
var east=145.7786;
var west=-178.8774;
var rectCoords=[{
北:北,
液化天然气:西部
},
{
北:北,
液化天然气:(西+东)/2
},
{
北:北,
液化天然气:东部
},
{
拉特:南部,
液化天然气:东部
},
{
拉特:南部,
液化天然气:(西+东)/2
},
{
拉特:南部,
液化天然气:西部
}
];
var rect=new google.maps.Polygon({
路径:[矩形坐标],
strokeColor:“#FF0000”,
笔划不透明度:0.35,
冲程重量:2,
填充颜色:'#FF0000',
不透明度:0,
可点击:false
});
rect.setMap(map);
var bounds=new google.maps.LatLngBounds();
for(var i=0;i
html,
身体
#地图画布{
身高:100%;
宽度:100%;
边际:0px;
填充:0px
}