> Miguel wrote:
>
>>
>>Be advised that this 'isVisible' flag was designed for internal use only.
>>More importantly, the concept of 'visible' is not as well-defined as one
>>might think.
>>
>>If this makes it into 'production' code then we will need to make sure
>> that
>>the concept is well-documented and well-understood.
>>
>>
> Sure. I agree. It would go under the category of "atom expressions".
> Please say more, Miguel.

The internal 'isVisible' flag was designed for the 'hover' and to detect
which atoms are selected based upon 'clicking' behavior.

It could very easily be the case that when atoms are not currently
displayed on the screen (because they are zoomed or translated) then the
atoms are not 'visible'. I don't remember.

> Perhaps what "visible" means. Currently, I
> think, it means:
>
> (1) the atom is in a displayed frame

Yes, that is the way that the 'isVisible' flag works ... but I am not sure
that is the desired behavior for the 'visible' set.

> and
>
> (2) the atom has at least one of the following:
>
>         a. spacefill > 0
>         b. wireframe > 0
>         c. a halo highlight
>
> Note that cartoons and such do NOT constitute visible, because they are
> not atoms.

I am not sure that is completely true. There may be other schematic
representations where the atoms are considered visible. I don't remember.

> When you have:
>
> select *
> wireframe off;spacefill off; cartoon on
> select visible
>
> you get:
>
> 0 atoms selected
>
> The only secondary structural visualization that constitutes visible is
> "backbone", which is really
> a wireframe connection between alpha carbons in a protein or (what?)

Phosphorus or chain-terminating Oxygen.

> in a nucleic acid. So
>
> select *
> wireframe off;spacefill off; backbone on
> select visible
>
> gives you (for 1crn.pdb):
>
> 46 atoms selected
>
>
> More to know?

I think that we would be better off reimplementing the 'visible' set to
explicitly be the things that you want it to be.

That way, it will be well-defined and will not get messed up if/when
someone works on some other part of the code.

In addition, this will also avoid the confusion associated with whether or
not the frame was repainted.

Finally, I don't think that the 'visible' set should have an implicit
restriction based upon the currently displayed frame. No other sets behave
that way. I think I would be more in favor of a 'visible' set that
includes all atoms in all models. If necessary, then we could add another
set which represented all atoms in the currently displayed models. One
could AND the two sets together to get the currently visible atoms.


Miguel



-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0944&bid$1720&dat1642
_______________________________________________
Jmol-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jmol-users

Reply via email to