I saw a arrow function by Dr. Erik A. Johnson last night, this function is very useful. But it can only draw 2d arrows, whose heads are patches. So i wrote this functin is used to draw 3D-arrows. the arrows ard made up of cylinders and tapers. The size of arrow head is decided by the minimum distance between start and stop , and you can set the arrow body and arrow head's shape by input arguments. This function will return you the handles of the arrows, so you can set other properties by the handles.
And here provide a very useful [rotatedata] function ,which is modified from rotate function.
If you have any problem, please contact me by email.