// static method to calculate the distance between two points in the 3D space public static double Distance(Point3D pointA, Point3D pointB) { double differenceX = (pointA.X - pointB.X) * (pointA.X - pointB.X); double differenceY = (pointA.Y - pointB.Y) * (pointA.Y - pointB.Y); double differenceZ = (pointA.Z - pointB.Z) * (pointA.Z - pointB.Z); double distance = Math.Sqrt(differenceX + differenceY + differenceZ); return distance; }
public static Path LoadPath(string fileName) { Path result = new Path(); using(StreamReader reader = new StreamReader("..//..//"+fileName+".txt")) { string line = reader.ReadLine(); while (line != null) { string[] lineArray = line.Split(','); Point3D currentPoint = new Point3D(double.Parse(lineArray[0].Trim('{')), double.Parse(lineArray[1]), double.Parse(lineArray[2].Trim('}'))); result.AddPoint(currentPoint); line = reader.ReadLine(); } } return result; }
private static readonly Point3D startPoint; //Problem 2. Static read-only field #endregion Fields #region Constructors //Problem 2. Static read-only field static Point3D() { startPoint = new Point3D(0,0,0); }
public void RemovePoint(Point3D point) { this.Points.Remove(point); }
public void AddPoint(Point3D point) { this.Points.Add(point); }
public static double CalculateDistance(Point3D first, Point3D second) { double result = Math.Sqrt(Math.Pow((first.X - second.X), 2) + Math.Pow((first.Y - second.Y), 2) + Math.Pow((first.Z - second.Z), 2)); return result; }
static void Main() { //Problem 1-4 tests Point3D point = new Point3D(2, 3, 4); Console.WriteLine(point.ToString()); Point3D staticPoint = Point3D.StartPoint; Console.WriteLine(staticPoint.ToString()); Point3D a = new Point3D(0, 1, 2); Point3D b = new Point3D(2, 3, 4); Path g = new Path(); g.AddPoint(a); g.AddPoint(b); PathStorage.SavePath(g,"bla"); //Problem 5-8 tests GenericList<int> myList = new GenericList<int>(3); myList.AddElement(1); myList.AddElement(2); myList.AddElement(3); Console.WriteLine(); Console.WriteLine("add elements:"); for (int i = 0; i < myList.Elements.Length; i++) { Console.WriteLine(myList.Elements[i]); } Console.WriteLine(); Console.WriteLine(); myList.RemoveElement(2); for (int i = 0; i < myList.Elements.Length; i++) { Console.WriteLine(myList.Elements[i]); } Console.WriteLine(); myList.InsertElement(555, 0); for (int i = 0; i < myList.Elements.Length; i++) { Console.WriteLine(myList.Elements[i]); } Console.WriteLine(); for (int i = 0; i < myList.Elements.Length; i++) { Console.WriteLine(myList.Elements[i]); } Console.WriteLine(); Console.WriteLine(myList.FindElement(555)); Console.WriteLine(myList.ToString()); Console.WriteLine(); Console.WriteLine(myList.GetElement(1)); }
static void Main(string[] args) { Console.WriteLine("*********"); Console.WriteLine("POINT 3D:"); Console.WriteLine("*********"); Point3D testPoint1 = new Point3D(5, 6, 7); Point3D testPoint2 = new Point3D(6, 7, 9); Console.WriteLine("Point1: {0}", testPoint1); Console.WriteLine("Point2: {0}", testPoint2); Console.WriteLine("Distance: {0}", Distance3D.Distance(testPoint1, testPoint2)); Console.WriteLine(); Console.WriteLine("**************"); Console.WriteLine("GENERIC CLASS:"); Console.WriteLine("**************"); GenericList<int> testList = new GenericList<int>(2); testList.AddElement(1); testList.AddElement(2); testList.AddElement(3); testList.AddElement(4); testList.AddElement(5); testList.InsertElementAtGivenPosition(6, 1); testList.RemoveElementByIndex(0); Console.WriteLine(testList); Console.WriteLine("Position of 4: {0}", testList.FindElementByValue(4)); Console.WriteLine("Max element: {0}", testList.Max()); Console.WriteLine("Min element: {0}", testList.Min()); Console.WriteLine("Count: {0}", testList.Count); Console.WriteLine("Capacity: {0}", testList.Capacity); testList.ClearList(); testList.AddElement(800); Console.WriteLine(testList); Console.WriteLine(); Console.WriteLine("*************"); Console.WriteLine("MATRIX CLASS:"); Console.WriteLine("*************"); Matrix<int> m1 = new Matrix<int>(3, 3); Matrix<int> m2 = new Matrix<int>(3, 3); // Fill with random numbers Random randomGenerator = new Random(); for (int i = 0; i < m1.Rows; i++) { for (int j = 0; j < m1.Columns; j++) { m1[i, j] = randomGenerator.Next(20); m2[i, j] = randomGenerator.Next(20); } } Console.WriteLine("Matrix 1"); Console.WriteLine(m1); Console.WriteLine("Matrix 2"); Console.WriteLine(m2); Console.WriteLine("Matrix 1 + Matrix 2"); Console.WriteLine(m1 + m2); Console.WriteLine("Matrix 1 - Matrix 2"); Console.WriteLine(m1 - m2); Console.WriteLine("Matrix 1 * Matrix 2"); Console.WriteLine(m1 * m2); Console.WriteLine("******************"); Console.WriteLine("VERSION ATTRIBUTE:"); Console.WriteLine("******************"); Type type = typeof(DefiningClasses); object[] allCustomAttributes = type.GetCustomAttributes(false); foreach (VersionAttribute attribute in allCustomAttributes) { Console.WriteLine("Current version is: {0}", attribute.FullVersion); } }