Is there a way to determine the "screen" window coordinates (x, y) of an "atom-spec"

Hello, It has been only a few weeks since I first started learning Chimera 1.14 (build 42094) on a Linux64 system with X11. I hope my experiences will help you improve both Chimera and ChimeraX. Earlier today, I reported a situation which results in an unexpected handling of a "divide by zero" bug. I am using the experience to also learn some Python. I am sure there are better ways, but I edited your playmorph.py code to record an animation with a morphing sequence played in reverse. I admit that I still do not understand the different coordinate systems used in Chimera. I have a question which can simply be answered using a ruler, but I am hoping there is another more elegant solution. "2D Labels" arrow ends are specified as a percentage of the screen width and screen height (range 0.0 to 1.0). I would like to draw an arrow whose end (x,y) is specified with precision. After I can specify the windowsize Is there a way to request the "window-screen" coordinates of a specific atom-spec? This is useful, because if I have set the windowsize then I can simply divide the coordinates by the window dimensions to get the desired end for the arrow. Many thanks, Stephen

Hi Stephen, One suggestion if you want to specify an arrow in the coordinate system of the structure is to create it as a 3D object instead of using 2D labels. In general, if using 2D labels you would position them interactively, not try to do some automatic calculation that figures out the position. For 3D objects: You can create a simple BILD-format file (plain text giving coordinates of objects), name the file something.bild, and then open it Chimera to show the objects. For example, opening the attached file XYZ-axes.bild in Chimera will show some 3D arrows. BILD format described here: <http://www.rbvi.ucsf.edu/chimera/docs/UsersGuide/bild.html> Or, since it is a separate model, you can just create the 3D object with any coordinates and then (after opening the BILD file), move the arrow manually to the position you want relative to the atomic structure. Moving models separately: <http://www.rbvi.ucsf.edu/chimera/docs/UsersGuide/mouse.html#activedef> I hope this helps, Elaine ----- Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Jul 30, 2020, at 8:58 AM, Chin-Bow, Stephen <stephen.chin-bow@yale.edu> wrote:
Hello,
It has been only a few weeks since I first started learning Chimera 1.14 (build 42094) on a Linux64 system with X11. I hope my experiences will help you improve both Chimera and ChimeraX. Earlier today, I reported a situation which results in an unexpected handling of a "divide by zero" bug.
I am using the experience to also learn some Python. I am sure there are better ways, but I edited your playmorph.py code to record an animation with a morphing sequence played in reverse.
I admit that I still do not understand the different coordinate systems used in Chimera.
I have a question which can simply be answered using a ruler, but I am hoping there is another more elegant solution.
"2D Labels" arrow ends are specified as a percentage of the screen width and screen height (range 0.0 to 1.0). I would like to draw an arrow whose end (x,y) is specified with precision.
After I can specify the windowsize
Is there a way to request the "window-screen" coordinates of a specific atom-spec? This is useful, because if I have set the windowsize then I can simply divide the coordinates by the window dimensions to get the desired end for the arrow.
Many thanks,
Stephen

Hello Elaine, Thank you for encouraging me to look at the BILD format. Unfortunately, the problem is that I want the arrows to end on (point towards) an "atom-spec", not away. I was able to get a 3D text comment to show, but I could not get the text to stay fixed in space (eg. always visible). Plus, per my first message, I do not understand the different coordinate systems and reference frames used by Chimera so my 3D text comment was far away from the BILD arrows. In summary, this what I can do using command line instructions. I understand how to set the center of rotation to a specific "atom-spec". I know how to display an "x' on the center of rotation. I know how to display, below the command line, the center of rotation coordinates "in the laboratory frame of reference". Here are the two things which I cannot do: 1) After using "cofr" (without any parameters) I tried to highlight (and copy) the center of rotation "in the laboratory frame of reference". However, when I tried using control-C I was not able to copy the three coordinates. 2) I could not find in the Chimera-users archive or in the command summary a description of how the different coordinate systems work or how they are related to the coordinates of elements in the main display window (containing the models). Is it clear why my questions are focusing on the coordinates of the current window? These coordinates are needed when I create the arrow "end" points (range 0.0 to 1.0) for "2D Labels". Thanks for your help! Stephen ________________________________ From: Elaine Meng <meng@cgl.ucsf.edu> Sent: Thursday, July 30, 2020 12:29 PM To: Chin-Bow, Stephen <stephen.chin-bow@yale.edu> Cc: chimera-users@cgl.ucsf.edu <chimera-users@cgl.ucsf.edu> Subject: Re: [Chimera-users] Is there a way to determine the "screen" window coordinates (x, y) of an "atom-spec" Hi Stephen, One suggestion if you want to specify an arrow in the coordinate system of the structure is to create it as a 3D object instead of using 2D labels. In general, if using 2D labels you would position them interactively, not try to do some automatic calculation that figures out the position. For 3D objects: You can create a simple BILD-format file (plain text giving coordinates of objects), name the file something.bild, and then open it Chimera to show the objects. For example, opening the attached file XYZ-axes.bild in Chimera will show some 3D arrows. BILD format described here: <https://nam05.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.rbvi.ucsf.edu%2Fchimera%2Fdocs%2FUsersGuide%2Fbild.html&data=02%7C01%7Cstephen.chin-bow%40yale.edu%7C16a10c4c21d046fb123908d834a5bf65%7Cdd8cbebb21394df8b4114e3e87abeb5c%7C0%7C0%7C637317233768008069&sdata=6t5lgPVRJzd9pE6%2FkxmmMBDvo3jx6gwgR8Kg3d0olD4%3D&reserved=0> Or, since it is a separate model, you can just create the 3D object with any coordinates and then (after opening the BILD file), move the arrow manually to the position you want relative to the atomic structure. Moving models separately: <https://nam05.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.rbvi.ucsf.edu%2Fchimera%2Fdocs%2FUsersGuide%2Fmouse.html%23activedef&data=02%7C01%7Cstephen.chin-bow%40yale.edu%7C16a10c4c21d046fb123908d834a5bf65%7Cdd8cbebb21394df8b4114e3e87abeb5c%7C0%7C0%7C637317233768008069&sdata=m1k7e3y5VFiqVCtEuIizdDTZrbSTzUg1LK%2Fr591plbI%3D&reserved=0> I hope this helps, Elaine ----- Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Jul 30, 2020, at 8:58 AM, Chin-Bow, Stephen <stephen.chin-bow@yale.edu> wrote:
Hello,
It has been only a few weeks since I first started learning Chimera 1.14 (build 42094) on a Linux64 system with X11. I hope my experiences will help you improve both Chimera and ChimeraX. Earlier today, I reported a situation which results in an unexpected handling of a "divide by zero" bug.
I am using the experience to also learn some Python. I am sure there are better ways, but I edited your playmorph.py code to record an animation with a morphing sequence played in reverse.
I admit that I still do not understand the different coordinate systems used in Chimera.
I have a question which can simply be answered using a ruler, but I am hoping there is another more elegant solution.
"2D Labels" arrow ends are specified as a percentage of the screen width and screen height (range 0.0 to 1.0). I would like to draw an arrow whose end (x,y) is specified with precision.
After I can specify the windowsize
Is there a way to request the "window-screen" coordinates of a specific atom-spec? This is useful, because if I have set the windowsize then I can simply divide the coordinates by the window dimensions to get the desired end for the arrow.
Many thanks,
Stephen

If you want 3D objects: In BILD format you specify both endpoints of the arrow. Put the pointy end near the atom (or, as mentioned earlier, just move it by hand after you create the object). I would not recommend using the BILD format for any text, only 3D shapes. This BILD format for 3D shapes also works in ChimeraX. For 2D labels and arrows: The 3D coordinate systems have very little to do with 2D labels, so forget about that whole line of thought if you are using 2D labels and arrows. It really doesn't make any sense to try to convert the 3D coordinates of the atomic structure into where they are projected into the 2D plane of the screen for 2D labeling purposes. Just place the 2D labels and arrows by hand. You can do this in both Chimera and ChimeraX. I hope this helps, Elaine ----- Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Jul 30, 2020, at 10:40 AM, Chin-Bow, Stephen <stephen.chin-bow@yale.edu> wrote:
Hello Elaine,
Thank you for encouraging me to look at the BILD format.
Unfortunately, the problem is that I want the arrows to end on (point towards) an "atom-spec", not away. I was able to get a 3D text comment to show, but I could not get the text to stay fixed in space (eg. always visible). Plus, per my first message, I do not understand the different coordinate systems and reference frames used by Chimera so my 3D text comment was far away from the BILD arrows.
In summary, this what I can do using command line instructions.
I understand how to set the center of rotation to a specific "atom-spec". I know how to display an "x' on the center of rotation. I know how to display, below the command line, the center of rotation coordinates "in the laboratory frame of reference".
Here are the two things which I cannot do:
1) After using "cofr" (without any parameters) I tried to highlight (and copy) the center of rotation "in the laboratory frame of reference". However, when I tried using control-C I was not able to copy the three coordinates.
2) I could not find in the Chimera-users archive or in the command summary a description of how the different coordinate systems work or how they are related to the coordinates of elements in the main display window (containing the models).
Is it clear why my questions are focusing on the coordinates of the current window? These coordinates are needed when I create the arrow "end" points (range 0.0 to 1.0) for "2D Labels".
Thanks for your help!
Stephen
From: Elaine Meng <meng@cgl.ucsf.edu> Sent: Thursday, July 30, 2020 12:29 PM To: Chin-Bow, Stephen <stephen.chin-bow@yale.edu> Cc: chimera-users@cgl.ucsf.edu <chimera-users@cgl.ucsf.edu> Subject: Re: [Chimera-users] Is there a way to determine the "screen" window coordinates (x, y) of an "atom-spec"
Hi Stephen, One suggestion if you want to specify an arrow in the coordinate system of the structure is to create it as a 3D object instead of using 2D labels. In general, if using 2D labels you would position them interactively, not try to do some automatic calculation that figures out the position.
For 3D objects: You can create a simple BILD-format file (plain text giving coordinates of objects), name the file something.bild, and then open it Chimera to show the objects. For example, opening the attached file XYZ-axes.bild in Chimera will show some 3D arrows.
Or, since it is a separate model, you can just create the 3D object with any coordinates and then (after opening the BILD file), move the arrow manually to the position you want relative to the atomic structure. Moving models separately: <https://nam05.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.rbvi.ucsf.edu%2Fchimera%2Fdocs%2FUsersGuide%2Fmouse.html%23activedef&data=02%7C01%7Cstephen.chin-bow%40yale.edu%7C16a10c4c21d046fb123908d834a5bf65%7Cdd8cbebb21394df8b4114e3e87abeb5c%7C0%7C0%7C637317233768008069&sdata=m1k7e3y5VFiqVCtEuIizdDTZrbSTzUg1LK%2Fr591plbI%3D&reserved=0>
I hope this helps, Elaine ----- Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Jul 30, 2020, at 8:58 AM, Chin-Bow, Stephen <stephen.chin-bow@yale.edu> wrote:
Hello,
It has been only a few weeks since I first started learning Chimera 1.14 (build 42094) on a Linux64 system with X11. I hope my experiences will help you improve both Chimera and ChimeraX. Earlier today, I reported a situation which results in an unexpected handling of a "divide by zero" bug.
I am using the experience to also learn some Python. I am sure there are better ways, but I edited your playmorph.py code to record an animation with a morphing sequence played in reverse.
I admit that I still do not understand the different coordinate systems used in Chimera.
I have a question which can simply be answered using a ruler, but I am hoping there is another more elegant solution.
"2D Labels" arrow ends are specified as a percentage of the screen width and screen height (range 0.0 to 1.0). I would like to draw an arrow whose end (x,y) is specified with precision.
After I can specify the windowsize
Is there a way to request the "window-screen" coordinates of a specific atom-spec? This is useful, because if I have set the windowsize then I can simply divide the coordinates by the window dimensions to get the desired end for the arrow.
Many thanks,
Stephen
_______________________________________________ Chimera-users mailing list: Chimera-users@cgl.ucsf.edu Manage subscription: https://plato.cgl.ucsf.edu/mailman/listinfo/chimera-users

Hi Stephen, There is nothing in Chimera that lists window pixel positions of an atom. It could probably be done with some Python code. But I don't grasp why you are trying to do this in such a hard way. If Chimera gave window positions in pixels and you divided by the window width and height in pixels and then typed a command for an arrow, that whole process would take at least 10 times longer than dragging the arrow with the mouse. Also the drag with mouse would produce a better result because it will be clearer if the tip is a small distance from the atom. Also to make the arrow not cross over other important atoms requires mouse placement of both the label and the arrow. You must have some reason why you want to do this in a very hard way but I cannot guess it. Tom
On Jul 30, 2020, at 10:40 AM, Chin-Bow, Stephen <stephen.chin-bow@yale.edu> wrote:
Hello Elaine,
Thank you for encouraging me to look at the BILD format.
Unfortunately, the problem is that I want the arrows to end on (point towards) an "atom-spec", not away. I was able to get a 3D text comment to show, but I could not get the text to stay fixed in space (eg. always visible). Plus, per my first message, I do not understand the different coordinate systems and reference frames used by Chimera so my 3D text comment was far away from the BILD arrows.
In summary, this what I can do using command line instructions.
I understand how to set the center of rotation to a specific "atom-spec". I know how to display an "x' on the center of rotation. I know how to display, below the command line, the center of rotation coordinates "in the laboratory frame of reference".
Here are the two things which I cannot do:
1) After using "cofr" (without any parameters) I tried to highlight (and copy) the center of rotation "in the laboratory frame of reference". However, when I tried using control-C I was not able to copy the three coordinates.
2) I could not find in the Chimera-users archive or in the command summary a description of how the different coordinate systems work or how they are related to the coordinates of elements in the main display window (containing the models).
Is it clear why my questions are focusing on the coordinates of the current window? These coordinates are needed when I create the arrow "end" points (range 0.0 to 1.0) for "2D Labels".
Thanks for your help!
Stephen
From: Elaine Meng <meng@cgl.ucsf.edu <mailto:meng@cgl.ucsf.edu>> Sent: Thursday, July 30, 2020 12:29 PM To: Chin-Bow, Stephen <stephen.chin-bow@yale.edu <mailto:stephen.chin-bow@yale.edu>> Cc: chimera-users@cgl.ucsf.edu <mailto:chimera-users@cgl.ucsf.edu> <chimera-users@cgl.ucsf.edu <mailto:chimera-users@cgl.ucsf.edu>> Subject: Re: [Chimera-users] Is there a way to determine the "screen" window coordinates (x, y) of an "atom-spec"
Hi Stephen, One suggestion if you want to specify an arrow in the coordinate system of the structure is to create it as a 3D object instead of using 2D labels. In general, if using 2D labels you would position them interactively, not try to do some automatic calculation that figures out the position.
For 3D objects: You can create a simple BILD-format file (plain text giving coordinates of objects), name the file something.bild, and then open it Chimera to show the objects. For example, opening the attached file XYZ-axes.bild in Chimera will show some 3D arrows.
BILD format described here: <https://nam05.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.rbvi.ucsf.edu%2Fchimera%2Fdocs%2FUsersGuide%2Fbild.html&data=02%7C01%7Cstephen.chin-bow%40yale.edu%7C16a10c4c21d046fb123908d834a5bf65%7Cdd8cbebb21394df8b4114e3e87abeb5c%7C0%7C0%7C637317233768008069&sdata=6t5lgPVRJzd9pE6%2FkxmmMBDvo3jx6gwgR8Kg3d0olD4%3D&reserved=0 <https://nam05.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.rbvi.ucsf.edu%2Fchimera%2Fdocs%2FUsersGuide%2Fbild.html&data=02%7C01%7Cstephen.chin-bow%40yale.edu%7C16a10c4c21d046fb123908d834a5bf65%7Cdd8cbebb21394df8b4114e3e87abeb5c%7C0%7C0%7C637317233768008069&sdata=6t5lgPVRJzd9pE6%2FkxmmMBDvo3jx6gwgR8Kg3d0olD4%3D&reserved=0>>
Or, since it is a separate model, you can just create the 3D object with any coordinates and then (after opening the BILD file), move the arrow manually to the position you want relative to the atomic structure. Moving models separately: <https://nam05.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.rbvi.ucsf.edu%2Fchimera%2Fdocs%2FUsersGuide%2Fmouse.html%23activedef&data=02%7C01%7Cstephen.chin-bow%40yale.edu%7C16a10c4c21d046fb123908d834a5bf65%7Cdd8cbebb21394df8b4114e3e87abeb5c%7C0%7C0%7C637317233768008069&sdata=m1k7e3y5VFiqVCtEuIizdDTZrbSTzUg1LK%2Fr591plbI%3D&reserved=0 <https://nam05.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.rbvi.ucsf.edu%2Fchimera%2Fdocs%2FUsersGuide%2Fmouse.html%23activedef&data=02%7C01%7Cstephen.chin-bow%40yale.edu%7C16a10c4c21d046fb123908d834a5bf65%7Cdd8cbebb21394df8b4114e3e87abeb5c%7C0%7C0%7C637317233768008069&sdata=m1k7e3y5VFiqVCtEuIizdDTZrbSTzUg1LK%2Fr591plbI%3D&reserved=0>>
I hope this helps, Elaine ----- Elaine C. Meng, Ph.D. UCSF Chimera(X) team Department of Pharmaceutical Chemistry University of California, San Francisco
On Jul 30, 2020, at 8:58 AM, Chin-Bow, Stephen <stephen.chin-bow@yale.edu <mailto:stephen.chin-bow@yale.edu>> wrote:
Hello,
It has been only a few weeks since I first started learning Chimera 1.14 (build 42094) on a Linux64 system with X11. I hope my experiences will help you improve both Chimera and ChimeraX. Earlier today, I reported a situation which results in an unexpected handling of a "divide by zero" bug.
I am using the experience to also learn some Python. I am sure there are better ways, but I edited your playmorph.py code to record an animation with a morphing sequence played in reverse.
I admit that I still do not understand the different coordinate systems used in Chimera.
I have a question which can simply be answered using a ruler, but I am hoping there is another more elegant solution.
"2D Labels" arrow ends are specified as a percentage of the screen width and screen height (range 0.0 to 1.0). I would like to draw an arrow whose end (x,y) is specified with precision.
After I can specify the windowsize
Is there a way to request the "window-screen" coordinates of a specific atom-spec? This is useful, because if I have set the windowsize then I can simply divide the coordinates by the window dimensions to get the desired end for the arrow.
Many thanks,
Stephen
_______________________________________________ Chimera-users mailing list: Chimera-users@cgl.ucsf.edu <mailto:Chimera-users@cgl.ucsf.edu> Manage subscription: https://plato.cgl.ucsf.edu/mailman/listinfo/chimera-users <https://plato.cgl.ucsf.edu/mailman/listinfo/chimera-users>
participants (3)
-
Chin-Bow, Stephen
-
Elaine Meng
-
Tom Goddard