fixed attrr region + ifdef'ed constraints along 110 + write final save and visual...
[physik/posic.git] / mdrun.c
diff --git a/mdrun.c b/mdrun.c
index f0edd0b..31e5f0a 100644 (file)
--- a/mdrun.c
+++ b/mdrun.c
@@ -420,12 +420,12 @@ int mdrun_parse_config(t_mdrun *mdrun) {
                        }
                        i=2;
                        if(cap.type&CHAATTR_REGION) {
-                               cap.x0=atof(word[1]);   
-                               cap.y0=atof(word[2]);   
-                               cap.z0=atof(word[3]);   
-                               cap.x1=atof(word[4]);   
-                               cap.y1=atof(word[5]);   
-                               cap.z1=atof(word[6]);
+                               cap.x0=atof(word[2]);   
+                               cap.y0=atof(word[3]);   
+                               cap.z0=atof(word[4]);   
+                               cap.x1=atof(word[5]);   
+                               cap.y1=atof(word[6]);   
+                               cap.z1=atof(word[7]);
                                i+=6;
                        }
                        if(cap.type&CHAATTR_ELEMENT) {
@@ -1095,22 +1095,25 @@ int chaatr(t_moldyn *moldyn,t_mdrun *mdrun) {
                                continue;
                }
                if(cap->type&CHAATTR_REGION) {
-                       if(cap->x0<atom->r.x)
+                       if(cap->x0>atom->r.x)
                                continue;
-                       if(cap->y0<atom->r.y)
+                       if(cap->y0>atom->r.y)
                                continue;
-                       if(cap->z0<atom->r.z)
+                       if(cap->z0>atom->r.z)
                                continue;
-                       if(cap->x1>atom->r.x)
+                       if(cap->x1<atom->r.x)
                                continue;
-                       if(cap->y1>atom->r.y)
+                       if(cap->y1<atom->r.y)
                                continue;
-                       if(cap->z1>atom->r.z)
+                       if(cap->z1<atom->r.z)
                                continue;
                }
+               printf("  changing attributes of atom %d (0x%x)\n",i,cap->attr);
                atom->attr=cap->attr;
        }
 
+       printf("\n\n");
+
        return 0;
 }