Ejemplo n.º 1
0
        public ActionResult Index(BezierCurveModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    IBezierCurve cubicBezierCurve = CurveFactory.CreateCubicBezierCurve();

                    Point[] interMediapoints = new Point[] {
                        new Point {
                            X = model.pointP1_X, Y = model.pointP1_Y
                        },
                        new Point {
                            X = model.pointP2_X, Y = model.pointP2_Y
                        },
                        new Point {
                            X = model.pointP3_X, Y = model.pointP3_Y
                        },
                        new Point {
                            X = model.pointP4_X, Y = model.pointP4_Y
                        }
                    };

                    PointF[] result = Curves.BezierCurve(cubicBezierCurve, interMediapoints, 1 / model.interval);
                    model.result = ConvertArrayToString(result);
                }

                return(View(model));
            }
            catch (Exception ex)
            {
                throw new Exception("Failed to calculate Bezier Curve.", ex);
            }
        }
Ejemplo n.º 2
0
        public void TestMethod1()
        {
            IBezierCurve cubicBezierCurve = CurveFactory.CreateCubicBezierCurve();
            float        interval         = 10;

            Point[] interMediapoints = new Point[] { new Point {
                                                         X = 0, Y = 0
                                                     }, new Point {
                                                         X = 1, Y = 2
                                                     }, new Point {
                                                         X = 2, Y = 2
                                                     }, new Point {
                                                         X = 4, Y = 0
                                                     } };
            PointF[] curvePoints = Curves.BezierCurve(cubicBezierCurve, interMediapoints, 1 / interval);

            Assert.IsTrue(curvePoints.Length == interval);
        }