gpt4 book ai didi

javascript - 在 Flash 中嵌入 Google map

转载 作者:行者123 更新时间:2023-12-02 19:01:51 27 4
gpt4 key购买 nike

我正在开发一个 Flash 项目,需要使用谷歌地图。我读到一篇文章说“Google Maps API for Flash 已于 2011 年 9 月 2 日正式弃用”。我的问题是,是否可以在 Flash 项目中嵌入 google map javascript 版本?我的另一个问题是,有谁知道我可以用于 Flash 的任何 map 工具,它们提供与谷歌地图相同的质量并且仍然受到支持?谢谢。

最佳答案

我有同样的需求,也找不到一个好的现成解决方案,因此我在下面编写并评论了一个测试库,它可以作为任何类似项目的基础。

我没有依赖单一提供商,而是在 Flash 中跨 Bing Maps V7、Google Maps V3 和 MapQuest Maps V7 JavaScript map 实现了相同的功能。该代码创建线条、动态标记和阴影等,并调用它们的海拔 api。示例应用程序在一个 html 页面中为每种 map 类型创建两个。

为此,您需要让 Flash 和 JavaScript 通过注册具有该项目唯一名称的函数来使用数据和/或闭包相互调用。

首先,每个 map 都有一个唯一的mapId,每个 map MXML组件都使用其唯一的mapId(例如fname_mapId)注册一组外部方法,然后为传递mapId的三种 map 类型之一创建一个带有参数化src HTML的Flex-iFrame 、应用名称、起始位置等

HTML 读取这些参数并通过应用程序名称从父框架获取 SWF 对象。它创建一个 map 并向 map 注册监听器,并使用其 mapId(例如 fname_mapId)向父框架添加回调,允许创建标记和线条,每个标记和线条都具有唯一的 id,并再次向父框架注册函数,现在还在其名称中包含标记或线条 ID(例如 fname_mapId_[lineId|markerId]),允许设置图标、阴影、线条颜色及其位置更改或删除。

HTML 还通过 mapId 注册函数来检查位置或路径的海拔高度。它们调用 ajax 或例程来请求海拔高度,回调 JavaScript,然后回调 AS3 注册函数。

-C

测试操作和回调中的逻辑 - 旨在测试所有已实现的功能:

Double click on map:
Create pin:
- Set to default name
- Add to map
- Set icon and shadow (note Bing does not take shadows; Google can take a marker mask for clicking - not implemented)
- Call to map for elevation
Remove previous marker
Log current markers (should be only 1)
Create black line from start to pin:
- Change line color to blue
- Call to map for path elevation
Remove previous line
Log current lines (should be only 1)
Drag marker:
Start:
- only logs it was called
Drag:
- only logs it was called
End:
- Move line to new lat lng
- Set line color to orange
- Sets map to not accept double clicks
Double click marker:
- Sets map to accept double clicks again (so after you drag you need to double click a marker to have map accept double clicks again)
Elevation callback:
- Changes pin name to include elevation in name
- Sets new icon and shadow for marker
Elevation path callback - set to 300m & 500m - is balloon at 500m on path going to hit? - error if elevation of path >=500, warn if >=300
- Sets line color if path max elevation as sampled is:
Purple: elevation request error flag set
Red: at or above error level
Red-Yellow: at or above warning but requested distance not met
Yellow: at or above warning level
Yellow-Green: below warning level but requested distance not met
Green: below warning level

帖子的其余部分与代码太长,链接太多,所以我不得不将其全部放在这里 - 复制到直接文本编辑器中 - 代码的格式都很好,带有空格: http://pastebin.com/Jzq5E06F

关于javascript - 在 Flash 中嵌入 Google map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14725861/

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