> 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

