本文整理汇总了Java中org.mapsforge.core.util.LatLongUtils类的典型用法代码示例。如果您正苦于以下问题:Java LatLongUtils类的具体用法?Java LatLongUtils怎么用?Java LatLongUtils使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
LatLongUtils类属于org.mapsforge.core.util包,在下文中一共展示了LatLongUtils类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getWayBoundingBox
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
private static TileCoordinate[] getWayBoundingBox(final CB_TDWay way, byte zoomlevel, int enlargementInMeter) {
double maxx = Double.NEGATIVE_INFINITY, maxy = Double.NEGATIVE_INFINITY, minx = Double.POSITIVE_INFINITY, miny = Double.POSITIVE_INFINITY;
for (CB_TDNode coordinate : way.getWayNodes()) {
maxy = Math.max(maxy, LatLongUtils.microdegreesToDegrees(coordinate.getLatitude()));
miny = Math.min(miny, LatLongUtils.microdegreesToDegrees(coordinate.getLatitude()));
maxx = Math.max(maxx, LatLongUtils.microdegreesToDegrees(coordinate.getLongitude()));
minx = Math.min(minx, LatLongUtils.microdegreesToDegrees(coordinate.getLongitude()));
}
double[] epsilonsTopLeft = computeTileEnlargement(maxy, enlargementInMeter);
double[] epsilonsBottomRight = computeTileEnlargement(miny, enlargementInMeter);
TileCoordinate[] bbox = new TileCoordinate[2];
bbox[0] = new TileCoordinate((int) MercatorProjection.longitudeToTileX(minx - epsilonsTopLeft[1], zoomlevel),
(int) MercatorProjection.latitudeToTileY(maxy + epsilonsTopLeft[0], zoomlevel), zoomlevel);
bbox[1] = new TileCoordinate(
(int) MercatorProjection.longitudeToTileX(maxx + epsilonsBottomRight[1], zoomlevel),
(int) MercatorProjection.latitudeToTileY(miny - epsilonsBottomRight[0], zoomlevel), zoomlevel);
return bbox;
}
开发者ID:Longri,项目名称:CB_MAP,代码行数:22,代码来源:CB_UTILS.java
示例2: addPOI
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
protected void addPOI(CB_TDNode poi) {
if (!poi.isPOI()) {
return;
}
byte minZoomLevel = poi.getZoomAppear();
for (int i = 0; i < this.zoomIntervalConfiguration.getNumberOfZoomIntervals(); i++) {
// is POI seen in a zoom interval?
if (minZoomLevel <= this.zoomIntervalConfiguration.getMaxZoom(i)) {
long tileCoordinateX = MercatorProjection.longitudeToTileX(
LatLongUtils.microdegreesToDegrees(poi.getLongitude()),
this.zoomIntervalConfiguration.getBaseZoom(i));
long tileCoordinateY = MercatorProjection.latitudeToTileY(
LatLongUtils.microdegreesToDegrees(poi.getLatitude()),
this.zoomIntervalConfiguration.getBaseZoom(i));
CB_TileData tileData = getTileImpl(i, (int) tileCoordinateX, (int) tileCoordinateY);
if (tileData != null) {
tileData.addPOI(poi);
countPoiTags(poi);
}
}
}
}
开发者ID:Longri,项目名称:CB_MAP,代码行数:24,代码来源:CB_BaseTileBasedDataProcessor.java
示例3: setMapPosition
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
public void setMapPosition(BoundingBox _bbox) {
byte zoomLevel = LatLongUtils.zoomForBounds(
getModel().mapViewDimension.getDimension(), _bbox,
getModel().displayModel.getTileSize());
getModel().mapViewPosition.setMapPosition(new MapPosition(_bbox
.getCenterPoint(), zoomLevel));
}
开发者ID:ianmalcolm,项目名称:DeadReckoning,代码行数:8,代码来源:MapView.java
示例4: fromNode
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
/**
* Constructs a new CB_TDNode from a given osmosis node entity. Checks the validity of the entity.
*
* @param node the osmosis entity
* @param preferredLanguages the preferred language(s) or null if no preference
* @return a new CB_TDNode
*/
public static CB_TDNode fromNode(Node node, List<String> preferredLanguages) {
SpecialTagExtractionResult ster = OSMUtils.extractSpecialFields(node, preferredLanguages);
short[] knownWayTags = OSMUtils.extractKnownPOITags(node);
return new CB_TDNode(node.getId(), LatLongUtils.degreesToMicrodegrees(node.getLatitude()),
LatLongUtils.degreesToMicrodegrees(node.getLongitude()), ster.getElevation(), ster.getLayer(),
ster.getHousenumber(), ster.getName(), knownWayTags);
}
开发者ID:Longri,项目名称:CB_MAP,代码行数:16,代码来源:CB_TDNode.java
示例5: bufferInDegrees
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
private static double[] bufferInDegrees(long tileY, byte zoom, int enlargementInMeter) {
if (enlargementInMeter == 0) {
return EPSILON_ZERO;
}
double[] epsilons = new double[2];
double lat = MercatorProjection.tileYToLatitude(tileY, zoom);
epsilons[0] = LatLongUtils.latitudeDistance(enlargementInMeter);
epsilons[1] = LatLongUtils.longitudeDistance(enlargementInMeter, lat);
return epsilons;
}
开发者ID:Longri,项目名称:CB_MAP,代码行数:13,代码来源:CB_UTILS.java
示例6: computeTileEnlargement
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
private static double[] computeTileEnlargement(double lat, int enlargementInMeter) {
if (enlargementInMeter == 0) {
return EPSILON_ZERO;
}
double[] epsilons = new double[2];
epsilons[0] = LatLongUtils.latitudeDistance(enlargementInMeter);
epsilons[1] = LatLongUtils.longitudeDistance(enlargementInMeter, lat);
return epsilons;
}
开发者ID:Longri,项目名称:CB_MAP,代码行数:13,代码来源:CB_UTILS.java
示例7: onWindowFocusChanged
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus) {
BoundingBox bb = new BoundingBox(latLong2.latitude,
latLong3.longitude, latLong3.latitude, latLong2.longitude);
Dimension dimension = this.mapView.getModel().mapViewDimension.getDimension();
this.mapView.getModel().mapViewPosition.setMapPosition(new MapPosition(
bb.getCenterPoint(),
LatLongUtils.zoomForBounds(
dimension,
bb,
this.mapView.getModel().displayModel.getTileSize())));
}
}
开发者ID:emdete,项目名称:Simplicissimus,代码行数:16,代码来源:ZoomToBounds.java
示例8: roundDoubleCoordinate
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
public static double roundDoubleCoordinate(double value) {
value = Math.round(LatLongUtils.degreesToMicrodegrees(value));
value = LatLongUtils.microdegreesToDegrees((int) value);
return value;
}
开发者ID:Longri,项目名称:cachebox3.0,代码行数:6,代码来源:TestUtils.java
示例9: IntBoundingBox
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
public IntBoundingBox(BoundingBox bb) {
this.maxLatitude = LatLongUtils.degreesToMicrodegrees(bb.maxLatitude);
this.maxLongitude = LatLongUtils.degreesToMicrodegrees(bb.maxLongitude);
this.minLatitude = LatLongUtils.degreesToMicrodegrees(bb.minLatitude);
this.minLongitude = LatLongUtils.degreesToMicrodegrees(bb.minLongitude);
}
开发者ID:Longri,项目名称:CB_MAP,代码行数:7,代码来源:IntBoundingBox.java
示例10: getValueOfProperty_LAT_LON
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
private static int getValueOfProperty_LAT_LON(IByteArray array, IByteArray property, int start, int end) {
int s = -1;
int e = -1;
//search for property start
s = array.searchFirst(property, start);
//search for property end
e = array.searchFirst(PROPERTY_END, s + property.getLength() + 1);
if (s == -1 || e == -1)
throw new RuntimeException("Cant parse ID");
double value = 0;
double multiplier = 1;
//search decimal point and calculate multiplier
boolean found = false;
int decimalIndex = -1;
for (int i = s + property.getLength(); i < e - 1; i++) {
if (!found && array.get(i) == NUM_POINT) {
found = true;
decimalIndex = i;
}
if (found) {
multiplier /= 10.0;
}
}
if (decimalIndex == -1) decimalIndex = e - 1;
for (int i = e - 1; i > s + property.getLength(); i--) {
if (i == decimalIndex)
continue;
value = value + ((double) getNumericValuefromByte(array, i)) * multiplier;
multiplier *= 10.0;
}
int intValue = LatLongUtils.degreesToMicrodegrees(value);
return intValue;
}
开发者ID:Longri,项目名称:CB_MAP,代码行数:43,代码来源:ReadOsm.java
示例11: toCoordinate
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
private static Coordinate toCoordinate(int latitude, int longitude) {
return new Coordinate(LatLongUtils.microdegreesToDegrees(longitude),
LatLongUtils.microdegreesToDegrees(latitude));
}
开发者ID:Longri,项目名称:CB_MAP,代码行数:5,代码来源:CB_UTILS.java
示例12: addMapStartPosition
import org.mapsforge.core.util.LatLongUtils; //导入依赖的package包/类
/**
* Convenience method.
*
* @param position
* the map start position in format latitude, longitude
*/
public void addMapStartPosition(String position) {
if (position != null) {
setMapStartPosition(LatLongUtils.fromString(position));
}
}
开发者ID:Longri,项目名称:CB_MAP,代码行数:12,代码来源:CB_MapWriterConfiguration.java
注:本文中的org.mapsforge.core.util.LatLongUtils类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论