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#MapCanvasProjection

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.

  -- Larry


>
>
>
>
>
>
>
> On Wednesday, May 30, 2012 5:08:16 AM UTC-7, geoco...@gmail.com wrote:
>
> > 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.com wrote:
>
> > 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 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.

Reply via email to