From 6c25dd29412c11237a5d892007ee8eb027fc7dac Mon Sep 17 00:00:00 2001 From: Alexander Rose <alex.rose@rcsb.org> Date: Mon, 6 May 2019 19:00:57 -0700 Subject: [PATCH] wip, hook up structure-query.filters --- src/mol-script/runtime/query/table.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/mol-script/runtime/query/table.ts b/src/mol-script/runtime/query/table.ts index 4ddbdb8b1..ca269c8b6 100644 --- a/src/mol-script/runtime/query/table.ts +++ b/src/mol-script/runtime/query/table.ts @@ -187,7 +187,25 @@ const symbols = [ // C(MolScript.structureQuery.slot.elementSetReduce, (ctx, _) => ctx.element), // ============= FILTERS ================ + D(MolScript.structureQuery.filter.pick, (ctx, xs) => Queries.filters.pick(xs[0] as any, xs['test'])(ctx)), D(MolScript.structureQuery.filter.first, (ctx, xs) => Queries.filters.first(xs[0] as any)(ctx)), + D(MolScript.structureQuery.filter.withSameAtomProperties, (ctx, xs) => Queries.filters.withSameAtomProperties(xs[0] as any, xs['source'] as any, xs['property'] as any)(ctx)), + D(MolScript.structureQuery.filter.intersectedBy, (ctx, xs) => Queries.filters.areIntersectedBy(xs[0] as any, xs['by'] as any)(ctx)), + D(MolScript.structureQuery.filter.within, (ctx, xs) => Queries.filters.within({ + query: xs[0] as any, + target: xs['target'] as any, + minRadius: xs['min-radius'] as any, + maxRadius: xs['max-radius'] as any, + elementRadius: xs['atom-radius'] as any, + invert: xs['invert'] as any + })(ctx)), + D(MolScript.structureQuery.filter.isConnectedTo, (ctx, xs) => Queries.filters.isConnectedTo({ + query: xs[0] as any, + target: xs['target'] as any, + disjunct: xs['disjunct'] as any, + invert: xs['invert'] as any, + bondTest: xs['bond-test'] + })(ctx)), // ============= GENERATORS ================ D(MolScript.structureQuery.generator.atomGroups, (ctx, xs) => Queries.generators.atoms({ -- GitLab