Assuming your mechanism can do what you want with 180 degree rotation...
Is your program working to the point where you can position the motor where you want it? If so, it's just a matter of synchronizing the position with time...
The Arduino can calculate sine and cosine, but it's common to use a table. All you need is a 0-90 degree table and you can reverse & invert to get the remaining 270 degrees.
I guess the trick is to realize you're in the digital domain and everything (time and position) is quantized. That means you'll be moving the servo in steps. They can be very-small steps, but you have to program discrete positions at a specific time.