簡體   English   中英

多邊形未顯示在gmap上

[英]Polygons are not shown on gmap

我們在創建多邊形時遇到問題,因為它們沒有出現在地圖上。 我們已按照本教程實施我們的解決方案: http//googlemaps.subgurim.net/ejemplos/ejemplo_94100_Pol%C3%ADgonos.aspx

該應用程序是在visual basic中開發的。 網絡框架版本4。

這是我們在地圖上生成多邊形的代碼的一部分。

Dim latlng As New GLatLng(46, 21)
GMap1.setCenter(latlng, 4)

Dim puntos As New List(Of GLatLng)()
puntos.Add(latlng + New GLatLng(0, 8))
puntos.Add(latlng + New GLatLng(-0.5, 4.2))
puntos.Add(latlng)
puntos.Add(latlng + New GLatLng(3.5, -4))
puntos.Add(latlng + New GLatLng(4.79, +2.6))

Dim poligono As New GPolygon(puntos, "557799", 3, 0.5, "237464", 0.5)
poligono.close()

GMap1.Add(poligono)

我們感謝誰能提供幫助來解決我們遇到的這個問題。

附件我留下地圖圖像,如果根據給定的坐標定位但考慮到不顯示多邊形。

今天它有Javascript數組定義。

當您調用GMap1.Add()時,您會注意到polygon.ToString()導致[[在生成的Javascript中。

替換[[with a [將解決您的問題。

如果您使用Add overload接受多邊形,則需要稍微更改一下代碼,以利用自定義Javascript重載。

要重現位於其網站http://en.googlemaps.subgurim.net/ejemplos/ejemplo_94100_Pol%C3%ADgonos.aspx上的第一個多邊形示例,請執行以下操作:

GLatLng latlng = new GLatLng( 46, 21 );
GMap1.setCenter( latlng, 4 );
List<GLatLng> puntos = new List<GLatLng>();
puntos.Add( latlng + new GLatLng( 0, 8 ) );
puntos.Add( latlng + new GLatLng( -0.5, 4.2 ) );
puntos.Add( latlng );
puntos.Add( latlng + new GLatLng( 3.5, -4 ) );
puntos.Add( latlng + new GLatLng( 4.79, +2.6 ) );
GPolygon poligono = new GPolygon( puntos, "557799", 3, 0.5, "237464", 0.5 );
poligono.close();

var objJs = new StringBuilder();
objJs.Append("function addborder" + 0 + "()");
objJs.Append("{");
objJs.Append( poligono.ToString( GMap1.GMap_Id ) );
objJs.Replace("clickable:False", "clickable:false");//  ' Replace incorrect False statement
objJs.Append("}");

GMap1.Add( "addborder" + 0 + "();", true );
var objString = objJs.ToString();
var newstring = objString.Replace( "[[", "[" ).Replace( "]]", "]" );
GMap1.Add( newstring );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM