Метод представления / рисования по умолчанию в VMD
В VMD я хочу загрузить каждый новый файл методом рисования CPK. Похоже, что это не вариант в файле.vmdrc по некоторым техническим причинам.
Как я могу сделать это из командной строки VMD (чтобы я мог сделать сценарий)? Или есть какое-то другое решение / обходной путь / хак, чтобы сделать эту работу?
2 ответа
Есть несколько способов достичь того, что вы хотите:
(1) поместите следующую строку в правильное местоположение вашего.vmdrc
mol default style CPK
(2) с помощью панели настроек VMD (последний пункт в меню "Расширения" главного окна) сгенерируйте файл.vmdrc, который соответствует вашим ожиданиям. Настройка, которую вы ищете, находится на вкладке Представления.
(3) для более расширенных настроек (то есть настроек по умолчанию, применяемых к молекулам, уже загруженным, когда vmd прочитал файл запуска.vmdrc), вы можете использовать следующее (работает для меня на VMD 1.9.2):
proc reset_viz {molid} {
# operate only on existing molecules
if {[lsearch [molinfo list] $molid] >= 0} {
# delete all representations
set numrep [molinfo $molid get numreps]
for {set i 0} {$i < $numrep} {incr i} {
mol delrep $i $molid
}
# add new representations
mol representation CPK
# add other representation stuff you want here
mol addrep $molid
}
}
proc reset_viz_proxy {args} {
foreach {fname molid rw} $args {}
eval "after idle {reset_viz $molid}"
}
## put a trace on vmd_initialize_structure
trace variable vmd_initialize_structure w reset_viz_proxy
after idle {
if { 1 } {
foreach molid [molinfo list] {
reset_viz $molid
}
}
}
Этот кусок кода адаптирован с сайта Axel Kohlmeyer.
НТН,
Я нашел удобное решение. В .bashrc
добавлять:
vmda () {
echo -e "
mol default style CPK
user add key Control-w quit
" > /tmp/vmdstartup
echo "mol new $1" > /tmp/vmdcommand
vmd -e /tmp/vmdcommand -startup /tmp/vmdstartup
}
Посмотрите на структуру с
vmda file.pdb
и закройте окно (выйдите из приложения) с помощью Ctrl+w
, как и другие окна.