JDK-8100694 : Improve rendering quality of tessellated primitives with a scale factor
  • Type: Enhancement
  • Component: javafx
  • Sub-Component: graphics
  • Affected Version: fx2.0
  • Priority: P3
  • Status: Closed
  • Resolution: Not an Issue
  • Submitted: 2011-07-21
  • Updated: 2015-06-16
  • Resolved: 2013-07-16
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 8
8Resolved
Related Reports
Blocks :  
Relates :  
Description
Run the attached app. It draws ellipse which is zoomed using Z axis translation. The result looks like polygon, not like an ellipse.
Comments
Not an issue after tessellation has been removed. RT-5534
16-07-2013

Fix for RT-5534 will remove tessellation, then this problem will simply go away.
16-07-2013

This is a Lombard feature.
06-03-2012

Since this is being repurposed as a feature, I am changing the synopsis and moving it to Lombard.
24-08-2011

Changed to feature.
24-08-2011

If you want to reopen this issue and convert it to a feature, that would be fine.
24-08-2011

This doesn't seem to be a valid solution. I believe that graphical system should be able to tessellate shape basing on its screen size, not its logical. Scaling can occur in any parent of its shape and it is always expected to be circle. Another point here is that layoutBounds do not take scaling into account so the solution looks complicated. It seems that this issue needs to be converted into Feature.
24-08-2011

This is not a bug. The tessellation fineness is dependence on the size of the constructed Shape. The way to avoid too-coarse tessellation is to create a big Shape and then scale it down to the size you want. For examples, in the CircleZBug.java instead of Circle node = new Circle(30, Color.RED); user should do the following to get a smoother Z translated circle Circle node = new Circle(300, Color.RED); node.setScaleX(0.1); node.setScaleY(0.1); Same principle applied to the Ellipse3DBug.java instead of Ellipse ellipse = new Ellipse(250, 250, 50, 25); user should do the following: Ellipse ellipse = new Ellipse(250, 250, 500, 250); ellipse.setScaleX(0.01); ellipse.setScaleY(0.01);
27-07-2011

In looking at the circle it seems like the problem may be more than just too-coarse tessellation. Needs to be investigated.
23-07-2011

Another sample with circle
23-07-2011

Fixing the image quality in general of shapes under a 3D transform is not likely in scope for this release. In this specific case, it looks like we are under-tessellating the shape. I'll leave it as "Major" for now and set the target to Presidio, but we may end up deferring it.
21-07-2011