atomes 1.1.15
atomes: an atomic scale modeling tool box
|
Functions to move atom(s) and group of atom(s)
Functions to move randomly atom(s) and group of atom(s)
Functions to create the motion widgets of the model edition window.
More...
#include "atom_edit.h"
Go to the source code of this file.
Functions | |
double ** | save_coordinates (project *this_proj, int status) |
save atomic coordinates | |
void | reset_coordinates (project *this_proj, int status) |
reset transformation and restore saved atomic coordinates | |
vec3_t | get_bary (project *this_proj, int status) |
get barycenter of atomic coordinates | |
void | init_coordinates (project *this_proj, int status, gboolean win, gboolean init) |
preserve atomic coordinates | |
void | translate (project *this_proj, int status, int axis, vec3_t trans) |
translate | |
void | rotate_quat (project *this_proj, vec4_t q, int status, int axis) |
rotate using quaternion | |
void | rotate (project *this_proj, int status, int axis, int raxis, float param) |
rotate | |
void | random_move_this_atom (project *this_proj, int aid) |
random move atom | |
void | random_rotate_this_object (project *this_proj, atomic_object *object, double ratio, double msd) |
random rotate an object | |
void | random_translate_this_object (project *this_proj, atomic_object *object, double ratio, double msd) |
random translate an object | |
void | random_move_this_object (project *this_proj, atomic_object *object, int move, double msd) |
random move object | |
void | trigger_refresh (project *this_proj, atom_search *asearch) |
refresh search tree model | |
gboolean | rebuild_selection (project *this_proj, atom_search *asearch, int filter) |
rebuild selection (split fragments linked thru PBC) | |
gboolean | random_move_objects (project *this_proj, atom_search *asearch, int numo, int filter, int obj) |
random move object(s) | |
void | random_move (project *this_proj, atom_search *asearch) |
random move | |
void | translate_this_atom (project *this_proj, int aid, int axis, vec3_t trans) |
translate atom | |
void | translate_this_object (project *this_proj, atomic_object *object, int axis, vec3_t trans) |
translate object | |
void | rotate_this_object (project *this_proj, atomic_object *object, int axis, int rax, float ang) |
rotate object | |
gboolean | move_objects (project *this_proj, atom_search *asearch, int action, int axis, vec3_t trans, float ang) |
move objects, return reconstruction status | |
atom_search * | duplicate_atom_search (atom_search *asearch) |
duplicate atom search data structure | |
void | move_selection (project *this_proj, int action, int axis, vec3_t trans, float ang) |
move atom selection | |
void | update_coordinates (project *this_proj, int status, int axis, int action) |
update atomic coordinates on motion | |
G_MODULE_EXPORT void | repeat_move (GtkSpinButton *res, gpointer data) |
repeat motion callback | |
void | update_range_and_entry (project *this_proj, int i, int j, int k) |
update motion range | |
float | get_limit (int mot, glwin *view) |
get motion limit | |
void | range_has_changed (gpointer data, double v) |
motion | |
G_MODULE_EXPORT void | set_move (GtkEntry *res, gpointer data) |
motion callback - entry | |
G_MODULE_EXPORT void | range_move (GtkRange *range, gpointer data) |
motion callback - range | |
G_MODULE_EXPORT gboolean | scroll_range_move (GtkRange *range, GtkScrollType scroll, gdouble value, gpointer data) |
motion callback - scroll | |
G_MODULE_EXPORT void | set_axis_for_motion (GtkComboBox *box, gpointer data) |
set motion axis (eye or model) | |
G_MODULE_EXPORT void | set_show_motion_axis (GtkToggleButton *but, gpointer data) |
set show / hide motion axis toggle callback GTK3 | |
void | check_motion_interactors (project *this_proj, atom_search *asearch) |
add motion check button | |
GtkWidget * | create_axis_entries (atom_search *asearch, project *this_proj, int mot, int axd) |
create axis entries | |
GtkWidget * | add_motion_interaction (atom_search *asearch, int axd, project *this_proj) |
add motion interaction widgets | |
Variables | |
gboolean * | was_moved_atom |
Functions to move atom(s) and group of atom(s)
Functions to move randomly atom(s) and group of atom(s)
Functions to create the motion widgets of the model edition window.
Definition in file atom_move.c.
GtkWidget * add_motion_interaction | ( | atom_search * | asearch, |
int | axd, | ||
project * | this_proj ) |
add motion interaction widgets
asearch | the target atom search |
axd | translation (0) or rotation (1) |
this_proj | the target project |
Definition at line 1230 of file atom_move.c.
void check_motion_interactors | ( | project * | this_proj, |
atom_search * | asearch ) |
add motion check button
this_proj | the target project |
asearch | the target atom search |
Definition at line 1160 of file atom_move.c.
GtkWidget * create_axis_entries | ( | atom_search * | asearch, |
project * | this_proj, | ||
int | mot, | ||
int | axd ) |
create axis entries
asearch | the target atom search |
this_proj | the target project |
mot | translation (0) or rotation (1) |
axd | axis (0 = x, 1 = y, 2 = z) |
Definition at line 1190 of file atom_move.c.
|
extern |
duplicate atom search data structure
asearch |
Definition at line 1970 of file atom_action.c.
get barycenter of atomic coordinates
this_proj | the target project |
status | selection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s) |
Definition at line 170 of file atom_move.c.
float get_limit | ( | int | mot, |
glwin * | view ) |
get motion limit
mot | translation (0) or rotation (1) |
view | the target glwin |
Definition at line 995 of file atom_move.c.
void init_coordinates | ( | project * | this_proj, |
int | status, | ||
gboolean | win, | ||
gboolean | init ) |
preserve atomic coordinates
this_proj | the target project |
status | selection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s) |
win | is the model edition window opened ? |
init | preserve atomic coordinates |
Definition at line 197 of file atom_move.c.
gboolean move_objects | ( | project * | this_proj, |
atom_search * | asearch, | ||
int | action, | ||
int | axis, | ||
vec3_t | trans, | ||
float | ang ) |
move objects, return reconstruction status
this_proj | the target project |
asearch | the target atom search |
action | 0 = translation, 1 = rotation |
axis | 0 = model, 1 = eye |
trans | the translation vector, if any |
ang | the rotation angle, if any |
Definition at line 837 of file atom_move.c.
move atom selection
this_proj | the target project |
action | 0 = translation, 1 = rotation |
axis | 0 = model, 1 = eye |
trans | the translation vector, if any |
ang | the rotation angle, if any |
Definition at line 881 of file atom_move.c.
void random_move | ( | project * | this_proj, |
atom_search * | asearch ) |
random move
this_proj | the target project |
asearch | the target atom search |
Definition at line 657 of file atom_move.c.
gboolean random_move_objects | ( | project * | this_proj, |
atom_search * | asearch, | ||
int | numo, | ||
int | filter, | ||
int | obj ) |
random move object(s)
this_proj | the target project |
asearch | the target atom search |
numo | the number of object(s) to move |
filter | the filter (0 = species, 1 = partial coord, 2 = total coord, 3 = fragment, 4 = molecule) |
obj | the object (0 = atom(s), 1 = group of atoms) |
Definition at line 614 of file atom_move.c.
void random_move_this_atom | ( | project * | this_proj, |
int | aid ) |
random move atom
this_proj | the target project |
aid | the atom id |
Definition at line 328 of file atom_move.c.
void random_move_this_object | ( | project * | this_proj, |
atomic_object * | object, | ||
int | move, | ||
double | msd ) |
random move object
this_proj | the target project |
object | the object to move |
move | the number of times to repeat the motion |
msd | the MSD |
Definition at line 472 of file atom_move.c.
void random_rotate_this_object | ( | project * | this_proj, |
atomic_object * | object, | ||
double | ratio, | ||
double | msd ) |
random rotate an object
this_proj | the target project |
object | the object to rotate |
ratio | ratio translation / rotation |
msd | the MSD |
Definition at line 367 of file atom_move.c.
void random_translate_this_object | ( | project * | this_proj, |
atomic_object * | object, | ||
double | ratio, | ||
double | msd ) |
random translate an object
this_proj | the target project |
object | the object to translate |
ratio | ratio translation / rotation |
msd | the MSD |
Definition at line 420 of file atom_move.c.
void range_has_changed | ( | gpointer | data, |
double | v ) |
motion
data | the associated data pointer |
v | the value for motion |
Definition at line 1016 of file atom_move.c.
G_MODULE_EXPORT void range_move | ( | GtkRange * | range, |
gpointer | data ) |
motion callback - range
range | the GtkRange sending the signal |
data | the associated data pointer |
Definition at line 1061 of file atom_move.c.
gboolean rebuild_selection | ( | project * | this_proj, |
atom_search * | asearch, | ||
int | filter ) |
rebuild selection (split fragments linked thru PBC)
this_proj | the target project |
asearch | the target atom search |
filter | the filter (0 = species, 1 = partial coord, 2 = total coord, 3 = fragment, 4 = molecule) |
Definition at line 521 of file atom_move.c.
G_MODULE_EXPORT void repeat_move | ( | GtkSpinButton * | res, |
gpointer | data ) |
repeat motion callback
res | the GtkSpinButton sending the signal |
data | the associated data pointer |
Definition at line 963 of file atom_move.c.
void reset_coordinates | ( | project * | this_proj, |
int | status ) |
reset transformation and restore saved atomic coordinates
this_proj | the target project |
status | selection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s) |
Definition at line 143 of file atom_move.c.
void rotate | ( | project * | this_proj, |
int | status, | ||
int | axis, | ||
int | raxis, | ||
float | param ) |
rotate
this_proj | the target project |
status | selection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s) |
axis | 0 = model, 1 = eye |
raxis | rotation axis 0 = x, 1 = y, 2 = z |
param | rotation angle |
Definition at line 309 of file atom_move.c.
rotate using quaternion
this_proj | the target project |
q | rotation quaternion |
status | selection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s) |
axis | 0 = model, 1 = eye |
Definition at line 269 of file atom_move.c.
void rotate_this_object | ( | project * | this_proj, |
atomic_object * | object, | ||
int | axis, | ||
int | rax, | ||
float | ang ) |
rotate object
this_proj | the target project |
object | the object to rotate |
axis | 0 = model, 1 = eye |
rax | the rotation axis |
ang | the rotation angle |
Definition at line 784 of file atom_move.c.
double ** save_coordinates | ( | project * | this_proj, |
int | status ) |
save atomic coordinates
this_proj | the target project |
status | selection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s) |
Definition at line 91 of file atom_move.c.
G_MODULE_EXPORT gboolean scroll_range_move | ( | GtkRange * | range, |
GtkScrollType | scroll, | ||
gdouble | value, | ||
gpointer | data ) |
motion callback - scroll
range | the GtkRange sending the signal |
scroll | the associated scroll type |
value | the range value |
data | the associated data pointer |
Definition at line 1076 of file atom_move.c.
G_MODULE_EXPORT void set_axis_for_motion | ( | GtkComboBox * | box, |
gpointer | data ) |
set motion axis (eye or model)
box | the GtkComboBox sending the signal |
data | the associated data pointer |
Definition at line 1090 of file atom_move.c.
G_MODULE_EXPORT void set_move | ( | GtkEntry * | res, |
gpointer | data ) |
motion callback - entry
res | the GtkEntry sending the signal |
data | the associated data pointer |
Definition at line 1046 of file atom_move.c.
G_MODULE_EXPORT void set_show_motion_axis | ( | GtkToggleButton * | but, |
gpointer | data ) |
set show / hide motion axis toggle callback GTK3
but | the GtkToggleButton sending the signal |
data | the associated data pointer |
Definition at line 1124 of file atom_move.c.
translate
this_proj | the target project |
status | selection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s) |
axis | 0 = model, 1 = eye |
trans | translation vector |
Definition at line 230 of file atom_move.c.
translate atom
this_proj | the target project |
aid | atom id |
axis | 0 = model, 1 = eye |
trans | translation vector |
Definition at line 713 of file atom_move.c.
void translate_this_object | ( | project * | this_proj, |
atomic_object * | object, | ||
int | axis, | ||
vec3_t | trans ) |
translate object
this_proj | the target project |
object | the object to translate |
axis | 0 = model, 1 = eye |
trans | the translation vector |
Definition at line 742 of file atom_move.c.
void trigger_refresh | ( | project * | this_proj, |
atom_search * | asearch ) |
refresh search tree model
this_proj | the target project |
asearch | the target atom search |
Definition at line 504 of file atom_move.c.
void update_coordinates | ( | project * | this_proj, |
int | status, | ||
int | axis, | ||
int | action ) |
update atomic coordinates on motion
this_proj | the target project |
status | selection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s) |
axis | axis, 0 = model, 1 = eye |
action | 0 = translation, 1 = rotation |
Definition at line 939 of file atom_move.c.
void update_range_and_entry | ( | project * | this_proj, |
int | i, | ||
int | j, | ||
int | k ) |
update motion range
this_proj | the target project |
i | selection status, 0 = non selected atom(s), 1 = selected atom(s), 2 = all atom(s) |
j | axis, 0 = model, 1 = eye |
k | parameter to update: x, y, z or alpha, beta, gamma |
Definition at line 979 of file atom_move.c.
gboolean* was_moved_atom |
Definition at line 81 of file atom_move.c.