我们将在地图上绘制的折线与谷歌地图应用的折线不相似。它给人一种漂亮的三维感觉,我们可以绘制类似于折线的折线吗?是否可以使用9-绘图补丁图片?。有人请帮忙吗?。
答案 0 :(得分:0)
您好,这对您有所帮助,它帮助了我。
首先从Google开发者帐户制作google api服务器密钥,然后为google方向添加依赖项。
compile 'com.akexorcist:googledirectionlibrary:1.0.4'
然后检查LatLongs之间的可行和最短路径。
使用此代码检查路线是否可用。
GoogleDirection.withServerKey(getResources().getString(R.string.SERVER_KEY))
.from(SourceLatlng)
.to(DestinationLatlng)
.execute(new DirectionCallback() {
@Override
public void onDirectionSuccess(Direction direction, String message) {
if (direction.isOK()) {
DrawRoute(direction, message,SourceLatlng,DestinationLatlng);
} else {
//selectedRawLine = ERROR;
}
}
@Override
public void onDirectionFailure(Throwable t) {
t.printStackTrace();
}
});
使用这个我们可以发现路线是否可行
private void DrawRoute(Direction direction, String message,LatLng sourceLatlng,LatLng DestinationLng) {
for (Route route : direction.getRouteList()) {
PolylineOptions polyoptions = new PolylineOptions();
polyoptions.color(getResources().getColor(R.color.blackcolor));
polyoptions.width(5);
polyoptions.addAll(route.getOverviewPolyline().getPointList());
poly = googleMap.addPolyline(polyoptions);
poly.setClickable(true);
}
LatLngBounds.Builder latLngBuilder = new LatLngBounds.Builder();
if(sourceLatlng!=null)
latLngBuilder.include(sourceLatlng);
if(DestinationLng!=null)
latLngBuilder.include(DestinationLng);
try {
LatLngBounds bounds = latLngBuilder.build();
CameraUpdate cu = CameraUpdateFactory.newLatLngBounds(bounds,
UiHelper.dpToPixel(getActivity(), 135));
googleMap.animateCamera(cu);
} catch (Exception e) {
e.printStackTrace();
}
}
使用此代码,我们在两个latLongs之间制作折线...