Esempio n. 1
0
        public MainWindow()
        {
            _metonicYearModel = new MetonicYearModel();
            _moonModel        = new MoonModel();
            _nodesModel       = new NodesModel();
            _sunModel         = new SunModel(_nodesModel);
            _sunCountModel    = new SunCountModel(_sunModel);
            _monthModel       = new MonthModel(_metonicYearModel, _sunModel, _moonModel);
            _dayModel         = new DayModel(_monthModel, _metonicYearModel);


            InitializeComponent();
            SetYearZero();


            CreateRenderWindow();

            var refreshRate = new TimeSpan(0, 0, 0, 0, 1000 / 60);

            this._timer = new DispatcherTimer {
                Interval = refreshRate
            };
            this._timer.Tick += Timer_Tick;
            this._timer.Start();

            _dispatcherTimer          = new DispatcherTimer();
            _dispatcherTimer.Tick    += new EventHandler(DispatcherTimer_Tick);
            _dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, 500);
        }
 public CalendarControl()
 {
     _metonicYearModel = new MetonicYearModel();
     _moonModel        = new MoonModel();
     _nodesModel       = new NodesModel();
     _sunModel         = new SunModel(_nodesModel);
     _sunCountModel    = new SunCountModel(_sunModel);
     _monthModel       = new MonthModel(_metonicYearModel, _sunModel, _moonModel);
     _dayModel         = new DayModel(_monthModel, _metonicYearModel);
 }
Esempio n. 3
0
        private static void DrawYearRing(RenderWindow app, IMetonicYearModel year)
        {
            var yearRing      = ElementDrawer.CreateRing(app, 80, new Color(0, 0, 0), true);
            var yearPegPoints = ElementDrawer.CreatePegPoints(app, yearRing, 19, (Math.PI * 2) / 19);

            Array.Reverse(yearPegPoints);
            yearPegPoints[year.GetMetonicYear() - 1].FillColor = new Color(255, 0, 0);
            foreach (var p in yearPegPoints)
            {
                app.Draw(p);
            }
        }
        private static void DrawYearRing(SKImageInfo info, SKCanvas canvas, IMetonicYearModel year)
        {
            var yearRing      = ElementDrawer.CreateRing(info, canvas, Utility.GetWidthValueFromPercentage(info, (float)6), new Color(0, 0, 0), true);
            var yearRing2     = ElementDrawer.CreateRing(info, canvas, Utility.GetWidthValueFromPercentage(info, (float)6), new Color(255, 255, 255), true, true);
            var yearPegPoints = ElementDrawer.CreatePegPoints(info, canvas, yearRing, 19);

            yearPegPoints[year.GetMetonicYear() - 1].FillColor = new Color(255, 0, 0);
            foreach (var p in yearPegPoints)
            {
                canvas.DrawCircle(p.x, p.y, p.Radius, GetPointPainter(p));
            }
        }
Esempio n. 5
0
 public DayModel(IMonthModel month, IMetonicYearModel year)
 {
     _month = month;
     _year  = year;
 }
 public MonthModel(IMetonicYearModel metonicYear, ISunModel sun, IMoonModel moon)
 {
     _metonicYear = metonicYear;
     _sun         = sun;
     _moon        = moon;
 }
Esempio n. 7
0
        public static void DrawCalendar(RenderWindow app, INodesModel nodes, ISunModel sun, IMoonModel moon, IMetonicYearModel year, IMonthModel month, IDayModel day, ISunCountModel sunCount)
        {
            ElementDrawer.CreateRing(app, 270, new Color(0, 0, 0), true);
            DrawNodeRing(app, nodes);
            DrawSunRing(app, sun);
            DrawMoonRing(app, moon);
            ElementDrawer.CreateRing(app, 210, new Color(0, 0, 0), true);
            DrawDayRing(app, day, month);
            DrawSunCountRing(app, sunCount);

            DrawMonthRing(app, month);
            DrawYearRing(app, year);
        }