Example #1
0
    public Statement serialize2ROSCode()
    {
        Statement statement;

        if (Command.value == 0)
        {
            statement = new MoveToJ1();
            var commaseparatedVector = CommandArgs.text.Substring(1).Substring(0, CommandArgs.text.Length - 2);
            var vectorValues         = commaseparatedVector.Split(',');

            (statement as MoveToJ1).target = new Vector3(Single.Parse(vectorValues[0], new CultureInfo("en-US").NumberFormat), Single.Parse(vectorValues[1], new CultureInfo("en-US").NumberFormat), Single.Parse(vectorValues[2], new CultureInfo("en-US").NumberFormat));
        }
        else if (Command.value == 2)
        {
            statement = new ClawUp();
            (statement as ClawUp).isClawUp = CommandArgs.text.Trim().ToLower().Equals("up");
        }
        else
        {
            statement = new BruteMoveToJ1();
            var commaseparatedVector = CommandArgs.text.Substring(1).Substring(0, CommandArgs.text.Length - 2);
            var vectorValues         = commaseparatedVector.Split(',');

            (statement as BruteMoveToJ1).target = new Vector3(Single.Parse(vectorValues[0], new CultureInfo("en-US").NumberFormat), Single.Parse(vectorValues[1], new CultureInfo("en-US").NumberFormat), Single.Parse(vectorValues[2], new CultureInfo("en-US").NumberFormat));
        }
        return(statement);
    }
Example #2
0
    private MoveStatement1 statementFromParsedString(int movementType, float x, float y, float z, float r)
    {
        Vector4        target        = new Vector4(x, y, z, r);
        MoveStatement1 moveStatement = new MoveToJ1(); // default

        switch (movementType)
        {
        case 0:
            moveStatement = new MoveToL1();
            break;

        case 1:
            moveStatement = new MoveToJ1();
            break;

        case 2:
            moveStatement = new JumpTo1();
            break;

        case 3:
            moveStatement = new MoveArc1();
            break;

        default:
            moveStatement = new MoveToJ1();
            break;
        }
        moveStatement.target = target;
        return(moveStatement);
    }
Example #3
0
    public override MoveStatement1 getMoveStatementFromUI(GameObject movementTypeUI)
    {
        List <TMP_Dropdown> dropdowns;
        MoveStatement1      moveStatement;

        dropdowns     = new List <TMP_Dropdown>();
        moveStatement = new MoveToL1();
        movementTypeUI.GetComponentsInChildren <TMP_Dropdown>(dropdowns);
        foreach (TMP_Dropdown dropdown in dropdowns)
        {
            switch (dropdown.value)
            {
            case 0:
                moveStatement = new MoveToL1();
                break;

            case 1:
                moveStatement = new MoveToJ1();
                break;

            case 2:
                moveStatement = new JumpTo1();
                break;

            case 3:
                moveStatement = new MoveArc1();
                break;

            default:
                break;
            }
        }
        return(moveStatement);
    }
    public override Statement generateStatementFromUI(GameObject commandContainer)
    {
        MoveStatement1 moveStatement    = new MoveToJ1();
        BruteMove      bruteStatement   = new BruteMoveToJ1();
        Statement      defaultStatement = new MoveToL1();
        bool           isMoveStatement  = true;

        //also the below toggle suction is not needed for NXT robot

        /*
         * foreach (Transform child in commandContainer.transform)
         *  {
         *      if (child.name.StartsWith("ToggleSuction"))
         *      {
         *      ToggleSuction1 toggleSuctionCommand = new ToggleSuction1();
         *      if (child.name.Contains("false"))
         *      {
         *          toggleSuctionCommand.isSuctionEnabled = false;
         *      }
         *      if (child.name.Contains("true"))
         *      {
         *          toggleSuctionCommand.isSuctionEnabled = true;
         *      }
         *      return toggleSuctionCommand;
         *      isMoveStatement = false;
         *      }
         *  }  */
        //Deciding on statement type

        /* foreach (Transform child in commandContainer.transform)
         * {
         *   if (child.name.StartsWith("ClawUp"))
         *   {
         *       ClawUp clawupCommand = new ClawUp();
         *       if (child.name.Contains("false"))
         *       {
         *           clawupCommand.isClawUp = false;
         *       }
         *       if (child.name.Contains("true"))
         *       {
         *           clawupCommand.isClawUp = true;
         *       }
         *       return clawupCommand;
         *       isMoveStatement = false;
         *   }
         * } */

        foreach (Transform child in commandContainer.transform)
        {
            if (child.name.StartsWith("Brute"))
            {
                List <Toggle> toggles = new List <Toggle>();
                commandContainer.GetComponentsInChildren <Toggle>(toggles);

                List <Transform> childTransforms = new List <Transform>();
                commandContainer.GetComponentsInChildren <Transform>(childTransforms);
                foreach (Transform childTransform in childTransforms)
                {
                    if (childTransform.name.Contains(movementTypeSelector.nameIdentifier()))
                    {
                        bruteStatement = movementTypeSelector.getBruteMoveFromUI(childTransform.gameObject);
                    }
                    else if (childTransform.name.Contains(coordinateSelector.nameIdentifier()))
                    {
                        bruteStatement.target = coordinateSelector.getCoordinateValues(childTransform.gameObject);
                    }
                }
                //Returning bruteStatement
                bruteType = false;
                //countbruteType--;
                //Debug
                Debug.Log("Brute found in generateStatementFromUI");
                isMoveStatement = false;
                return(bruteStatement);
            }

            if (child.name.StartsWith("Move"))
            {
                List <Toggle> toggles = new List <Toggle>();
                commandContainer.GetComponentsInChildren <Toggle>(toggles);

                List <Transform> childTransforms = new List <Transform>();
                commandContainer.GetComponentsInChildren <Transform>(childTransforms);
                foreach (Transform childTransform in childTransforms)
                {
                    if (childTransform.name.Contains(movementTypeSelector.nameIdentifier()))
                    {
                        moveStatement = movementTypeSelector.getMoveStatementFromUI(childTransform.gameObject);
                    }
                    else if (childTransform.name.Contains(coordinateSelector.nameIdentifier()))
                    {
                        moveStatement.target = coordinateSelector.getCoordinateValues(childTransform.gameObject);
                    }
                }
                //Returning moveStatement
                Debug.Log("Move found in generateStatementFromUI");
                return(moveStatement);
            }
            //ClawUp Command
            if (child.name.StartsWith("Toggle"))
            {
                ClawUp clawupCommand = new ClawUp();
                if (child.name.Contains("false"))
                {
                    clawupCommand.isClawUp = false;
                }
                if (child.name.Contains("true"))
                {
                    clawupCommand.isClawUp = true;
                }
                //Returning ClawUp
                return(clawupCommand);

                isMoveStatement = false;
            }
        }

        /* if(isMoveStatement)
         * {
         * List<Toggle> toggles = new List<Toggle>();
         * commandContainer.GetComponentsInChildren<Toggle>(toggles);
         *
         * List<Transform> childTransforms = new List<Transform>();
         * commandContainer.GetComponentsInChildren<Transform>(childTransforms);
         * foreach (Transform childTransform in childTransforms)
         * {
         *
         *   if (childTransform.name.Contains(movementTypeSelector.nameIdentifier()))
         *   {
         *       moveStatement = movementTypeSelector.getMoveStatementFromUI(childTransform.gameObject);
         *   }
         *   else if (childTransform.name.Contains(coordinateSelector.nameIdentifier()))
         *   {
         *       moveStatement.target = coordinateSelector.getCoordinateValues(childTransform.gameObject);
         *   }
         *
         * }
         *   //Returning moveStatement
         *   Debug.Log("Move found in generateStatementFromUI");
         *   return moveStatement;
         * } */

        //Returning defaultStatement
        //Debug
        Debug.Log("Default found in generateStatementFromUI");
        return(defaultStatement);
    }