On 10/01/14 02:30, Seth Harris wrote:
> Hi all & Paul,
>
> Sometime back I found or was taught or given this:
>
> (add-key-binding "Add Water" "w" (lambda ()
> (place-typed-atom-at-pointer "Water")))
>
> (Probably from "Pauls-key-bindings-for-coot"...)
>
> I was looking for a quick way while browsing map peaks to add waters
> that the 'find waters' algorithms had overlooked for one reason or
> another.
>
> It fell into disuse, however, as I'd end up with all these waters in
> the "Pointer Atoms" object, and it would be a chore to reunite them
> with the primary pdb in question, accounting for numbering differences
> of already existing waters.
>
> I'd much rather replicate what the "Place atom at pointer..." + icon
> dialogue does, where you tell it which molecule you want to add to and
> it takes care of the numbering appropriately.
>
> So, is it simple to do this on key binding where function would be
> "put water at pointer but add it to mol 0 with appropriate incremental
> residue numbering"?
I see.
I guess (without testing) that adding the following should do what you want:
(set-pointer-atom-molecule 0)
>
> (I tend to fire coot up from scripts, so can guarantee that mol number
> 0 is the one I want to use...)
Coot is designed so that you can capture the molecule number and work
with it:
(let ((imol (read-pdb "refine.pdb"))
(set-pointer-atom-molecule imol)
(set-rotation-centre 1 2 3)
(placed-typed-atom-at-pointer "Water"))
>
> Thanks for any tips/guidance (or flat out working answer!) or
> suggestions I go read the scheme scripting manual...
Let's not be hasty.... :)
Paul.
|