0

我正在使用处理 3,并尝试通过 gicentre GeoMap 库实现交互式地图。我已经显示了美国地图,并且悬停功能起作用,即突出显示悬停状态。我想知道有什么方法可以放大这个 GeoMap 库中的状态。可能是 mouseClick 或 mouseMove 事件来触发此功能。我不确定如何重绘地图以使其放大到选定状态。这是我的起始代码:

import org.gicentre.geomap.*;

GeoMap geoMap;
int id = -1;
void setup()
{
  size(800, 400);  
  geoMap = new GeoMap(this);  // Create the geoMap object.
  geoMap.readFile("usContinental");   // Read shapefile.
}

void draw()
{
  background(202, 226, 245);  // Ocean colour
  stroke(0,40);               // Boundary colour
  fill(206,173,146);          // Land colour
  //if (id == -1) {
    geoMap.draw();              // Draw the entire map.
  //} else {
  //  geoMap.draw(id);
  //}
  // Find the country at mouse position and draw in different color.
  id = geoMap.getID(mouseX, mouseY);
  if (id != -1)
  {
    fill(180, 120, 120);      // Highlighted land colour.
    geoMap.draw(id);
  }
}

任何想法?谢谢!

4

1 回答 1

0

最好通过查看图书馆的文档来回答此类问题。是 giCentre geoMap 库的文档。

据此,这个库基本上只显示形状文件,没有任何用于缩放地图的花哨逻辑。您可以使用该scale()功能或​​相机功能自己实现这一点。但是您最好还是找到一个支持更改开箱即用缩放的库。

于 2017-10-26T20:11:01.433 回答