ThinkGeo.com    |     Documentation    |     Premium Support

Bearings between vertices

Hi guys,


I am trying to draw arrowheads on a line using a custom ArrowheadLineStyle which inherits from LineStyle (Please see the attached code). The bearing of the arrowheads is correct when I draw straight lines between points using LineShape (please refer to screenshot below). 



However, when I draw a multilineshape from the wellknowntext generated by the TSP algorithm of the routing extension, the some (or half of the) arrowheads point at the the opposite direction of where it's meant to be pointing. The arrowheads with incorrect directions have been circled:



I don't think this is caused by the 180 degree difference between initial bearing bearing and the final bearing as the points are so close to each other. Or is it an issue with the wellnowntext route generated by the routing extension? Another thing that comes to mind is the issue I reported (gis.thinkgeo.com/Support/Dis...fault.aspx) re the rotationangle being calculated in an anti-clockwise direction instead of the traditional clockwise direction used to calculate bearing in navigation.


Your help with this issue would be appreciated.


Thanks,


Nirish



1941-ArrowheadLineStyle.cs (16.8 KB)

Here's a clearer example:




Thank you for your post. We will look at your case with the attached file on Monday morning. In the meantime, I suggest you check out those projects in the Code Community that deals in one way or another with bearings between vertices.


-Displaying One-way Streets code.thinkgeo.com/projects/show/onewaystreets


-Rotate Icon code.thinkgeo.com/projects/show/rotateicon


I think that from these samples, you will have a good inspiration for your specific problem. I think that the function GetAngleFromTwoVertices of the Rotate Icon project will come particularly handy.



Hi Val,


Even after using function, I still get some arrowheads pointing the opposite direction (Screenshot 1). However, the strange thing is that if I zoom in to one of the incorrect arrowheads right down to street level (the point marked by the black arrow), the arrowheads draw correctly (Screenshot 2). 




Not sure what's happening there. Will dig further. Let me know if you've had a chance to look at my ArrowheadLineStyle.


Thanks,


Nirish



Hi, Nirish 
  
 It’s a bug of TSP solution in Routing extension. I have been working on that and try to resolve it as soon as possible. 
  
 Thanks, 
  
 Johnny 


Nirish, 
  
 It has been fixed now, please download the updated Routing package with version 3.1.450.0 or later from helpdesk.thinkgeo.com, and then have a try. 
  
 Any question please let us know. Thanks. 
  
 Johnny 
  


Thanks Johnny. Most arrowhead directions are accurate now. :)

Nirish,  
  
 Any other issues please let us know. Thanks. 
  
 Johnny