Java 如何使用google maps api在基于地图的应用程序中添加元素?

Java 如何使用google maps api在基于地图的应用程序中添加元素?,java,android,google-maps,unity3d,3d,Java,Android,Google Maps,Unity3d,3d,我正在开发一个基于地图的应用程序,用户有通用的谷歌地图界面,但我想在事件上添加一个3d自定义元素。用户只需按下按钮,就可以在地图上添加pokestop(例如,我的元素) 我正在使用谷歌地图API,但我不知道是否应该使用图形引擎。实际上,我不想使用Unity或其他引擎;我想让应用程序尽可能轻 该应用程序应该在android上运行您有什么建议吗?要创建带有图像的标记,请使用此选项。 //使用自定义图标 mSydney=mMap.addMarker(新的MarkerOptions() 要使用画布 Bi

我正在开发一个基于地图的应用程序,用户有通用的谷歌地图界面,但我想在事件上添加一个3d自定义元素。用户只需按下按钮,就可以在地图上添加pokestop(例如,我的元素)

我正在使用谷歌地图API,但我不知道是否应该使用图形引擎。实际上,我不想使用Unity或其他引擎;我想让应用程序尽可能轻


该应用程序应该在android上运行您有什么建议吗?

要创建带有图像的标记,请使用此选项。 //使用自定义图标

mSydney=mMap.addMarker(新的MarkerOptions()

要使用画布

Bitmap.Config conf=Bitmap.Config.ARGB_8888

位图bmp=Bitmap.createBitmap(80,80,conf)

画布画布1=新画布(bmp)

//paint定义文本颜色、笔划宽度和大小

油漆颜色=新油漆()

颜色、大小(35)

color.setColor(color.BLACK)

//修改画布

canvas1.drawBitmap(BitmapFactory.decodeResource(getResources(),No.dll)

画布1.drawText(“用户名!”,30,40,颜色)

//将标记添加到地图

mMap.addMarker(新标记选项().position(用户位置)

使用这个你可以画出更有趣的东西

在GoogleMapsAPIv2演示中,有一个MarkerDemoActivity类,您可以在其中 可以查看如何将自定义图像设置为GoogleMap

//使用自定义图标

mSydney=mMap.addMarker(新的MarkerOptions()

因为这只是用图像替换标记,所以您可能希望使用画布来 画出更复杂、更华丽的东西:

Bitmap.Config conf=Bitmap.Config.ARGB_8888

位图bmp=Bitmap.createBitmap(80,80,conf)

画布画布1=新画布(bmp)

//paint定义文本颜色、笔划宽度和大小

油漆颜色=新油漆()

颜色、大小(35)

color.setColor(color.BLACK)

//修改画布 canvas1.drawBitmap(BitmapFactory.decodeResource(getResources(),No.dll)

画布1.drawText(“用户名!”,30,40,颜色)

//将标记添加到地图

mMap.addMarker(新标记选项().position(用户位置)

这将画布画布1绘制到GoogleMap mMap上 就其本身而言,有很多关于如何绘制画布的教程 可以从Android开发者页面的画布和绘图开始

现在,您还需要从URL下载图片

URL URL=新URL(用户\图像\ URL)

HttpURLConnection conn=(HttpURLConnection)url.openConnection()

conn.setDoInput(真)

连接()

InputStream is=conn.getInputStream()

bmImg=BitmapFactory.decodeStream(is)

您必须从后台线程下载图像(可以使用AsyncTask或Volley)


之后,您可以将BitmapFactory.decodeResource(getResources(),R.drawable.user\u picture\u image)替换为下载的图像bmImg。

要使用图像创建标记,请使用此选项。 //使用自定义图标

mSydney=mMap.addMarker(新的MarkerOptions()

要使用画布

Bitmap.Config conf=Bitmap.Config.ARGB_8888

位图bmp=Bitmap.createBitmap(80,80,conf)

画布画布1=新画布(bmp)

//paint定义文本颜色、笔划宽度和大小

油漆颜色=新油漆()

颜色、大小(35)

color.setColor(color.BLACK)

//修改画布

canvas1.drawBitmap(BitmapFactory.decodeResource(getResources(),No.dll)

画布1.drawText(“用户名!”,30,40,颜色)

//将标记添加到地图

mMap.addMarker(新标记选项().position(用户位置)

使用这个你可以画出更有趣的东西

在GoogleMapsAPIv2演示中,有一个MarkerDemoActivity类,您可以在其中 可以查看如何将自定义图像设置为GoogleMap

//使用自定义图标

mSydney=mMap.addMarker(新的MarkerOptions()

因为这只是用图像替换标记,所以您可能希望使用画布来 画出更复杂、更华丽的东西:

Bitmap.Config conf=Bitmap.Config.ARGB_8888

位图bmp=Bitmap.createBitmap(80,80,conf)

画布画布1=新画布(bmp)

//paint定义文本颜色、笔划宽度和大小

油漆颜色=新油漆()

颜色、大小(35)

color.setColor(color.BLACK)

//修改画布 canvas1.drawBitmap(BitmapFactory.decodeResource(getResources(),No.dll)

画布1.drawText(“用户名!”,30,40,颜色)

//将标记添加到地图

mMap.addMarker(新标记选项().position(用户位置)

这将画布画布1绘制到GoogleMap mMap上 就其本身而言,有很多关于如何绘制画布的教程 可以从Android开发者页面的画布和绘图开始

现在,您还需要从URL下载图片

URL URL=新URL(用户\图像\ URL)

HttpURLConnection conn=(HttpURLConnection)url.openConnection()

conn.setDoInput(真)

连接()

InputStream is=conn.getInputStream()

bmImg=BitmapFactory.decodeStream(is)

您必须从后台线程下载图像(可以使用AsyncTask或Volley)


之后,您可以将BitmapFactory.decodeResource(getResources(),R.drawable.user\u picture\u image)替换为下载的图像bmImg。

这可能会对您有所帮助。这可能会对您有所帮助。感谢您的回答,但如果我想添加动画(如pokestop上的花)在我的自定义标记上,我应该如何进行?谢谢你的回答,但是如果我想在自定义标记上添加动画(如口袋顶上的花朵),我应该如何进行?
.position(DELHI)

.title("Delhi")

.snippet("Population: 86,398,800")

.icon(BitmapDescriptorFactory.fromResource(R.drawable.image)));
R.drawable.user_picture_image), 0,0, color);
.icon(BitmapDescriptorFactory.fromBitmap(bmp))

// Specifies the anchor to be at a particular point in the marker image.

.anchor(0.5f, 1));
.position(SYDNEY)

.title("Sydney")

.snippet("Population: 4,627,300")

.icon(BitmapDescriptorFactory.fromResource(R.drawable.arrow)));
R.drawable.user_picture_image), 0,0, color);
.icon(BitmapDescriptorFactory.fromBitmap(bmp))

// Specifies the anchor to be at a particular point in the marker image.

.anchor(0.5f, 1));