You would sum the output of two PID controllers running in parallel. One that controls the heading and another that controls the linear movement. You use the arctan trig function to calculate the angle needed to face the desired point and pythagorean theorem to get the distance between the current point and target point.
These two parameters are the target values that you input into the PID controllers and then send the output to the motors.
The logic for summing 2 PID controllers is better laid out here