From d0b08b72e2b82707428ba136deccdd84edd6c5a1 Mon Sep 17 00:00:00 2001 From: Michael Mainguy Date: Thu, 30 May 2024 10:11:07 -0500 Subject: [PATCH] made connections not grabbable. --- src/controllers/base.ts | 6 ++++-- src/objects/diagramObject.ts | 4 ++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/controllers/base.ts b/src/controllers/base.ts index b3aee53..0e3e63b 100644 --- a/src/controllers/base.ts +++ b/src/controllers/base.ts @@ -139,8 +139,10 @@ export class Base { switch (this.grabbedMeshType) { case MeshTypeEnum.ENTITY: const diagramObject = this.diagramManager.getDiagramObject(mesh.id); - diagramObject.baseTransform.setParent(this.xrInputSource.motionController.rootMesh); - this.grabbedObject = diagramObject; + if (diagramObject.isGrabbable) { + diagramObject.baseTransform.setParent(this.xrInputSource.motionController.rootMesh); + this.grabbedObject = diagramObject; + } break; case MeshTypeEnum.HANDLE: this.grabbedMesh.setParent(this.xrInputSource.motionController.rootMesh); diff --git a/src/objects/diagramObject.ts b/src/objects/diagramObject.ts index cf50bd1..037968c 100644 --- a/src/objects/diagramObject.ts +++ b/src/objects/diagramObject.ts @@ -71,6 +71,10 @@ export class DiagramObject { return this._baseTransform; } + public get isGrabbable() { + return this._diagramEntity?.template !== '#connection-template'; + } + public get diagramEntity(): DiagramEntity { if (this._mesh) { this._diagramEntity = toDiagramEntity(this._mesh);