T.R | Title | User | Personal Name | Date | Lines |
---|
950.1 | | VWSENG::KLEINSORGE | Toys 'R' Us | Thu Jun 15 1989 10:11 | 8 |
|
Nope. The party line is "wait for Display Postscript" or "write a
extension if you need it". This has been the line for over 2 years
and it's not likely to change.
_Fred (who was told to quit asking 2 years ago)
|
950.2 | The core X11 protocol doesn't support rotation, and it never will... | KALKIN::BUTENHOF | Better Living Through Concurrency! | Thu Jun 15 1989 10:20 | 27 |
| ... if it did, it would become X12, and wouldn't be compatible with X11.
However, the people who designed X11 knew it wouldn't do everything anyone
wanted, and they came up with a brilliant solution which will allow X11 to
remain useful "forever". They designed it to be extendable.
"We" (Digital/etc.) have already developed an X11 extension for 3D (PEX), which
was actually shipped with Firefox (though it's currently hidden behind PHIGS, it
can in theory be used very much like Xlib). (Oh, and PEX will rotate text... in
3D.) There will also be an image extension to do image processing (you could
use it to rotate images created from the fonts, and then draw the rotated image
data; this is basically what DECterm does for ReGIS text).
And, most important to this particular issue... there will be an extension to
implement Adobe's Display PostScript�. Display PostScript will be able to
rotate text, draw text along arbitrary paths, scale text... and do everything
else hardcopy PostScript can do. There has been an unofficial commitment that
Display PostScript will become a standard part of every DECwindows server. It
ain't there in V2, and I have no idea whether it will be there in V3 (the
developer has hinted at his association with the project several times in this
conference, but no dates or version numbers have been slipped).
So... X11 will NEVER rotate text. But DECwindows, and many other X11 servers,
WILL... eventually.
/dave
|
950.3 | | VWSENG::KLEINSORGE | Toys 'R' Us | Thu Jun 15 1989 11:20 | 12 |
|
... which means you can *never* count on the ability to do it. One
way or another, a extension must be written AND installed. So if
you absolutely, positively must scale and rotate, you need to do what
DECterm, DECwrite and a half dozen other applications must do:
Draw the character(s) into a pixmap, read the pixmap into a bitmap,
scale, rotate, shear (or whatever transformation you want) the bitmap
and bitblt the bitmap to the screen.
|
950.4 | Do it yourself :^) | 17305::WEST | I'm just visiting this planet. | Thu Jun 15 1989 12:20 | 27 |
|
X never really had any intention of standardizing 3D. Thus is the reason
for standardizing the extension mechanism. Currently, the only supported
way is to use PHIGS.
PEX is just for the VS 3520/40's used exclusively by PHIGS, and don't rely
on it ever becoming an 'open' library.
If your ambitious enough then you can write a graphics package in the
language of your choice that does 3D graphics. The burden on you would be
the conversion of 3D data into 2D data to make the right Xlib calls.
If you wish to do this then you will want to make sure you have a copy
of the graphics bible.
Fundamentals of Interactive Computer Graphics
Foley / Van Dam
Addison Wesley publisher
Another ok book is
Computer Graphics with Pascal
Marc Berger
Benjamin Cummings publisher
|
950.5 | DECwrite doesn't - I don't think | YOSMTE::LAMB_PE | Peter Lamb - FSG Santa Clara | Thu Jun 15 1989 12:37 | 16 |
| Wait,
Someone (.3) I believe said DECwrite does this... That is not my
understanding - my whole point is that if X11 doesn't handle it
than the DEC products that need that capability (DECwrite, Chart
and Presenter come to mind) should implement it in the way described
in .2 (ie rotate a bitmap). However, from what I can gather in
the discussions in those notes files no plans have been made to
do this - they are waiting for display postscript instead.
I really think these products need this capability now instead of
possibly a year from now when we get display postscript. Again
I am fairly certain that our competition won't wait...
Peter
|
950.6 | You can do fallback in your interface library | GR8FUL::HERBERT | Class B Computing Device | Thu Jun 15 1989 13:36 | 13 |
| Re: .3
If the extension is properly designed, you could write a stub library
which attempted to load the extension, and if it failed, emulate it
using standard X functions. To an application, this would look just
like X calls, and it would be more efficient on servers which
implemented the extension.
This way, you don't have to re-invent the fallback method in each
application.
Kevin
|
950.7 | We don't just ignore customer needs (we think about it first) | EPIK::BUEHLER | All that is gold does not glitter | Thu Jun 15 1989 16:14 | 14 |
| ><<< Note 950.5 by YOSMTE::LAMB_PE "Peter Lamb - FSG Santa Clara" >>>
>-< DECwrite doesn't - I don't think >-
DECwrite does do scaling of text. That's because that was viewed as an
essential function in the product. So we did what Fred described - we
played games.
If rotation of text had been equally high on the list of priorities, we
would have figured something out there as well. I believe that
DECpresenter will have rotated text, and it's my understanding that
they're not waiting for Display PostScript.
John
|
950.8 | | VWSENG::KLEINSORGE | Toys 'R' Us | Fri Jun 16 1989 05:16 | 15 |
|
I wonder just how much effort is being spent by DECwindows application
programmers in re-inventing the wheel? Here's a function (text scaling,
rotation and shearing) that was pointed out 2� years ago as something
that was critical to a number of applications... and before a X
extension or display postscript arrives I can count at least a half-dozen
DEC applications that needed to re-invent it... at a very *high* cost
in client side memory and CPU, not to mention server bandwidth if
the text is pulled in through a pixmap read.
Implementing the text extension with a client fallback library is fine.
How 'bout doing it and making it a STANDARD Xlib function!
|
950.9 | If it's worth doing then go ahead and do it | STAR::BMATTHEWS | | Fri Jun 16 1989 06:52 | 5 |
| I think Fred is right and the app groups who need the function should
pool resources to define and do a sample implementation of scaled and rotated
text and submit the extension to the X11 community.
Bill
|
950.10 | Do it now, get the jump | POOL::HALLYB | The Smart Money was on Goliath | Mon Jun 19 1989 10:48 | 10 |
| I think Bill has the right idea. Otherwise we end up with two bad
choices: [1] Customer/competitor complaints that X11 isn't portable
after all, with attendant loss in prestige and sales; [2] Somebody else
(like IBM or HP) develops the code and *it* becomes the standard, with
the attendant loss in prestige and sales as DEC plays catch-up.
Whoever does it first, and does it right, has an edge on the others.
John
|
950.11 | How do you scale,rotate or shear? | LARVAE::BULLARD | | Tue Jul 04 1989 05:59 | 7 |
| This may not be the most appropriate place to get this information,but
where can I get some pointers on how to scale,rotate or shear a
bitmap? Ideally I would like some code examples on how to implement
these algorithms.
regards Mark
|
950.12 | re .-1 (I've got some Macro examples) | VESTA::BAILEY | Eight or bust....... | Tue Jul 04 1989 06:13 | 4 |
| VAXimage Application Services
IMG$SCALE... IMG$ROTATE...IMG$CREATE_ROI
|