Okay, this is something that should be a simple matrix question, but my understanding of matrices is somewhat limited. Here\'s the scenario: I have a 1px by 1px sprite tha
Okay, this is now working. Here's my working code for this, in case someone else needs it:
Point sourceLoc = new Point ( 50, 50 );
float length = 60;
float thickness = 2;
float angle = 0.5;
Matrix m = Matrix.Scaling( length, thickness, 0 ) *
Matrix.RotationZ( angle ) *
Matrix.Translation( sourceLoc.X, sourceLoc.Y, 0 );
sprite.Transform = m;
sprite.Draw( this.tx, Vector3.Zero, Vector3.Zero, Color.Red );
This will draw an angled line of your chosen length, with a thickness equal to your chosen thickness (presuming your texture is a 1x1 pixel white image). The source location is where the line will emit from, with whatever angle you specify (in radians). So if you start at zero and increment by something like 0.1 until you hit 2PI, and then reset to 0, you'll have a line that rotates around a center like a clock hand or radar sweep. This is what I was looking for -- thanks to all who contributed!