import jalview.structure.AtomSpecModel;
import jalview.structure.StructureCommand;
import jalview.structure.StructureCommandI;
import jalview.structure.AtomSpecModel;
import jalview.structure.StructureCommand;
import jalview.structure.StructureCommandI;
model.addRange("1", 2, 4, "A");
model.addRange("1", 2, 4, "A");
model.addRange("1", 8, 8, "A");
model.addRange("1", 8, 8, "A");
model.addRange("1", 5, 7, "B");
model.addRange("1", 5, 7, "B");
model.addRange("1", 3, 5, "A");
model.addRange("1", 3, 5, "A");
model.addRange("0", 1, 4, "B");
model.addRange("0", 1, 4, "B");
"0//B/1-4/ 1//A/2-5+8/ 1//B/5-7/");
model.addRange("0", 5, 9, "C");
"0//B/1-4/ 1//A/2-5+8/ 1//B/5-7/");
model.addRange("0", 5, 9, "C");
"0//B/1-4/ 0//C/5-9/ 1//A/2-5+8/ 1//B/5-7/");
model.addRange("1", 8, 10, "B");
"0//B/1-4/ 0//C/5-9/ 1//A/2-5+8/ 1//B/5-7/");
model.addRange("1", 8, 10, "B");
"0//B/1-4/ 0//C/5-9/ 1//A/2-5+8/ 1//B/5-10/");
model.addRange("1", 8, 9, "B");
"0//B/1-4/ 0//C/5-9/ 1//A/2-5+8/ 1//B/5-10/");
model.addRange("1", 8, 9, "B");
"0//B/1-4/ 0//C/5-9/ 1//A/2-5+8/ 1//B/5-10/");
model.addRange("0", 3, 10, "C"); // subsumes 5-9
"0//B/1-4/ 0//C/5-9/ 1//A/2-5+8/ 1//B/5-10/");
model.addRange("0", 3, 10, "C"); // subsumes 5-9
"0//B/1-4/ 0//C/3-10/ 1//A/2-5+8/ 1//B/5-10/");
model.addRange("5", 25, 35, " ");
"0//B/1-4/ 0//C/3-10/ 1//A/2-5+8/ 1//B/5-10/");
model.addRange("5", 25, 35, " ");
toAlign.addRange("2", 20, 21, "B");
toAlign.addRange("2", 22, 22, "C");
List<StructureCommandI> commands = testee.superposeStructures(ref,
toAlign.addRange("2", 20, 21, "B");
toAlign.addRange("2", 22, 22, "C");
List<StructureCommandI> commands = testee.superposeStructures(ref,
- toAlign, false);
- assertEquals(commands.size(), 2);
+ toAlign, AtomSpecType.ALPHA);
+ assertEquals(commands.size(), 4);
String refSpecCA = "(1//A/12-14/CA 1//B/18+22-23/CA";
String toAlignSpecCA = "(2//B/15-17+20-21/CA 2//C/22/CA";
String refSpec = "1//A/12-14/ 1//B/18+22-23/";
String toAlignSpec = "2//B/15-17+20-21/ 2//C/22/";
String altLoc = " and (altloc '' or altloc 'a'))";
// super command: separate arguments for regions to align
String refSpecCA = "(1//A/12-14/CA 1//B/18+22-23/CA";
String toAlignSpecCA = "(2//B/15-17+20-21/CA 2//C/22/CA";
String refSpec = "1//A/12-14/ 1//B/18+22-23/";
String toAlignSpec = "2//B/15-17+20-21/ 2//C/22/";
String altLoc = " and (altloc '' or altloc 'a'))";
// super command: separate arguments for regions to align
new StructureCommand("pair_fit", toAlignSpecCA+altLoc, refSpecCA+altLoc));
// show aligned regions: one argument for combined atom specs
new StructureCommand("pair_fit", toAlignSpecCA+altLoc, refSpecCA+altLoc));
// show aligned regions: one argument for combined atom specs
- assertEquals(commands.get(1), new StructureCommand("show", "cartoon",
+ assertEquals(commands.get(3), new StructureCommand("show", "cartoon",
model.addRange("1", 2, 4, "A");
model.addRange("1", 2, 4, "A");
model.addRange("1", 8, 8, "A");
model.addRange("1", 8, 8, "A");
model.addRange("1", 5, 7, "B");
model.addRange("1", 5, 7, "B");
"1//A/2-4+8/CA 1//B/5-7/CA");
model.addRange("1", 3, 5, "A");
"1//A/2-4+8/CA 1//B/5-7/CA");
model.addRange("1", 3, 5, "A");
"1//A/2-5+8/CA 1//B/5-7/CA");
model.addRange("0", 1, 4, "B");
"1//A/2-5+8/CA 1//B/5-7/CA");
model.addRange("0", 1, 4, "B");
"0//B/1-4/CA 1//A/2-5+8/CA 1//B/5-7/CA");
model.addRange("0", 5, 9, "C");
"0//B/1-4/CA 1//A/2-5+8/CA 1//B/5-7/CA");
model.addRange("0", 5, 9, "C");
"0//B/1-4/CA 0//C/5-9/CA 1//A/2-5+8/CA 1//B/5-7/CA");
model.addRange("1", 8, 10, "B");
"0//B/1-4/CA 0//C/5-9/CA 1//A/2-5+8/CA 1//B/5-7/CA");
model.addRange("1", 8, 10, "B");
"0//B/1-4/CA 0//C/5-9/CA 1//A/2-5+8/CA 1//B/5-10/CA");
model.addRange("1", 8, 9, "B");
"0//B/1-4/CA 0//C/5-9/CA 1//A/2-5+8/CA 1//B/5-10/CA");
model.addRange("1", 8, 9, "B");
"0//B/1-4/CA 0//C/5-9/CA 1//A/2-5+8/CA 1//B/5-10/CA");
model.addRange("0", 3, 10, "C"); // subsumes 5-9
"0//B/1-4/CA 0//C/5-9/CA 1//A/2-5+8/CA 1//B/5-10/CA");
model.addRange("0", 3, 10, "C"); // subsumes 5-9
"0//B/1-4/CA 0//C/3-10/CA 1//A/2-5+8/CA 1//B/5-10/CA");
model.addRange("5", 25, 35, " ");
"0//B/1-4/CA 0//C/3-10/CA 1//A/2-5+8/CA 1//B/5-10/CA");
model.addRange("5", 25, 35, " ");