Java 类com.google.android.gms.maps.model.PolylineOptions 实例源码
项目:UbiBike-client
文件:DisplayRoute.java
/**
* Manipulates the map once available.
* This callback is triggered when the map is ready to be used.
* This is where we can add markers or lines, add listeners or move the camera. In this case,
* we just add a marker near Sydney, Australia.
* If Google Play services is not installed on the device, the user will be prompted to install
* it inside the SupportMapFragment. This method will only be triggered once the user has
* installed Google Play services and returned to the app.
*/
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
if(checkingStation)
{
updateMap(mMap,stationPos);
mMap.moveCamera(CameraUpdateFactory.newLatLng(stationPos));
mMap.moveCamera(CameraUpdateFactory.zoomTo(15));
}
else
{
try {
PolylineOptions mPolyOpt = getFromJSONArray(track);
updateMap(mMap,mPolyOpt);
mMap.moveCamera(CameraUpdateFactory.newLatLng(mPolyOpt.getPoints().get(0)));
mMap.moveCamera(CameraUpdateFactory.zoomTo(15));
} catch (JSONException e) {
e.printStackTrace();
}
}
}
项目:Companion-For-PUBG-Android
文件:DistanceAction.java
/**
* If an origin and destination exist this will draw a line between them and
* render the time it takes to reach the {@link DistanceAction#destination}
*/
private void addPolyline() {
if (this.origin == null || this.destination == null) {
return;
}
releasePolyline();
this.destination.marker.setTitle(getTitleForDistance(getDistance()));
this.destination.marker.setSnippet(this.snippet);
this.destination.marker.showInfoWindow();
final PolylineOptions polylineOptions = new PolylineOptions();
polylineOptions.add(this.origin.latLng);
polylineOptions.add(this.destination.latLng);
polylineOptions.width(5);
polylineOptions.color(this.colorAccent);
polylineOptions.zIndex(1000);
this.polyline = this.mapController.addPolyline(polylineOptions);
}
项目:AppGoogleMaps
文件:MainActivity.java
@Override
public void onDirectionFinderSuccess(List<Route> routes, Route routeObject) {
callProgressDialog();
polylinePaths = new ArrayList<>();
if (!routes.isEmpty()) {
for (Route route : routes) {
PolylineOptions polylineOptions = new PolylineOptions().
color(Color.BLUE).
width(5);
for (int i = 0; i < route.getPoints().size(); i++)
polylineOptions.add(route.getPoints().get(i));
polylinePaths.add(googleMap.addPolyline(polylineOptions));
}
//It allows to know to the Fragment that there is a new Route
placesListener.onLocationsChange(routeObject);
} else
Toast.makeText(this, "There is no results", Toast.LENGTH_SHORT).show();
}
项目:FiveMinsMore
文件:GpxUtils.java
static PolylineOptions trk2TrkOpts(Track trk) {
List<TrackPoint> trkPts = new ArrayList<>();
for (TrackSegment seg : trk.getTrackSegments()) {
trkPts.addAll(seg.getTrackPoints());
}
PolylineOptions pos = PolylilneStyle.getDefaultStyle();
for (TrackPoint trkPt : trkPts) {
LatLng latLng = new LatLng(trkPt.getLatitude(), trkPt.getLongitude());
pos.add(latLng);
}
return pos;
}
项目:BikeLine
文件:MainActivity.java
@Override
public void onParserTaskfinish(LatLng startCoordinate, LatLng endCoordinate, PolylineOptions lineOptions, List<Location> locations) {
planningDialog.dismiss();
Intent navigationActivity = new Intent(getBaseContext(), NavigationActivity.class);
navigationActivity.putExtra(NavigationActivity.START_COORDINATE_EXTRA, startCoordinate);
navigationActivity.putExtra(NavigationActivity.END_COORDINATE_EXTRA, endCoordinate);
navigationActivity.putExtra(NavigationActivity.POLY_LINE_OPTIONS_EXTRA, lineOptions);
if(locations == null){
Log.d("Intent","failed");
}
else{
Log.d("Intent","success");
Gson gson = new Gson();
Type type = new TypeToken<List<Location>>() {}.getType();
String json = gson.toJson(locations, type);
Log.d("Intent",json);
Log.d("Location Count",Integer.toString(locations.size()));
navigationActivity.putExtra(NavigationActivity.ADDITIONAL_LOCATION_EXTRA, json);
}
startActivity(navigationActivity);
overridePendingTransition(R.anim.slide_from_right, R.anim.slide_to_left);
}
项目:Runnest
文件:MapHandler.java
/**
* Constructor of the class
*
* @param googleMap a google map
* @param trackColor the color of the track
*/
public MapHandler(GoogleMap googleMap, int trackColor) {
if (googleMap == null) {
throw new IllegalArgumentException();
}
this.trackColor = trackColor;
this.googleMap = googleMap;
this.googleMap.setLocationSource(null);
uiSettings = this.googleMap.getUiSettings();
uiSettings.setMyLocationButtonEnabled(false);
uiSettings.setCompassEnabled(false);
polylineOptions = new PolylineOptions();
}
项目:geopackage-android-map
文件:GoogleMapShapeConverter.java
/**
* Convert a {@link LineString} to a {@link PolylineOptions}
*
* @param lineString
* @return
*/
public PolylineOptions toPolyline(LineString lineString) {
PolylineOptions polylineOptions = new PolylineOptions();
Double z = null;
// Try to simplify the number of points in the line string
List<Point> points = simplifyPoints(lineString.getPoints());
for (Point point : points) {
LatLng latLng = toLatLng(point);
polylineOptions.add(latLng);
if (point.hasZ()) {
z = (z == null) ? point.getZ() : Math.max(z, point.getZ());
}
}
if (lineString.hasZ() && z != null) {
polylineOptions.zIndex(z.floatValue());
}
return polylineOptions;
}
项目:geopackage-android-map
文件:GoogleMapShapeConverter.java
/**
* Add a Polyline to the map as markers
*
* @param map
* @param polylineOptions
* @param polylineMarkerOptions
* @param globalPolylineOptions
* @return
*/
public PolylineMarkers addPolylineToMapAsMarkers(GoogleMap map,
PolylineOptions polylineOptions,
MarkerOptions polylineMarkerOptions,
PolylineOptions globalPolylineOptions) {
PolylineMarkers polylineMarkers = new PolylineMarkers(this);
if (globalPolylineOptions != null) {
polylineOptions.color(globalPolylineOptions.getColor());
polylineOptions.geodesic(globalPolylineOptions.isGeodesic());
}
Polyline polyline = addPolylineToMap(map, polylineOptions);
polylineMarkers.setPolyline(polyline);
List<Marker> markers = addPointsToMapAsMarkers(map,
polylineOptions.getPoints(), polylineMarkerOptions, false);
polylineMarkers.setMarkers(markers);
return polylineMarkers;
}
项目:geopackage-android-map
文件:GoogleMapShapeConverter.java
/**
* Add a MultiPolylineOptions to the map as markers
*
* @param shapeMarkers
* @param map
* @param multiPolyline
* @param polylineMarkerOptions
* @param globalPolylineOptions
* @return
*/
public MultiPolylineMarkers addMultiPolylineToMapAsMarkers(
GoogleMapShapeMarkers shapeMarkers, GoogleMap map,
MultiPolylineOptions multiPolyline,
MarkerOptions polylineMarkerOptions,
PolylineOptions globalPolylineOptions) {
MultiPolylineMarkers polylines = new MultiPolylineMarkers();
for (PolylineOptions polylineOptions : multiPolyline
.getPolylineOptions()) {
PolylineMarkers polylineMarker = addPolylineToMapAsMarkers(map,
polylineOptions, polylineMarkerOptions,
globalPolylineOptions);
shapeMarkers.add(polylineMarker);
polylines.add(polylineMarker);
}
return polylines;
}
项目:RoadLab-Pro
文件:MeasurementsGoogleMapHelper.java
private void addInterval(Context context, GoogleMap map, ProcessedDataModel item, boolean addCache) {
double[] coordsStart = item.getCoordsStart();
double[] coordsEnd = item.getCoordsStart();
if (coordsStart == null || coordsEnd == null
|| coordsStart.length < 2 || coordsEnd.length < 2) {
return;
}
LatLng startLine = new LatLng(item.getCoordsStart()[0], item.getCoordsStart()[1]);
LatLng endLine = new LatLng(item.getCoordsEnd()[0], item.getCoordsEnd()[1]);
Polyline line = map.addPolyline(new PolylineOptions()
.add(startLine, endLine)
.geodesic(true)
.width(context.getResources().getDimension(R.dimen.map_polyline_width))
.color(getIriColor(context, item.getCategory())));
if (addCache && linesCache != null) {
linesCache.put(line, item);
}
}
项目:WalkGraph
文件:MapFragmentImpl.java
/**
* @param graph to use in drawing polyOptions on the graph.
*/
@Override
public void drawGraph(Graph graph) {
PolylineOptions graphOptions = new PolylineOptions();
List<Location> locationList = graph.getLocations();
for (Location location: locationList){
LatLng currentPosition = new LatLng(location.getLatitude(), location.getLongitude());
MarkerOptions options = new MarkerOptions();
options.position(currentPosition)
.icon(BitmapDescriptorFactory.defaultMarker())
.title("Position")
.snippet("Some Position");
googleMap.addMarker(options);
graphOptions.add(currentPosition);
}
Polyline graphPolygon = googleMap.addPolyline(graphOptions);
graphPolygon.setGeodesic(true);
graphPolygon.setColor(Color.DKGRAY);
graphPolygon.setWidth(20);
}
项目:KortidTol
文件:MapTools.java
public static void drawSubsection(GoogleMap map, List<LatLng> coords, int startIndex, int endIndex, int color){
if(sectionPolyline != null){
sectionPolyline.remove();
}
PolylineOptions line = new PolylineOptions();
line.geodesic(true);
line.width(14);
line.zIndex(100);
line.color(color);
int start = startIndex;
int end = endIndex;
if(startIndex > endIndex){
int temp = startIndex;
start = endIndex;
end = temp;
}
for(LatLng ll : coords.subList(start, end)){
line.add(ll);
}
sectionPolyline = map.addPolyline(line);
}
项目:LazarilloApp
文件:MapsActivity.java
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
int marca = 0;
for (Punto incidencia :incidencias) {
mMap.addMarker(new MarkerOptions().position(new LatLng(incidencia.getX(), incidencia.getY())).icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_VIOLET)));
}
for (Punto punto : puntos) {
mMap.addMarker(new MarkerOptions().position(new LatLng(punto.getX(), punto.getY())).title("Step " + (++marca)));
}
mMap.moveCamera(CameraUpdateFactory.newLatLng(new LatLng(puntos.get(0).getX(), puntos.get(0).getY())));
UiSettings ui = mMap.getUiSettings();
ui.setZoomControlsEnabled(true);
for (int i = 0; i < puntos.size() - 1; i++) {
PolylineOptions linea = new PolylineOptions().add(new LatLng(puntos.get(i).getX(), puntos.get(i).getY())).add(new LatLng(puntos.get(i + 1).getX(), puntos.get(i + 1).getY()));
linea.color(Color.BLUE);
linea.width(3f);
mMap.addPolyline(linea);
}
}
项目:Dryver
文件:MapUtil.java
/**
* Helper function used to draw routes on the map given 2 locations
*
* @param mMap
* @param decodedPolyLine
* @param polylineArrayList
* @return
*/
public int drawRoute(GoogleMap mMap, List<LatLng> decodedPolyLine, ArrayList<Polyline> polylineArrayList) {
int routeDistance = 0;
for (int i = 0; i < (decodedPolyLine.size() - 1); i++) {
LatLng point1 = decodedPolyLine.get(i);
LatLng point2 = decodedPolyLine.get(i + 1);
Location location1 = new Location("1");
location1.setLatitude(point1.latitude);
location1.setLongitude(point1.longitude);
Location location2 = new Location("2");
location2.setLatitude(point2.latitude);
location2.setLongitude(point2.longitude);
routeDistance += location1.distanceTo(location2);
polylineArrayList.add(mMap.addPolyline(new PolylineOptions()
.add(point1, point2)
.width(5)
.color(Color.RED)));
}
return routeDistance;
}
项目:AppsAndroid
文件:NavegacionActivity.java
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == NAVIGATION_REQUEST_CODE) {
stopService(LocService);
EventoLocalizacion actual;
ArrayList<LatLng> localizaciones = new ArrayList<>();
for (int i = 0; i < listaLocalizaciones.size(); i++) {
actual = listaLocalizaciones.get(i);
mapa.addMarker(new MarkerOptions().title("Punto " + Integer.toString(i) + " " + actual.tiempo).position(actual.localizacion));
localizaciones.add(actual.localizacion);
}
mapa.addPolyline(new PolylineOptions().addAll(localizaciones).color(Color.RED));
mapa.moveCamera(CameraUpdateFactory.newLatLngZoom(localizaciones.get(localizaciones.size() - 1), 15));
}
}
项目:BetaGo
文件:BetaGo.java
@Override
public void run(){
Location location = activity.lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
double latitude = location.getLatitude();
double longitude = location.getLongitude();
final LatLng currentPos = new LatLng(latitude, longitude);
activity.myRecord.add(currentPos);
activity.runOnUiThread(new Runnable(){
@Override
public void run(){
activity.mMap.addPolyline(new PolylineOptions()
.add(currentPos)
.width(12)
.color(Color.parseColor("#05b1fb"))
.geodesic(true));
}
});
Log.d("RECORDING", String.valueOf(activity.myRecord));
}
项目:RxGpsService
文件:PlaceMapFragment.java
private Polyline drawPath(List<LatLong> latLongs, int color, float zIndex, Polyline polyline) {
if (googleMap != null && latLongs != null && !latLongs.isEmpty()) {
PolylineOptions polyLineOptions = new PolylineOptions();
polyLineOptions.width(getResources().getDimension(R.dimen._2dp));
polyLineOptions.color(color);
polyLineOptions.zIndex(zIndex);
for (LatLong latLong : latLongs) {
polyLineOptions.add(new LatLng(latLong.latitude(), latLong.longitude()));
}
if (polyline != null) polyline.remove();
return googleMap.addPolyline(polyLineOptions);
}
return null;
}
项目:Japp16
文件:Navigator.java
public void setPolyline(Polyline newPolyline){
if (oldPolyline != null){
oldPolyline.remove();
}
if (newPolyline == null){
return;
}
PolylineOptions options = new PolylineOptions()
.color(newPolyline.getColor())
.visible(newPolyline.isVisible())
.width(newPolyline.getWidth())
;
for (GeoPoint p : newPolyline.getPoints()){
options.add(new LatLng(p.getLatitude(), p.getLongitude()));
}
oldPolyline = map.addPolyline(options);
}
项目:Japp16
文件:AbstractTransducer.java
/**
* Reconstructs the result.
*
* @param in The parcel where the result was written to
*/
protected Result(Parcel in) {
bundleId = in.readString();
markers = new ArrayList<>();
ArrayList<MarkerOptions> optionsList = in.createTypedArrayList(MarkerOptions.CREATOR);
ArrayList<Bitmap> bitmapList = in.createTypedArrayList(Bitmap.CREATOR);
ArrayList<Pair<MarkerOptions, Bitmap>> markers = new ArrayList<>();
polylines = in.createTypedArrayList(PolylineOptions.CREATOR);
polygons = in.createTypedArrayList(PolygonOptions.CREATOR);
circles = in.createTypedArrayList(CircleOptions.CREATOR);
if (bitmapList.size() != optionsList.size()){
throw new RuntimeException("optionlist and bitmapList are not equal in size");
}
for (int i = 0; i < optionsList.size(); i++){
markers.add(new Pair<MarkerOptions, Bitmap>(optionsList.get(i),bitmapList.get(i)));
}
this.markers = markers;
}
项目:Tower-develop
文件:GoogleMapFragment.java
@Override
public void addFlightPathPoint(final LatLongAlt coord) {
final LatLng position = MapUtils.coordToLatLng(coord);
getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(GoogleMap googleMap) {
if (showFlightPath) {
if (flightPath == null) {
PolylineOptions flightPathOptions = new PolylineOptions();
flightPathOptions.color(FLIGHT_PATH_DEFAULT_COLOR)
.width(FLIGHT_PATH_DEFAULT_WIDTH).zIndex(1);
flightPath = googleMap.addPolyline(flightPathOptions);
}
List<LatLng> oldFlightPath = flightPath.getPoints();
oldFlightPath.add(position);
flightPath.setPoints(oldFlightPath);
}
}
});
}
项目:Tower-develop
文件:GoogleMapFragment.java
@Override
public void updateDroneLeashPath(PathSource pathSource) {
List<LatLong> pathCoords = pathSource.getPathPoints();
final List<LatLng> pathPoints = new ArrayList<LatLng>(pathCoords.size());
for (LatLong coord : pathCoords) {
pathPoints.add(MapUtils.coordToLatLng(coord));
}
if (mDroneLeashPath == null) {
final PolylineOptions flightPath = new PolylineOptions();
flightPath.color(DRONE_LEASH_DEFAULT_COLOR).width(
MapUtils.scaleDpToPixels(DRONE_LEASH_DEFAULT_WIDTH, getResources()));
getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(GoogleMap googleMap) {
mDroneLeashPath = getMap().addPolyline(flightPath);
mDroneLeashPath.setPoints(pathPoints);
}
});
}
else {
mDroneLeashPath.setPoints(pathPoints);
}
}
项目:Tower-develop
文件:GoogleMapFragment.java
@Override
public void updateMissionPath(PathSource pathSource) {
List<LatLong> pathCoords = pathSource.getPathPoints();
final List<LatLng> pathPoints = new ArrayList<>(pathCoords.size());
for (LatLong coord : pathCoords) {
pathPoints.add(MapUtils.coordToLatLng(coord));
}
if (missionPath == null) {
final PolylineOptions pathOptions = new PolylineOptions();
pathOptions.color(MISSION_PATH_DEFAULT_COLOR).width(MISSION_PATH_DEFAULT_WIDTH);
getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(GoogleMap googleMap) {
missionPath = getMap().addPolyline(pathOptions);
missionPath.setPoints(pathPoints);
}
});
}
else {
missionPath.setPoints(pathPoints);
}
}
项目:FaceT
文件:NearbyLocationActivity.java
@Override
public void onRoutingSuccess(ArrayList<Route> route, int j) {
if (polylines.size() > 0) {
for (Polyline poly : polylines) {
poly.remove();
}
}
polylines = new ArrayList<>();
//add route(s) to the map.
for (int i = 0; i < route.size(); i++) {
//In case of more than 5 alternative routes
int colorIndex = i % COLORS.length;
PolylineOptions polyOptions = new PolylineOptions();
polyOptions.color(getResources().getColor(COLORS[colorIndex]));
polyOptions.width(10 + i * 3);
polyOptions.addAll(route.get(i).getPoints());
Polyline polyline = mMap.addPolyline(polyOptions);
polylines.add(polyline);
}
}
项目:mytracks
文件:TrackPathUtils.java
/**
* Add a path.
*
* @param googleMap the google map
* @param paths the existing paths
* @param points the path points
* @param color the path color
* @param append true to append to the last path
*/
public static void addPath(GoogleMap googleMap, ArrayList<Polyline> paths,
ArrayList<LatLng> points, int color, boolean append) {
if (points.size() == 0) {
return;
}
if (append && paths.size() != 0) {
Polyline lastPolyline = paths.get(paths.size() - 1);
ArrayList<LatLng> pathPoints = new ArrayList<LatLng>();
pathPoints.addAll(lastPolyline.getPoints());
pathPoints.addAll(points);
lastPolyline.setPoints(pathPoints);
} else {
PolylineOptions polylineOptions = new PolylineOptions().addAll(points).width(5).color(color);
Polyline polyline = googleMap.addPolyline(polylineOptions);
paths.add(polyline);
}
points.clear();
}
项目:sample-transport-app
文件:RouteMapService.java
/**
* Adds the route to the map.
*
* @param googleMap the map
* @param routeMapInfo the view model containing the information for the route
*/
public void addRouteToMap(final GoogleMap googleMap, final RouteMapData routeMapInfo) {
final LatLngBounds.Builder latLngBounds = new LatLngBounds.Builder();
for (PolylineData polylineData : routeMapInfo.getPolylineDataList()) {
PolylineOptions polyline = getPolylineOptions(latLngBounds, polylineData);
if (polyline != null) {
googleMap.addPolyline(polyline);
}
}
googleMap.setOnMapLoadedCallback(new GoogleMap.OnMapLoadedCallback() {
@Override
public void onMapLoaded() {
addMarker(routeMapInfo.getStartPoint(), googleMap);
addMarker(routeMapInfo.getEndPoint(), googleMap);
googleMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds.build(), 200));
}
});
}
项目:sample-transport-app
文件:RouteMapServiceTest.java
@Test
public void shouldAddRouteToMap() {
// given
RouteMapData routeMapData = prepareRouteMapData();
doAnswer(mapLoadedCallbackAnswer).when(googleMap).setOnMapLoadedCallback(any(GoogleMap.OnMapLoadedCallback.class));
doAnswer(newLatLngBoundsAnswer).when(googleMap).addPolyline(any(PolylineOptions.class));
when(CameraUpdateFactory.newLatLngBounds(any(LatLngBounds.class), anyInt())).thenReturn(cameraUpdate);
// when
routeMapService.addRouteToMap(googleMap, routeMapData);
// then
verify(googleMap, times(1)).addPolyline(any(PolylineOptions.class));
verify(googleMap, times(2)).addMarker(any(MarkerOptions.class));
verify(googleMap, times(1)).animateCamera(any(CameraUpdate.class));
}
项目:TuristHelper
文件:GoogleMapFragment.java
/** draw the route on the map, if there is a created route,
* It will be removed to create another.
* */
private void drawRoute(List<LatLng> latlngList){
if(latlngList != null){
if(polylineList != null){
for(Polyline polyline : polylineList){
polyline.remove();
}
}
polylineList = new ArrayList<Polyline>();
for (int i = 0; i < latlngList.size() - 1; i++) {
LatLng src = latlngList.get(i);
LatLng dest = latlngList.get(i + 1);
Polyline polyLine = mMap.addPolyline(
new PolylineOptions()
.add(new LatLng(src.latitude, src.longitude), new LatLng(dest.latitude,dest.longitude))
.width(4)
.color(Color.BLUE)
.geodesic(true));
polylineList.add(polyLine);
}
}
}
项目:CycleFrankfurtAndroid
文件:ShowMap.java
@Override
protected PolylineOptions doInBackground(TripData... trips) {
trip = trips[0]; // always get just the first trip
List<LatLng> pos = trip.getPoints();
ShowMap.this.gpsoptions = new PolylineOptions();
ShowMap.this.gpsoptions.addAll(pos);
ShowMap.this.markers = new ArrayList<MarkerOptions>(pos.size());
List<String> timesAcc = trip.getTimesAcc();
// use custom icon for trip points
Bitmap bmp = Bitmap.createBitmap(2, 2, Bitmap.Config.ALPHA_8);
for (int i = timesAcc.size(); i-->0;) {
markers.add(new MarkerOptions()
.position(pos.get(i))
.title("trip point")
.snippet(timesAcc.get(i))
.icon(BitmapDescriptorFactory.fromBitmap(bmp)));
}
return ShowMap.this.gpsoptions;
}
项目:igcparser
文件:FlightPreviewActivity.java
private void displayLinesAndAreas(List<ILatLonRecord> waypoints) {
try {
PolylineOptions polyline = new PolylineOptions().width(ResourcesHelper.getDimensionPixelSize(this, R.dimen.task_line_width)).color(getResources().getColor(R.color.task_line));
for (int i = 0; i < waypoints.size(); i++) {
CRecordWayPoint cRecordWayPoint = (CRecordWayPoint) waypoints.get(i);
if (cRecordWayPoint.getType() == CRecordType.START || cRecordWayPoint.getType() == CRecordType.TURN || cRecordWayPoint.getType() == CRecordType.FINISH) {
polyline.add(new LatLng(waypoints.get(i).getLatLon().getLat(), waypoints.get(i).getLatLon().getLon()));
}
if (cRecordWayPoint.getType() == CRecordType.TURN) {
googleMap.addCircle(new CircleOptions().center(new LatLng(waypoints.get(i).getLatLon().getLat(), waypoints.get(i).getLatLon().getLon()))
.radius(TaskConfig.getAreaWidth()).strokeColor(Color.TRANSPARENT)
.strokeWidth(getResources().getDimensionPixelSize(R.dimen.task_line_width))
.fillColor(getResources().getColor(R.color.task_fill_color)));
}
}
googleMap.addPolyline(polyline);
} catch (Throwable t) {
Logger.logError("Error trying to draw waypoints: " + t.getMessage());
}
}
项目:JalanJalan
文件:ViewRouteActivity.java
private void drawDirectionToMap(List<LatLng> latLngList) {
PolylineOptions line = new PolylineOptions().width(3).color(Color.BLUE);
for (int i = 0; i < latLngList.size(); i++) {
line.add(latLngList.get(i));
}
mMap.addPolyline(line);
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(latLngList.get(0).latitude, latLngList.get(0).longitude), 14));
// add marker diawal
mMap.addMarker(new MarkerOptions()
.position(new LatLng(latLngList.get(0).latitude, latLngList.get(0).longitude))
.title("starting point")
.icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_marker))
);
// add marker di akhir
int index = latLngList.size() - 1;
mMap.addMarker(new MarkerOptions()
.position(new LatLng(latLngList.get(index).latitude, latLngList.get(index).longitude))
.title("end point")
.icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_marker))
);
Toast.makeText(this, "Jalur berhasil digambar kak, hati2 dijalan pelan2 saja,,, ", Toast.LENGTH_SHORT).show();
}
项目:ExamplesAndroid
文件:MainActivity.java
@Override
public void onMapReady(GoogleMap googleMap) {
//Creamos una localizacion
LatLng lugar = new LatLng(19.3910038, -99.2837004);//creamos el punto de partida(DF)
//Movemos la camara,El metodo newLatLngZoom esta sobrecargado
//Este es uno de los metodos,y recibe una localizacion y el respectivo zoom como segundo parametro
googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(lugar, 20));
// Indicamos los puntos para crear la polilinea
//Ente este caso la ruta es del df - Guerrero - Michoacan y llegando a Guadalajara
googleMap.addPolyline(new PolylineOptions().geodesic(true)
.add(new LatLng(17.547789, -99.532435)) // Guerrero
.add(new LatLng(19.1539267, -103.0220045)) // Michoacan
.add(new LatLng(20.6998812, -103.405454)) // Guadalajara
);
//Utilidad para generar polilineas de google
//https://developers.google.com/maps/documentation/utilities/polylineutility
}
项目:roads-api-samples
文件:MainActivity.java
@Override
protected void onPostExecute(List<SnappedPoint> snappedPoints) {
mSnappedPoints = snappedPoints;
mProgressBar.setVisibility(View.INVISIBLE);
findViewById(R.id.speed_limits).setEnabled(true);
com.google.android.gms.maps.model.LatLng[] mapPoints =
new com.google.android.gms.maps.model.LatLng[mSnappedPoints.size()];
int i = 0;
LatLngBounds.Builder bounds = new LatLngBounds.Builder();
for (SnappedPoint point : mSnappedPoints) {
mapPoints[i] = new com.google.android.gms.maps.model.LatLng(point.location.lat,
point.location.lng);
bounds.include(mapPoints[i]);
i += 1;
}
mMap.addPolyline(new PolylineOptions().add(mapPoints).color(Color.BLUE));
mMap.animateCamera(CameraUpdateFactory.newLatLngBounds(bounds.build(), 0));
}
项目:esnavi
文件:WarningAreaManager.java
/**
* 形状を追加する。
*
* @param shapeOptions 形状オプション
*/
private void addShapes(@NonNull List<Parcelable> shapeOptions) {
if (mMap == null) {
return;
}
for (final Parcelable shapeOption : shapeOptions) {
if (shapeOption instanceof PolygonOptions) {
mShapes.add(mMap.addPolygon((PolygonOptions) shapeOption));
} else if (shapeOption instanceof PolylineOptions) {
mShapes.add(mMap.addPolyline((PolylineOptions) shapeOption));
} else if (shapeOption instanceof CircleOptions) {
mShapes.add(mMap.addCircle((CircleOptions) shapeOption));
} else {
Log.w(TAG, "想定していない形状。" + shapeOption.getClass().getSimpleName());
}
}
}
项目:BookMySkills
文件:GetDirection.java
protected void onPostExecute(String file_url) {
if (polyz != null)
for (int i = 0; i < polyz.size() - 1; i++) {
LatLng src = polyz.get(i);
LatLng dest = polyz.get(i + 1);
line = new PolylineOptions()
.add(new LatLng(src.latitude, src.longitude),
new LatLng(dest.latitude, dest.longitude))
.width(8).color(Color.BLUE).geodesic(true);
onPolyInit(line);
}
pDialog.dismiss();
}
项目:sample-transport-app
文件:RouteMapServiceTest.java
@Test
public void shouldAddRouteToMap() {
// given
RouteMapData routeMapData = prepareRouteMapData();
doAnswer(mapLoadedCallbackAnswer).when(googleMap).setOnMapLoadedCallback(any(GoogleMap.OnMapLoadedCallback.class));
doAnswer(newLatLngBoundsAnswer).when(googleMap).addPolyline(any(PolylineOptions.class));
when(CameraUpdateFactory.newLatLngBounds(any(LatLngBounds.class), anyInt())).thenReturn(cameraUpdate);
// when
routeMapService.addRouteToMap(googleMap, routeMapData);
// then
verify(googleMap, times(1)).addPolyline(any(PolylineOptions.class));
verify(googleMap, times(2)).addMarker(any(MarkerOptions.class));
verify(googleMap, times(1)).animateCamera(any(CameraUpdate.class));
}
项目:UWP-navigation
文件:NavigationPathProvider.java
@Override
public PolylineOptions getPath(LatLng start, LatLng finish) {
// computes all possible paths from starting vertex
computePaths(latLngNodeMap.get(start));
// holds a list of vertices that make up the shortest path between start and finish
List <Vertex> path = getShortestPathTo(latLngNodeMap.get(finish));
PolylineOptions options = new PolylineOptions();
// add the LatLngs of each vertex in the path to the polyline
for (int i = 0; i < path.size(); i++) {
LatLng cords = new LatLng(path.get(i).lat, path.get(i).lon);
options.add(cords);
}
options.color(Color.BLUE);
return options;
}
项目:UWP-navigation
文件:NavigationPathProvider.java
public PolylineOptions getPath (String start, String finish) {
// computes all possible paths from starting vertex
computePaths(nodeMap.get(start));
// holds a list of vertices that make up the shortest path between start and finish
List <Vertex> path = getShortestPathTo(nodeMap.get(finish));
PolylineOptions options = new PolylineOptions();
// add the LatLngs of each vertex in the path to the polyline
for (int i = 0; i < path.size(); i++) {
LatLng cords = new LatLng(path.get(i).lat, path.get(i).lon);
options.add(cords);
}
options.color(Color.BLUE);
return options;
}
项目:googleplayAPI
文件:myMapFragment.java
public void updateMapDraw(objData objDataList) {
Log.v(TAG, "map Update!");
if (current == null) {
map.addMarker(new MarkerOptions()
.position(objDataList.myLatlng)
.title("Start")
);
Log.v(TAG, "Added init marker");
current = objDataList;
} else {
//add a new line to map
map.addPolyline(new PolylineOptions()
.add(current.myLatlng,objDataList.myLatlng) //line segment.
.color(getActivityColor(objDataList.act)) //make it red.
.clickable(true) //for the listener.
//.width(10) //width of 10
);
//move the camera to center it to it.
map.moveCamera(CameraUpdateFactory.newLatLng(objDataList.myLatlng));
//and finally make it the current position
current = objDataList;
}
}
项目:sensordatacollector
文件:DrawPointsMap.java
@Override
public void onMapReady(GoogleMap googleMap)
{
PolylineOptions polyOptions = new PolylineOptions();
List<String[]> result = SQLDBController.getInstance().query("SELECT attr_time, attr_lat, attr_lng FROM " + SQLTableName.PREFIX + DeviceID.get(this.context) + SQLTableName.GPS + " WHERE attr_time > ? AND attr_time < ?", new String[]{ String.valueOf(this.start), String.valueOf(this.end) }, false);
LatLng pos = null;
for(String[] row : result) {
pos = new LatLng(Float.valueOf(row[1]), Float.valueOf(row[2]));
SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
polyOptions.add(pos);
positionMarkers.add(googleMap.addMarker(new MarkerOptions().title(sdf.format(new Date(Long.valueOf(row[0])))).position(pos)));
}
if(pos == null) {
return;
}
polyline = googleMap.addPolyline(polyOptions);
googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(pos, 15));
}
项目:KeepOn
文件:AbstractMapActivity.java
protected void drawPolyline(List<Location> locationList) {
// add polyline to map + calculate bounding box
googleMap.clear();
PolylineOptions polylineOptions = new PolylineOptions();
LatLngBounds.Builder boundsBuilder = new LatLngBounds.Builder();
for (Location location : locationList) {
LatLng latLng = new LatLng(location.getLatitude(), location.getLongitude());
polylineOptions.add(latLng);
boundsBuilder.include(latLng);
}
googleMap.addPolyline(polylineOptions
.width(5)
.color(Color.BLUE));
int padding = (int) getResources().getDimension(R.dimen.map_bounds_padding);
googleMap.moveCamera(CameraUpdateFactory.newLatLngBounds(boundsBuilder.build(), padding));
}