Looks good! How did you fix it? M
On Wednesday, May 30, 2012 10:15:06 PM UTC-7, geoco...@gmail.com wrote: > > On May 30, 10:05 pm, "geocode...@gmail.com" <geocode...@gmail.com> > wrote: > > On May 30, 7:30 pm, Mapper99 <mappe...@gmail.com> wrote: > > > > > Hmmm..I did listen to the map projection event and indeed it is > defined. > > > The code that is failing I think has to do with the point... > > > > > I uploaded a sample here: > > > > >http://laudontech.com/temp2/badcode/papapump-planner.html > > > > > You need to click on each of the icons on the right of the map > > > then click the done button at the very bottom of the page > > > Click done once, error occurs. Click done again, and all is well > > > > > Very strange! > > > > Reading the documentation: > https://developers.google.com/maps/documentation/javascript/reference... > > > > google.maps.MapCanvasProjection object > > > > This object is made available to the OverlayView from within the draw > > method. It is not guaranteed to be initialized until draw is called. > > > > looks you need to call draw before you use the projection. > > This seems to work: > http://www.geocodezip.com/laudontech_com_papapump-plannerA.html > (except in IE) > > -- Larry > > > > > > > > > > > > > > > > > > > > > > On Wednesday, May 30, 2012 5:08:16 AM UTC-7, geoco...@gmail.comwrote: > > > > > > On May 29, 11:26 pm, Mapper99 <mappe...@gmail.com> wrote: > > > > > I am using some wonderful code to draw arrow on line segments > thanks to > > > > > this code from Bill Chadwick: > > > > > > >http://wtp2.appspot.com/ArrowLine.htm > > > > > > > The problem is I need to call the function twice for the arrows to > > > > appear. > > > > > The first time I call the code I get this error: > > > > > > > this.prj is undefined > > > > > > > var p1 = > this.prj.fromLatLngToContainerPixel(this.points[0]);//first > > > > point > > > > > > > This is the code I am using to call the function: > > > > > > > var connectTheDots = [ > > > > > marker1.getPosition(), > > > > > marker2.getPosition(), > > > > > marker3.getPosition(), > > > > > ]; > > > > > > > var poly1 = new > > > > > > > BDCCArrowedPolyline(connectTheDots,"blue",4,0.3,null,30,7,"#0000FF",2,0.5); > > > > > > > Any idea why this code fails the first time? this.points[0] > indeed is a > > > > > valid object. > > > > > > The v3 API is event driven. > > > > > > Has the projection been initialized the first time it is used? You > > > > may have to wait for an event that tells you it has been initialized > > > > before using it. > > > > > > From the documentation: > > > > getProjection() > > > > Projection > > > > Returns the current Projection. > > > > If the map is not yet initialized (i.e. the mapType is still null) > > > > then the result is null. Listen to projection_changed and check its > > > > value to ensure it is not null. > > > > > > -- Larry > > > > > > > Thanks in advance, > > > > > > > Mapper99 > > > On Wednesday, May 30, 2012 5:08:16 AM UTC-7, geoco...@gmail.comwrote: > > > > > > On May 29, 11:26 pm, Mapper99 <mappe...@gmail.com> wrote: > > > > > I am using some wonderful code to draw arrow on line segments > thanks to > > > > > this code from Bill Chadwick: > > > > > > >http://wtp2.appspot.com/ArrowLine.htm > > > > > > > The problem is I need to call the function twice for the arrows to > > > > appear. > > > > > The first time I call the code I get this error: > > > > > > > this.prj is undefined > > > > > > > var p1 = > this.prj.fromLatLngToContainerPixel(this.points[0]);//first > > > > point > > > > > > > This is the code I am using to call the function: > > > > > > > var connectTheDots = [ > > > > > marker1.getPosition(), > > > > > marker2.getPosition(), > > > > > marker3.getPosition(), > > > > > ]; > > > > > > > var poly1 = new > > > > > > > BDCCArrowedPolyline(connectTheDots,"blue",4,0.3,null,30,7,"#0000FF",2,0.5); > > > > > > > Any idea why this code fails the first time? this.points[0] > indeed is a > > > > > valid object. > > > > > > The v3 API is event driven. > > > > > > Has the projection been initialized the first time it is used? You > > > > may have to wait for an event that tells you it has been initialized > > > > before using it. > > > > > > From the documentation: > > > > getProjection() > > > > Projection > > > > Returns the current Projection. > > > > If the map is not yet initialized (i.e. the mapType is still null) > > > > then the result is null. Listen to projection_changed and check its > > > > value to ensure it is not null. > > > > > > -- Larry > > > > > > > Thanks in advance, > > > > > > > Mapper99 -- You received this message because you are subscribed to the Google Groups "Google Maps JavaScript API v3" group. To view this discussion on the web visit https://groups.google.com/d/msg/google-maps-js-api-v3/-/PlAmpUBaencJ. To post to this group, send email to google-maps-js-api-v3@googlegroups.com. To unsubscribe from this group, send email to google-maps-js-api-v3+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-maps-js-api-v3?hl=en.