Browse Source

added more StructureSelectionQueries

Alexander Rose 5 years ago
parent
commit
5138595f36
1 changed files with 18 additions and 1 deletions
  1. 18 1
      src/mol-plugin/util/structure-selection-helper.ts

+ 18 - 1
src/mol-plugin/util/structure-selection-helper.ts

@@ -141,7 +141,7 @@ const ligand = MS.struct.modifier.union([
     ]),
 ])
 
-// don't innclude branched entities as they have their own link representation
+// don't include branched entities as they have their own link representation
 const ligandPlusConnected = MS.struct.modifier.union([
     MS.struct.modifier.exceptBy({
         0: MS.struct.modifier.union([
@@ -155,6 +155,21 @@ const ligandPlusConnected = MS.struct.modifier.union([
     })
 ])
 
+const ligandConnectedOnly = MS.struct.modifier.union([
+    MS.struct.modifier.exceptBy({
+        0: ligandPlusConnected,
+        by: ligand
+    })
+])
+
+// residues connected to ligands or branched entities
+const connectedOnly = MS.struct.modifier.union([
+    MS.struct.combinator.merge([
+        branchedConnectedOnly,
+        ligandConnectedOnly
+    ]),
+])
+
 const modified = MS.struct.modifier.union([
     MS.struct.generator.atomGroups({
         'chain-test': MS.core.rel.eq([MS.ammp('objectPrimitive'), 'atomistic']),
@@ -183,6 +198,8 @@ export const StructureSelectionQueries = {
     branchedConnectedOnly,
     ligand,
     ligandPlusConnected,
+    ligandConnectedOnly,
+    connectedOnly,
     modified,
     coarse,
 }