Ejemplo n.º 1
0
    /// <summary>
    /// 入力確認
    /// </summary>
    private void CheckInput()
    {
        if (cam == null)
        {
            return;
        }
        Vector3 mousePos = FuncBox.GetMousePosition(cam);

        //スナップ判定
        bool snaped = false;

        if (additionalLine != null)
        {
            Vector2 snapPos;
            if (additionalLine.Snap(mousePos, out snapPos))
            {
                mousePos = snapPos;
                snaped   = true;
                draw     = true;
            }
        }

        //頂点追加
        if (Input.GetMouseButtonDown(addButton))
        {
            draw |= AddVertex(mousePos);
            if (additionalLine != null && snaped)
            {
                additionalLine.SnapCallback();
            }
        }

        //頂点削除
        if (Input.GetMouseButtonDown(removeButton))
        {
            draw |= RemoveAtLastVertex();
        }

        //マウスの移動量
        Vector2 md = new Vector2(Input.GetAxis("Mouse X"), Input.GetAxis("Mouse Y"));

        if (md.magnitude > MDEPSILON)
        {
            draw |= UpdateNoticeLine(mousePos);
        }

        //全消し
        if (Input.GetKeyDown(clearButton))
        {
            FlushVertices();
        }
    }
Ejemplo n.º 2
0
 /// <summary>
 /// マウス座標の取得。指定したEventStstemに被る場合はfalseを返す
 /// </summary>
 public bool GetMousePoint(out Vector2 point)
 {
     point = FuncBox.GetMousePosition(cam);
     if (!uiEventSystem)
     {
         return(true);
     }
     else if (uiEventSystem.IsPointerOverGameObject())
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }