Explorar el Código

Updated atom-set.ts and filter.ts, which leads to correct behavior of inorganic in PyMOL. The bound_to operator was found to behave differently from original PyMOL even in MolQL implementation: it's just mistake in logic.

yakomaxa hace 2 años
padre
commit
b232a2c58f

+ 7 - 5
src/mol-model/structure/query/queries/atom-set.ts

@@ -19,10 +19,11 @@ import { FastSet } from '../../../utils/collections'
 import { getAtomSetProperties } from './filters'
 */
 
-import { StructureQuery } from '../query';
+import { StructureQuery} from '../query';
 import { StructureSelection } from '../selection';
-import { getCurrentStructureProperties, UnitTypeProperties } from './filters';
-import { QueryContext } from '../context';
+//import { getCurrentStructurePropertiesInternal, UnitTypeProperties } from './filters';
+import { getCurrentStructurePropertiesInternal} from './filters';
+import { QueryContext, QueryFn } from '../context';
 // import { none } from './generators';
 // import { HashSet } from '../../../../mol-data/generic';
 // import { Structure } from '../../structure';
@@ -130,10 +131,11 @@ export function countQuery(ctx: QueryContext, query: StructureQuery) {
 }
 
 
-export function propertySet(ctx: QueryContext, prop: UnitTypeProperties) {
+//export function propertySet(ctx: QueryContext, prop: UnitTypeProperties) {
+export function propertySet(ctx: QueryContext, prop: QueryFn<any>) {
     return (ctx: QueryContext) => {
         const set = new Set();
-        const x = getCurrentStructureProperties(ctx, prop, set);
+        const x = getCurrentStructurePropertiesInternal(ctx, prop, set);
         //	console.log(x)
         return x;
     };

+ 1 - 1
src/mol-model/structure/query/queries/filters.ts

@@ -77,7 +77,7 @@ export function getCurrentStructureProperties(ctx: QueryContext, props: UnitType
     return set;
 }
 
-function getCurrentStructurePropertiesInternal(ctx: QueryContext, props: QueryFn<any>, set: Set<any>) {
+export function getCurrentStructurePropertiesInternal(ctx: QueryContext, props: QueryFn<any>, set: Set<any>) {
     const { units } = ctx.currentStructure;
     const l = ctx.pushCurrentElement();