Ejemplo n.º 1
0
        void Update()
        {
            if (updateText || inputReceived)
            {
                manageText();
                updateText = false;
            }

            if (inputReceived && !eqnInput)
            {
                inputReceived = false;
                bool isValid = ptSet.CompileAll();

                ManageFeedback();
                if (isValid)
                {
                    if (presentPlane)
                    {
                        if (presentPlane.CalculatePlane())
                        {
                            presentPlane.ApplyGraphAdjustment();
                            presentPlane.GetLocalPoint();
                            presentPlane.GetPlaneDirection();
                        }
                        else
                        {
                            presentPlane.ApplyGraphAdjustment();
                            presentPlane.GetLocalPoint();
                        }
                    }
                }
            }

            if (inputReceived && eqnInput)
            {
                inputReceived = false;
                bool isValid = eqnSet.CompileAll();
                ManageFeedback();
                if (isValid)
                {
                    if (eqnSet.eqnCoefs["a"].Value == 0 && eqnSet.eqnCoefs["b"].Value == 0 && eqnSet.eqnCoefs["c"].Value == 0)
                    {
                        feedbacks.eqnFeedback.material.color = negativeFeedback;
                        if (presentPlane)
                        {
                            presentPlane.forwardPlane.GetComponent <MeshRenderer>().enabled  = false;
                            presentPlane.backwardPlane.GetComponent <MeshRenderer>().enabled = false;
                        }
                    }
                    else
                    {
                        generatePlanePts.eqnToPoints();
                    }
                }
            }
        }
Ejemplo n.º 2
0
        public void updateDet(float newDet)
        {
            CalcOutput originalExpression = ptInput.currExpression;

            SetOutput(eqnSet.eqnCoefs["a"]);
            ptInput.RewriteInput(newDet);
            SetOutput(originalExpression);
            manageText();
            eqnSet.CompileAll();
        }
Ejemplo n.º 3
0
        void Update()
        {
            //if only projecting on a line (cover over the 3rd basis)
            if (ptInput.lineCover.activeSelf)
            {
                Debug.Log("LINEEEEEEEE COVERRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR");
                presentline.forwardPlane.GetComponent <MeshRenderer>().enabled  = false;
                presentline.backwardPlane.GetComponent <MeshRenderer>().enabled = false;
                updatePoint("pt3", new Vector3(0, 0, 0), false);
            }
            else if (!ptInput.lineCover.activeSelf && presentline.PlaneValid())
            {
                presentline.forwardPlane.GetComponent <MeshRenderer>().enabled  = true;
                presentline.backwardPlane.GetComponent <MeshRenderer>().enabled = true;
            }

            if (updateText || inputReceived)
            {
                manageText();
                updateText = false;
            }

            if (inputReceived && !eqnInput)
            {
                inputReceived = false;
                bool isValid = ptSet.CompileAll();
                ManageFeedback();

                //plane stuff
                if (isValid)
                {
                    if (presentline.CalculatePlane())
                    {
                        presentline.ApplyGraphAdjustment();
                        presentline.GetLocalPoint();
                        presentline.GetPlaneDirection();
                    }
                    else
                    {
                        presentline.ApplyGraphAdjustment();
                        presentline.GetLocalPoint();
                    }
                }
            }

            if (inputReceived && eqnInput)
            {
                inputReceived = false;
                bool isValid = eqnSet.CompileAll();
                ManageFeedback();
                if (isValid)
                {
                    if (eqnSet.eqnCoefs["a"].Value == 0 && eqnSet.eqnCoefs["b"].Value == 0 && eqnSet.eqnCoefs["c"].Value == 0)
                    {
                        feedbacks.eqnFeedback.material.color = negativeFeedback;
                        presentline.forwardPlane.GetComponent <MeshRenderer>().enabled  = false;
                        presentline.backwardPlane.GetComponent <MeshRenderer>().enabled = false;
                    }
                    else
                    {
                        generatePlanePts.eqnToPoints();
                    }
                }
            }
        }