Package: openscad
Version: 2015.03-1+dfsg-3+b1
Followup-For: Bug #806670

rright.  the "rotation dragging" has absolutely nothing whatsoever to
do with what version of QT, what version of OpenGL (or not) that is
being used.

the change is a critically-flawed design mistake in the way that the
mouse position and redrawing is handled, when compared to versions of
openscad from last year and prior.

the rendering loop in openscad prior to last year was something like
this:

int mouse_x, mouse_y;
bool redraw_needed;
bool redraw_done;
bool mouse_moved;
create_threads(3)
if (thread 1)
{
     while (mouse down)
     {
          mouse_x, mouse_y = get_mouse_pos();
          if (position != same && !redraw_done)
          {
              redraw_needed = True;
          }
     }
}
else if (thread 2)
{
     while (mouse down)
     {
           if (redraw_needed & !redraw_done)
           {
                 redraw_needed = False;
                 do_redraw();
                 redraw_done = True;
           }
     }
}

whereas the *CURRENT* code FAILS to take into account the fact that
if you have hundreds of mouse-events generated, and you generate one
redraw event PER MOUSE EVENT, you're f*****d.

as i am designing a 15.6in professional laptop, i have extremely complex
openscad files that are auto-generated by pyopenscad.  a *SIMPLE* .scad
file generated for one of the parts is over a thousand lines long (63k).

the amount of time it takes to do a redraw can (and has), for these complex
parts, actually take an entire second.... and that's with OpenGL hardware
acceleration enabled.

moving the mouse with the latest version of openscad generates HUNDREDS
of mouse-events in a fraction of a second, resulting in HUNDREDS of draw
events... you really think i'm going to sit there watching frames redraw
in excruciating slow-motion, with CPU usage sitting at 100%?

.... no, i'm not :)

so what i'm going to do is to find an older version of the openscad source
code, compile that up and use it.  i had a version that used to work, from
source, before openscad was added to debian, it will do the job.


-- Package-specific info:
Output of /usr/share/bug/openscad:
$ glxinfo |grep 'OpenGL .* string:'
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Haswell 
OpenGL core profile version string: 3.3 (Core Profile) Mesa 10.3.2
OpenGL core profile shading language version string: 3.30
OpenGL version string: 3.0 Mesa 10.3.2
OpenGL shading language version string: 1.30

-- System Information:
Debian Release: 7.4
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages openscad depends on:
ii  libboost-filesystem1.58.0       1.58.0+dfsg-3
ii  libboost-program-options1.58.0  1.58.0+dfsg-3
ii  libboost-regex1.58.0            1.58.0+dfsg-3
ii  libboost-system1.58.0           1.58.0+dfsg-3
ii  libboost-thread1.58.0           1.58.0+dfsg-3
ii  libc6                           2.19-13
ii  libcgal11v5                     4.6.1-2
ii  libfontconfig1                  2.11.0-6.1
ii  libfreetype6                    2.5.2-2
ii  libgcc1                         1:5.2.1-17
ii  libgl1-mesa-glx [libgl1]        10.3.2-1
ii  libglew1.13                     1.13.0-2
ii  libglib2.0-0                    2.46.0-2
ii  libglu1-mesa [libglu1]          9.0.0-2
ii  libgmp10                        2:6.0.0+dfsg-4
ii  libharfbuzz0b                   0.9.35-1
ii  libmpfr4                        3.1.3-1
ii  libopencsg1                     1.3.2-2+b1
ii  libqt5concurrent5               5.4.2+dfsg-9
ii  libqt5core5a                    5.5.1+dfsg-5
ii  libqt5gui5                      5.5.1+dfsg-5
ii  libqt5opengl5                   5.5.1+dfsg-5
ii  libqt5printsupport5             5.5.1+dfsg-5
ii  libqt5scintilla2-12v5           2.9+dfsg-8
ii  libqt5widgets5                  5.5.1+dfsg-5
ii  libstdc++6                      5.2.1-17
ii  libx11-6                        2:1.6.2-3

Versions of packages openscad recommends:
ii  openscad-mcad  2014.03-1

Versions of packages openscad suggests:
pn  geomview          <none>
ii  librecad          2.0.4-1
ii  meshlab           1.3.2+dfsg1-2+b1
pn  openscad-testing  <none>

-- no debconf information

Reply via email to