Hi Doug Thanks very much for your very informative comparison of the various ways of producing text labels in Java3D. Thanks also for your Label3D code. I had also adapted the Text2D code to create RasterText, specifically to determine the size of the BufferedImage. My implementation was a little different in that: 1. I was setting the size of the BufferedImage in powers of 2 (quite unnecessarily as it appears from your coding) 2. I am sending in a Font and Appearance object as input so I could reuse them for all the labels. At the present time, I am using RasterText for annotating the values of a Color Bar and the vertices of a wireframe geometry in a SciVis application. The vertices could be of the order of hundreds of thousands. I do sensibly limit the user from trying to annotate all the vertices of the wireframe, but the number could potentially be still quite large and dynamic. I have found it convenient to use Raster for the following reasons in some contexts of my application ( there are other contexts where I do use Text2D and Text3D extensively ): 1. RasterText looks crisper. Text2D is susceptible to zooming and scaling and can potentially end up looking jagged. 2. RasterText can be positioned exactly where you want it in the Global Coordinate System during its creation, and needs no further effort to maintain that position in relation to other objects in the scene. Text2D, on the other hand, needs a Transform3D to first get translated to the point of interest and an associated TransformGroup to maintain that position. Transformgroups, I believe, are quite expensive (??). Text3D, which in contrast is a *Geometry*, can be arranged without the above overhead. 3. The size of the Text2D label cannot be held fixed easily, and this could be a limiting factor in some contexts, especially if the Text2D labels are buried deep down in the SceneGraph hierarchy. To hold the size of the Text2D, one would need to calculate an inverse scaling transform (which may need traversing up the SceneGraph hierarchy to accumulate all the scaling effects) at the local level of the SceneGraph. I'm not sure if there is an efficient alternative. 4. In my Raster implementation, I can reuse the Font and Appearance objects repeatedly. This, of course, can be readily rectified by overloading the Text2D constructors. What would be nirvana is a Text Label that: can maintain its size, can be antialiased, can be manipulated like an OrientedShape3D, is not polygonized like the Text3D and thus cheaper, can be positioned explicitly at a fixed point and can be made to maintain its orientation along a *fixed direction*. Some of the above, are perhaps readily possible with the current API. Many SciVis applications lack good Text support and, consequently, one is forced to grab an image of the screen and take it to other software where the image can be annotated. I have noticed that Java2D text looks very good ( though, here, I may be comparing apples to oranges). The support for getting publication quality output from a Java3D application would be very very welcome. Thanks Raj Vaidya _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA3D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".
