Italy
Joined: Nov 17, 2021
Post Count: 465
Status:
Offline
Re: Pan tool in 3D and 2D view?
@sjb007 I'm currently working on another plugin to draw 3D wirings (electric cables, tubes, etc.). To allow placement of wires on the floor as well on the walls, drawing will occurr directly on the 3D view. This may require some adjustment to the pan plugin, so there is a chance I will build a new version before giving it such exposure.
Joined: May 18, 2021
Post Count: 255
Status:
Offline
Re: Pan tool in 3D and 2D view?
@Daniels118 Hi, me again. I think I found a nasty side effect of the Pan3DView plugin. When I do a "Virtual visit" and walk around after a while the Left-click-drag action to change the direction the visitor is looking will break. It is not immediate, but after a while the visitor viewpoint starts to spin in a wild and uncontrollable fashion with the left-click-drag. I can reproduce even with an empty world space. If I remove the Pan3dView plugin I cannot cause this behaviour to occur.
Italy
Joined: Nov 17, 2021
Post Count: 465
Status:
Offline
Re: Pan tool in 3D and 2D view?
Hi sjb007, I've tried to reproduce the issue but without success (again). For how long you have to walk around before the problem occurrs? Can you grab the console output as done before?
Joined: May 18, 2021
Post Count: 255
Status:
Offline
Re: Pan tool in 3D and 2D view?
There's something really odd going on. If I try to redirect the console I get a hard lock of the application instead of the madly spinning POV. I also have an empty log file. I tried redirecting just the error console, and both standard out and error. Didn't matter. Same hard lock and empty log. Only way to quit out is to End Task in Task Manager. I've repeated several times and it is totally consistent for me. With redirects I get hard locks. Without redirect I get spinning POV. My laptop has selective Intel/nVidia for applications. I get the same behaviour running on both, so it isn't some gfx driver issue I think. I can trigger both issues in ~10-15s, maybe even less. I just hold left mouse button and move the mouse in a continuous small circle. The issues are triggered in more usual usage too, but this is the "quick" method.
Italy
Joined: Nov 17, 2021
Post Count: 465
Status:
Offline
Re: Pan tool in 3D and 2D view?
I had no luck trying to reproduce the problem :( First, check if you are using the latest version of the plugin (1.7). If you can, please upload a video of the steps to do to reproduce.
Italy
Joined: Nov 17, 2021
Post Count: 465
Status:
Offline
Re: Pan tool in 3D and 2D view?
Funny video title I really don't understand what is going on You could try to install this plugin that automatically redirects the console output to a file. Do not remove the underscore from the filename, as this will ensure the plugin is loaded before the others (they are loaded in alphabetical order). The output will be stored within the application folder (the one that contains the plugins folder). Hope this will produce an helpful log.
Joined: May 18, 2021
Post Count: 255
Status:
Offline
Re: Pan tool in 3D and 2D view?
Huh. I looked at the code, and deactivating the SH3D preference of "Aerial view centered on selection" stops the issue occurring. Turning it back on, I can quickly cause the issue again. I'm a bit puzzled why aerial view code is being called when I'm in virtual visitor mode. It is a band aid though. Turning the setting off simply skips the threading code in View3DEnhancerImpl.java:363-370 that causes the issue. Maybe too many threads are being launched and are not cleaned up?
Italy
Joined: Nov 17, 2021
Post Count: 465
Status:
Offline
Re: Pan tool in 3D and 2D view?
Yippee! This explains everything. It's likely you have a very fast PC, probabily with an UHD screen or the cursor speed set very high. This cause mouseDragged events at high frequency, leading to 2 problems with the code you seen in View3DEnhancerImpl.java:363-370: - concurrency with the delayed code execution (the first IllegalAccessException); - generation of too many concurrent threads (OutOfMemoryError).
You're right about the fact this branch of code is useless when the camera is in visitor mode, however this problem could potentially occurr even in aerial view mode. So, beside excluding the code execution in visitor mode, I'll try to implement that function in a different way which won't involve starting new threads.
Please let me thank you for your valuable help in disclosing bugs and help me solve them