先看效果:(这个只是原型,简陋了点)
功能: 双击图片或拖动右侧的滑块可实现图片的放大,鼠标按下不放可平移图片。
应用场景:目前各地铁、医院、大型商场、机场均有单点触摸查询屏,用这个功能可以实现用户的简单自助地图导航。
技术含量:这个,真木有!
唯一要注意的是,flash中任何物体的"基准注册点"均为左上角的顶点,且没办法修改(注:所谓基准点是指不论是缩放,还是旋转,都是以这个点为参考原点。)
这个很不爽,直接影响放大效果,那么本示例中的“以中心为基点放大”是如何实现的呢?请参看Flash/Flex学习笔记(51):3维旋转与透视变换(PerspectiveProjection) 一文中提到的奇淫技巧,那上面有详细的图示解说,不过要伤点脑细胞想明白 :)
不足之处:这个只是单纯的图片缩放,文字是做死在图片上的,这样有几个问题
1、图片与文字无法分离,每次修改或添加文字,整个图都要重做一遍,维护不方便。
2、如果文字大小不合适,缩放时会导致文字模糊不清晰
3、不适合文字的分级显示(这一点用过丁丁地图或google地图的人应该能理解,地图每放大一级,会显示更详细的地点文字标识)
文字图片分离的思路我已经有了,有空实践后,整理上来,也欢迎大家回复讨论。当然如果要实现跟google地图一样或类似的功能,还要考虑很多优化措施,比如图片的分块加载,也欢迎共同交流。(虽然图片分块加载在触摸屏这种固定设备上不用过多考虑,但如果作为pc互联网的web应用,这个是改善性能的重要难点)