Ejemplo n.º 1
0
    public void CreateSimulationModel()
    {
        if (m_Colliding)
        {
            return;
        }
        GameObject simModel = Instantiate(SimulationModel, transform.position, transform.rotation);

        simModel.name = SimulationModel.name;
        InputManager.Instance.ModelSpawn_Controller.Operating = false;
        Destroy(InputManager.Instance.Selector_Tool.CurrentPreviewModel.gameObject);
        InputManager.Instance.Selector_Tool.CurrentPreviewModel = null;
        if (SimulationModel.GetComponent <ROSObject>() == null)
        {
            return;
        }
        // publish a message to add the object to ros node
        List <string> objects = new List <string>();

        objects.Add(SimulationModel.name);
        List <Vector3> positions = new List <Vector3>();

        positions.Add(GazeboUtility.UnityPositionToGazebo(transform.position));
        ModelMsg msg = new ModelMsg(1, 1, objects, positions);

        ROSBridge.Instance.Publish(RoboyModelPublisher.GetMessageTopic(), msg);
        RoboyManager.Instance.AddRoboy(simModel.transform);
    }
Ejemplo n.º 2
0
    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Space))
        {
            List <string> objects = new List <string>();
            objects.Add("Roboy_simplified");
            List <Vector3> positions = new List <Vector3>();
            positions.Add(GazeboUtility.UnityPositionToGazebo(new Vector3(2.3123f, 2.2311f, 0.5f)));
            ModelMsg msg = new ModelMsg(1, 1, objects, positions);
            Debug.Log(msg.ToYAMLString());
            ROSBridge.Instance.Publish(RoboyModelPublisher.GetMessageTopic(), msg);
        }
        else if (Input.GetKeyDown(KeyCode.Escape))
        {
            List <string> objects = new List <string>();
            objects.Add("Roboy_simplified");
            List <Vector3> positions = new List <Vector3>();
            positions.Add(Vector3.zero);
            ModelMsg msg = new ModelMsg(0, 1, objects, positions);

            ROSBridge.Instance.Publish(RoboyModelPublisher.GetMessageTopic(), msg);
        }
    }