示例#1
0
        protected bool Equals(MyLine other)
        {
            //SBAGLIATO!!!
            return(Equals(plane1, other.plane1) && Equals(plane2, other.plane2));

            #region PROVA non completata
            //double x;
            //double y;
            //double z;
            //if (FunctionsLC.MyEqualsToZero(plane1.a))
            //{
            //    if (FunctionsLC.MyEqualsToZero(plane1.b))
            //    {
            //        z = -plane1.d / plane1.c;
            //        if (FunctionsLC.MyEqualsToZero(plane2.a))
            //        {
            //            y = (-plane2.d - plane2.c * z)/plane2.b;
            //        }
            //        else
            //        {
            //            if (FunctionsLC.MyEqualsToZero(plane2.b))
            //            {
            //                x = (-plane2.d - plane2.c * z) / plane2.a;
            //            }
            //            else
            //            {
            //                //I give an arbitrary value to x:
            //                x = 0;
            //                y = (-plane2.d - plane2.c * z) / plane2.b;
            //            }
            //        }
            //    }
            //    else
            //    {
            //        if (FunctionsLC.MyEqualsToZero(plane1.c))
            //        {
            //            y = -plane1.d / plane1.b;
            //        }
            //    }
            //}
            //else
            //{
            //    if (FunctionsLC.MyEqualsToZero(plane1.b))
            //    {
            //        if (FunctionsLC.MyEqualsToZero(plane1.c))
            //        {
            //            x = -plane1.d / plane1.a;
            //        }
            //    }
            //}
            #endregion
        }
 //Applicato ad un vertice, dice se il vertice sta sulla retta data in input
 public bool Lieonline(MyLine GivenLine)
 {
     return(this.Lieonplane(GivenLine.plane1) && this.Lieonplane(GivenLine.plane2));
 }