octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: fltk backend fix & mouse wheel scroll factor


From: John Swensen
Subject: Re: fltk backend fix & mouse wheel scroll factor
Date: Sun, 27 Sep 2009 19:05:02 -0400


On Sep 27, 2009, at 4:16 AM, Søren Hauberg wrote:

søn, 27 09 2009 kl. 09:12 +0300, skrev Shai Ayal:
The attached changset fixes a bug which did not show the zoom box.
Also added a function to enable the user to control the zoom factor
when using mouse wheel zoom.

I think that with this changeset, the fltk_backend is quite usable as
a viewer to the gl-renderer.

I think this is really nice. With this changeset, the FLTK backend is
very nice to use for 2D plots (much better than both gnuplot and
matlab).

I am open to feature requests.

Well, then I'm gonna file a request :-) It would be great to have better
support for navigating in 3D. Basically, I think dragging the mouse
should make 3D plots rotate around some point (center of mass?), while
scrolling should change the distance between the camera and said point.

I have always been a big fan of how the 3D solid modeling programs (e.g. ProE and SolidWorks) do their 3D navigation. The way I see it working with Octave is as follows. There would be 4 different "views" available from the plotting window. Views 1-3 would be associated with looking at the plot along each of the cardinal axes. The four would be the "working view". The user has 2 options regarding how the object rotations (or the camera rotates about the object). The first is based on a center of mass idea as you indicated. This works great for solid modeling, since objects have a clear center of mass, but for plotting it is more difficult since it becomes not obvious how to weight things like lines. A cloud of points would be easiest to implement this behavior. The second way that solid modeling programs work is to allow you to set the center of rotation by switching to the 3 orthogonal views to set the point of rotation. Then, you can return to the "working view" and rotate and pan as would be expected. This would be harder to implement, and I'm not exactly sure how this meshes with how the property tree manages camera position, but I think it would help keep from grumbling and muttering unspeakable things every time I try to rotate and pan in both Matlab and Octave.

John Swensen




reply via email to

[Prev in Thread] Current Thread [Next in Thread]