我正在尝试编写一个描绘用户走过的路的代码。我现在可以获得用户已经通过的所有坐标,我必须实现绘图之路。但在此之前,我必须知道如何将真实世界坐标作为像素传递给BB屏幕。你能给我一些关于它的信息吗?
谢谢
这是我获得道路所有坐标的代码。
public RoutePaint() {
locations = new Vector();
locVector = new ButtonField("Locations Vector",
ButtonField.CONSUME_CLICK);
locVector.setChangeListener(this);
pixel.setChangeListener(this);
add(locVector);
add(pixel);
myCriteria = new BlackBerryCriteria(GPSInfo.GPS_MODE_AUTONOMOUS);
try {
myProvider = (BlackBerryLocationProvider) LocationProvider
.getInstance(myCriteria);
} catch (LocationException e) {
e.printStackTrace();
}
myProvider.setLocationListener(this, 3, -1, -1);
}
public void locationUpdated(LocationProvider provider, Location location) {
// TODO Auto-generated method stub
point = new Point();
latitude = location.getQualifiedCoordinates().getLatitude();
altitude = location.getQualifiedCoordinates().getAltitude();
longitude = location.getQualifiedCoordinates().getLongitude();
velocity = location.getSpeed();
point.x = latitude;
point.y = longitude;
locations.addElement(point);
invalidate();
}
答案 0 :(得分:0)
以下是将坐标转换为屏幕像素的代码:
XYPoint _xypoint = new XYPoint();
Coordinates coords = getCoordinates();
coords.setLatitude(Double.parseDouble((String) _latitude);
coords.setLongitude(Double.parseDouble((String) _longitude);
convertWorldToField(coords,_xypoint);
int x = _xypoint.x;
int y = _xypoint.y;
我们假设纬度和经度分别保存在变量_latitude和_longitude中。整数变量x和y包含坐标转换后的屏幕像素。