예제 #1
0
    private void AddUIElement()
    {
        if (controller == null)
        {
            return;
        }

        var targetEnv = transform.GetComponent <AgentSetup>().TargetRosEnv;

        if (targetEnv == ROSTargetEnvironment.LGSVL || targetEnv == ROSTargetEnvironment.AUTOWARE || targetEnv == ROSTargetEnvironment.APOLLO)
        {
            cruiseControlCheckbox = GetComponent <UserInterfaceTweakables>().AddCheckbox("CruiseControl", "Cruise Control:", false);
            cruiseControlCheckbox.onValueChanged.AddListener(isOn =>
            {
                if (isOn)
                {
                    controller.EnableCruiseControl(controller.cruiseTargetSpeed);
                }
                else
                {
                    controller.DisableCruiseControl();
                }
                // controller.ToggleCruiseMode(controller.cruiseTargetSpeed);
            });

            float initCruiseSpeed = 10f;
            cruiseControlSpeedSlider = GetComponent <UserInterfaceTweakables>().AddFloatSlider("CruiseControlSpeed", "Cruise Control Speed (mph):", 0f, 50f, initCruiseSpeed);
            cruiseControlSpeedSlider.onValueChanged.AddListener(speed =>
            {
                controller.cruiseTargetSpeed = speed;
            });

            controller.cruiseTargetSpeed = initCruiseSpeed;
        }
    }