[J2ME]如何替换Google Map静态地图自带的Marker
来源:互联网 发布:无证程序员 小品 编辑:程序博客网 时间:2024/05/19 21:19
要替换Google Map静态图片中缺省的Marker为您自己的图标,需要使用
javax.microedition.lcdui.Graphics.drawImage(Image img, int x, int y, int anchor)
其中anchor为图像在屏幕上的停靠点。
int
常量
相当(x,y)
0或20
Graphics.SOLID
或Graphics.LEFT|Graphics.TOP
图片左上角为(x,y)
3
Graphics.DOTTED|Graphics.VCENTER
或Graphics.HCENTER|Graphics.VCENTER
图片中心为(x,y)
6
Graphics.LEFT|Graphics.VCENTER
图片左边中点为(x,y)
10
Graphics.RIGHT|Graphics.VCENTER
图片右边中点为(x,y)
17
Graphics.DOTTED|Graphics.TOP
或Graphics.HCENTER|Graphics.TOP
图片上边中点为(x,y)
24
Graphics.RIGHT|Graphics.TOP
图片右上角为(x,y)
33
Graphics.BOTTOM|Graphics. DOTTED
或Graphics.BOTTOM|Graphics.HCENTER
图片下边中点为(x,y)
36
Graphics.BOTTOM|Graphics.LEFT
图片左下角为(x,y)
40
Graphics.BOTTOM|Graphics.RIGHT
图片右下角为(x,y)
然后需要把Marker的经纬度转换成屏幕坐标,可以使用如下的函数:
public static boolean map2screen(double mx,double my,YPoint pt,double cx,double cy,YRect rt,int zoom)
{
if(Math.abs(cx-0.00001)<0.0001 && Math.abs(cy-0.00001)<0.0001)
return false;
double size = MyMath.pow(2,zoom);
double spanY = 360.0/size*rt.width()/256;
double spanX = 360.0/size*rt.height()/256;
pt.y = (int) (((cx - mx) / spanX + 0.5) * rt.height());
pt.x = (int) (((my - cy) / spanY + 0.5) * rt.width());
return true;
}
最后在你的Canvas paint函数中绘制这个图标:
MyRect rt = new MyRect(0,0,this.getHeight(),this.getWidth());
MyUtils.map2screen(slatitude,slongitude,mypos,latitude,longitude,rt,zoom);
g.drawImage(imgPos, mypos.x, mypos.y, Graphics.BOTTOM|Graphics.DOTTED);
- [J2ME]如何替换Google Map静态地图自带的Marker
- google map api v3 不带marker图标的标签(infobox.js)
- google地图上固定的点添加marker标记
- Google地图(Map)API在J2ME中使用方法
- 如何使用google map api制作自己的地图(转载)
- dedecms模板自带的网站地图如何优化?
- Linux替换自带的替换OpenJDK
- 如何恢复系统Android自带的google日历?
- 如何使用Google浏览器自带的调试工具
- Android 百度地图开发(三)--- 实现比例尺功能和替换自带的缩放组件
- Android 百度地图开发(三)--- 实现比例尺功能和替换自带的缩放组件
- Android 百度地图开发(三)--- 实现比例尺功能和替换自带的缩放组件
- Android 百度地图开发(三)--- 实现比例尺功能和替换自带的缩放组件
- Android 百度地图开发(三)--- 实现比例尺功能和替换自带的缩放组件
- Android 百度地图开发(三)--- 实现比例尺功能和替换自带的缩放组件
- Android 百度地图开发(三)--- 实现比例尺功能和替换自带的缩放组件
- 如何区分多个百度地图marker的点击事件
- J2ME与Google Map
- 系统与软件过程改进09年年会,CMMI vs 敏捷PK赛参赛感言
- linux中select()函数分析
- 在线游戏基础结构,第 1 部分: 开发高层业务描述并确定模式
- js总结4(日期不能大于系统当前日期)
- 求:1,2,5这三个数不同组合的和为100的组合的个数!Java实现。
- [J2ME]如何替换Google Map静态地图自带的Marker
- UBOOT移植
- C#发送邮件
- 未来五年程序员应当具备的十项技能
- Intent、Broadcast Receiver、service
- 小笑话----笔记本电脑变重的原因
- xml读写
- 用eclipse 格式化压缩过的代码
- 【UC浏览器】Java平台7.0正式版发布啦