我正在使用processing 3,并试图通过gicentre库实现一个交互式地图。我已经得到了显示的美国地图和悬停功能,即突出显示悬停状态。我想知道有什么方法可以放大到这个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);
}
}有什么想法吗?谢谢!
发布于 2017-10-27 04:11:01
像这样的问题,最好的答案是查看该库的文档。Here是giCentre geoMap库的文档。
根据这一点,这个库基本上只显示形状文件,没有任何用于缩放地图的花哨逻辑。您可以使用scale()函数或camera函数自己实现此功能。但最好还是找到一个支持更改缩小框大小的库。
https://stackoverflow.com/questions/46962366
复制相似问题