diff --git a/src/Editor/SelectControls.ts b/src/Editor/SelectControls.ts index f615fb993..7bd493250 100644 --- a/src/Editor/SelectControls.ts +++ b/src/Editor/SelectControls.ts @@ -138,9 +138,10 @@ export class SelectControls app.m_Editor.m_CommandStore.isCmdIng = true; - let en = app.m_Viewer.m_PreViewer.m_LastEntity.userData as Entity; + let obj = app.m_Viewer.m_PreViewer.m_LastEntity; + let en = obj.userData as Entity; - app.m_Editor.AddNoSnapEntity(app.m_Viewer.m_PreViewer.m_LastEntity); + app.m_Editor.AddNoSnapEntity(obj); let lastP = app.m_Viewer.m_PreViewer.m_LastSnapPoint.clone(); app.m_Viewer.ScreenToWorld(lastP); @@ -156,9 +157,9 @@ export class SelectControls } }) - app.m_Editor.RemoveNoSnapEntity(app.m_Viewer.m_PreViewer.m_LastEntity); + app.m_Editor.RemoveNoSnapEntity(obj); - app.m_Viewer.m_GripScene.Update(app.m_Viewer.m_PreViewer.m_LastEntity); + app.m_Viewer.m_GripScene.Update(obj); app.m_Editor.m_CommandStore.isCmdIng = false; @@ -168,17 +169,17 @@ export class SelectControls { if (e.button === MouseKey.Left) { - if (app.m_Viewer.m_GripScene.children.length > 0 && app.m_Viewer.m_PreViewer.m_LastSnapPoint && app.m_Editor.m_InputState == 0 && !this.m_SelectIng) + if (this.m_Editor.m_InputState <= 1) { - this.GridDrag(); - return; - } + if (app.m_Viewer.m_GripScene.children.length > 0 && app.m_Viewer.m_PreViewer.m_LastSnapPoint && app.m_Editor.m_InputState == 0 && !this.m_SelectIng) + { + this.GridDrag(); + return; + } - let pt = this.m_Editor.m_MouseCtrl.m_CurMousePointVCS; - let isRemove = app.m_Editor.m_KeyCtrl.KeyIsDown(KeyBoard.Shift); + let pt = this.m_Editor.m_MouseCtrl.m_CurMousePointVCS; + let isRemove = app.m_Editor.m_KeyCtrl.KeyIsDown(KeyBoard.Shift); - if (this.m_Editor.m_InputState <= 1) - { //如果还没选择 那么 if (!this.m_SelectIng) {