knowing a decimal latitude, decimal longitude, speed (km/h), heading how to find the next positio
This might help:
distance_traveled = speed * time
Then, calculate x and y components of speed using heading as angle (trigonometry):
speed_x=distance_traveled * Math.Cos(heading/180*Math.PI)
speed_y=distance_traveled * Math.Sin(heading/180*Math.PI)
Next, see how to map lat/long into some form of x/y coordinates, add speed_x and speed_y, and convert to lat/long again.
This last one is a tricky one, look here: http://www.movable-type.co.uk/scripts/latlong.html
In fact, you'll find everything within that article!