请问如何拖动行车路线, 并可以拖动行车路线来从新计算行车路线

88 views
Skip to first unread message

chengfei jiao

unread,
Nov 13, 2009, 4:13:44 AM11/13/09
to 谷歌地图 API 论坛
我想实现像ditu.google.com中,右键添加出发地和添加上的后,鼠标经过那行车路线会出现一个小圆圈,并可以拖动这小圆圈来从新计算行车路
线

Fei Chen

unread,
Nov 13, 2009, 6:17:20 AM11/13/09
to google-map...@googlegroups.com
简单说,
  要能拖动行车路线,需要把路线对应的GPolyline的声明为enableEditing;
  要重新计算,就监听GPolyline的lineupdated事件,在路线变化后重新查询;

这个功能实现有点复杂,需要费点功夫的

这里有篇博客文章,希望对你有帮助:
http://www.developer.googlechinablog.com/2009/03/blog-post_11.html

2009/11/13 chengfei jiao <jcf...@gmail.com>
我想实现像ditu.google.com中,右键添加出发地和添加上的后,鼠标经过那行车路线会出现一个小圆圈,并可以拖动这小圆圈来从新计算行车路
线


chengfei jiao

unread,
Nov 13, 2009, 7:57:52 AM11/13/09
to 谷歌地图 API 论坛
呵呵,,回复速度好快哦。。 ^_^, 谢谢您的帮助。。
Message has been deleted

李白,字一日

unread,
Nov 20, 2009, 2:30:37 AM11/20/09
to 谷歌地图 API 论坛

置顶贴上8月份的论坛解答有关于出现小圆周点的思路的一种解决方法。

主要是找出GDirection后的Polyline。
或根据需要做相对于这个GPolyline的事件处理。

下面是节选内容:

问题描述:
ditu.google.com 当使用搜索路线,制定出发点和目的地之后,系统会画出蓝色的路线。
当鼠标移到这个路线上的时候出现一个小圈圈,并且提示"拖动以更改路线" 。 如果想在自己用Google maps API
创建的地图上也提供类似的功能,该怎么做? API 里面好像没有看到这个说明。。。

原因分析:
对于javascript与map api的结果要求比较高, 要结合GPolyline与鼠标事件进行处理。然后产生一个GMarker用于

曳。
解决办法:
1)找出来离鼠标最近的点,然后指定最短距离,当鼠标与Polyline的距离小于最短距离时,就会画出来一个GMarker.

代码示例:
function checkMouse(point){
var minDist = 250; //允许最短距离
var shortDist = 999999; //当前最短距离
var shortIdx = -1;
//选择最短距离点
for(var i = 0; i << points.length; i++){
if (point.distanceFrom(points[i]) << shortDist) {
shortDist = point.distanceFrom(points[i]);
shortIdx = i;
}
}
if(shortDist << minDist){
//找到最短距离
dragMarker.show();
dragMarker.setLatLng(points[shortIdx]);
} else {
//未找到最短距离
dragMarker.hide();
}
}

On Nov 13, 8:57 pm, chengfei jiao <jcf...@gmail.com> wrote:
> 呵呵,,回复速度好快哦。。 ^_^, 谢谢您的帮助。。

Rosen Jiang

unread,
Dec 27, 2009, 4:57:24 AM12/27/09
to google-map...@googlegroups.com
checkMouse(point)监听的是gmap的mouseover事件吧?ployline很可惜,不知道为何mouseover不返回坐标。


2009/11/20 李白,字一日 <cali...@gmail.com>
--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛“谷歌地图 API 中文论坛”论坛。
要在此论坛发帖,请发电子邮件到 Google-Map...@googlegroups.com
要退订此论坛,请发邮件至 Google-Maps-API-...@googlegroups.com
更多选项,请通过 http://groups.google.com/group/Google-Maps-API-China?hl=zh-CN 访问该论坛
什么是Google地图API? 请通过 http://code.google.com/intl/zh-CN/apis/maps/index.html 免费将 Google 地图嵌入自己的网页中
-~----------~----~----~----~------~----~------~--~---


Xianhui Xie

unread,
Jan 2, 2010, 10:30:44 PM1/2/10
to google-map...@googlegroups.com
�������ã��Ҳ�֪���������Ӧ����ͼƬ�����⻹��google map �����⣬����һ�ŵ�ͼ��������Щʵ��ͼ��4��ʶ��Щ�㣬������ϣ���ҵ�ͼ�겻�ᵲס�����ĵ�ͼ�������������ݵ������ʹ�ò�ͬ��ͼ�꣨����ɴ��С����ͬ��ɫ�������߾��ǵ���ͼ��}�����úܽ��ʱ�����ǵ� ͼ����п����ص���һ����������ڵ�ͼ����ͬ�����ɫ�Ļ�����ϣ���ص�����ɫ���䣬�����ɫ��ͬ�Ļ�����ϣ���ص�����ɫҲ����ɫԭ����ӣ�����˵��ɫ�� 6ɫ������ɫ��

��̫��������������Ҫͨ�����4�����أ�������Photoshop����һ���ض���ͼ��4ʵ�֣�

лл��λ��


Get a great deal on Windows 7 and see how it works the way you want. Check out the offers on Windows 7now.

夏绪宏

unread,
Jan 2, 2010, 10:33:44 PM1/2/10
to google-map...@googlegroups.com
你需要的似乎是支持透明通道的图片哦。png和gif格式的都是可以的

2010/1/3 Xianhui Xie <hardworki...@gmail.com>
大家新年好,我不知道这个问题应该是图片的问题还是google map 的问题,我有一张地图,我想用些实心图标来标识这些点,但是我希望我的图标不会挡住背景的地图,另外我又想根据点的属性使用不同的图标(比如可大可小,不同颜色),再者就是当地图上两个点离得很近的时候,他们的 图标很有可能重叠在一起,如果这相邻的图标是同样的颜色的话,我希望重叠后颜色不变,如果颜色不同的话,我希望重叠后颜色也按颜色原理叠加,比如说红色加 蓝色等于紫色。

不太清楚这个问题是需要通过程序来设置呢,还是用Photoshop制作一个特定的图标来实现?

谢谢各位。


Get a great deal on Windows 7 and see how it works the way you want. Check out the offers on Windows 7now.

--
您收到此信息是由于您订阅了 Google 论坛“谷歌地图 API 中文论坛”论坛。
要在此论坛发帖,请发电子邮件到 Google-Map...@googlegroups.com
要退订此论坛,请发邮件至 Google-Maps-API-...@googlegroups.com
更多选项,请通过 http://groups.google.com/group/Google-Maps-API-China?hl=zh-CN 访问该论坛
什么是Google地图API? 请通过 http://code.google.com/intl/zh-CN/apis/maps/index.html 免费将 Google 地图嵌入自己的网页中



--
http://reeze.cn

Raymond Xie

unread,
Jan 2, 2010, 10:42:53 PM1/2/10
to google-map...@googlegroups.com
不知能否劳烦阁下做个给我参考一下?我实在没怎么用过Photoshop,你做了一个后我就知道照猫画虎,依葫芦画瓢了。多谢先。

2010/1/2 夏绪宏 <reez...@gmail.com>

夏绪宏

unread,
Jan 3, 2010, 12:50:11 AM1/3/10
to google-map...@googlegroups.com
呵呵,就是在导出图片的时候把格式选择为png或者gif格式的就可以了,当然你的图片不能有背景颜色,把默认的那个背景图层删掉就好了,关于PS的使用网上有很多教程的:)

2010/1/3 Raymond Xie <hardworki...@gmail.com>



--
http://reeze.cn
Reply all
Reply to author
Forward
0 new messages