gpt4 book ai didi

java - 使用 gmaps v2 for android 开始虚拟之旅

转载 作者:太空狗 更新时间:2023-10-29 22:56:36 24 4
gpt4 key购买 nike

有没有办法使用适用于 Android 的 google maps api v2 打开虚拟导览? (类似于此:https://www.google.com/maps/@37.772031,-122.432005,3a,75y,12.85h,79.63t/data=!3m5!1e1!3m3!1srR8mp3c5XZoAAAAGOphoBg!2e0!3e2)

我想点击 gmap 中的一个地方并提供打开虚拟游览的可能性(以及其他信息)(即使在 WebView 中,但我如何创建上述链接?)

最佳答案

Photo Sphere是一项 Android 相机功能,可让您创建身临其境的 360 degree panoramas - 类似于 Street View .您可以拍摄一系列照片并自动将它们变成无缝的 360 degree panorama .然后,您可以轻松地与 Google Maps 分享您的 Photo Sphere 照片。 .

enter image description here

为了在您的应用中显示 Google map ,您应该将其包含在您的 Activity 中:

MainActivity.java
public class MainActivity extends Activity {

// Google Map
private GoogleMap googleMap;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

try {
// Loading map
initilizeMap();

} catch (Exception e) {
e.printStackTrace();
}

}

/**
* function to load map. If map is not created it will create it for you
* */
private void initilizeMap() {
if (googleMap == null) {
googleMap = ((MapFragment) getFragmentManager().findFragmentById(
R.id.map)).getMap();

// check if map is created successfully or not
if (googleMap == null) {
Toast.makeText(getApplicationContext(),
"Sorry! unable to create maps", Toast.LENGTH_SHORT)
.show();
}
}
}

@Override
protected void onResume() {
super.onResume();
initilizeMap();
}

}

enter image description here

并在您的代码中包含一个 marker对于您要打开虚拟导览的位置:

// latitude and longitude
double latitude = ;
double longitude = ;

// create marker
MarkerOptions marker = new MarkerOptions().position(new LatLng(latitude, longitude)).title("Hello Maps ");

// adding marker
googleMap.addMarker(marker);

enter image description here

然后更新它以根据当前的 position coordinates 进行交互提供:

 public boolean onMarkerClick(Marker marker) {

if(markerClicked){

if(polyline != null){
polyline.remove();
polyline = null;
}

rectOptions.add(marker.getPosition());
rectOptions.color(Color.RED);
polyline = myMap.addPolyline(rectOptions);
}else{
if(polyline != null){
polyline.remove();
polyline = null;
}

rectOptions = new PolylineOptions().add(marker.getPosition());
markerClicked = true;
}

return true;
}

}

enter image description here

将 Photo Sphere 照片制成开放格式后,任何人都可以在网络或移动设备上创建和查看它们,只需使用 Panorama Class/Interface为此:

// This listener will be called with information about the given panorama.
OnPanoramaInfoLoadedListener infoLoadedListener =
new OnPanoramaInfoLoadedListener() {
@Override
public void onPanoramaInfoLoaded(ConnectionResult result,
Intent viewerIntent) {
if (result.isSuccess()) {
// If the intent is not null, the image can be shown as a
// panorama.
if (viewerIntent != null) {
// Use the given intent to start the panorama viewer.
startActivity(viewerIntent);
}
}

// If viewerIntent is null, the image is not a viewable panorama.
}
};

// Create client instance and connect to it.
PanoramaClient client = ...
...

// Once connected to the client, initiate the asynchronous check on whether
// the image is a viewable panorama.
client.loadPanoramaInfo(infoLoadedListener, panoramaUri);

enter image description here

这将使您拥有 Photo Sphere 照片 viewer作为您应用的一部分。

关于java - 使用 gmaps v2 for android 开始虚拟之旅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22634482/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com