private void solveAllObjects() { foreach (InteractionHand kHand in _trackingHands) { foreach (InteractionPoint kPoint in kHand.connectedPoints) { KabschMovementSolver solver; if (!_solvers.TryGetValue(kPoint.interactionObject, out solver)) { solver = new KabschMovementSolver(kPoint.interactionObject); _solvers[kPoint.interactionObject] = solver; } solver.addPoint(kPoint); if (kHand.isGrabbing) { solver.useGrabbedMethod(); } } } foreach (KabschMovementSolver solver in _solvers.Values) { solver.solve(); } }