public new static void CallBack(ROSBridgeMsg msg)
    {
        CompressedImageMsg imgMsg = msg as CompressedImageMsg;

        //HUD.droneCamera.LoadImage(imgMsg.GetImage());
        ROSManager.getInstance().getdroneCam().LoadImage(imgMsg.GetImage());
    }
Exemple #2
0
 private void getROSLinearVelocity()
 {
     if (ROSLinearVelocityOut != null)
     {
         ROSLinearVelocityOut.text = ROSManager.getInstance().getLinear().ToString();
     }
 }
    // Use this for initialization
    void Start()
    {
        gameManager = GameManager.getInstance();
        rosManager  = gameManager.getROSManager();

        rawImage = this.gameObject.GetComponent <RawImage>();
    }
Exemple #4
0
    public new static void CallBack(ROSBridgeMsg msg)
    {
        GeoPointMsg LocationGPS = msg as GeoPointMsg;

        ROSManager.getInstance().setLatitude(LocationGPS.GetLatitude());
        ROSManager.getInstance().setLongitude(LocationGPS.GetLongitude());
        ROSManager.getInstance().setAltitude(LocationGPS.GetAltitude());
        //Debug.Log(LocationGPS.ToYAMLString());
    }
        // Use this for initialization
        void Start()
        {
            rosManager = ROSManager.getInstance();

            longitudeOffset = rosManager.getLongitude();
            latitudeOffset  = rosManager.getLatitude();

            setOffset();
        }
Exemple #6
0
    // Use this for initialization
    void Start()
    {
        droneRigidbody = Drone.GetComponent <Rigidbody>();
        droneTransform = Drone.GetComponent <Transform>();

        drn_angularVelocityVector = droneTransform.eulerAngles;
        drn_velocityVector        = droneTransform.position;

        rosManager = ROSManager.getInstance();
    }
Exemple #7
0
    static ROSMonoBehavior()
    {
        rosmanager = new ROSManager();
#if UNITY_EDITOR
        UnityEditor.EditorApplication.playmodeStateChanged = () =>
        {
            string state = "";
            if (EditorApplication.isPlaying)
            {
                state += "playing";
            }
            if (EditorApplication.isPaused)
            {
                state += " paused";
            }
            if (EditorApplication.isCompiling)
            {
                state += " compiling";
            }
            state = state.Trim(' ');
            Debug.LogWarning("PlayMode == " + state);
            if (!EditorApplication.isPlaying && !EditorApplication.isPaused)
            {
                ROS.Unfreeze();
                if (ROS.ok || ROS.isStarted())
                {
                    ROSManager.StopROS();
                }
            }
            else if (EditorApplication.isPlaying)
            {
                if (!EditorApplication.isPaused)
                {
                    ROS.Unfreeze();
                    rosmanager.StartROS(null, null);
                }
                else
                {
                    ROS.Freeze();
                }
            }
        };
#endif
    }
Exemple #8
0
    public new static void CallBack(ROSBridgeMsg msg)
    {
        TwistMsg OdomData = msg as TwistMsg;

        ROSManager.getInstance().setLinear(OdomData.GetLinear());
        ROSManager.getInstance().setAngular(OdomData.GetAngular());

        Debug.Log(OdomData.ToYAMLString());


        //GeoPointMsg LocationGPS = msg as GeoPointMsg;
        //ROSManager.getInstance().setLatitude(LocationGPS.GetLatitude());
        //ROSManager.getInstance().setLongitude(LocationGPS.GetLongitude());
        //ROSManager.getInstance().setAltitude(LocationGPS.GetAltitude());
        //Debug.Log(LocationGPS.ToYAMLString());


        //CompressedImageMsg imgMsg = msg as CompressedImageMsg;
        //ROSManager.getInstance().getUBDCam().LoadImage(imgMsg.GetImage());
    }
    private void ubdMovement()
    {
        //float modifySpeed = 0.15f;

        //Angular movement
        //get axis to rotate around
        Vector3 leftaxis = transform.TransformDirection(Vector3.up);

        //rotate
        this.transform.RotateAround(transform.position, leftaxis, Input.GetAxis("Horizontal"));

        //Linear movement
        //Vector3.left is used because UBD transform is off
        this.transform.Translate(Input.GetAxis("Vertical") * Vector3.left * modifySpeed * Time.deltaTime);

        //constructing ROS teleop message
        float _dx     = Input.GetAxis("Horizontal");
        float _dy     = Input.GetAxis("Vertical");
        float linear  = _dy * 0.6f;
        float angular = -_dx * 1.6f;

        ROSManager.getInstance().RemoteControl(new Vector3(linear, 0.0f, 0.0f), new Vector3(0.0f, 0.0f, angular));
    }
 // Use this for initialization
 void Start()
 {
     rosManager = ROSManager.getInstance();
 }
 public ROSManager getROSManager()
 {
     return(ROSManager.getInstance());
 }
 // Update is called once per frame
 void Update()
 {
     ROSManager.getInstance().ROSRender();
 }