Andy Ross wrote:

So how about an interface that looks vaguely like (apologies in
advance for getting Plib details wrong -- this is off the top of my
head):

class ssgTextNode : public ssgNode {

      void setBaseline(sgVec3 start, sgVec3 end);
      void setUp(sgVec3 up, bool correctToPerpendicular = true);
      void setPointSize(float lineHeightInMeters);
      void setText(char* text);

      void setFont(FntFont* font);
      void setFntRenderSettings(int AndyForgetsTheDetailsHere, ...);

      void draw();
};

You would set the text baseline with a start point, and an "end" point
which lies along the line (not necessarily the end, I suppose).  You
need to specify an "up" vector to get the plane and orientation
correct.  This can be any point on the plane "above" the baseline.  I
added the correctToPerpendicular option so that you can do affine
transformations on the text to simulate italics or whatnot.

I think that would be a great idea. We could start by using the FNT library, and easily substitute later if something better came along.



All the best,



David


_______________________________________________
Flightgear-devel mailing list
[EMAIL PROTECTED]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel

Reply via email to