Ejemplo n.º 1
0
    private IEnumerator ResetSimulation()
    {
        isResetting = true;
        // Debug.LogWarning("Reset positions in simulation!!!");

        transformGizmo?.ClearTargets();

        foreach (var helper in modelsRoot.GetComponentsInChildren <SDF.Helper.Actor>())
        {
            helper.Reset();
        }

        foreach (var helper in modelsRoot.GetComponentsInChildren <SDF.Helper.Model>())
        {
            helper.Reset();
        }

        foreach (var helper in modelsRoot.GetComponentsInChildren <SDF.Helper.Link>())
        {
            helper.Reset();
        }

        foreach (var plugin in modelsRoot.GetComponentsInChildren <CLOiSimPlugin>())
        {
            plugin.Reset();
        }

        clock?.ResetTime();

        yield return(new WaitForSeconds(0.5f));

        Debug.LogWarning("[Done] Reset positions in simulation!!!");
        isResetting = false;
    }
Ejemplo n.º 2
0
    // Update is called once per frame
    void Update()
    {
        if (delete)
        {
            Ray        ray = viewCamera.ScreenPointToRay(Input.mousePosition);
            RaycastHit rayDistance;

            if (Physics.Raycast(ray.origin, ray.direction, out rayDistance, Mathf.Infinity, buildingMask))                //Sending out a raycast to find the ground position.
            {
                if (EventSystem.current.IsPointerOverGameObject())
                {
                    return;
                }
                Vector3 point = rayDistance.point;
                Debug.DrawLine(ray.origin, point, Color.red);                  //For Testing
                if (Input.GetMouseButtonDown(0))
                {
                    Collider[] objColliders = Physics.OverlapSphere(point, 0.1f);
                    int        i            = 0;

                    if (!objColliders [i].gameObject.tag.Equals("Ground"))                               //checks to see if it is not the ground


                    {
                        if (objColliders [i].gameObject.transform.parent == null)                                  //check to see if the camera has a parent.
                        {
                            tg.ClearTargets();
                            //tg.seta = RuntimeGizmos.Axis.None;
                            Destroy(objColliders [i].gameObject);
                        }
                        else
                        {
                            tg.ClearTargets();
                            //tg.selectedAxis = RuntimeGizmos.Axis.None;
                            Destroy(objColliders [i].gameObject.transform.root.gameObject);
                        }
                        //removed delete = false;
                    }
                }
            }
        }        //
    }
Ejemplo n.º 3
0
 public void Close()
 {
     if (ins.pnl.activeSelf)
     {
         ins.pnl.SetActive(false);
         tg.ClearTargets();
         //tg.selectedAxis = RuntimeGizmos.Axis.None;
         ins.info = false;
         ins.selectedItem.transform.root.transform.GetComponent <MeshRenderer> ().enabled = false;
     }
 }
Ejemplo n.º 4
0
 public override void Execute()
 {
     TransformGizmo.ClearTargets(false);
     TransformGizmo.AddTarget(Target, false);
 }