Dmitry wrote:

> 1. I'd like to add some menuItems to the JmolPopup  menu
>
> but I didn't find any public methods to do so (only package methods)
>
> definitely I can modify jmol code or use reflection mechanism but I'd
> prefer not to do so

The JmolPopup is not part of the JmolViewer ... it is considered external
user interface that the application must provide.

Take a look at the JmolApplet.java code to see a relatively simple example.

> 2. is there some reasonable explanation why
> class JmolViewer is final?
>
> in general I found that many classes and methods in Jmol suit
> have unnecessary restricted access

Hmmm ... fair question.

JmolViewer is final and many classes/methods have restricted access
because, frankly, I don't think anyone should be building things based
upon them. I still consider that code very volatile and subject to major
restructuring.

At one level, all (most of?) the functionality should be available through
the scripting language.

I consider the JmolViewer a component. If people need additional
functionality, then we should modify the API to provide access to what
they need.

If you have special needs/requirements/wishes then I'll be glad to discuss
it.

> 3. if I understand right in order to add new reader I have to modify
> ModelResolver class
>
> is there any way to add new reader without modifying ModelResolver
> class?

No, not within the current SmarterModelAdapter framework.

You must modify the ModelResolver to extend it.

> so Modelresolver can pick up new format from
> a) introspection
> b) external preferences file
> c) java preferences
> d) java system preferences
> e) explicit registration
> ...

The functionality of the ModelResolver could rather easily be extended
using one of the mechanism that you suggest ... but currently there is no
mechanism.

The SmarterModelAdapter is intended to support public file formats in a
very flexible way, so that the Jmol application, the JmolApplet, and
applications embedding the JmolViewer can easily read lots of file
formats.

HOWEVER, there is a completely other option that you may want to consider.

The entire SmarterModelAdapter is simply an implementation of the
ModelAdapter API. If you don't want to work within the SmarterModelAdapter
framework then you can simply subclass the ModelAdapter and write all your
own stuff.

If you only want to support a proprietary file format, or if you don't
even have a file but want to load from your own data structures, then you
should consider implementing your own ModelAdapter.

> 4. is there way to support transparency in the Jmol?

Not yet, but I am working on it.

> I found that BufferedImage from Swing3D class
> was created with TYPE_INT_RGB modifier why not TYPE_INT_ARGB?

For performance reasons.

> I tried to change it to TYPE_INT_ARGB and didn't notice
> any performance penalty (I have Powerbook G4/1.25GHz/1GB/MAC
> OS X 10.3.5/Java 1.4.2 Update 2)

On a modern machine like yours with a powerful graphics subsystem you will
not notice a performance difference.

On older machines I was able to measure a performance difference.

However, there is a much more fundamental problem. The org.jmol.g3d
graphics engine is what needs to deal with transparency, not the Java
class library.

In order to get 3d functionality we must render the entire scene
off-screen. This image gets sent to the screen in a single drawImage call.
So Java 2D transparency won't help at all. (unless you want to display the
molecule over an image background).

I am working on 5 levels of transparency along with antialiasing.

> 5. what is the status of generating molecular surfaces?

It is on the list of things to do.

I need to officially release version 10 first.

Some of the work for vanderWaals and solvent-accessible surfaces is done
as part of the Dots code.

> if for example I will calculate triangles by myself may I use some mesh
> rendering in Jmol?

There currently is no support for mesh rendering.

Be advised that the Jmol g3d engine is, well, different ... in that it
does not use triangles to render the shapes.

I *probably* will use triangles to render surfaces, but it will require
quite a bit of work on the graphics engine.

For example, the engine today can render individual triangles, but not
meshes. And there is no support for any type of phong/gourand shading.


Tough questions from a *newbie* :-)


Miguel

* The curse is broken! Go Red Sox!



-------------------------------------------------------
This SF.net email is sponsored by: IT Product Guide on ITManagersJournal
Use IT products in your business? Tell us what you think of them. Give us
Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more
http://productguide.itmanagersjournal.com/guidepromo.tmpl
_______________________________________________
Jmol-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jmol-developers

Reply via email to