forked from: forked from: flash on 2013-1-23

by ohisama forked from forked from: flash on 2013-1-23 (diff: 14)
♥0 | Line 73 | Modified 2013-01-25 09:55:42 | MIT License
play

ActionScript3 source code

/**
 * Copyright ohisama ( http://wonderfl.net/user/ohisama )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/figG
 */

<?xml version="1.0" encoding="utf-8"?>
<!-- forked from ohisama's forked from: flash on 2013-1-23 -->
<!-- forked from ohisama's flash on 2013-1-23 -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" viewSourceURL="srcview/index.html">
<maps:Map3D xmlns:maps="com.google.maps.*" mapevent_mappreinitialize="onMapPreinitialize(event)" mapevent_mapready="onMapReady(event)" id="map" key="ABQIAAAA7QUChpcnvnmXxsjC7s1fCxQGj0PqsCtxKvarsoS-iqLdqZSKfxTd7Xf-2rEc_PC9o8IsJde80Wnj4g" width="100%" height="100%"/>
<mx:Script>
<![CDATA[
    import com.google.maps.LatLng;
    import com.google.maps.MapEvent;
    import com.google.maps.MapOptions;
    import com.google.maps.MapType;
    import com.google.maps.overlays.Marker;
    import com.google.maps.View;
    import com.google.maps.controls.NavigationControl;
    import com.google.maps.overlays.MarkerOptions;
    import com.google.maps.styles.FillStyle;
    import com.google.maps.styles.StrokeStyle;
    
    Security.loadPolicyFile("http://wakuworks.appspot.com/crossdomain.xml");
    private static const DEFAULT_URL : String = "http://linkdata.org/api/1/rdf1s47i/%E9%83%BD%E9%81%93%E5%BA%9C%E7%9C%8C%E5%88%A5%E5%BE%93%E6%A5%AD%E8%80%85%E6%95%B0%EF%BC%88%E5%BE%93%E6%A5%AD%E8%80%85%E6%95%B010%E5%90%8D%E4%BB%A5%E4%B8%8A%EF%BC%89%E7%B7%AF%E5%BA%A6%E7%B5%8C%E5%BA%A6%E4%BB%98%E3%81%8D_rdf.xml";
    private static const PROXY_URL : String = "http://wakuworks.appspot.com/proxy/";
    private var _loader : URLLoader;
    private function onMapPreinitialize(e : MapEvent) : void
    {
        var opt : MapOptions = new MapOptions;
        opt.zoom = 7;
        opt.center = new LatLng(38.0, 140.0);
        opt.mapType = MapType.NORMAL_MAP_TYPE;
        opt.viewMode = View.VIEWMODE_ORTHOGONAL;
        this.map.setInitOptions(opt);
        _loader = new URLLoader();
        _loader.addEventListener(Event.COMPLETE, _completeHandler);
        _loader.addEventListener(IOErrorEvent.IO_ERROR, _ioErrorHandler);
    }    
    private function onMapReady(e : MapEvent) : void
    {
        var position : LatLng = new LatLng(38.0, 140.0);
        var marker : Marker = new Marker(position);
        map.addOverlay(marker);
        _loader.load(new URLRequest(PROXY_URL + DEFAULT_URL));
        this.map.addControl(new NavigationControl());
    }
    private function _completeHandler(e : Event) : void
    {
        var rdf : Namespace = new Namespace("rdf", "http://www.w3.org/1999/02/22-rdf-syntax-ns#");
        var rdfs : Namespace = new Namespace("rdfs", "http://www.w3.org/2000/01/rdf-schema#");
        var geo : Namespace = new Namespace("l.2", "http://www.w3.org/2003/01/geo/wgs84_pos#");
        var jin : Namespace = new Namespace("l.0", "http://linkdata.org/property/rdf1s47i#%E5%B9%B3%E6%88%9020%E5%B9%B4%E5%BE%93%E6%A5%AD%E5%93%A1%E6%95%B0");
        var atom : XML = new XML(e.target.data); 
        var res : String = "";
        var itemList : XMLList = atom.rdf::Description;
        res = itemList.length().toString();
        for each(var item : XML in itemList)
        {
            res += item.rdfs::label + " " + item.jin::_ + " " + item.geo::lat + " " + item.geo::long + "\n";
            var ll : LatLng = new LatLng(item.geo::lat, item.geo::long);
            var marker : Marker = new Marker(ll, new MarkerOptions(
            {
                strokeStyle : new StrokeStyle({color : 0x987654}), 
                fillStyle : new FillStyle({color : 0xFFFFFF, alpha : 0.9}), 
                radius : 10,
                hasShadow : true, 
                label : item.rdfs::label + " " + item.jin::_, 
                labelFormat : new TextFormat(null, null, 0x000000)
            }));
            map.addOverlay(marker);
        }
    }
    private function _ioErrorHandler(e : IOErrorEvent) : void
    {
    }
]]>
</mx:Script>
</mx:Application>