protected override void OnHandleDragging(BaseHandle handle, HandleEventData eventData)
        {
            base.OnHandleDragging(handle, eventData);

            var rayOrigin = eventData.rayOrigin;

            if (handle.IndexOfDragSource(rayOrigin) > 0)
            {
                return;
            }

            if (handle is RadialHandle)
            {
                rotate(eventData.deltaRotation, rayOrigin);
            }
            else
            {
                AxisFlags constraints       = 0;
                var       constrainedHandle = handle as IAxisConstraints;
                if (constrainedHandle != null)
                {
                    constraints = constrainedHandle.constraints;
                }

                translate(eventData.deltaPosition, rayOrigin, constraints);
            }
        }
Exemplo n.º 2
0
        protected virtual void OnHandleDragStarted(BaseHandle handle, HandleEventData eventData)
        {
            var rayOrigin = eventData.rayOrigin;

            if (handle.IndexOfDragSource(rayOrigin) > 0)
            {
                return;
            }

            foreach (var h in m_AllHandles)
            {
                h.gameObject.SetActive(h == handle);
            }

            foreach (var kvp in m_HandleTips)
            {
                kvp.Value.renderer.gameObject.SetActive(false);
            }

            if (dragStarted != null)
            {
                dragStarted();
            }

            dragging = true;

            ShowHoverState(handle, false);
            UpdateHandleTip(handle, eventData, true);
        }
Exemplo n.º 3
0
        protected virtual void OnHandleDragging(BaseHandle handle, HandleEventData eventData)
        {
            if (handle.IndexOfDragSource(eventData.rayOrigin) != 0)
            {
                return;
            }

            UpdateHandleTip(handle, eventData, true);
        }
        protected override void OnHandleDragEnded(BaseHandle handle, HandleEventData eventData)
        {
            base.OnHandleDragEnded(handle, eventData);

            if (handle.IndexOfDragSource(eventData.rayOrigin) > 0)
            {
                return;
            }

            if (handle is SphereHandle)
            {
                handle.transform.localScale /= m_SphereHandleHideScale;
            }
        }