public Page75Problem17(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 75 Problem 17"; Point v = new Point("V", 3, -7); points.Add(v); Point z = new Point("Z", 0, 0); points.Add(z); Point y = new Point("Y", 6, 0); points.Add(y); Point x = new Point("X", 7, 0); points.Add(x); Point u = new Point("U", 10, -7); points.Add(u); Point w = new Point("W", 13, 0); points.Add(w); // System.Diagnostics.Debug.WriteLine(new Segment(b, c).FindIntersection(new Segment(a, d))); Segment vz = new Segment(v, z); segments.Add(vz); Segment vy = new Segment(v, y); segments.Add(vy); Segment ux = new Segment(u, x); segments.Add(ux); Segment uw = new Segment(u, w); segments.Add(uw); List <Point> pts = new List <Point>(); pts.Add(z); pts.Add(y); pts.Add(x); pts.Add(w); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricParallel(vz, ux)); given.Add(new GeometricParallel(vy, uw)); given.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(w, x)), (Segment)parser.Get(new Segment(y, z)))); goals.Add(new GeometricCongruentTriangles(new Triangle(w, x, u), new Triangle(y, z, v))); }
public Page231Problem14(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 231 Problem 14"; Point j = new Point("J", 0, 0); points.Add(j); Point k = new Point("K", 3, 2); points.Add(k); Point l = new Point("L", 9, 0); points.Add(l); Point m = new Point("M", 5, 0); points.Add(m); Point n = new Point("N", 3, -2); points.Add(n); Segment jk = new Segment(j, k); segments.Add(jk); Segment jn = new Segment(j, n); segments.Add(jn); Segment kl = new Segment(k, l); segments.Add(kl); Segment km = new Segment(k, m); segments.Add(km); Segment ln = new Segment(l, n); segments.Add(ln); Segment mn = new Segment(m, n); segments.Add(mn); List<Point> pts = new List<Point>(); pts.Add(j); pts.Add(m); pts.Add(l); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentTriangles(new Triangle(j, k, m), new Triangle(j, n, m))); goals.Add(new GeometricCongruentTriangles(new Triangle(j, k, l), new Triangle(j, n, l))); }
public Page69Problem14(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 69 Problem 14"; Point a = new Point("A", 0, 0); points.Add(a); Point b = new Point("B", 7, -6); points.Add(b); Point c = new Point("C", 14, 0); points.Add(c); Point d = new Point("D", 7, 0); points.Add(d); Segment ba = new Segment(b, a); segments.Add(ba); Segment bc = new Segment(b, c); segments.Add(bc); Segment bd = new Segment(b, d); segments.Add(bd); List<Point> pts = new List<Point>(); pts.Add(a); pts.Add(d); pts.Add(c); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments(ba, bc)); given.Add(new Midpoint((InMiddle)parser.Get(new InMiddle(d, (Segment)parser.Get(new Segment(a, c)))))); goals.Add(new GeometricCongruentTriangles(new Triangle(a, b, d), new Triangle(c, b, d))); }
public Page223Problem23(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 223 Problem 23"; Point j = new Point("J", 0, 0); points.Add(j); Point i = new Point("I", 3, 3); points.Add(i); Point y = new Point("Y", 7, 7); points.Add(y); Point g = new Point("G", 6, 0); points.Add(g); Point z = new Point("Z", 7, 0); points.Add(z); Segment ig = new Segment(i, g); segments.Add(ig); Segment yz = new Segment(y, z); segments.Add(yz); List<Point> pts = new List<Point>(); pts.Add(j); pts.Add(i); pts.Add(y); collinear.Add(new Collinear(pts)); pts = new List<Point>(); pts.Add(j); pts.Add(g); pts.Add(z); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(j, g, i)), (Angle)parser.Get(new Angle(j, y, z)))); goals.Add(new GeometricSimilarTriangles((Triangle)parser.Get(new Triangle(j, i, g)), (Triangle)parser.Get(new Triangle(j, z, y)))); }
public Page226Problem42(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 226 Problem 42"; Point j = new Point("J", 0, 0); points.Add(j); Point k = new Point("K", 0, 12); points.Add(k); Point l = new Point("L", 3, 2); points.Add(l); Point m = new Point("M", 3, 10); points.Add(m); Point n = new Point("N", 9, 6); points.Add(n); Segment jk = new Segment(j, k); segments.Add(jk); Segment lm = new Segment(l, m); segments.Add(lm); List <Point> pts = new List <Point>(); pts.Add(j); pts.Add(l); pts.Add(n); collinear.Add(new Collinear(pts)); pts = new List <Point>(); pts.Add(k); pts.Add(m); pts.Add(n); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new IsoscelesTriangle((Segment)parser.Get(new Segment(k, n)), (Segment)parser.Get(new Segment(j, n)), jk)); given.Add(new GeometricParallel(jk, lm)); goals.Add(new Strengthened((Triangle)parser.Get(new Triangle(n, m, l)), new IsoscelesTriangle((Triangle)parser.Get(new Triangle(n, m, l))))); }
public Page6Prob32a(bool onoff, bool complete) : base(onoff, complete) { Point r = new Point("R", -8 * System.Math.Sin(0.3 * System.Math.PI), 8 * System.Math.Cos(0.3 * System.Math.PI)); points.Add(r); Point p = new Point("P", 0, 0); points.Add(p); Point s = new Point("S", 8 * System.Math.Sin(0.3 * System.Math.PI), 8 * System.Math.Cos(0.3 * System.Math.PI)); points.Add(s); Point q = new Point("Q", 0, -4); points.Add(q); Segment rp = new Segment(r, p); segments.Add(rp); Segment ps = new Segment(p, s); segments.Add(ps); Segment pq = new Segment(p, q); segments.Add(pq); circles.Add(new Circle(p, 8)); circles.Add(new Circle(q, 4)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); known.AddSegmentLength(pq, 4); known.AddAngleMeasureDegree((Angle)parser.Get(new Angle(r, p, s)), 108); List <Point> wanted = new List <Point>(); wanted.Add(new Point("", 0, 1)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(19.2 * System.Math.PI); }
public Page3Prob23(bool onoff, bool complete) : base(onoff, complete) { Point q = new Point("Q", -2, 0); points.Add(q); Point p = new Point("P", 2, 0); points.Add(p); Point o = new Point("O", 0, 0); points.Add(o); List <Point> pts = new List <Point>(); pts.Add(q); pts.Add(o); pts.Add(p); collinear.Add(new Collinear(pts)); circles.Add(new Circle(o, 4)); circles.Add(new Circle(p, 2)); circles.Add(new Circle(q, 2)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); known.AddSegmentLength((Segment)parser.Get(new Segment(o, q)), 2); known.AddSegmentLength((Segment)parser.Get(new Segment(p, o)), 2); List <Point> wanted = new List <Point>(); wanted.Add(new Point("", 0, -3)); wanted.Add(new Point("", -2, -1)); wanted.Add(new Point("", -2, 1)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(8 * System.Math.PI); }
public Page23Theorem11(bool onoff, bool complete) : base(onoff, complete) { problemName = "Midpoint Theorem"; Point a = new Point("A", -3, 0); points.Add(a); Point m = new Point("M", 0, 0); points.Add(m); Point b = new Point("B", 3, 0); points.Add(b); List <Point> pts = new List <Point>(); pts.Add(a); pts.Add(m); pts.Add(b); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new Midpoint((InMiddle)parser.Get(new InMiddle(m, (Segment)parser.Get(new Segment(a, b)))))); Multiplication product1 = new Multiplication(new NumericValue(2), (Segment)parser.Get(new Segment(a, m))); goals.Add(new GeometricSegmentEquation(product1, (Segment)parser.Get(new Segment(a, b)))); Multiplication product2 = new Multiplication(new NumericValue(2), (Segment)parser.Get(new Segment(m, b))); goals.Add(new GeometricSegmentEquation(product2, (Segment)parser.Get(new Segment(a, b)))); }
//Demonstrates: A segment perpendicular to a radius is a tangent, tangents from point are congruent public Page296Theorem7_1_Test3(bool onoff, bool complete) : base(onoff, complete) { Point o = new Point("O", 0, 0); points.Add(o); //Intersection point for two tangents Point c = new Point("C", 0, 6.25); points.Add(c); //Points for two tangents Point a = new Point("A", 3, 4); points.Add(a); Point b = new Point("B", -3, 4); points.Add(b); //Tangent and Radii segments Segment ac = new Segment(a, c); segments.Add(ac); Segment bc = new Segment(b, c); segments.Add(bc); Segment oa = new Segment(o, a); segments.Add(oa); Segment ob = new Segment(o, b); segments.Add(ob); Circle circle = new Circle(o, 5.0); circles.Add(circle); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); Intersection inter1 = parser.GetIntersection(ac, oa); Intersection inter2 = parser.GetIntersection(bc, ob); given.Add(new Strengthened(inter1, new Perpendicular(inter1))); given.Add(new Strengthened(inter2, new Perpendicular(inter2))); //CircleSegmentIntersection cInter = (CircleSegmentIntersection)parser.Get(new CircleSegmentIntersection(a, circle, ap)); //given.Add(new Strengthened(cInter, new Tangent(cInter))); goals.Add(new GeometricCongruentSegments(ac, bc)); }
public Page2Col1Prob3(bool onoff, bool complete) : base(onoff, complete) { Point d = new Point("D", 60, 0); points.Add(d); Point b = new Point("B", 0, 60); points.Add(b); Point o = new Point("O", 0, 0); points.Add(o); Segment bo = new Segment(b, o); segments.Add(bo); Segment od = new Segment(o, d); segments.Add(od); circles.Add(new Circle(o, 60.0)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new RightAngle(new Angle(b, o, d))); known.AddSegmentLength(bo, 60); List <Point> wanted = new List <Point>(); wanted.Add(new Point("", 0, -1)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(8482.300165); problemName = "Page 2 Col 1 Problem 3"; GeometryTutorLib.EngineUIBridge.HardCodedProblemsToUI.AddProblem(problemName, points, circles, segments); }
public Page1Col2Prob1(bool onoff, bool complete) : base(onoff, complete) { Point a = new Point("A", 0, -35); points.Add(a); Point b = new Point("B", 35, 0); points.Add(b); Point o = new Point("O", 0, 0); points.Add(o); Point p = new Point("P", 0, 35); points.Add(p); Segment ob = new Segment(o, b); segments.Add(ob); Segment oa = new Segment(o, a); segments.Add(oa); Segment ab = new Segment(a, b); segments.Add(ab); circles.Add(new Circle(o, 35.0)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new RightAngle((Angle)parser.Get(new Angle(a, o, b)))); known.AddSegmentLength(ob, 35); goalRegions.AddRange(parser.implied.GetAllAtomicRegionsWithoutPoint(new Point("", 24.7, -24.7))); SetSolutionArea(3498.83825); problemName = "Page 1 Col 2 Problem 1"; GeometryTutorLib.EngineUIBridge.HardCodedProblemsToUI.AddProblem(problemName, points, circles, segments); }
public Page79Problem8(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 79 Problem 8"; Point k = new Point("K", 3, 12); points.Add(k); Point l = new Point("L", 1, 4); points.Add(l); Point m = new Point("M", 9, 4); points.Add(m); Point p = new Point("P", 4, 0); points.Add(p); Point a = new Point("A", 0, 0); points.Add(a); // System.Diagnostics.Debug.WriteLine(new Segment(b, c).FindIntersection(new Segment(a, d))); Segment km = new Segment(k, m); segments.Add(km); Segment lm = new Segment(l, m); segments.Add(lm); Segment lp = new Segment(l, p); segments.Add(lp); Segment ap = new Segment(a, p); segments.Add(ap); List <Point> pts = new List <Point>(); pts.Add(k); pts.Add(l); pts.Add(a); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricParallel(km, lp)); given.Add(new GeometricParallel(lm, ap)); goals.Add(new GeometricSimilarTriangles(new Triangle(k, m, l), new Triangle(l, p, a))); }
public Page243Problem16(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 243 Problem 16"; Point a = new Point("A", 1.6, 1.2); points.Add(a); Point b = new Point("B", 2, 6); points.Add(b); Point c = new Point("C", 17, 6); points.Add(c); Point d = new Point("D", 17.6, 13.2); points.Add(d); Point x = new Point("X", 8, 6); points.Add(x); Segment ab = new Segment(a, b); segments.Add(ab); Segment cd = new Segment(c, d); segments.Add(cd); List <Point> pts = new List <Point>(); pts.Add(b); pts.Add(x); pts.Add(c); collinear.Add(new Collinear(pts)); pts = new List <Point>(); pts.Add(a); pts.Add(x); pts.Add(d); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); }
public JPage153Problem09(bool onoff, bool complete) : base(onoff, complete) { problemName = "Book J Page 153 Problem 9"; Point a = new Point("A", 2, 3); points.Add(a); Point b = new Point("B", 0, 0); points.Add(b); Point c = new Point("C", 5, 0); points.Add(c); Point d = new Point("D", 2.5, 0); points.Add(d); Segment ab = new Segment(a, b); segments.Add(ab); Segment ad = new Segment(a, d); segments.Add(ad); Segment ac = new Segment(a, c); segments.Add(ac); List <Point> pts = new List <Point>(); pts.Add(b); pts.Add(d); pts.Add(c); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); // given.Add(new GeometricProportionalSegments((Segment)parser.Get(new Segment(b, d)), (Segment)parser.Get(new Segment(c, d)))); // given.Add(new GeometricProportionalSegments(ab, ac)); }
public Page4prob18(bool onoff, bool complete) : base(onoff, complete) { Point a = new Point("A", -6.5, 0); points.Add(a); Point b = new Point("B", System.Math.Sqrt(27), 3); points.Add(b); Point c = new Point("C", 6.5, 0); points.Add(c); Point o = new Point("O", 0, 0); points.Add(o); Segment ab = new Segment(a, b); segments.Add(ab); Segment bc = new Segment(b, c); segments.Add(bc); List <Point> pts = new List <Point>(); pts.Add(a); pts.Add(o); pts.Add(c); collinear.Add(new Collinear(pts)); circles.Add(new Circle(o, 6.5)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); known.AddSegmentLength((Segment)parser.Get(new Segment(a, c)), 13); known.AddSegmentLength(ab, 5); known.AddSegmentLength(bc, 12); List <Point> wanted = new List <Point>(); wanted.Add(new Point("", -6.4, 1.1)); wanted.Add(new Point("", 0, 6)); wanted.Add(new Point("", 0, -1)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(42.25 * System.Math.PI - 30); }
public Page145Problem04(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 145 Problem 4"; Point a = new Point("A", 0, 0); points.Add(a); Point b = new Point("B", 5, 0); points.Add(b); Point d = new Point("D", 1, 4); points.Add(d); Point c = new Point("C", 6, 4); points.Add(c); Point l = new Point("L", 2, 3); points.Add(l); Point m = new Point("M", 4, 1); points.Add(m); Segment ab = new Segment(a, b); segments.Add(ab); Segment cd = new Segment(c, d); segments.Add(cd); Segment ad = new Segment(a, d); segments.Add(ad); Segment bc = new Segment(b, c); segments.Add(bc); Segment al = new Segment(a, l); segments.Add(al); Segment cm = new Segment(c, m); segments.Add(cm); List <Point> pts = new List <Point>(); pts.Add(d); pts.Add(l); pts.Add(m); pts.Add(b); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments(ab, cd)); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(c, d, l)), (Angle)parser.Get(new Angle(m, b, a)))); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(d, a, l)), (Angle)parser.Get(new Angle(m, c, b)))); goals.Add(new GeometricCongruentSegments(al, cm)); }
public Page2Prob15(bool onoff, bool complete) : base(onoff, complete) { Point o = new Point("O", 0, 0); points.Add(o); Point a = new Point("A", 0, 4); points.Add(a); Point b = new Point("B", -4, 0); points.Add(b); Segment oa = new Segment(o, a); segments.Add(oa); Segment ob = new Segment(o, b); segments.Add(ob); Segment ab = new Segment(a, b); segments.Add(ab); circles.Add(new Circle(o, 4.0)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new RightAngle((Angle)parser.Get(new Angle(a, o, b)))); known.AddSegmentLength(oa, 4); List<Point> wanted = new List<Point>(); wanted.Add(new Point("", -2.828, 2.8)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(4.566370614); }
public Page2Prob19(bool onoff, bool complete) : base(onoff, complete) { Point o = new Point("O", 0, 0); points.Add(o); Point a = new Point("A", -6, 0); points.Add(a); Point b = new Point("B", 6, 0); points.Add(b); Point p = new Point("P", -3, 6.0 * System.Math.Sqrt(3) / 2.0); points.Add(p); Segment pa = new Segment(p, a); segments.Add(pa); Segment pb = new Segment(p, b); segments.Add(pb); List<Point> pts = new List<Point>(); pts.Add(a); pts.Add(o); pts.Add(b); collinear.Add(new Collinear(pts)); circles.Add(new Circle(o, 6)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricAngleEquation((Angle)parser.Get(new Angle(o, a, p)), new NumericValue(60.0))); known.AddSegmentLength((Segment)parser.Get(new Segment(o, b)), 6); List<Point> wanted = new List<Point>(); wanted.Add(new Point("", 3, 4)); wanted.Add(new Point("", -5.19, 2.9)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(25.37175323); problemName = "Jurgensen Page 2 Problem 19"; GeometryTutorLib.EngineUIBridge.HardCodedProblemsToUI.AddProblem(problemName, points, circles, segments); }
public Page2Col1Prob3(bool onoff, bool complete) : base(onoff, complete) { Point d = new Point("D", 60, 0); points.Add(d); Point b = new Point("B", 0, 60); points.Add(b); Point o = new Point("O", 0, 0); points.Add(o); Segment bo = new Segment(b, o); segments.Add(bo); Segment od = new Segment(o, d); segments.Add(od); circles.Add(new Circle(o, 60.0)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new RightAngle(new Angle(b, o, d))); known.AddSegmentLength(bo, 60); List<Point> wanted = new List<Point>(); wanted.Add(new Point("", 0, -1)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(8482.300165); problemName = "Page 2 Col 1 Problem 3"; GeometryTutorLib.EngineUIBridge.HardCodedProblemsToUI.AddProblem(problemName, points, circles, segments); }
public Page223Problem24(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 223 Problem 24"; Point b = new Point("B", 2, 4); points.Add(b); Point n = new Point("N", 8, 4); points.Add(n); Point l = new Point("L", 0, 0); points.Add(l); Point c = new Point("C", 10, 0); points.Add(c); Point m = new Point("M", 5, 2.5); points.Add(m); Segment cl = new Segment(c, l); segments.Add(cl); Segment bn = new Segment(b, n); segments.Add(bn); List <Point> pts = new List <Point>(); pts.Add(l); pts.Add(m); pts.Add(n); collinear.Add(new Collinear(pts)); pts = new List <Point>(); pts.Add(b); pts.Add(m); pts.Add(c); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(m, b, n)), (Angle)parser.Get(new Angle(m, c, l)))); }
public Page164Problem36(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 164 Problem 36"; Point a = new Point("A", 11, 8); points.Add(a); Point b = new Point("B", 10, 8); points.Add(b); Point c = new Point("C", 10, 11); points.Add(c); Point d = new Point("D", 0, 8); points.Add(d); Point e = new Point("E", 0, 0); points.Add(e); Point f = new Point("F", 10, 0); points.Add(f); Segment de = new Segment(d, e); segments.Add(de); Segment ef = new Segment(e, f); segments.Add(ef); List<Point> pts = new List<Point>(); pts.Add(f); pts.Add(b); pts.Add(c); collinear.Add(new Collinear(pts)); pts = new List<Point>(); pts.Add(d); pts.Add(b); pts.Add(a); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(b, d, e)), (Angle)parser.Get(new Angle(c, b, d)))); goals.Add(new GeometricParallel(de, new Segment(f, c))); }
public Page284Example44(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 284 Example 4.4"; Point d = new Point("D", 0, 4); points.Add(d); Point e = new Point("E", 3, 0); points.Add(e); Point f = new Point("F", 6, 0); points.Add(f); Point g = new Point("G", 12, 4); points.Add(g); Point h = new Point("H", 9, 0); points.Add(h); Segment de = new Segment(d, e); segments.Add(de); Segment df = new Segment(d, f); segments.Add(df); Segment gh = new Segment(g, h); segments.Add(gh); Segment fg = new Segment(f, g); segments.Add(fg); List<Point> pts = new List<Point>(); pts.Add(e); pts.Add(f); pts.Add(h); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(f, e)), (Segment)parser.Get(new Segment(f, h)))); given.Add(new GeometricCongruentSegments(de, gh)); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(d, e, f)), (Angle)parser.Get(new Angle(g, h, f)))); goals.Add(new GeometricCongruentTriangles(new Triangle(d, e, f), new Triangle(g, h, f))); }
public Page145Problem08(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 145 Problem 8"; Point f = new Point("F", 0, 5); points.Add(f); Point l = new Point("L", 4, 7); points.Add(l); Point k = new Point("K", 4, 3); points.Add(k); Point a = new Point("A", 5, 5); points.Add(a); Point j = new Point("J", 3, 5); points.Add(j); Segment fl = new Segment(f, l); segments.Add(fl); Segment fk = new Segment(f, k); segments.Add(fk); Segment al = new Segment(a, l); segments.Add(al); Segment ak = new Segment(a, k); segments.Add(ak); Segment jl = new Segment(j, l); segments.Add(jl); Segment jk = new Segment(j, k); segments.Add(jk); List<Point> pts = new List<Point>(); pts.Add(f); pts.Add(j); pts.Add(a); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new AngleBisector((Angle)parser.Get(new Angle(l, f, k)), (Segment)parser.Get(new Segment(f, a)))); given.Add(new AngleBisector((Angle)parser.Get(new Angle(l, a, k)), (Segment)parser.Get(new Segment(f, a)))); goals.Add(new AngleBisector((Angle)parser.Get(new Angle(l, j, k)), (Segment)parser.Get(new Segment(f, a)))); }
public JPage153Problem09(bool onoff, bool complete) : base(onoff, complete) { problemName = "Book J Page 153 Problem 9"; Point a = new Point("A", 2, 3); points.Add(a); Point b = new Point("B", 0, 0); points.Add(b); Point c = new Point("C", 5, 0); points.Add(c); Point d = new Point("D", 2.5, 0); points.Add(d); Segment ab = new Segment(a, b); segments.Add(ab); Segment ad = new Segment(a, d); segments.Add(ad); Segment ac = new Segment(a, c); segments.Add(ac); List<Point> pts = new List<Point>(); pts.Add(b); pts.Add(d); pts.Add(c); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); // given.Add(new GeometricProportionalSegments((Segment)parser.Get(new Segment(b, d)), (Segment)parser.Get(new Segment(c, d)))); // given.Add(new GeometricProportionalSegments(ab, ac)); }
public Page69Problem14(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 69 Problem 14"; Point a = new Point("A", 0, 0); points.Add(a); Point b = new Point("B", 7, -6); points.Add(b); Point c = new Point("C", 14, 0); points.Add(c); Point d = new Point("D", 7, 0); points.Add(d); Segment ba = new Segment(b, a); segments.Add(ba); Segment bc = new Segment(b, c); segments.Add(bc); Segment bd = new Segment(b, d); segments.Add(bd); List <Point> pts = new List <Point>(); pts.Add(a); pts.Add(d); pts.Add(c); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments(ba, bc)); given.Add(new Midpoint((InMiddle)parser.Get(new InMiddle(d, (Segment)parser.Get(new Segment(a, c)))))); goals.Add(new GeometricCongruentTriangles(new Triangle(a, b, d), new Triangle(c, b, d))); }
public Page145Problem08(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 145 Problem 8"; Point f = new Point("F", 0, 5); points.Add(f); Point l = new Point("L", 4, 7); points.Add(l); Point k = new Point("K", 4, 3); points.Add(k); Point a = new Point("A", 5, 5); points.Add(a); Point j = new Point("J", 3, 5); points.Add(j); Segment fl = new Segment(f, l); segments.Add(fl); Segment fk = new Segment(f, k); segments.Add(fk); Segment al = new Segment(a, l); segments.Add(al); Segment ak = new Segment(a, k); segments.Add(ak); Segment jl = new Segment(j, l); segments.Add(jl); Segment jk = new Segment(j, k); segments.Add(jk); List <Point> pts = new List <Point>(); pts.Add(f); pts.Add(j); pts.Add(a); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new AngleBisector((Angle)parser.Get(new Angle(l, f, k)), (Segment)parser.Get(new Segment(f, a)))); given.Add(new AngleBisector((Angle)parser.Get(new Angle(l, a, k)), (Segment)parser.Get(new Segment(f, a)))); goals.Add(new AngleBisector((Angle)parser.Get(new Angle(l, j, k)), (Segment)parser.Get(new Segment(f, a)))); }
public Page226Problem42(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 226 Problem 42"; Point j = new Point("J", 0, 0); points.Add(j); Point k = new Point("K", 0, 12); points.Add(k); Point l = new Point("L", 3, 2); points.Add(l); Point m = new Point("M", 3, 10); points.Add(m); Point n = new Point("N", 9, 6); points.Add(n); Segment jk = new Segment(j, k); segments.Add(jk); Segment lm = new Segment(l, m); segments.Add(lm); List<Point> pts = new List<Point>(); pts.Add(j); pts.Add(l); pts.Add(n); collinear.Add(new Collinear(pts)); pts = new List<Point>(); pts.Add(k); pts.Add(m); pts.Add(n); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new IsoscelesTriangle((Segment)parser.Get(new Segment(k, n)), (Segment)parser.Get(new Segment(j, n)), jk)); given.Add(new GeometricParallel(jk, lm)); goals.Add(new Strengthened((Triangle)parser.Get(new Triangle(n, m, l)), new IsoscelesTriangle((Triangle)parser.Get(new Triangle(n, m, l))))); }
public Page113Problem7(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 113 Problem 7"; Point a = new Point("A", -4, 3); points.Add(a); Point b = new Point("B", -4.0 / 3.0, -1); points.Add(b); Point c = new Point("C", 0, 0); points.Add(c); Point p = new Point("P", 4, 3); points.Add(p); Point q = new Point("Q", 4.0 / 3.0, -1); points.Add(q); Segment ab = new Segment(a, b); segments.Add(ab); Segment pq = new Segment(p, q); segments.Add(pq); List <Point> pts = new List <Point>(); pts.Add(a); pts.Add(c); pts.Add(q); collinear.Add(new Collinear(pts)); pts = new List <Point>(); pts.Add(p); pts.Add(c); pts.Add(b); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(b, c)), (Segment)parser.Get(new Segment(c, q)))); given.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(a, c)), (Segment)parser.Get(new Segment(c, p)))); goals.Add(new GeometricCongruentTriangles(new Triangle(a, b, c), new Triangle(p, q, c))); }
public Page13Problem10(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 13 Problem 10"; Point h = new Point("H", 4, 0); points.Add(h); Point i = new Point("I", 0, 5); points.Add(i); Point j = new Point("J", -4, 0); points.Add(j); Point k = new Point("K", 0, 0); points.Add(k); Segment ik = new Segment(i, k); segments.Add(ik); List <Point> pts = new List <Point>(); pts.Add(h); pts.Add(k); pts.Add(j); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new AngleBisector(new Angle(h, k, j), ik)); goals.Add(new Strengthened((Angle)parser.Get(new Angle(i, k, j)), new RightAngle((Angle)parser.Get(new Angle(i, k, j))))); }
//Demonstrates usage of definition of kite public KiteProblem02(bool onoff, bool complete) : base(onoff, complete) { problemName = "Kite Problem 02"; Point a = new Point("A", 0, 0); points.Add(a); Point b = new Point("B", 3, 3); points.Add(b); Point c = new Point("C", 6, 0); points.Add(c); Point d = new Point("D", 3, -4); points.Add(d); Segment ab = new Segment(a, b); segments.Add(ab); Segment bc = new Segment(b, c); segments.Add(bc); Segment cd = new Segment(c, d); segments.Add(cd); Segment ad = new Segment(a, d); segments.Add(ad); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); Quadrilateral quad = (Quadrilateral)parser.Get(new Quadrilateral(ab, cd, bc, ad)); given.Add(new Strengthened(quad, new Kite(quad))); goals.Add(new GeometricCongruentSegments(ab, bc)); goals.Add(new GeometricCongruentSegments(cd, ad)); }
public Page90Problem22(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 90 Problem 22"; Point a = new Point("A", 0, 0); points.Add(a); Point b = new Point("B", 5, 0); points.Add(b); Point c = new Point("C", 2.5, 20); points.Add(c); Point d = new Point("D", 2.5, 0); points.Add(d); Segment ac = new Segment(a, c); segments.Add(ac); Segment cb = new Segment(c, b); segments.Add(cb); Segment cd = new Segment(c, d); segments.Add(cd); List <Point> pts = new List <Point>(); pts.Add(a); pts.Add(d); pts.Add(b); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new PerpendicularBisector(parser.GetIntersection(cd, new Segment(a, b)), cd)); goals.Add(new GeometricCongruentTriangles(new Triangle(a, c, d), new Triangle(b, c, d))); }
public Page285Problem21(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 285 Problem 21"; Point a = new Point("A", 3, 4); points.Add(a); Point b = new Point("B", 9, 4); points.Add(b); Point c = new Point("C", 0, 0); points.Add(c); Point d = new Point("D", 6, 0); points.Add(d); Point e = new Point("E", 12, 0); points.Add(e); Segment ab = new Segment(a, b); segments.Add(ab); Segment ac = new Segment(a, c); segments.Add(ac); Segment ad = new Segment(a, d); segments.Add(ad); Segment bd = new Segment(b, d); segments.Add(bd); Segment be = new Segment(b, e); segments.Add(be); List<Point> pts = new List<Point>(); pts.Add(c); pts.Add(d); pts.Add(e); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(c, d)), (Segment)parser.Get(new Segment(d, e)))); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(a, c, d)), (Angle)parser.Get(new Angle(b, e, d)))); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(c, a, d)), (Angle)parser.Get(new Angle(d, b, e)))); goals.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(b, a, d)), (Angle)parser.Get(new Angle(d, b, a)))); }
public IPage123Example6(bool onoff, bool complete) : base(onoff, complete) { problemName = "Book I Page 123 Example 6"; Point a = new Point("A", 3.5, 4); points.Add(a); Point b = new Point("B", 0, 0); points.Add(b); Point c = new Point("C", 7, 0); points.Add(c); Point d = new Point("D", 2, 0); points.Add(d); Point e = new Point("E", 5, 0); points.Add(e); Segment ab = new Segment(a, b); segments.Add(ab); Segment ac = new Segment(a, c); segments.Add(ac); Segment ad = new Segment(a, d); segments.Add(ad); Segment ae = new Segment(a, e); segments.Add(ae); List<Point> pts = new List<Point>(); pts.Add(b); pts.Add(d); pts.Add(e); pts.Add(c); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new IsoscelesTriangle((Triangle)parser.Get(new Triangle(a, b, c)))); given.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(b, e)), (Segment)parser.Get(new Segment(c, d)))); goals.Add(new GeometricCongruentSegments(ad, ae)); }
public Page6Prob30(bool onoff, bool complete) : base(onoff, complete) { Point o = new Point("O", 0, 0); points.Add(o); Point p = new Point("P", 2, 0); points.Add(p); Point q = new Point("Q", 4, 0); points.Add(q); Point r = new Point("R", 6, 0); points.Add(r); Point s = new Point("S", 8, 0); points.Add(s); Segment rs = new Segment(r, s); segments.Add(rs); List<Point> pts = new List<Point>(); pts.Add(o); pts.Add(p); pts.Add(q); pts.Add(r); pts.Add(s); collinear.Add(new Collinear(pts)); circles.Add(new Circle(o, 8)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); known.AddSegmentLength(rs, 2); given.Add(new GeometricCongruentSegments(rs, (Segment)parser.Get(new Segment(o, p)))); given.Add(new GeometricCongruentSegments(rs, (Segment)parser.Get(new Segment(p, q)))); given.Add(new GeometricCongruentSegments(rs, (Segment)parser.Get(new Segment(q, r)))); List<Point> wanted = new List<Point>(); wanted.Add(new Point("", 3, 0)); wanted.Add(new Point("", 7, 0)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(40 * System.Math.PI); }
public Page6Prob32b(bool onoff, bool complete) : base(onoff, complete) { Point r = new Point("R", -8 * System.Math.Sin(0.3 * System.Math.PI), 8 * System.Math.Cos(0.3 * System.Math.PI)); points.Add(r); Point p = new Point("P", 0, 0); points.Add(p); Point s = new Point("S", 8 * System.Math.Sin(0.3 * System.Math.PI), 8 * System.Math.Cos(0.3 * System.Math.PI)); points.Add(s); Point q = new Point("Q", 0, -4); points.Add(q); Segment rp = new Segment(r, p); segments.Add(rp); Segment ps = new Segment(p, s); segments.Add(ps); Segment pq = new Segment(p, q); segments.Add(pq); circles.Add(new Circle(p, 8)); circles.Add(new Circle(q, 4)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); known.AddSegmentLength(pq, 4); known.AddAngleMeasureDegree((Angle)parser.Get(new Angle(r, p, s)), 108); List<Point> wanted = new List<Point>(); wanted.Add(new Point("", 0.5, -4)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(16 * System.Math.PI); }
public Page160Problem43(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 160 Problem 43"; Point t = new Point("T", 15.0 - 5.0 * Math.Sqrt(3.0), 0); points.Add(t); Point s = new Point("S", 10, 0); points.Add(s); Point f = new Point("F", 15, 5.0 * Math.Sqrt(3.0)); points.Add(f); // This is the wrong coordinate pair...... Point e = new Point("E", 15, 5.0 * Math.Sqrt(3.0)); points.Add(e); Point r = new Point("R", 20, 0); points.Add(r); Segment er = new Segment(e, r); segments.Add(er); Segment fs = new Segment(f, s); segments.Add(fs); Segment se = new Segment(s, e); segments.Add(se); List<Point> pts = new List<Point>(); pts.Add(t); pts.Add(s); pts.Add(r); collinear.Add(new Collinear(pts)); pts = new List<Point>(); pts.Add(t); pts.Add(f); pts.Add(e); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(s, e, r)), (Angle)parser.Get(new Angle(s, r, e)))); given.Add(new AngleBisector((Angle)parser.Get(new Angle(r, s, f)), se)); //goals.Add(new GeometricAngleEquation((Angle)parser.Get(new Angle(f, s, t)), new NumericValue(60))); }
public Page316Problem42(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 316 Problem 42"; Point p = new Point("P", 10, 0); points.Add(p); Point q = new Point("Q", 0, 0); points.Add(q); Point l = new Point("L", 0, 6); points.Add(l); Point m = new Point("M", 10, 6); points.Add(m); Point n = new Point("N", 3, 3); points.Add(n); Segment lm = new Segment(l, m); segments.Add(lm); Segment ln = new Segment(l, n); segments.Add(ln); Segment mn = new Segment(m, n); segments.Add(mn); Segment np = new Segment(n, p); segments.Add(np); Segment nq = new Segment(n, q); segments.Add(nq); Segment pq = new Segment(p, q); segments.Add(pq); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(m, l, n)), (Angle)parser.Get(new Angle(n, q, p)))); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(n, m, l)), (Angle)parser.Get(new Angle(n, p, q)))); given.Add(new GeometricCongruentSegments(ln, nq)); goals.Add(new GeometricCongruentTriangles(new Triangle(l, m, n), new Triangle(q, p, n))); }
public Page2Col2Prob20(bool onoff, bool complete) : base(onoff, complete) { Point a = new Point("A", -1 * System.Math.Sqrt(3), 1); points.Add(a); Point b = new Point("B", System.Math.Sqrt(3), 1); points.Add(b); Point c = new Point("C", -1 * System.Math.Sqrt(3), -1); points.Add(c); Point d = new Point("D", System.Math.Sqrt(3), -1); points.Add(d); Point o = new Point("O", 0, 0); points.Add(o); Segment ab = new Segment(a, b); segments.Add(ab); Segment cd = new Segment(c, d); segments.Add(cd); Segment ac = new Segment(a, c); segments.Add(ac); circles.Add(new Circle(o, 2)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); known.AddSegmentLength(ac, 2); List <Point> wanted = new List <Point>(); wanted.Add(new Point("", 1, 1)); wanted.Add(new Point("", -1.8, 0)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea((4.0 / 3.0) * System.Math.PI + 2.0 * System.Math.Sqrt(3.0)); }
public Page73Problem8(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 73 Problem 8"; Point t = new Point("T", -4, 5); points.Add(t); Point n = new Point("N", 0, 5); points.Add(n); Point s = new Point("S", 0, 0); points.Add(s); Point h = new Point("H", 0, -5); points.Add(h); Point u = new Point("U", 4, -5); points.Add(u); Segment nt = new Segment(n, t); segments.Add(nt); Segment hu = new Segment(h, u); segments.Add(hu); List<Point> pts = new List<Point>(); pts.Add(t); pts.Add(s); pts.Add(u); collinear.Add(new Collinear(pts)); pts = new List<Point>(); pts.Add(n); pts.Add(s); pts.Add(h); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(s, u, h)), (Angle)parser.Get(new Angle(n, t, s)))); given.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(n, s)), (Segment)parser.Get(new Segment(s, h)))); goals.Add(new GeometricCongruentTriangles(new Triangle(s, n, t), new Triangle(s, h, u))); }
public Page226Problem43(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 226 Problem 43"; Point a = new Point("A", 0, 4); points.Add(a); Point b = new Point("B", 7, 5); points.Add(b); Point c = new Point("C", 11, 10); points.Add(c); Point d = new Point("D", 3, 0); points.Add(d); Point e = new Point("E", 14, 6); points.Add(e); Segment ad = new Segment(a, d); segments.Add(ad); Segment ce = new Segment(c, e); segments.Add(ce); List<Point> pts = new List<Point>(); pts.Add(a); pts.Add(b); pts.Add(e); collinear.Add(new Collinear(pts)); pts = new List<Point>(); pts.Add(d); pts.Add(b); pts.Add(c); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricParallel(ad, ce)); given.Add(new GeometricCongruentSegments(ad, ce)); goals.Add(new GeometricCongruentTriangles(new Triangle(a, b, d), new Triangle(e, b, c))); }
public Page2Prob15(bool onoff, bool complete) : base(onoff, complete) { Point o = new Point("O", 0, 0); points.Add(o); Point a = new Point("A", 0, 4); points.Add(a); Point b = new Point("B", -4, 0); points.Add(b); Segment oa = new Segment(o, a); segments.Add(oa); Segment ob = new Segment(o, b); segments.Add(ob); Segment ab = new Segment(a, b); segments.Add(ab); circles.Add(new Circle(o, 4.0)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new RightAngle((Angle)parser.Get(new Angle(a, o, b)))); known.AddSegmentLength(oa, 4); List <Point> wanted = new List <Point>(); wanted.Add(new Point("", -2.828, 2.8)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(4.566370614); }
public Page146Problem17(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 146 Problem 17"; Point d = new Point("D", 2, 3); points.Add(d); Point b = new Point("B", 10, 0); points.Add(b); Point a = new Point("A", 0, 0); points.Add(a); Point c = new Point("C", 8, 3); points.Add(c); Point m = new Point("M", 5, 0); points.Add(m); Segment bc = new Segment(b, c); segments.Add(bc); Segment ad = new Segment(a, d); segments.Add(ad); Segment cd = new Segment(c, d); segments.Add(cd); Segment bd = new Segment(b, d); segments.Add(bd); Segment ac = new Segment(a, c); segments.Add(ac); Segment dm = new Segment(d, m); segments.Add(dm); Segment cm = new Segment(c, m); segments.Add(cm); List<Point> pts = new List<Point>(); pts.Add(a); pts.Add(m); pts.Add(b); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(a, m)), (Segment)parser.Get(new Segment(b, m)))); given.Add(new GeometricCongruentSegments(ad, bc)); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(m, d, c)), (Angle)parser.Get(new Angle(m, c, d)))); }
public Page168Problem34(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 168 Problem 34"; Point a = new Point("A", 1, 7); points.Add(a); Point b = new Point("B", 1, 4); points.Add(b); Point c = new Point("C", 8, 0); points.Add(c); Point d = new Point("D", 8, 4); points.Add(d); Point e = new Point("E", 4, 4); points.Add(e); Segment ab = new Segment(a, b); segments.Add(ab); Segment cd = new Segment(c, d); segments.Add(cd); List<Point> pts = new List<Point>(); pts.Add(a); pts.Add(e); pts.Add(c); collinear.Add(new Collinear(pts)); pts = new List<Point>(); pts.Add(b); pts.Add(e); pts.Add(d); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(b, a, e)), (Angle)parser.Get(new Angle(a, e, b)))); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(d, e, c)), (Angle)parser.Get(new Angle(e, c, d)))); goals.Add(new GeometricParallel(ab, cd)); }
public Page4Prob8(bool onoff, bool complete) : base(onoff, complete) { Point a = new Point("A", -1 * System.Math.Sqrt(27), -3); points.Add(a); Point b = new Point("B", 0, 6); points.Add(b); Point c = new Point("C", System.Math.Sqrt(27), -3); points.Add(c); Point p = new Point("P", 0, 0); points.Add(p); Segment ab = new Segment(a, b); segments.Add(ab); Segment bc = new Segment(b, c); segments.Add(bc); Segment ca = new Segment(c, a); segments.Add(ca); Segment ap = new Segment(a, p); segments.Add(ap); Segment bp = new Segment(b, p); segments.Add(bp); Segment cp = new Segment(c, p); segments.Add(cp); circles.Add(new Circle(p, 6.0)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); Triangle tri = (Triangle)parser.Get(new Triangle(a, b, c)); given.Add(new Strengthened(tri, new EquilateralTriangle(tri))); known.AddSegmentLength(ap, 6); List<Point> wanted = new List<Point>(); wanted.Add(new Point("", 0, -4)); wanted.Add(new Point("", -5, 0)); wanted.Add(new Point("", 5, 0)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(36 * System.Math.PI - 27 * System.Math.Sqrt(3)); }
public Page223Problem23(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 223 Problem 23"; Point j = new Point("J", 0, 0); points.Add(j); Point i = new Point("I", 3, 3); points.Add(i); Point y = new Point("Y", 7, 7); points.Add(y); Point g = new Point("G", 6, 0); points.Add(g); Point z = new Point("Z", 7, 0); points.Add(z); Segment ig = new Segment(i, g); segments.Add(ig); Segment yz = new Segment(y, z); segments.Add(yz); List <Point> pts = new List <Point>(); pts.Add(j); pts.Add(i); pts.Add(y); collinear.Add(new Collinear(pts)); pts = new List <Point>(); pts.Add(j); pts.Add(g); pts.Add(z); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(j, g, i)), (Angle)parser.Get(new Angle(j, y, z)))); goals.Add(new GeometricSimilarTriangles((Triangle)parser.Get(new Triangle(j, i, g)), (Triangle)parser.Get(new Triangle(j, z, y)))); }
public Page223Problem22(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 223 Problem 22"; Point x = new Point("X", 1, 0); points.Add(x); Point f = new Point("F", 3, 4); points.Add(f); Point s = new Point("S", 4, 6); points.Add(s); Point e = new Point("E", 5, 0); points.Add(e); Point r = new Point("R", 7, 0); points.Add(r); Segment rs = new Segment(r, s); segments.Add(rs); Segment ef = new Segment(e, f); segments.Add(ef); List<Point> pts = new List<Point>(); pts.Add(x); pts.Add(e); pts.Add(r); collinear.Add(new Collinear(pts)); pts = new List<Point>(); pts.Add(x); pts.Add(f); pts.Add(s); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricParallel(rs, ef)); goals.Add(new GeometricSimilarTriangles((Triangle)parser.Get(new Triangle(f, x, e)), (Triangle)parser.Get(new Triangle(s, x, r)))); }
public Page145Problem04(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 145 Problem 4"; Point a = new Point("A", 0, 0); points.Add(a); Point b = new Point("B", 5, 0); points.Add(b); Point d = new Point("D", 1, 4); points.Add(d); Point c = new Point("C", 6, 4); points.Add(c); Point l = new Point("L", 2, 3); points.Add(l); Point m = new Point("M", 4, 1); points.Add(m); Segment ab = new Segment(a, b); segments.Add(ab); Segment cd = new Segment(c, d); segments.Add(cd); Segment ad = new Segment(a, d); segments.Add(ad); Segment bc = new Segment(b, c); segments.Add(bc); Segment al = new Segment(a, l); segments.Add(al); Segment cm = new Segment(c, m); segments.Add(cm); List<Point> pts = new List<Point>(); pts.Add(d); pts.Add(l); pts.Add(m); pts.Add(b); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments(ab, cd)); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(c, d, l)), (Angle)parser.Get(new Angle(m, b, a)))); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(d, a, l)), (Angle)parser.Get(new Angle(m, c, b)))); goals.Add(new GeometricCongruentSegments(al, cm)); }
public Page66Problem16(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 66 Problem 16"; Point a = new Point("A", 1, 5); points.Add(a); Point b = new Point("B", 8, 5); points.Add(b); Point c = new Point("C", 7, 0); points.Add(c); Point d = new Point("D", 0, 0); points.Add(d); Segment ba = new Segment(b, a); segments.Add(ba); Segment bc = new Segment(b, c); segments.Add(bc); Segment ad = new Segment(a, d); segments.Add(ad); Segment bd = new Segment(b, d); segments.Add(bd); Segment cd = new Segment(c, d); segments.Add(cd); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments(ba, cd)); given.Add(new GeometricCongruentSegments(bc, ad)); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(a, b, d)), (Angle)parser.Get(new Angle(c, d, b)))); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(a, d, b)), (Angle)parser.Get(new Angle(c, b, d)))); goals.Add(new GeometricCongruentTriangles(new Triangle(a, b, d), new Triangle(c, d, b))); }
public Page156Problem36(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 156 Problem 36"; Point j = new Point("J", 0, 10); points.Add(j); Point k = new Point("K", 10, 10); points.Add(k); Point l = new Point("L", 20, 10); points.Add(l); Point m = new Point("M", 5, 0); points.Add(m); Point n = new Point("N", 15, 0); points.Add(n); Segment jm = new Segment(j, m); segments.Add(jm); Segment km = new Segment(k, m); segments.Add(km); Segment kn = new Segment(k, n); segments.Add(kn); Segment ln = new Segment(l, n); segments.Add(ln); List <Point> pts = new List <Point>(); pts.Add(j); pts.Add(k); pts.Add(l); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(m, j, k)), (Angle)parser.Get(new Angle(m, k, j)))); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(n, k, l)), (Angle)parser.Get(new Angle(n, l, k)))); given.Add(new GeometricParallel(jm, kn)); goals.Add(new GeometricParallel(km, ln)); }
//Demonstrates: congruent chords have congruent arcs public Page306Theorem7_4_1_Semicircle(bool onoff, bool complete) : base(onoff, complete) { Point o = new Point("O", 0, 0); points.Add(o); Point c = new Point("C", 15, 0); points.Add(c); Point s = new Point("S", -3, -4); points.Add(s); Point t = new Point("T", 3, 4); points.Add(t); Point u = new Point("U", 2, Math.Sqrt(21)); points.Add(u); Point a = new Point("A", 12, 4); points.Add(a); Point b = new Point("B", 18, -4); points.Add(b); Point d = new Point("D", 16, -Math.Sqrt(24)); points.Add(d); Segment st = new Segment(s, t); segments.Add(st); Segment ab = new Segment(a, b); segments.Add(ab); Segment ou = new Segment(o, u); segments.Add(ou); Segment cd = new Segment(c, d); segments.Add(cd); Circle c1 = new Circle(o, 5.0); Circle c2 = new Circle(c, 5.0); circles.Add(c1); circles.Add(c2); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments(st, ab)); Semicircle semi1 = (Semicircle)parser.Get(new Semicircle(c1, s, t, u, st)); Semicircle semi2 = (Semicircle)parser.Get(new Semicircle(c2, a, b, d, ab)); goals.Add(new GeometricCongruentArcs(semi1, semi2)); }
//Demonstrates: Tangents are perpendicular to radii public Page296Theorem7_1(bool onoff, bool complete) : base(onoff, complete) { Point o = new Point("O", 0, 0); points.Add(o); Point r = new Point("R", -3, -5); points.Add(r); Point s = new Point("S", 8, -5); points.Add(s); Point t = new Point("T", 0, -5); points.Add(t); Segment ot = new Segment(o, t); segments.Add(ot); List <Point> pnts = new List <Point>(); pnts.Add(r); pnts.Add(t); pnts.Add(s); collinear.Add(new Collinear(pnts)); Circle c = new Circle(o, 5.0); circles.Add(c); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); Segment rs = (Segment)parser.Get(new Segment(r, s)); CircleSegmentIntersection cInter = (CircleSegmentIntersection)parser.Get(new CircleSegmentIntersection(t, c, rs)); given.Add(new Strengthened(cInter, new Tangent(cInter))); Intersection inter = parser.GetIntersection(ot, rs); goals.Add(new Strengthened(inter, new Perpendicular(inter))); }
public Page273Problem39(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 273 Problem 39"; Point a = new Point("A", 1, 0); points.Add(a); Point b = new Point("B", 0, 5); points.Add(b); Point c = new Point("C", 3, 3); points.Add(c); Point d = new Point("D", 5, 6); points.Add(d); Point e = new Point("E", 6, 1); points.Add(e); Segment ab = new Segment(a, b); segments.Add(ab); Segment de = new Segment(d, e); segments.Add(de); List<Point> pts = new List<Point>(); pts.Add(a); pts.Add(c); pts.Add(d); collinear.Add(new Collinear(pts)); pts = new List<Point>(); pts.Add(b); pts.Add(c); pts.Add(e); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new SegmentBisector(parser.GetIntersection(new Segment(a, d), new Segment(b, e)), (Segment)parser.Get(new Segment(a, d)))); given.Add(new GeometricParallel(ab, de)); goals.Add(new GeometricCongruentTriangles(new Triangle(a, b, c), new Triangle(d, e, c))); }
public Page6Prob4(bool onoff, bool complete) : base(onoff, complete) { Point o = new Point("O", 0, 0); points.Add(o); Point a = new Point("A", 0, 11); points.Add(a); Point b = new Point("B", 33, 0); points.Add(b); Segment ao = new Segment(a, o); segments.Add(ao); Segment ob = new Segment(o, b); segments.Add(ob); circles.Add(new Circle(o, 11)); circles.Add(new Circle(o, 33)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); known.AddSegmentLength(ao, 11); known.AddSegmentLength(ob, 33); List <Point> wanted = new List <Point>(); wanted.Add(new Point("", 20, 1)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(968 * System.Math.PI); }
public Page223Problem26(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 223 Problem 26"; Point d = new Point("D", 0, 0); points.Add(d); Point g = new Point("G", 4, 0); points.Add(g); Point a = new Point("A", 0, 8); points.Add(a); Point h = new Point("H", 2, 4); points.Add(h); Point e = new Point("E", 0, 3); points.Add(e); Segment eh = new Segment(e, h); segments.Add(eh); Segment dg = new Segment(d, g); segments.Add(dg); List <Point> pts = new List <Point>(); pts.Add(d); pts.Add(e); pts.Add(a); collinear.Add(new Collinear(pts)); pts = new List <Point>(); pts.Add(a); pts.Add(h); pts.Add(g); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new RightAngle(a, d, g)); given.Add(new RightAngle(e, h, a)); }
public Page301Problem42(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 301 Problem 42"; Point a = new Point("A", 0, 0); points.Add(a); Point b = new Point("B", 0, 6); points.Add(b); Point c = new Point("C", 4, 3); points.Add(c); Point d = new Point("D", 8, 0); points.Add(d); Segment ab = new Segment(a, b); segments.Add(ab); Segment ac = new Segment(a, c); segments.Add(ac); Segment ad = new Segment(a, d); segments.Add(ad); List<Point> pts = new List<Point>(); pts.Add(b); pts.Add(c); pts.Add(d); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new Midpoint((InMiddle)parser.Get(new InMiddle( c, (Segment)parser.Get(new Segment(b, d)))))); given.Add(new RightAngle(b, a, d)); goals.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(b, c)), ac)); goals.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(d, c)), ac)); }
public IPage120Problem6(bool onoff, bool complete) : base(onoff, complete) { problemName = "Book I Page 120 Problem 6"; Point a = new Point("A", 2, 6); points.Add(a); Point b = new Point("B", 0, 0); points.Add(b); Point c = new Point("C", 10, 0); points.Add(c); Point d = new Point("D", 4, 0); points.Add(d); Point e = new Point("E", 12, 6); points.Add(e); Segment ab = new Segment(a, b); segments.Add(ab); Segment ad = new Segment(a, d); segments.Add(ad); Segment ac = new Segment(a, c); segments.Add(ac); Segment ae = new Segment(a, e); segments.Add(ae); Segment ec = new Segment(e, c); segments.Add(ec); Segment de = new Segment(d, e); segments.Add(de); List<Point> pts = new List<Point>(); pts.Add(b); pts.Add(d); pts.Add(c); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments(ac, ae)); given.Add(new GeometricCongruentSegments(ab, ad)); given.Add(new GeometricCongruentAngles((Angle)parser.Get(new Angle(b, a, d)), (Angle)parser.Get(new Angle(e, a, c)))); goals.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(b, c)), de)); }
public Page175ClassroomExercise03to06(bool onoff, bool complete) : base(onoff, complete) { Point e = new Point("E", 0, 0); points.Add(e); Point f = new Point("F", 6, 4); points.Add(f); Point g = new Point("G", 6, 6); points.Add(g); Point h = new Point("H", 0, 10); points.Add(h); Point m = new Point("M", 3, 2); points.Add(m); Point n = new Point("N", 3, 8); points.Add(n); Segment eh = new Segment(e, h); segments.Add(eh); Segment fg = new Segment(f, g); segments.Add(fg); List <Point> pts = new List <Point>(); pts.Add(e); pts.Add(m); pts.Add(f); collinear.Add(new Collinear(pts)); pts = new List <Point>(); pts.Add(h); pts.Add(n); pts.Add(g); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); given.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(e, m)), (Segment)parser.Get(new Segment(m, f)))); given.Add(new GeometricCongruentSegments((Segment)parser.Get(new Segment(h, n)), (Segment)parser.Get(new Segment(n, g)))); }
public Page243Problem16(bool onoff, bool complete) : base(onoff, complete) { problemName = "Page 243 Problem 16"; Point a = new Point("A", 1.6, 1.2); points.Add(a); Point b = new Point("B", 2, 6); points.Add(b); Point c = new Point("C", 17, 6); points.Add(c); Point d = new Point("D", 17.6, 13.2); points.Add(d); Point x = new Point("X", 8, 6); points.Add(x); Segment ab = new Segment(a, b); segments.Add(ab); Segment cd = new Segment(c, d); segments.Add(cd); List<Point> pts = new List<Point>(); pts.Add(b); pts.Add(x); pts.Add(c); collinear.Add(new Collinear(pts)); pts = new List<Point>(); pts.Add(a); pts.Add(x); pts.Add(d); collinear.Add(new Collinear(pts)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); }
public Page6Prob26(bool onoff, bool complete) : base(onoff, complete) { Point a = new Point("A", -1 * System.Math.Sqrt(25 / 2), 0); points.Add(a); Point b = new Point("B", 0, System.Math.Sqrt(25 / 2)); points.Add(b); Point c = new Point("C", System.Math.Sqrt(25 / 2), 0); points.Add(c); Point o = new Point("O", 0, 0); points.Add(o); Segment bc = new Segment(b, c); segments.Add(bc); Segment ca = new Segment(c, a); segments.Add(ca); Segment ab = new Segment(a, b); segments.Add(ab); Segment bo = new Segment(b, o); segments.Add(bo); List <Point> pts = new List <Point>(); pts.Add(a); pts.Add(o); pts.Add(c); collinear.Add(new Collinear(pts)); circles.Add(new Circle(o, System.Math.Sqrt(25 / 2))); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); known.AddSegmentLength(bc, 5); given.Add(new RightAngle((Angle)parser.Get(new Angle(b, o, a)))); List <Point> wanted = new List <Point>(); wanted.Add(new Point("", -2, 2)); wanted.Add(new Point("", 2, 2)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea((25 / 2) * System.Math.PI - (25 / 2)); }
// // Triangle intersecting a circle. // public Page2Col1Prob1(bool onoff, bool complete) : base(onoff, complete) { Point b = new Point("B", 0, 0); points.Add(b); Point o = new Point("O", 5, 12); points.Add(o); Point a = new Point("A", 10, 24); points.Add(a); Point c = new Point("C", 10, 0); points.Add(c); Segment ac = new Segment(a, c); segments.Add(ac); Segment bc = new Segment(b, c); segments.Add(bc); List <Point> pts = new List <Point>(); pts.Add(b); pts.Add(o); pts.Add(a); collinear.Add(new Collinear(pts)); circles.Add(new Circle(o, 13)); parser = new LiveGeometry.TutorParser.HardCodedParserMain(points, collinear, segments, circles, onoff); known.AddSegmentLength(ac, 24); known.AddSegmentLength(bc, 10); List <Point> wanted = new List <Point>(); wanted.Add(new Point("", 5, -0.5)); wanted.Add(new Point("", 11, 12)); goalRegions = parser.implied.GetAtomicRegionsByPoints(wanted); SetSolutionArea(145.4645792); problemName = "Page 2 Col 1 Problem 1"; GeometryTutorLib.EngineUIBridge.HardCodedProblemsToUI.AddProblem(problemName, points, circles, segments); }