仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 433|回复: 9
打印 上一主题 下一主题

[学习教程] 发布一篇google map利用自界说Marker在舆图上增加笔墨标示

[复制链接]
活着的死人 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:03:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
一旦你有了思想,那你编的程序就有了灵魂,不管是什么语言到了你的手里都会是你的工具而已,他们的价值是能尽快帮助你实现你想要的目标。但是如果你没有了思想,那就像是海里的帆船失去了船帆,是很难到打海的另一边的。
googlemap默许的标示GMarker,只能利用图片不克不及利用笔墨。可是在实践中,我们不成制止的必要在舆图上标示笔墨信息。比方地名等。Google舆图API使我们能够经由过程扩大GMarker完成自界说的GMarker的子类LabelMarker。
1 google.maps.LabelMarker = function(latlng, options)
2 {
3     this.latlng = latlng;
4     this.labelText = options.labelText || ;
5     this.labelClass = options.labelClass || writeb;
6     this.labelOffset = options.labelOffset || new google.maps.Size(8, -33);
7     options.icon = options.icon || getTextIcon();
8     google.maps.Marker.apply(this, arguments);
9 }
10
11 google.maps.LabelMarker.prototype = new google.maps.Marker(new google.maps.LatLng(0, 0));
12
13 google.maps.LabelMarker.prototype.initialize = function(map){
14     google.maps.Marker.prototype.initialize.call(this, map);
15     
16     var label = document.createElement(div);
17     label.className = this.labelClass;
18     label.innerHTML = this.labelText;
19     label.style.position = absolute;
20     label.style.width = 48px;
21     map.getPane(G_MAP_MARKER_PANE).appendChild(label);
22
23     this.map = map;
24     this.label = label;
25 }
26
27 google.maps.LabelMarker.prototype.redraw = function(force){
28     google.maps.Marker.prototype.redraw.call(this, map);
29
30     if(!force)
31     {
32         return;
33     }
34
35     var point = this.map.fromLatLngToDivPixel(this.latlng);
36     var z = google.maps.Overlay.getZIndex(this.latlng.lat());
37     
38     this.label.style.left = (point.x + this.labelOffset.width) + px;
39     this.label.style.top = (point.y + this.labelOffset.height) + px;
40     this.label.style.zIndex = z + 1;
41 }
42
43 google.maps.LabelMarker.prototype.remove = function(){
44     this.label.parentNode.removeChild(this.label);
45     this.label = null;
46     google.maps.Marker.prototype.remove.call(this);
47 }
48 
49 function getTextIcon()
50 {
51     var icon = new google.maps.Icon();
52     icon.image = "/js/map/img/mapts.gif";
53     icon.iconSize = new GSize(48, 40);
54     icon.iconAnchor = new GPoint(0, 40);
55     icon.infoWindowAnchor = new GPoint(5, 1);
56     return icon;
57 }
在页面上挪用的代码:
1 var marker = new google.maps.LabelMarker(map.getCenter(), {
2     labelText:我在这
3     });
4
5 map.addOverlay(marker);
如今就会在舆图上显现我们自界说的GMarker标识了。

用java开发web只要两本书:一本是关于java基础的,一本是关于jsp、servlet的就可以了。开发周期长,我就来讲句题外话,现在有很多思想都是通过java来展现。
再见西城 该用户已被删除
沙发
发表于 2015-1-20 13:19:53 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
只想知道 该用户已被删除
板凳
发表于 2015-1-27 06:14:37 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
地板
发表于 2015-1-29 06:13:49 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
小女巫 该用户已被删除
5#
发表于 2015-2-5 18:51:22 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
变相怪杰 该用户已被删除
6#
发表于 2015-2-13 04:37:43 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
爱飞 该用户已被删除
7#
发表于 2015-3-3 13:36:30 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
因胸联盟 该用户已被删除
8#
发表于 2015-3-11 11:05:58 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
飘飘悠悠 该用户已被删除
9#
发表于 2015-3-18 07:30:30 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
兰色精灵 该用户已被删除
10#
发表于 2015-3-25 13:17:49 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 16:48

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表