diff --git a/src/mol-model/structure/structure/properties.ts b/src/mol-model/structure/structure/properties.ts index 5a7b9e4d8971e9e1c30781c35d6a72ab87f96667..d13f5ddd88a4de7f85ee503e589925e244e0d621 100644 --- a/src/mol-model/structure/structure/properties.ts +++ b/src/mol-model/structure/structure/properties.ts @@ -89,7 +89,16 @@ const coarse = { gaussian_covariance_matrix: Element.property(l => !Unit.isGaussians(l.unit) ? notCoarse('gaussians') : l.unit.coarseConformation.covariance_matrix[l.element]) } -function eK(l: Element.Location) { return !Unit.isAtomic(l.unit) ? notAtomic() : l.unit.model.atomicHierarchy.entityKey[l.unit.chainIndex[l.element]]; } +function eK(l: Element.Location) { + switch (l.unit.kind) { + case Unit.Kind.Atomic: + return l.unit.model.atomicHierarchy.entityKey[l.unit.chainIndex[l.element]] + case Unit.Kind.Spheres: + return l.unit.model.coarseHierarchy.spheres.entityKey[l.element] + case Unit.Kind.Gaussians: + return l.unit.model.coarseHierarchy.gaussians.entityKey[l.element] + } +} const entity = { key: eK,