private RAMTileData fromHDTileData(HDTileData hdt) { //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final RAMTileData td = new RAMTileData(); RAMTileData td = new RAMTileData(); TLongIterator it = hdt.Pois.GetEnumerator(); while (it.hasNext()) { td.addPOI(TDNode.fromNode(this.nodeIndexReader.get(it.next()), this.preferredLanguages)); } it = hdt.Ways.GetEnumerator(); while (it.hasNext()) { TDWay way = null; long id = it.next(); try { way = TDWay.fromWay(this.wayIndexReader.get(id), this, this.preferredLanguages); td.addWay(way); } catch (NoSuchIndexElementException) { // is it a virtual way? way = this.virtualWays.get(id); if (way != null) { td.addWay(way); } else { LOGGER.finer("referenced way non-existing" + id); } } if (way != null) { if (this.outerToInnerMapping.contains(way.Id)) { way.Shape = TDWay.MULTI_POLYGON; } IList <TDRelation> associatedRelations = this.additionalRelationTags.get(id); if (associatedRelations != null) { foreach (TDRelation tileDataRelation in associatedRelations) { way.mergeRelationInformation(tileDataRelation); } } } } return(td); }
protected internal override RAMTileData getTileImpl(int zoom, int tileX, int tileY) { int tileCoordinateXIndex = tileX - this.tileGridLayouts[zoom].UpperLeft.X; int tileCoordinateYIndex = tileY - this.tileGridLayouts[zoom].UpperLeft.Y; // check for valid range if (tileCoordinateXIndex < 0 || tileCoordinateYIndex < 0 || this.tileData[zoom].Length <= tileCoordinateXIndex || this.tileData[zoom][tileCoordinateXIndex].Length <= tileCoordinateYIndex) { return(null); } RAMTileData td = this.tileData[zoom][tileCoordinateXIndex][tileCoordinateYIndex]; if (td == null) { td = new RAMTileData(); this.tileData[zoom][tileCoordinateXIndex][tileCoordinateYIndex] = td; } return(td); }