[COLOR=#000000][FONT=Times New Roman][COLOR=#444444][FONT=Segoe UI][FONT=verdana]Hi,
I have implemented a Google Maps Flash API with a place search. This all works fine but I need to make the area that is searched smaller using the ClientGeocoderOptions
var myLatLngBounds:LatLngBounds = new LatLngBounds(
new LatLng(0.000001, 0.000001),
new LatLng(0.000002, 0.000002));
var options:ClientGeocoderOptions = new ClientGeocoderOptions({
viewport: myLatLngBounds
});
I have put this in my onMapReady function but to no effect:
import com.google.maps.services.ClientGeocoderOptions;
import com.google.maps.LatLng;
import com.google.maps.LatLngBounds;
import com.google.maps.Map;
import com.google.maps.MapEvent;
import com.google.maps.MapMouseEvent;
import com.google.maps.MapType;
import com.google.maps.services.ClientGeocoder;
import com.google.maps.services.GeocodingEvent;
import com.google.maps.overlays.Marker;
import com.google.maps.overlays.MarkerOptions;
import com.google.maps.InfoWindowOptions;
import com.google.maps.controls.ZoomControl;
import com.google.maps.controls.PositionControl;
import com.google.maps.controls.MapTypeControl;
import com.google.maps.services.*;
import com.greensock.*;
import com.google.maps.services.Placemark;
import com.google.maps.services.GeocodingResponse;
import com.google.maps.services.GeocodingEvent;
import com.google.maps.services.ClientGeocoderOptions;
import com.google.maps.services.ClientGeocoder;
import flash.ui.Keyboard;
import flash.events.KeyboardEvent;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
stage.align=StageAlign.TOP_LEFT;
stage.scaleMode=StageScaleMode.NO_SCALE;
stage.addEventListener(Event.RESIZE, resizeHandler);
var fakeloader_mc:MovieClip = new fake_mc();
fakeloader_mc.x=stage.stageWidth/2;
fakeloader_mc.y=stage.stageHeight/2;
fakeloader_mc.width=stage.stageWidth;
fakeloader_mc.height=stage.stageHeight;
addChild(fakeloader_mc);
var turn_mc:MovieClip = new turn();
turn_mc.x=stage.stageWidth/2;
turn_mc.y=stage.stageHeight/2-75;
addChild(turn_mc);
var s:Sound = new Sound();
s.load(new URLRequest("city.mp3"));
// Search Button
my_button.addEventListener(MouseEvent.CLICK,createPoint);
my_button.label="";
my_button.width=20;
my_button.height=20;
// Input Text Field
address.addEventListener(MouseEvent.CLICK,leeg);
function leeg(event:MouseEvent) {
var input:TextFormat = new TextFormat();
input.color="0xFFFFFF";
address.text="";
address.height=20;
address.setStyle("textFormat",input);
}
address.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
function keyDownHandler(event:KeyboardEvent):void {
if (event.keyCode==Keyboard.ENTER) {
createPoint(event);
}
}
var map:Map = new Map();
map.key="ABQIAAAAYrqJExWKL5Ja8K8v-UQKQxT7brIlEpW32dmOnyfPnfkpWEF3pBRvRKhvtgbhlsoZUJ52T3enJzskfA";
map.setSize(new Point(stage.stageWidth, stage.stageHeight-70));
map.addEventListener(MapEvent.MAP_READY,onMapReady);
addChild(map);
setChildIndex(map,0);
function onMapReady(e:Event):void {
var myLatLngBounds:LatLngBounds = new LatLngBounds(
new LatLng(0.000001, 0.000001),
new LatLng(0.000002, 0.000002));
var options:ClientGeocoderOptions = new ClientGeocoderOptions({
viewport: myLatLngBounds
});
map.setCenter(new LatLng(51.637846,-2.998338),10,MapType.HYBRID_MAP_TYPE);
map.addControl(new customZoom());
map.enableScrollWheelZoom();
map.enableContinuousZoom();
removeChild(fakeloader_mc);
removeChild(turn_mc);
var sc:SoundChannel=s.play();
var st:SoundTransform=sc.soundTransform;
st.volume=.2;
sc.soundTransform=st;
//Main Office
var m:Marker = new Marker(new LatLng(51.587846,-2.998338), new MarkerOptions({hasShadow: false,icon: new marker()}));
//Magor Office
var mag:Marker = new Marker(new LatLng(51.579959,-2.830976), new MarkerOptions({hasShadow: false,icon: new magor()}));
//Caerleon Office
var car:Marker = new Marker(new LatLng(51.609506,-2.953621), new MarkerOptions({hasShadow: false,icon: new caerleon()}));
//Cwmbran Office
var cwm:Marker = new Marker(new LatLng(51.654401,-3.020495), new MarkerOptions({hasShadow: false,icon: new cwmbran()}));
//Blackwood Office
var bla:Marker = new Marker(new LatLng(51.667439,-3.195676), new MarkerOptions({hasShadow: false,icon: new blackwood()}));
//Pontypool Office
var pon:Marker = new Marker(new LatLng(51.711842,-3.052916), new MarkerOptions({hasShadow: false,icon: new pontypool()}));
//Risca Office
var ris:Marker = new Marker(new LatLng(51.607202,-3.100587), new MarkerOptions({hasShadow: false,icon: new risca()}));
//Caerphilly Office
var cae:Marker = new Marker(new LatLng(51.573268,-3.220059), new MarkerOptions({hasShadow: false,icon: new caerphilly()}));
//Abergavenny Office
var aber:Marker = new Marker(new LatLng(51.821905,-3.018338), new MarkerOptions({hasShadow: false,icon: new abergavenny()}));
map.addOverlay(mag);
map.addOverlay(car);
map.addOverlay(cwm);
map.addOverlay(bla);
map.addOverlay(pon);
map.addOverlay(ris);
map.addOverlay(cae);
map.addOverlay(aber);
map.addOverlay(m);
}
function resizeHandler(e:Event):void {
map.setSize(new Point(stage.stageWidth, stage.stageHeight-70));
}
function createPoint(event:Event):void {
var my_point:ClientGeocoder = new ClientGeocoder();
// create Custom marker object
var mc_icon:marker_icon = new marker_icon();
var markerPin:marker_pin = new marker_pin();
my_point.addEventListener(;
GeocodingEvent.GEOCODING_SUCCESS,;
function(event:GeocodingEvent):void {;
var placemarks:Array = event.response.placemarks;
if (placemarks.length > 0) {;
map.setCenter(placemarks[0].point, 18);
var marker:Marker = new Marker(placemarks[0].point,;
new MarkerOptions({ ;
hasShadow: true,;
icon: mc_icon.addChild(markerPin),;
iconOffset: new Point(0, -35);
}) ;
);
marker.addEventListener(MapMouseEvent.CLICK, function (event:MapMouseEvent):void {;
marker.openInfoWindow(new InfoWindowOptions({;
content: placemarks[0].address;
}));
});
map.addOverlay(marker);
};
});
my_point.addEventListener(;
GeocodingEvent.GEOCODING_FAILURE,;
function(event:GeocodingEvent):void {;
trace(event);
trace(event.status);
});
my_point.geocode(address.text);
}
Can anyone tell me what I am doing wrong? Thanks in advance
Phil[/FONT] [/FONT][/COLOR][/FONT][/COLOR]