[Chimera-users] Showing/Hiding/Fading
Gustaf Olsson
gustaf.olsson at lnu.se
Wed Jun 13 00:35:55 PDT 2018
So, the commands suggested does work for creating a surface and hiding it though I am right back at not working even when using separate models. I cannot figure out what I am doing wrong here.
surfcat templ #1:17.het
surf probeRadius 0.5 vertexDensity 20.0 templ; coulombic -5 red 0 white 5 blue templ
~surf templ
surf templ
Running this creates a surface, colors it by charge and hides it, though now when I show the surface again it is all white. I understand that i need to re-issue the entire "surf probeRadius 0.5 vertexDensity 20.0 templ; coulombic -5 red 0 white 5 blue templ” command to show the exact same surface with desired colors again though this is not really what I was looking for. Hence, creating the surface, making it 100% transparent and then fading it in would be what I want.
This dis not possible for me since I cannot manipulate the transparency of this surface using either “transparency” or “surfacetransparency” commands. What worked with my “broke” models before does not work at all now. These commands either do nothing or only affects 17.het structure and not the created surface. How do I specify the surface and make it transparent to be able to fade it in again?
The single molecule (17.het) is now model #1 and the only structure in that model. I run the command as stated above (using surfcat or just specifying the #1 or #1:17.het all produces the exact same result and issue) and end up with two “model #1”, the structure and the surface. I cannot modify the transparency of the surface at all, none of these commands work:
transp 100,s templ
transp 100 templ
transp 100 #1
transp 100 #1:17.het
transp 100 :17.het
surftransparency 100 templ
surftransparency 100 #1
surftransparency 100 #1:17.het
surftransparency 100 :17.het
Using the GUI works just as intended so obviously I am the issue and I’m obviously not using the correct syntax, so how do I do this correctly?
Best regards
// Gustaf
> On 12 Jun 2018, at 19:31, Elaine Meng <meng at cgl.ucsf.edu> wrote:
>
> Hi Gustaf,
> Chimera uses some default rules as to what set of atoms is enclosed in the same surface, but you can specify different sets to enclose without using “split”. E.g.
>
> surfcat blob #0:17.het
> surface blob
>
> … where “blob” is just the name you gave it. Surface categories and “surfcat” command explained here:
> <http://www.rbvi.ucsf.edu/chimera/docs/UsersGuide/midas/surface.html#surfcats>
> <http://www.rbvi.ucsf.edu/chimera/docs/UsersGuide/midas/msms.html>
>
> Splitting and combining creates and removes models, which may result in atoms no longer “knowing” which surface they go with, which may be the problem. I wouldn’t use that approach simply to control the display. I’d try using “surfcat” as mentioned above, or you could simply open your structure twice and delete everything except :17.het from one copy. Then hide and show parts or all of model #0 or model #1 as needed.
>
> I don’t really understand your script. Seems like if you combine #0.1 and #0.2 and then close them, you would no longer have a model #0.1. You can see what models you have by looking in the Model Panel (open from Favorites menu). Also you can just hide/show the surface with
>
> ~surface
> surface blob
> ~surface
> surface #0:17.het
>
> … rather than trying to make it 100% transparent. “~surface” does not delete the model, it just hides the surface of the specified set of atoms.
>
> You can also hide/show the model as a whole, same as using the “S”hown checkbox in the Model Panel. It is a little trickier to hide a molecular surface but not the atomic model since they have the same model number, but the fancy command to do it is something like:
>
> ~modeldisp #0 & ~ @*
>
> (undisplay model #0 that doesn’t have any atoms)
>
> I hope this helps,
> Elaine
> -----
> Elaine C. Meng, Ph.D.
> UCSF Chimera(X) team
> Department of Pharmaceutical Chemistry
> University of California, San Francisco
>
>> On Jun 12, 2018, at 1:07 AM, Gustaf Olsson <gustaf.olsson at lnu.se> wrote:
>>
>>
>> Hello Chimera users and developers, I’m back again.
>>
>> So my movie rendering is progressing though I have of course run into more problems. I have one PDB file open, I need to create a surface around one molecule that is close to other molecules so running the surface command directly does not work as intended. I therefore have to split the PDB file and calculate a surface around a single molecule. All is well, however after this I run into some problems trying to clean up the script. I assume that I am defining the modelID incorrectly though I cannot figure out how.
>>
>> The following works:
>>
>> split #0 atoms :17.het
>> surface probeRadius 0.5 vertexDensity 20.0 :17.het
>> coulombic -5 red 0 white 5 blue :17.het
>> wait
>> combine #0.1-2 modelId 0 close true
>> surftransparency 100 #0.1
>>
>> This splits the model putting one residue (17) in a separate model, I calculate the surface without issue, color it by coulombic charges. I then have to combine the models (the single residue (17) and the rest of the residues) and close the old “residue 17” model. I then need to hide the newly created surface to display it at a later point in the movie. The script above works, however this does not seem very neat.
>>
>> I have experimented with different other commands, including transparency
>>
>> transp 100,s #0.1
>>
>> Which also works well, as long as I split and combined the models. However, I have to combine the model for this to work!
>>
>> split #0 atoms :17.het
>> surface probeRadius 0.5 vertexDensity 20.0 :17.het
>> coulombic -5 red 0 white 5 blue :17.het
>> wait
>> combine #0.1-2 modelId 0 close true
>> surftransparency 100 #0.1
>>
>> Everything but hiding the surface works.
>>
>> transp 100,s #0.1
>>
>> This does not work either in this case. I am assuming that I am not defining the model ID correctly for the surface and this is why I cannot hide it? I also tried using surfcat:
>>
>> surfcat templ :17.het
>> surf probeRadius 0.5 vertexDensity 20.0 templ
>> coulombic -5 red 0 white 5 blue templ
>> wait
>> surftransparency 100 templ
>>
>> or any of the following:
>>
>> surftransparency 100 #0
>> surftransparency 100 :17.het
>> surftransparency 100 #0:17.het
>> transp 100,s #0
>>
>> Hides the created surface, what am I doing wrong in defining the surface to hide it and show it again?
>>
>> Thank you for any input and best regards
>> // Gustaf
>
More information about the Chimera-users
mailing list