タイトルによれば、高倍率でポリゴン版に少し問題があります。穴が開いたポリゴンの版が高いズームレベルで消えます
GoogleマップAPIを使用して、穴が開いたポリゴンを作成しています。これにより、地図上のゾーンを「強調表示」することができます。私のアプリでは、ユーザーはそのポリゴンを完全にゾーンに一致するように変更することができます。
すべてが正常に動作しますが、2段階のズームレベルでは「ポイント」が消えます。ゾーンを描画するときに正確にするには、エディションを少し難しくします。
ズームレベルごとに「ポイント」が表示されるようにするためのパラメータがありますか?
私はここにjsfiddle働いています:https://jsfiddle.net/nrtvewgh/1/
ここでは、コードは次のとおりです。
map = new google.maps.Map(document.getElementById('map'), {
center: {lat: 50.383074874246, lng: 5.1561069488525},
zoom: 12,
mapTypeId: 'satellite'
});
var WORLD_COORDS = [
new google.maps.LatLng(-85.1054596961173, -180),
new google.maps.LatLng(85.1054596961173, -180),
new google.maps.LatLng(85.1054596961173, 180),
new google.maps.LatLng(-85.1054596961173, 180),
new google.maps.LatLng(-85.1054596961173, 0)
];
var zoneCoords = [
new google.maps.LatLng(50.414233409894, 5.1438760757446),
new google.maps.LatLng(50.408462829958, 5.1216888427734),
new google.maps.LatLng(50.383074874246, 5.1561069488525),
new google.maps.LatLng(50.408435479564, 5.164647102356),
new google.maps.LatLng(50.413348040727, 5.151150226593)
];
console.log(zoneCoords);
var domainZone = new google.maps.Polygon({
paths: [WORLD_COORDS, zoneCoords],
strokeColor: '#FFFFFF',
strokeOpacity: 0.9,
strokeWeight: 4,
fillColor: '#FFFFFF',
fillOpacity: 0.2,
zIndex: 0
});
domainZone.setMap(map);
domainZone.setEditable(true);
ただ、ゾーンの端に「ポイント」にズームし、彼らは最終的に消えます。
最後の2つのズームレベルでゾーンの端をドラッグできますが、これは直感的ではありません。
私は答えを探しましたが、同じ問題を抱えている人を見つけることはできません。
ありがとうございました。
私はあなたのフィドルを試してみましたが、あなたが言ったような挙動を示しています - しかし、Chrome 56だけです。私はFirefox 52.0.2とIE 11を試しました。これはWindows 7で行われました。 –
確かにこれはIE 11では発生しません(おそらくFirefoxではなく、まだテストされていません)。 しかし、私は昨日クライアントとの会合に参加していました。彼はMacの本(iOS)でChromeの動作を教えてくれました。私の神事はさらに悪化する! マップコントロール(ズームイン、アウト、...)は、ズームレベルに基づいてランダムに消えて、そのときに彼のアプリケーションセッションが失われることさえあります。彼は全く幸せではなく、私はそれを理解することができます。 私は現在、問題をできるだけ早く処理するためには、厄介な回避策に取り組んでいます。 メモありがとうございます! –