/******************************************************************************* * Copyright (c) MOBAC developers * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. ******************************************************************************/ package mobac.mapsources.mappacks.region_oceania; import java.net.HttpURLConnection; import mobac.mapsources.AbstractHttpMapSource; import mobac.program.interfaces.MapSourceTextAttribution; import mobac.program.model.TileImageType; /** * <pre> * New Zealand Topographic Maps produced by Land Information New Zealand (Government Department). * http://www.linz.govt.nz/topography/topo-maps/index.aspx * * Licence: Creative Commons Attribution 3.0 New Zealand * (http://creativecommons.org/licenses/by/3.0/nz/deed.en) * * Tiles created by and sourced from nztopomaps.com * </pre> * http://www.nztopomaps.com/ */ public class NzTopoMaps extends AbstractHttpMapSource implements MapSourceTextAttribution { public NzTopoMaps() { super("New Zealand Topographic Maps", 6, 15, TileImageType.PNG, TileUpdate.IfNoneMatch); } public String getTileUrl(int zoom, int x, int y) { // nzy = 2^zoom - 1 - y int nzy = (1 << zoom) - 1 - y; return "http://nz1.nztopomaps.com/" + zoom + "/" + x + "/" + nzy + ".png"; } @Override protected void prepareTileUrlConnection(HttpURLConnection conn) { super.prepareTileUrlConnection(conn); conn.addRequestProperty("Referer", "http://m.nztopomaps.com"); } @Override public String toString() { return "nztopomaps.com (New Zealand only)"; } public String getAttributionText() { return "Images sourced from NZTopo database"; } public String getAttributionLinkURL() { return "http://nztopomaps.com"; } }