文章搜索:
打开支付宝首页搜索“510617664”,即可领红包
  首页--> 计算机--> FLASH教程
 
XML辅助Flash互动电子地图标注地名
http://www.xxqqss.com 学习轻松网 点击量:3517
 

  三、实例制作

  在初步了解了以上XML的基础后,我们就可以紧接上一例的步骤完成地名标注工作:

  1、创建用于地名标注的XML文件:
首先我们要创建一个包含关于需要标注的地名信息文件,即包含地名称、地名坐标等基本信息。本例中我们只创建一个示范性的地名信息数据文件,其格式为XML文件格式,内容如下:

<?xml version="1.0" encoding="iso-8859-1" ?>
<map>
<r><n>大清湖</n><x>37</x><y>264</y></r>
<r><n>环</n><x>154</x><y>67</y></r>
<r><n>城</n><x>164</x><y>67</y></r>
<r><n>西</n><x>175</x><y>69</y></r>
<r><n>路</n><x>184</x><y>72</y></r>
<r><n>环</n><x>289</x><y>101</y></r>
<r><n>城</n><x>297</x><y>107</y></r>
<r><n>东</n><x>309</x><y>114</y></r>
<r><n>路</n><x>321</x><y>117</y></r>
<r><n>中</n><x>231</x><y>95</y></r>
<r><n>心</n><x>232</x><y>114</y></r>
<r><n>南</n><x>233</x><y>135</y></r>
<r><n>路</n><x>234</x><y>158</y></r>
<r><n>中</n><x>229</x><y>18</y></r>
<r><n>心</n><x>233</x><y>34</y></r>
<r><n>北</n><x>235</x><y>47</y></r>
<r><n>路</n><x>234</x><y>58</y></r>
<r><n>★某某市政府</n><x>239</x><y>88</y></r>
<r><n>●城中影剧院</n><x>271</x><y>84</y></r>
<r><n>●新华书店</n><x>171</x><y>60</y></r>
<r><n>城</n><x>92</x><y>87</y></r>
<r><n>环</n><x>104</x><y>98</y></r>
<r><n>一</n><x>121</x><y>110</y></r>
<r><n>路</n><x>134</x><y>124</y></r>
<r><n>大清湖旅游区</n><x>36</x><y>223</y></r>
<r><n>▲百丈峰</n><x>124</x><y>30</y></r>
<r><n>◎东城新村</n><x>340</x><y>158</y></r>
<r><n>◎南城新村</n><x>287</x><y>189</y></r>
<r><n>※新颀花园</n><x>292</x><y>70</y></r>
<r><n>人民公园</n><x>144</x><y>42</y></r>
<r><n>动物园</n><x>140</x><y>105</y></r>
<r><n>东城广场</n><x>342</x><y>73</y></r>
<r><n>※百天花园</n><x>92</x><y>55</y></r>
<r><n>※花峰小区</n><x>346</x><y>189</y></r>
<r><n>◎高名新村</n><x>375</x><y>146</y></r>
<r><n>※风台花苑</n><x>210</x><y>185</y></r>
<r><n>▌城中大厦</n><x>219</x><y>111</y></r>
<r><n>▌佳好大楼</n><x>185</x><y>109</y></r>
<r><n>▌天启工业大厦</n><x>122</x><y>63</y></r>
<r><n>▌晨光商贸大厦</n><x>265</x><y>62</y></r>
<r><n>▌华侨电子大厦</n><x>209</x><y>84</y></r>
<r><n>▌佳好商城</n><x>196</x><y>49</y></r>
</map>
 

   注:其中<n>与</n>项为地名名称;<x>122</x>与<y>63</y>项为地名标注的X轴与Y轴坐标,至于其坐标值的得来将在以后的实例中详细讲解。

   2、Flash调用的代码

   打开Flash Professional,在上一讲中的地图底图所在层的时间轴上,再补入以下ActionScript代码:

var road_xml:XML = new XML(); //建立XML对象
road_xml.ignoreWhite = true; //忽略空格:
road_xml.onLoad = function (success:Boolean):Void {
if (success) { //如果调用成功
var childItems:Array = road_xml.firstChild.childNodes; //定义数据组
var f=0; //定义MC深度的变量
for (var i:Number = 0; i <childItems.length; i++) {
var x=childItems[i].childNodes[1].childNodes[0].nodeValue //获取X坐标值
var y=childItems[i].childNodes[2].childNodes[0].nodeValue //获取Y坐标值
_root.map_mc.bzmap_mc.createTextField("road"+i, f, x, y, 1, 1); //创建地名文本
p=eval("road"+i); //将文本框变量的名称赋给p
p.autoSize = "left"; //指定文本的对齐方式
p.text = childItems[i].childNodes[0].childNodes[0].nodeValue ; //获取地名名称
f=f+1; //MC深度自动加1
}
}
}
road_xml.load("road.xml"); //调用XML文件:
 


  注:其中XML文件的路径使用了相对路径,此路径是XML文件相对于调用Flash文件的网页文件的路径,即在本例中,调用Flash地图文件的网页文件必须与Road.xml文件置于相同的路径下,否则Flash将无法调用XML文件。

  发布后,效果如下:


调用外部XML文件加注地名

  这样,Flash文件只提供电子地图的基本构架,由外部的road.xml文件提供地名标注信息,如对地名进行删减、增加、纠错等操作时,只需要对XML文件进行相应的更改就可以了,而Flash文件不需要做任何的改动。这样就大大减小了维护、更新的工作量。

  以上就是Flash调用外部XML文件的基本步骤;当然我们在本例中调用是已经编辑好的XML数据文件,而获取海量地名在地图上的坐标值也同样可以在Flash环境中获得。

  下一讲中我们将学习如何在调试环境下辅助编辑标注XML文件的方法。

作者:laoshan  来源:天极设计


上一页     下一页
打印】 【关闭
免责声明 :本站刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。对本文有任何异议,请发送fiyeadwyv@163.com
最热门点击排行
 
版权所有 2006-2021:学习轻松网 Copyright http://www.xxqqss.com All rights reserved 浙ICP备14013707号-1
广告联系电话: 13958357030 联系QQ:9792414 工具条下载