Source code for skydy.output.Arrow3D

#!/usr/bin/python3
from matplotlib.patches import FancyArrowPatch
from mpl_toolkits.mplot3d import proj3d


[docs]class Arrow3D(FancyArrowPatch):
[docs] def __init__(self, xs, ys, zs, *args, **kwargs): """Create a 3D Arrow.""" FancyArrowPatch.__init__(self, (0, 0), (0, 0), *args, **kwargs) self.__verts3d = xs, ys, zs
[docs] def draw(self, renderer): xs3d, ys3d, zs3d = self.__verts3d xs, ys, _zs = proj3d.proj_transform(xs3d, ys3d, zs3d, self.axes.M) self.set_positions((xs[0], ys[0]), (xs[1], ys[1])) FancyArrowPatch.draw(self, renderer)