; USED TO ROTATE A VOLUME (MOTIF) AND INSERTS AT THE DETERMINED POSITION ; IN A BLANK VOLUME (SAME SIZE AS THE LARGE VOLUME) ; ; BIMAL RATH, OCT'02 ; ............EDIT THE FOLLOWING INPUT FILE NAMES AND PARAMETER............. ; FR L ?MOTIF FILE NAME?<1> motif FR L ?FITTED REFERENCE FILE NAME?<2> motif_fitted FR L ?LARGE VOLUME WHICH HAS BEEN SEARCHED?<3> large_vol FR L ?DOC. FILE WITH EULERIAN ANGLES AND CO-ORDINATES?<4> doc_unique ; # OF FITTED VOLUMES DESIRED X47 = 10 ;--------END OF INPUT DATA. NO NEED TO CHANGE ANYTHING BELOW THIS LINE --------- FI x70,x71,x72 <1> 12,2,1 ; FIND THE DIAGONAL OF THE SMALL VOLUME x57 = INT(SQR ((X70 * X70) + (X71 * X71) + (X72 * X72))) ; X padded size x58=x57 ; Y padded size x59=x57 ; Z padded size x61=INT((x57-x70)/2)+1 ; X corner x62=INT((x58-x71)/2)+1 ; Y corner x63=INT((x59-x72)/2)+1 ; Z corner PD ; Pad small volume into cube for rotation <1> ; motif _50 ; padded motif (x57,x58,x59) ; New size N ; Not average background 0.0 ; Background (x61,x62,x63) ; Location for small ref volume inside pad ; FIND NSAM, NROW AND NSLICE OF THE PADDED MOTIF, x70, x71 AND x72 ARE OVERWRITTEN FI x70,x71,x72 _50 12,2,1 ; FIND NSAM, NROW AND NSLICE OF THE LARGE VOLUME FI x40,x41,x42 <3> 12,2,1 x51 = INT(x70/2)+ 1 x52 = INT(x71/2)+ 1 x53 = INT(x72/2)+ 1 DOC REN <4> JUNK_DOC_DEL001 DO LB1 X49 = 1,X47 UD IC, X49,X20,X21,X22,X30,X31,X32,X86 JUNK_DOC_DEL001 ;X20 = PHI ;X21 = THETA ;X22 = PSI ;X30 = X POSITION ;X31 = Y POSITION ;X32 = Z POSITION X30 = X30 - X51 + 1 X31 = X31 - X52 + 1 X32 = X32 - X53 + 1 MO 3 <2>{***X49} X40,X41,X42 B 0 RT 3D _50 _1 X20,X21,X22 IN _1 <2>{***X49} X30,X31,X32 LB1 DE JUNK_DOC_DEL001 EN