In a 3D space, an Object (A) is currently at the postion (x1, y1, z1). The angle of rotation of its local axis is ( ax, ay, az ).

If the next position should be (d) distance from current position along its local axis, then calculate the next position (x2, y2, z2).

In other words, a bird (A) is currently at (x1, y1, z1) and pointing in the direction ( ax, ay, az ). Move it forward for a distance (d). Find the new position (x2, y2, z2)?

In 2D it would be as easy as.

x2 = x1 + d * cos( ax );

y2 = y1 + d * sin( ay );

But in 3D it quite challenging.

Thanks