[vtkusers] Issues with picking in VTK Java on Mac OS X
Kevin Milner
kmilner at usc.edu
Tue Feb 14 17:51:09 EST 2017
Sure, here it is:
java.lang.NoSuchFieldException: scale
at java.lang.Class.getDeclaredField(Class.java:2070)
at
vtk.rendering.vtkInteractorForwarder.getGraphicDeviceScale(vtkInteractorForwarder.java:372)
at
vtk.rendering.vtkInteractorForwarder.getDisplayScale(vtkInteractorForwarder.java:367)
at
vtk.rendering.vtkInteractorForwarder.<init>(vtkInteractorForwarder.java:52)
at
vtk.rendering.vtkAbstractComponent.<init>(vtkAbstractComponent.java:60)
at
vtk.rendering.jogl.vtkAbstractJoglComponent.<init>(vtkAbstractJoglComponent.java:27)
at
vtk.rendering.jogl.vtkJoglPanelComponent.<init>(vtkJoglPanelComponent.java:21)
at
vtk.rendering.jogl.vtkJoglPanelComponent.<init>(vtkJoglPanelComponent.java:17)
at
vtk.rendering.jogl.vtkJoglPanelComponent.<init>(vtkJoglPanelComponent.java:13)
at org.scec.vtk.main.MainGUI.<init>(MainGUI.java:152)
at org.scec.vtk.main.MainSplashScreen.<init>(MainSplashScreen.java:34)
at org.scec.vtk.main.MainSplashScreen$1.run(MainSplashScreen.java:69)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
More details on my system:
Xubuntu 16.06 64 bit, NVidia Quadro M2000M, NVidia driver version 367.57
java -version:
openjdk version "1.8.0_121"
OpenJDK Runtime Environment (build 1.8.0_121-8u121-b13-0ubuntu1.16.04.2-b13)
OpenJDK 64-Bit Server VM (build 25.121-b13, mixed mode)
Kevin
On 02/14/2017 02:41 PM, Sebastien Jourdain wrote:
> Thanks Kevin,
>
> could you send me the exact exception/stack trace that you are getting
> on linux?
>
> Thanks,
>
> Seb
>
> On Tue, Feb 14, 2017 at 2:11 PM, Kevin Milner <kmilner at usc.edu
> <mailto:kmilner at usc.edu>> wrote:
>
> Thanks to everyone for their help! So I finally have everything
> figured out. It turns out that Sebastien's fix (commit
> b6df993770cfcd9a69a48a2730415a992d698c5b) does indeed fix the
> problem with picking on retina displays. When I noticed a
> discrepancy between the reported click position and the JFrame
> size, I implemented a fix to what I thought was a bug, but
> actually defeated Sebastien's fix. So I can now confirm that the
> current git/master version works successfully on both retina and
> non-retina Macs.
>
> One note about the fix though is that it uses the "scale" field in
> GraphicsDevice, which is accessed via Java reflection, and does
> not exist in my linux distribution. This causes an exception to be
> dumped to the console every time I click in the 3D viewer. I just
> commented out the e.printStackTrace(); at line 382 of
> vtk.rendering.vtkInteractorForwarder to remove the excessive
> printing. You should probably fix that before the next release.
> Other possible ways to detect a retina display/scale factor which
> might not have the linux issue are discussed here:
> http://stackoverflow.com/questions/14716743/how-can-i-detect-whether-a-mac-has-a-retina-display-from-java
> <https://urldefense.proofpoint.com/v2/url?u=http-3A__stackoverflow.com_questions_14716743_how-2Dcan-2Di-2Ddetect-2Dwhether-2Da-2Dmac-2Dhas-2Da-2Dretina-2Ddisplay-2Dfrom-2Djava&d=DwMFaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=Ut0P5Kplo2cIO9V0et1UBQ&m=Iu9g6yhZzCljBhje3EdkFvvXsKQCcza1TJHRaXwAic4&s=FOi5m6AHOz6BW_8M5-3tcrZ_51YjoqjqXi2wchj61M0&e=>
>
> Thanks much for the help!
> Kevin
>
>
> On 02/10/2017 06:05 PM, Sebastien Jourdain wrote:
>> Hi Kevin,
>>
>> I finally build VTK on my mac (macOS Sierra 10.12.3 - 16D32)
>>
>> I can run vtk.sample.Demo with the usual external window issue
>> except on that time the actual rendering window is half the size
>> of the actual JFrame.
>>
>> For the Jogl I get a segfault right away.
>>
>> $ java -cp
>> vtk-7.1.jar:/Users/seb/.m2/repository/org/jogamp/gluegen/gluegen-rt/2.3.2/gluegen-rt-2.3.2.jar:/Users/seb/.m2/repository/org/jogamp/jogl/jogl-all/2.3.2/jogl-all-2.3.2.jar
>> -Djava.library.path=$PWD/natives-Darwin-x86_64/
>> vtk.sample.rendering.JoglConeRendering
>> #
>> # A fatal error has been detected by the Java Runtime Environment:
>> #
>> # SIGSEGV (0xb) at pc=0x000000012cdaeb99, pid=51716, tid=7171
>> #
>> # JRE version: Java(TM) SE Runtime Environment (8.0_25-b17)
>> (build 1.8.0_25-b17)
>> # Java VM: Java HotSpot(TM) 64-Bit Server VM (25.25-b02 mixed
>> mode bsd-amd64 compressed oops)
>> # Problematic frame:
>> # C [libawt_lwawt.dylib+0x44b99] JNI_OnLoad+0x91
>> #
>> # Failed to write core dump. Core dumps have been disabled. To
>> enable core dumping, try "ulimit -c unlimited" before starting
>> Java again
>> #
>> # An error report file with more information is saved as:
>> # /Users/seb/Documents/code/VTK/install/hs_err_pid51716.log
>> #
>> # If you would like to submit a bug report, please visit:
>> # http://bugreport.sun.com/bugreport/crash.jsp
>> <https://urldefense.proofpoint.com/v2/url?u=http-3A__bugreport.sun.com_bugreport_crash.jsp&d=DwMFaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=Ut0P5Kplo2cIO9V0et1UBQ&m=cpXdD9Shwlw-tbBdzMG5o9U9ZIq7Zn7bL3WkZ_xxvmk&s=xF95XsSLi5_QuJhTNA_YMjO19Br-tB5i36_ifgJd0iI&e=>
>> # The crash happened outside the Java Virtual Machine in native code.
>> # See problematic frame for where to report the bug.
>> #
>> Abort trap: 6
>>
>> I don't know if the issue come from jogl or VTK with macOS Sierra.
>>
>> Anyway, wanted to let you know,
>>
>> Seb
>>
>> On Tue, Feb 7, 2017 at 7:02 AM, Sean McBride
>> <sean at rogue-research.com <mailto:sean at rogue-research.com>> wrote:
>>
>> On Mon, 6 Feb 2017 14:10:03 -0800, Kevin Milner said:
>>
>> >Any ideas on how to get this working on new Macs?
>>
>> So you have 2 differences now: different OS version,
>> different screens (Retina vs not). You should try to
>> eliminate one. You can force a non-Retina to act like a
>> retina with Quartz Debug:
>>
>> <https://developer.apple.com/library/content/documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/Testing/Testing.html
>> <https://urldefense.proofpoint.com/v2/url?u=https-3A__developer.apple.com_library_content_documentation_GraphicsAnimation_Conceptual_HighResolutionOSX_Testing_Testing.html&d=DwMFaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=Ut0P5Kplo2cIO9V0et1UBQ&m=cpXdD9Shwlw-tbBdzMG5o9U9ZIq7Zn7bL3WkZ_xxvmk&s=0iUBZa-RgXAC9Xhb0drglax92fWfwGGTj-Uc7CM4VQE&e=>>
>>
>> and/or upgrade that Mac from 10.9 (which BTW doesn't get
>> security updates anymore) to something newer.
>>
>> Cheers,
>>
>> --
>> ____________________________________________________________
>> Sean McBride, B. Eng sean at rogue-research.com
>> <mailto:sean at rogue-research.com>
>> Rogue Research www.rogue-research.com
>> <https://urldefense.proofpoint.com/v2/url?u=http-3A__www.rogue-2Dresearch.com&d=DwMFaQ&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=Ut0P5Kplo2cIO9V0et1UBQ&m=cpXdD9Shwlw-tbBdzMG5o9U9ZIq7Zn7bL3WkZ_xxvmk&s=9cy936hCnvRuTo7DSMoAfRvhAa8WKZXt1uiyI9dGtws&e=>
>> Mac Software Developer Montréal, Québec, Canada
>>
>>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtkusers/attachments/20170214/84cd7029/attachment.html>
More information about the vtkusers
mailing list