private void _setNode(int nodeId, double lat, double lon, double ele) { ensureNode(nodeId); long tmp = (long) nodeId * rowSizeInBytes; da.setInt(tmp + LAT, Helper.degreeToInt(lat)); da.setInt(tmp + LON, Helper.degreeToInt(lon)); if (is3D()) da.setInt(tmp + ELE, Helper.eleToInt(ele)); }
protected int setNodesHeader() { nodes.setHeader(1 * 4, nodeEntryBytes); nodes.setHeader(2 * 4, nodeCount); nodes.setHeader(3 * 4, Helper.degreeToInt(bounds.minLon)); nodes.setHeader(4 * 4, Helper.degreeToInt(bounds.maxLon)); nodes.setHeader(5 * 4, Helper.degreeToInt(bounds.minLat)); nodes.setHeader(6 * 4, Helper.degreeToInt(bounds.maxLat)); if (bounds.hasElevation()) { nodes.setHeader(7 * 4, Helper.eleToInt(bounds.minEle)); nodes.setHeader(8 * 4, Helper.eleToInt(bounds.maxEle)); } nodes.setHeader(9 * 4, isFrozen() ? 1 : 0); return 10; }
@Override public final void setNode(int nodeId, double lat, double lon, double ele) { that.ensureNodeIndex(nodeId); long tmp = (long) nodeId * that.nodeEntryBytes; that.nodes.setInt(tmp + that.N_LAT, Helper.degreeToInt(lat)); that.nodes.setInt(tmp + that.N_LON, Helper.degreeToInt(lon)); if (is3D()) { // meter precision is sufficient for now that.nodes.setInt(tmp + that.N_ELE, Helper.eleToInt(ele)); that.bounds.update(lat, lon, ele); } else { that.bounds.update(lat, lon); } // set the default value for the additional field of this node if (that.extStorage.isRequireNodeField()) that.nodes.setInt(tmp + that.N_ADDITIONAL, that.extStorage.getDefaultNodeFieldValue()); }
private byte[] createWayGeometryBytes(PointList pillarNodes, boolean reverse) { int len = pillarNodes.getSize(); int dim = nodeAccess.getDimension(); int totalLen = len * dim * 4 + 4; byte[] bytes = new byte[totalLen]; bitUtil.fromInt(bytes, len, 0); if (reverse) pillarNodes.reverse(); int tmpOffset = 4; boolean is3D = nodeAccess.is3D(); for (int i = 0; i < len; i++) { double lat = pillarNodes.getLatitude(i); bitUtil.fromInt(bytes, Helper.degreeToInt(lat), tmpOffset); tmpOffset += 4; bitUtil.fromInt(bytes, Helper.degreeToInt(pillarNodes.getLongitude(i)), tmpOffset); tmpOffset += 4; if (is3D) { bitUtil.fromInt(bytes, Helper.eleToInt(pillarNodes.getElevation(i)), tmpOffset); tmpOffset += 4; } } return bytes; }
@Test public void testHeader() { DataAccess da = createDataAccess(name); da.create(300); da.setHeader(7 * 4, 123); assertEquals(123, da.getHeader(7 * 4)); da.setHeader(10 * 4, Integer.MAX_VALUE / 3); assertEquals(Integer.MAX_VALUE / 3, da.getHeader(10 * 4)); da.setHeader(11 * 4, Helper.degreeToInt(123.321)); assertEquals(123.321, Helper.intToDegree(da.getHeader(11 * 4)), 1e-4); da.flush(); da.close(); da = createDataAccess(name); assertTrue(da.loadExisting()); assertEquals(123, da.getHeader(7 * 4)); da.close(); }
private void _setNode( int nodeId, double lat, double lon, double ele ) { ensureNode(nodeId); long tmp = (long) nodeId * rowSizeInBytes; da.setInt(tmp + LAT, Helper.degreeToInt(lat)); da.setInt(tmp + LON, Helper.degreeToInt(lon)); if (is3D()) da.setInt(tmp + ELE, Helper.eleToInt(ele)); }
private void _setNode(int nodeId, double lat, double lon, double ele) { ensureNode(nodeId); long tmp = (long) nodeId * rowSizeInBytes; da.setInt(tmp + LAT, Helper.degreeToInt(lat)); da.setInt(tmp + LON, Helper.degreeToInt(lon)); if (is3D()) da.setInt(tmp + ELE, Helper.eleToInt(ele)); }
private void _setNode(int nodeId, double lat, double lon, double ele) { ensureNode(nodeId); long tmp = (long) nodeId * rowSizeInBytes; da.setInt(tmp + LAT, Helper.degreeToInt(lat)); da.setInt(tmp + LON, Helper.degreeToInt(lon)); if (is3D()) da.setInt(tmp + ELE, Helper.eleToInt(ele)); }
protected int setNodesHeader() { nodes.setHeader(1 * 4, nodeEntryBytes); nodes.setHeader(2 * 4, nodeCount); nodes.setHeader(3 * 4, Helper.degreeToInt(bounds.minLon)); nodes.setHeader(4 * 4, Helper.degreeToInt(bounds.maxLon)); nodes.setHeader(5 * 4, Helper.degreeToInt(bounds.minLat)); nodes.setHeader(6 * 4, Helper.degreeToInt(bounds.maxLat)); if (bounds.hasElevation()) { nodes.setHeader(7 * 4, Helper.eleToInt(bounds.minEle)); nodes.setHeader(8 * 4, Helper.eleToInt(bounds.maxEle)); } nodes.setHeader(9 * 4, isFrozen() ? 1 : 0); return 10; }
protected int setNodesHeader() { nodes.setHeader(1 * 4, nodeEntryBytes); nodes.setHeader(2 * 4, nodeCount); nodes.setHeader(3 * 4, Helper.degreeToInt(bounds.minLon)); nodes.setHeader(4 * 4, Helper.degreeToInt(bounds.maxLon)); nodes.setHeader(5 * 4, Helper.degreeToInt(bounds.minLat)); nodes.setHeader(6 * 4, Helper.degreeToInt(bounds.maxLat)); if (bounds.hasElevation()) { nodes.setHeader(7 * 4, Helper.eleToInt(bounds.minEle)); nodes.setHeader(8 * 4, Helper.eleToInt(bounds.maxEle)); } nodes.setHeader(9 * 4, isFrozen() ? 1 : 0); return 10; }
protected int setNodesHeader() { nodes.setHeader(1 * 4, nodeEntryBytes); nodes.setHeader(2 * 4, nodeCount); nodes.setHeader(3 * 4, Helper.degreeToInt(bounds.minLon)); nodes.setHeader(4 * 4, Helper.degreeToInt(bounds.maxLon)); nodes.setHeader(5 * 4, Helper.degreeToInt(bounds.minLat)); nodes.setHeader(6 * 4, Helper.degreeToInt(bounds.maxLat)); if (bounds.hasElevation()) { nodes.setHeader(7 * 4, Helper.eleToInt(bounds.minEle)); nodes.setHeader(8 * 4, Helper.eleToInt(bounds.maxEle)); } nodes.setHeader(9 * 4, isFrozen() ? 1 : 0); return 10; }
@Override public final void setNode(int nodeId, double lat, double lon, double ele) { that.ensureNodeIndex(nodeId); long tmp = (long) nodeId * that.nodeEntryBytes; that.nodes.setInt(tmp + that.N_LAT, Helper.degreeToInt(lat)); that.nodes.setInt(tmp + that.N_LON, Helper.degreeToInt(lon)); if (is3D()) { // meter precision is sufficient for now that.nodes.setInt(tmp + that.N_ELE, Helper.eleToInt(ele)); that.bounds.update(lat, lon, ele); } else { that.bounds.update(lat, lon); } // set the default value for the additional field of this node if (that.extStorage.isRequireNodeField()) that.nodes.setInt(tmp + that.N_ADDITIONAL, that.extStorage.getDefaultNodeFieldValue()); }
@Override public final void setNode(int nodeId, double lat, double lon, double ele) { that.ensureNodeIndex(nodeId); long tmp = (long) nodeId * that.nodeEntryBytes; that.nodes.setInt(tmp + that.N_LAT, Helper.degreeToInt(lat)); that.nodes.setInt(tmp + that.N_LON, Helper.degreeToInt(lon)); if (is3D()) { // meter precision is sufficient for now that.nodes.setInt(tmp + that.N_ELE, Helper.eleToInt(ele)); that.bounds.update(lat, lon, ele); } else { that.bounds.update(lat, lon); } // set the default value for the additional field of this node if (that.extStorage.isRequireNodeField()) that.nodes.setInt(tmp + that.N_ADDITIONAL, that.extStorage.getDefaultNodeFieldValue()); }
@Override public final void setNode( int nodeId, double lat, double lon, double ele ) { that.ensureNodeIndex(nodeId); long tmp = (long) nodeId * that.nodeEntryBytes; that.nodes.setInt(tmp + that.N_LAT, Helper.degreeToInt(lat)); that.nodes.setInt(tmp + that.N_LON, Helper.degreeToInt(lon)); if (is3D()) { // meter precision is sufficient for now that.nodes.setInt(tmp + that.N_ELE, Helper.eleToInt(ele)); that.bounds.update(lat, lon, ele); } else { that.bounds.update(lat, lon); } // set the default value for the additional field of this node if (that.extStorage.isRequireNodeField()) that.nodes.setInt(tmp + that.N_ADDITIONAL, that.extStorage.getDefaultNodeFieldValue()); }
private byte[] createWayGeometryBytes(PointList pillarNodes, boolean reverse) { int len = pillarNodes.getSize(); int dim = nodeAccess.getDimension(); int totalLen = len * dim * 4 + 4; byte[] bytes = new byte[totalLen]; bitUtil.fromInt(bytes, len, 0); if (reverse) pillarNodes.reverse(); int tmpOffset = 4; boolean is3D = nodeAccess.is3D(); for (int i = 0; i < len; i++) { double lat = pillarNodes.getLatitude(i); bitUtil.fromInt(bytes, Helper.degreeToInt(lat), tmpOffset); tmpOffset += 4; bitUtil.fromInt(bytes, Helper.degreeToInt(pillarNodes.getLongitude(i)), tmpOffset); tmpOffset += 4; if (is3D) { bitUtil.fromInt(bytes, Helper.eleToInt(pillarNodes.getElevation(i)), tmpOffset); tmpOffset += 4; } } return bytes; }
private byte[] createWayGeometryBytes(PointList pillarNodes, boolean reverse) { int len = pillarNodes.getSize(); int dim = nodeAccess.getDimension(); int totalLen = len * dim * 4 + 4; byte[] bytes = new byte[totalLen]; bitUtil.fromInt(bytes, len, 0); if (reverse) pillarNodes.reverse(); int tmpOffset = 4; boolean is3D = nodeAccess.is3D(); for (int i = 0; i < len; i++) { double lat = pillarNodes.getLatitude(i); bitUtil.fromInt(bytes, Helper.degreeToInt(lat), tmpOffset); tmpOffset += 4; bitUtil.fromInt(bytes, Helper.degreeToInt(pillarNodes.getLongitude(i)), tmpOffset); tmpOffset += 4; if (is3D) { bitUtil.fromInt(bytes, Helper.eleToInt(pillarNodes.getElevation(i)), tmpOffset); tmpOffset += 4; } } return bytes; }
bitUtil.fromInt(bytes, Helper.degreeToInt(lat), tmpOffset); tmpOffset += 4; bitUtil.fromInt(bytes, Helper.degreeToInt(pillarNodes.getLongitude(i)), tmpOffset); tmpOffset += 4;