Thanks for the feedback Bob and Angel.
I think I can define my problem more precise now. I added another figure to my blog which hopefully makes it clear what I am trying to obtain. Right now, I only want to make it possible for the user to figure out which side of the bounding box is oriented towards the wire surface.
Here is the link to the latest post.
http://qmviews.blogspot.com/2011/06/jmol-003-arranging-protein-on-nw.html

So my question is how to add these arrows that I added to the figure and set it up so the rotate together with the protein
? Maybe I could generate separate objects within the Jmol script?

Thanks again for the support here on the mailing list.







On 23.06.11 19:25, Robert Hanson wrote:
ps -- I thought you were just going to let the user manually rotate and translate the surface. If you do that, you don't have to worry about using rotateSelected. Jmol will do that for you. For that, all you need is:


set allowrotateselected
set picking dragSelected
select protein

then instruct the user to pick an atom on the protein and LEFT-drag to move the protein or ALT-LEFT-drag to rotate it.

With Jmol 12.1 you can catch that motion using

set atomMovedCallback "jmolScript:someFunctionNameHere()"

and do whatever you want at that point in the Jmol function

function someFunctionNameHere() {
  set echo top left
  echo @{"the distance is now " + distance({protein},{surface}) }

}

actually, now that I think of that, if all you want is an echo, you can even do just this:


set allowrotateselected
set picking dragSelected
select protein
set echo top left
echo @{"the distance is now " + distance({protein},{surface}) }


because @{} in an echo forces it to be updated upon every screen write.





Bob

On Thu, Jun 23, 2011 at 11:59 AM, Robert Hanson <[email protected] <mailto:[email protected]>> wrote:

    distance from center of protein to surface is just:


     x = distance({protein}.xyz , {surface}.xyz)

    where "protein"  and "surface" are appropriate defined.

    I don't know why you would want to rotate the boundbox. Do you
    really need that at all?

    Rotating the protein 90 degrees about the x axis (of the
    stationary surface), for example, would  be:

    select protein
    rotateSelected internal {protein} x 90


    If you want to rotate about the axes defined by the protein, then
    that's a bit trickier and will require some quaternions.

    Bob



    On Thu, Jun 23, 2011 at 11:08 AM, Martin Hediger
    <[email protected] <mailto:[email protected]>> wrote:

        Dear List
        I have posted a picture of the system I obtained onto my blog:
        
http://qmviews.blogspot.com/2011/06/jmol-002-control-over-two-structures.html

        A protein structure is placed above a surface of atoms, this
        is on a website that is in development.
        How can I have a boundbox only around the protein?
        Also, assuming the protein/box could only be rotated by 90°
        around x,y,z (with some button), I guess I require to
        introduce a second coordinate system only for the box, so I
        know which face of the protein is oriented towards the surface
        (this would then be entered into the interface for further
        processing). How would I do this?

        The whole purpose of this is to find the distance of the
        center of bounding box from the surface, which of course is
        half the side length. The question is how to figure out which
        side length to consider.

        Any hints are greatly appreciated.

        Martin






        On 15.06.11 15:32, Robert Hanson wrote:
        Depends how you define "surface." If you mean "some other
        group of atoms" then you can easily compute that at any time
        and even display it real time. If you mean "isosurface" that,
        too, might be able to be done, but I might have to add
        something to make that work.


        By "rotatable" I presume you mean independently of that
        surface. That's not a problem, and translation is part of it.
        You just use:

        select protein
        set allowRotateSelected TRUE
        set dragSelected TRUE

        Now you can use ALT-SHIFT-LEFT and ALT-LEFT to translate and
        rotate the protein relative to the underlying surface atoms.

        Now, say you want to update something as that happens. You
        will need to use the latest development version of Jmol,
        because what I describe next is not in Jmol 12.0. We have a
        callback called "atomMovedCallback" that can send a message
        either to Jmol or to your page JavaScript to do something. In
        this case it would report the distance of "atomX" to the
        nearest atom of "surfaceAtoms" where you have already defined
        them as, perhaps:

        atomX = {22.ca <http://22.ca>}  # CA for residue 22
        surfaceAtoms = {not protein}
        select protein
        set echo top left
        set atomMovedCallback "jmolScript:checkDistance"


        function checkDistance() {
          Var dmin = 1e10
          for (Var x in {surfaceAtoms}) {
            Var d = x.distance(atomX)
            if (d < dmin) { dmin = d }
          }
          Var s = format("%3.1f Angstroms", dmin)
          echo @s
        }


        Something like that!

        Bob Hanson

        On Wed, Jun 15, 2011 at 7:13 AM, Martin Hediger
        <[email protected] <mailto:[email protected]>> wrote:

            Dear Jmol Users, I'm new to the Jmol list, I'm looking
            forward to a nice
            community interaction.

            I would like to implement the following on a website:
            A protein structure should be displayed and it should be
            rotatable by
            the user. At the same time, the distance between a given
            point in the
            structure (e.g. a residue alpha-C atom) and a surface
            "below" the
            structure should be computable (once the structure is
            oriented the way
            it should be. The background is that we want to model a
            binding event of
            a protein on a nanowire surface, so the orientation of
            the molecule is
            critical.

            How could I achieve this?

            Kind regards and thank you for answers.
            Martin

            
------------------------------------------------------------------------------
            EditLive Enterprise is the world's most technically
            advanced content
            authoring tool. Experience the power of Track Changes,
            Inline Image
            Editing and ensure content is compliant with
            Accessibility Checking.
            http://p.sf.net/sfu/ephox-dev2dev
            _______________________________________________
            Jmol-users mailing list
            [email protected]
            <mailto:[email protected]>
            https://lists.sourceforge.net/lists/listinfo/jmol-users




-- 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 <tel: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


        
------------------------------------------------------------------------------
        EditLive Enterprise is the world's most technically advanced content
        authoring tool. Experience the power of Track Changes, Inline Image
        Editing and ensure content is compliant with Accessibility Checking.
        http://p.sf.net/sfu/ephox-dev2dev


        _______________________________________________
        Jmol-users mailing list
        [email protected]  
<mailto:[email protected]>
        https://lists.sourceforge.net/lists/listinfo/jmol-users

        
------------------------------------------------------------------------------
        Simplify data backup and recovery for your virtual environment
        with vRanger.
        Installation's a snap, and flexible recovery options mean your
        data is safe,
        secure and there when you need it. Data protection magic?
        Nope - It's vRanger. Get your free trial download today.
        http://p.sf.net/sfu/quest-sfdev2dev

        _______________________________________________
        Jmol-users mailing list
        [email protected]
        <mailto:[email protected]>
        https://lists.sourceforge.net/lists/listinfo/jmol-users




-- 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 <tel: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




--
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


------------------------------------------------------------------------------
Simplify data backup and recovery for your virtual environment with vRanger.
Installation's a snap, and flexible recovery options mean your data is safe,
secure and there when you need it. Data protection magic?
Nope - It's vRanger. Get your free trial download today.
http://p.sf.net/sfu/quest-sfdev2dev


_______________________________________________
Jmol-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jmol-users
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a 
definitive record of customers, application performance, security 
threats, fraudulent activity and more. Splunk takes this data and makes 
sense of it. Business sense. IT sense. Common sense.. 
http://p.sf.net/sfu/splunk-d2d-c1
_______________________________________________
Jmol-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jmol-users

Reply via email to