Jonathan, I think we are in pretty good shape already with measures,
bounding boxes, and axes all being able to be set up with ticks and labels
and such. So probably what we want to do for a "plot3D" object is simply
allow an association of those with an isosurface. I don't know that we need
anything else done with the isosurface itself.

In general we probably need some setting that allows scaling to be done
based on a surface. Perhaps:

zoom $isosurfaceId 0

more comments below...

On Sat, Dec 19, 2009 at 10:09 PM, Jonathan Gutow <[email protected]> wrote:

> I think these questions are primarily for Bob.
>
> I'm starting to look at the plot3D class and think about what would
> need to be extracted from surfaces provided as meshes/jvxl to plot and
> scale them.  I haven't looked at this portion of the code in detail
> before so have a few questions:
>
> 1) As we load isosurfaces do we permanently store max and min values
> for each coordinate anywhere?  So far I haven't found them stored in
> anything as long lived as the isosurface.  I see a couple of places
> where the isosurface is read to determine these parameters.  Do we
> want to do this everytime?  Seems to me that for plotting purposes
> where we will be choosing scale based on this we should keep permanent
> records for each dimension.
>

To date there hasn't been any real use for that, so it hasn't been
calculated. (What you may be seeing is a report coming out of the
atomDataReader for molecular surfaces and such.) But it would be easy enough
to calculate from the vertex list.

But it's easy enough -- just two Point3f values.


> 2) Other things I am considering to have in the plot3D object are:
> labels for each degree of freedom (for axes labels)
>

I'm starting to wonder if we need a special object or not. Are you sure all
this can't be done using a bounding box? Coordinates are the property of the
applet in general, not a specific model or surface. And you can position a
bounding box anywhere you want. I was hoping the bounding box object would
suffice here. (But, yes, it could use labels as well, which it does not have
right now.)

I'm thinking something like

boundbox $isosurface1

that would instantly pop up an unscaled box that could be customized. Or
maybe that would be

isosurface1 boundbox .....



> x:y:z aspect ratios (default 1:1:1 or so bounding box fills window?)
>

This is all set for the bounding box now. Or, more generally, "measures" --
which can be positioned anywhere one wants. They can be scaled in any way
you want and start at a given value as well.

So maybe a plot3D object would simply allow for three perpendicular measures
to be added easily.



> nticksmaj, nticksmin to specify the number of major and minor ticks
> number format for axes scales
>

This is all set for bounding box and measures. major, minor, and subminor;
string or number formats for axes scales are in.



> units for each axis
>

Maybe units are just part of the label? Not all plots need units.


> 3) This has also got me thinking about a more general plot object.
> How about a generic plot object for objects of any number of
> dimensions?  The basic idea is that you could specify which triple of
> dimensions to use for the x,y,z triplet and use a fourth dimension to
> specify a magnitude at a point (plotable as a color intensity, scaled
> spheres or used to produce an isosurface at some level), a fourth and
> fifth dimension to specify a complex value at a point (not sure how to
> plot that...scaled spheres of different colors?), or a fourth, fifth
> and sixth dimension to plot a vector field.  The key idea being that
> we could choose the which triple, qradruple, pentuple or hextuple to
> plot out of any n-tuple.
>

Yes, this is what Andy Hanson and I were working on this past summer. We
haven't taken it further, but it's basically "Jmol-nD". The interesting
thing to implement is 4-D rotations. :)

Bob



>
> Jonathan
>
>
>                          Dr. Jonathan H. Gutow
> Chemistry Department                                 [email protected]
> UW-Oshkosh                                           Office:920-424-1326
> 800 Algoma Boulevard                                 FAX:920-424-2042
> Oshkosh, WI 54901
>                  http://www.uwosh.edu/facstaff/gutow
>
>
>
>
>
>
>
> ------------------------------------------------------------------------------
> This SF.Net email is sponsored by the Verizon Developer Community
> Take advantage of Verizon's best-in-class app development support
> A streamlined, 14 day to market process makes app distribution fast and
> easy
> Join now and get one step closer to millions of Verizon customers
> http://p.sf.net/sfu/verizon-dev2dev
> _______________________________________________
> Jmol-developers mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/jmol-developers
>



-- 
Robert M. Hanson
Professor of Chemistry
St. Olaf College
1520 St. Olaf Ave.
Northfield, MN 55057
http://www.stolaf.edu/people/hansonr
phone: 507-786-3107


If nature does not answer first what we want,
it is better to take what answer we get.

-- Josiah Willard Gibbs, Lecture XXX, Monday, February 5, 1900
------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev 
_______________________________________________
Jmol-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jmol-developers

Reply via email to