Android 如何在GeoJSON图层中用额外的线填充彩色多边形?
我是android中GeoJson层的初学者。我想在GeoJson图层上填充一些颜色来绘制多边形。问题是我不能在GeoJson层上用额外的线填充多边形的颜色 这是我的密码Android 如何在GeoJSON图层中用额外的线填充彩色多边形?,android,polygon,geojson,Android,Polygon,Geojson,我是android中GeoJson层的初学者。我想在GeoJson图层上填充一些颜色来绘制多边形。问题是我不能在GeoJson层上用额外的线填充多边形的颜色 这是我的密码 heatMapLayer = GeoJsonLayer(map, [2]JSONObject(Gson().toJson(featureCollection))) heatMapLayer?.features?.forEach { var colorIndex = it.getPro
heatMapLayer = GeoJsonLayer(map, [2]JSONObject(Gson().toJson(featureCollection)))
heatMapLayer?.features?.forEach {
var colorIndex = it.getProperty("temp").toDouble().toInt()
if (colorIndex < -10) {
colorIndex = -10
}
if (colorIndex > 40) {
colorIndex = 40
}
val polygonStyle = GeoJsonPolygonStyle()
polygonStyle?.fillColor = Utils.hex2ARgb(170, Constants.heatMapColor[colorIndex] ?: error(""))
polygonStyle?.strokeWidth = 0f
it.polygonStyle = polygonStyle
val pointStyle = GeoJsonPointStyle()
pointStyle.isDraggable = true
it.pointStyle = pointStyle
}
heatMapLayer=GeoJsonLayer(映射,[2]JSONObject(Gson().toJson(featureCollection)))
heatMapLayer?.features?.forEach{
var colorIndex=it.getProperty(“temp”).toDouble().toInt()
如果(颜色指数<-10){
颜色指数=-10
}
如果(颜色索引>40){
颜色指数=40
}
val polygonStyle=GeoJsonPolygonStyle()
polygonStyle?.fillColor=Utils.hex2ARgb(170,常数.heatMapColor[colorIndex]?:错误(“”)
polygonStyle?.strokeWidth=0f
it.polygonStyle=polygonStyle
val pointStyle=GeoJsonPointStyle()
pointStyle.isDraggable=true
it.pointStyle=pointStyle
}
我想用颜色显示所有多边形
下面是示例GeoJson数据
{
“类型”:“FeatureCollection”,
“特点”:[
{
“类型”:“功能”,
“财产”:{
“温度”:28.0,
“默认单位”:“摄氏度”
},
“几何学”:{
“类型”:“多边形”,
“坐标”:[
[
[
106.70791799658124,
10.575534789370789
],
[
106.707923201947,
10.539230085503078
],
[
106.75196848603105,
10.514232576383892
],
[
106.79601377011508,
10.539230085503078
],
[
106.7960209392707,
10.589231196662963
],
[
106.76782493975878,
10.605234887615962
],
[
106.76111674178632,
10.601428713580317
],
[
106.76111586436221,
10.595343333584946
],
[
106.71706253230332,
10.570345841048965
],
[
106.70791799658124,
10.575534789370789
]
]
]
}
},
{
“类型”:“功能”,
“财产”:{
“温度”:28.0,
“默认单位”:“摄氏度”
},
“几何学”:{
“类型”:“多边形”,
“坐标”:[
[
[
106.74952463777162,
10.594851453114759
],
[
106.76782493975878,
10.605234887615964
],
[
106.76111783947686,
10.609041752489026
],
[
106.76111674178633,
10.601428713580317
],
[
106.74952463777162,
10.594851453114759
]
]
]
}
}
]
}
试试这个
heatMapLayer = new GeoJsonLayer(googleMap, new JSONObject(airMapGeoJsonLayer.geoJson));
GeoJsonPolygonStyle style = heatMapLayer.getDefaultPolygonStyle();
style.setStrokeColor(airMapGeoJsonLayer.strokeColor);
style.setStrokeWidth(airMapGeoJsonLayer.strokeWidth);
style.setFillColor(airMapGeoJsonLayer.fillColor);
heatMapLayer .addLayerToMap();
或者你也可以试试这个
GeoJsonPolygonStyle polyStyle = layer.getDefaultPolygonStyle();
polyStyle.setFillColor(FILL_GREY);
polyStyle.setStrokeColor(STROKE_GREY);
polyStyle.setStrokeWidth(4f);
它仍然无法填充多边形中的颜色。我在问题中编辑了示例GeoJson数据。谢谢!请删除要在多边形附近添加的相交线。如果您在删除数据中的相交线时遇到问题,请删除该相交线。所以我尝试在android中用额外的线条填充颜色多边形