用trace函数实现互动地图后台快速标注地名
2006-12-30 10:50:02 来源:WEB开发网核心提示: _global.bzX = Math.round(15868.48*(_root._xmouse-_root.map_mc._x+825*_root.map_mc._xscale/100)/_root.map_mc._xscale);//捕捉X轴坐标_global.bzY = Math.r
_global.bzX = Math.round(15868.48*(_root._xmouse-_root.map_mc._x+825*_root.map_mc._xscale/100)/_root.map_mc._xscale);
//捕捉X轴坐标
_global.bzY = Math.round(15868.48*(_root._ymouse-_root.map_mc._y+426*_root.map_mc._xscale/100)/_root.map_mc._xscale);
//捕捉Y轴坐标
而在捕捉到指针坐标的同时还可以直接在地图上显示一个标记,可以加入以下代码,用一个红色的圆点表示:
_root.map_mc.createEmptyMovieClip("dzpot_mc", this.getNextHighestDepth()); //画一个圆点
_root.map_mc.dzpot_mc.lineStyle(2, 0xff0000, 100); //圆点为红色,粗细磅值为2
_root.map_mc.dzpot_mc.moveTo(0, 0);
_root.map_mc.dzpot_mc.lineTo(0, 0.1);
_root.map_mc.dzpot_mc._width = _root.map_mc.dzpot_mc._height = 1000/_root.map_mc._xscale; //调整圆点的大小
_root.map_mc.dzpot_mc._x = _root.map_mc._xmouse; //圆点坐标与捕捉点重合
_root.map_mc.dzpot_mc._y = _root.map_mc._ymouse; //圆点坐标与捕捉点重合
打开“完成”按钮的动作面板,输入以下ActionScript代码:
on (release) { //鼠标释放时触发
var inputName = input_txt.text //用变量inputName记录下输入的地名名称
race("<r><n>"+inputName+"</n><x>"+inputX+"</x><y>"+inputY+"</y></r>"+/n);
//在输出面板中显示XML文件格式的代码
}
3、在调试播放器中标注地名:
点击菜单“发布预览”/“Flash”,打开调试播放器,在其中进行标注,如图2所示;
图2 在调试播放器中的进行标注
如此反复操作,在输出面板中会持续地输出相应的XML文件代码,如图3所示;
图3 在调试播放器中的输出面板中显示输出结果
注:由于本例只能在调试播放器中生效,因此在网页中无法演示。依照本例的方法,地图的开发者可以在后台迅速地标注地名。但是这往往只限于通用的路名或是地名,而对于大量的公司、商辅等地名信息,开发者却无法进行海量标注,必须通过其它途径由客户端的操作者自行进行在线标注。
更多精彩
赞助商链接