How do I store output from evalrasmolscript as workspace variables?

Hi
I have a script that loads a pdb molecule file into molviewer and I would like to import information obtained using the evalrasmolscript function into the MATLAB Workspace. Is this possible, and how?
For example, I want to import the (x,y,z) coordinates of an atom selected in molviewer:
% Load pdb from online database (takes a few seconds)
h = molviewer('4INS');
% Set selection mode in viewer to single atoms:
evalrasmolscript(h,'select none; set picking SELECT ATOM; selectionHalos ON')
% Wait while a selection is made
pause
% Print x, y, and z coordinates of selected atom:
evalrasmolscript(h,'print {selected}.atomX; print {selected}.atomY; print {selected}.atomZ')
This prints the desired information of the selected atom (i.e. x, y and z coordinates) to the jmol script console and the MATLAB command window. However, I want to store the information directly in a workspace variable xyz = [x y z]. Is that somehow possible?
Thanks,
Søren

3 Kommentare

A dirty solution that seems to work is to save the command window text in a cell array of strings and then use cell2mat. I.e. last line in above code replaced by:
clc
evalrasmolscript(handles.mv,'print {selected}.xyz')
c = command_window_text(1); % File exchange function
xyz = cell2mat(eval(c{1}));
(I tried using evalc instead of command_window_text, but for some reason the information sent by jmol to the command window is not read by neither evalc nor diary)
In the end I would like a standalone executable of the program in which case I cannot use the 'save command window text'-strategy.
So any other suggestions are still very welcome.
Søren
Dean Strotz
Dean Strotz am 22 Dez. 2012
Bearbeitet: Dean Strotz am 22 Dez. 2012
Søren,
Did you find a proper solution by now?
Maybe there is a way to get the required variables directly ? I have been trying to find out if I could retrieve and assign to a variable through appdata or findobj etc. No success so far.
Dean

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu Data Import and Export finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 6 Sep. 2012

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by