Esempio n. 1
0
        protected virtual void CompileMinuteHand(SuperGumpLayout layout, Point2D center)
        {
            layout.Add(
                "clock/hand/minute",
                () =>
            {
                var ma  = 2.0f * Math.PI * (Time.Minutes + Time.Seconds / 60.0f) / 60.0f;
                var mhp = center.Clone2D((int)(Radius * Math.Sin(ma)), (int)(-Radius * Math.Cos(ma)));

                AddLine(center, mhp, ColorMinuteHand, 3);
            });
        }
Esempio n. 2
0
        protected virtual void CompileSecondHand(SuperGumpLayout layout, Point2D center)
        {
            layout.Add(
                "clock/hand/second",
                () =>
            {
                var sa  = 2.0f * Math.PI * Time.Seconds / 60.0f;
                var shp = center.Clone2D((int)(Radius * Math.Sin(sa)), (int)(-Radius * Math.Cos(sa)));

                AddLine(center, shp, ColorSecondHand, 1);
            });
        }
Esempio n. 3
0
        protected virtual void CompileHourHand(SuperGumpLayout layout, Point2D center)
        {
            layout.Add(
                "clock/hand/hour",
                () =>
            {
                var ha  = 2.0f * Math.PI * (Time.Hours + Time.Minutes / 60.0f) / 12.0f;
                var hhp = center.Clone2D((int)(Radius * Math.Sin(ha) / 1.5f), (int)(-Radius * Math.Cos(ha) / 1.5f));

                AddLine(center, hhp, ColorHourHand, 3);
            });
        }
Esempio n. 4
0
        protected virtual void CompileSecondHand(SuperGumpLayout layout, Point2D center)
        {
            layout.Add(
                "clock/hand/second",
                () =>
            {
                var sa  = 2.0f * Math.PI * Time.Seconds / 60.0f;
                var shp = center.Clone2D((int)(Radius * Math.Sin(sa)), (int)(-Radius * Math.Cos(sa)));

                foreach (var p in center.GetLine2D(shp))
                {
                    AddHtml(p.X, p.Y, 1, 1, " ".WrapUOHtmlBG(ColorSecondHand), false, false);
                }
            });
        }
Esempio n. 5
0
        protected virtual void CompileMinuteHand(SuperGumpLayout layout, Point2D center)
        {
            layout.Add(
                "clock/hand/minute",
                () =>
            {
                var ma  = 2.0f * Math.PI * (Time.Minutes + Time.Seconds / 60.0f) / 60.0f;
                var mhp = center.Clone2D((int)(Radius * Math.Sin(ma)), (int)(-Radius * Math.Cos(ma)));

                foreach (var p in center.GetLine2D(mhp))
                {
                    AddHtml(p.X - 1, p.Y - 1, 3, 3, " ".WrapUOHtmlBG(ColorMinuteHand), false, false);
                }
            });
        }
Esempio n. 6
0
        protected virtual void CompileHourHand(SuperGumpLayout layout, Point2D center)
        {
            layout.Add(
                "clock/hand/hour",
                () =>
            {
                var ha  = 2.0f * Math.PI * (Time.Hours + Time.Minutes / 60.0f) / 12.0f;
                var hhp = center.Clone2D((int)(Radius * Math.Sin(ha) / 1.5f), (int)(-Radius * Math.Cos(ha) / 1.5f));

                foreach (var p in center.GetLine2D(hhp))
                {
                    AddHtml(p.X - 1, p.Y - 1, 3, 3, " ".WrapUOHtmlBG(ColorHourHand), false, false);
                }
            });
        }
Esempio n. 7
0
        public override void AppendTo(IGumpWriter disp)
        {
            var first = true;

            if (_Background)
            {
                disp.AppendLayout(_Layout1A);
                disp.AppendLayout(_X);
                disp.AppendLayout(_Y);
                disp.AppendLayout(1417);

                if (_BackgroundHue > 0)
                {
                    disp.AppendLayout(_Layout1Hue);
                    disp.AppendLayoutNS(FixHue(_BackgroundHue));
                }

                first = false;
            }

            if (_Face)
            {
                disp.AppendLayout(first ? _Layout1A : _Layout1B);
                disp.AppendLayout(_X + 33);
                disp.AppendLayout(_Y + 33);
                disp.AppendLayout(1210);

                if (_FaceHue > 0)
                {
                    disp.AppendLayout(_Layout1Hue);
                    disp.AppendLayoutNS(FixHue(_FaceHue));
                }

                first = false;
            }

            if (_Numbers)
            {
                for (var number = 1; number <= 12; number++)
                {
                    AppendTo(disp, ref first, number, _NumbersColor);
                }
            }

            var center = new Point2D(_X + 40, _Y + 40);

            if (_Hours)
            {
                var ha = 2.0f * Math.PI * (_Time.Hour + _Time.Minute / 60.0f) / 12.0f;
                var hl = center.GetLine2D(center.Clone2D((int)(40 * Math.Sin(ha) / 1.5f), (int)(-40 * Math.Cos(ha) / 1.5f)));

                AppendTo(disp, ref first, hl, 3, _HoursColor);
            }

            if (_Minutes)
            {
                var ma = 2.0f * Math.PI * (_Time.Minute + _Time.Second / 60.0f) / 60.0f;
                var ml = center.GetLine2D(center.Clone2D((int)(40 * Math.Sin(ma)), (int)(-40 * Math.Cos(ma))));

                AppendTo(disp, ref first, ml, 3, _MinutesColor);
            }

            if (_Seconds)
            {
                var sa = 2.0f * Math.PI * _Time.Second / 60.0f;
                var sl = center.GetLine2D(center.Clone2D((int)(40 * Math.Sin(sa)), (int)(-40 * Math.Cos(sa))));

                AppendTo(disp, ref first, sl, 1, _SecondsColor);
            }

            if (first)
            {
                disp.AppendLayout(_Layout2A);
                disp.AppendLayout(_X);
                disp.AppendLayout(_Y);
                disp.AppendLayout(Width);
                disp.AppendLayout(Height);
                disp.AppendLayout(Parent.Intern(" ".WrapUOHtmlBG(Color.Transparent)));
                disp.AppendLayout(false);
                disp.AppendLayout(false);
            }
        }
Esempio n. 8
0
        public override string Compile()
        {
            var compiled = String.Empty;

            if (_Background)
            {
                if (_BackgroundHue <= 0)
                {
                    compiled += String.Format(_Format1A, _X, _Y, 1417);
                }
                else
                {
                    compiled += String.Format(_Format1B, _X, _Y, 1417, FixHue(_BackgroundHue));
                }
            }

            if (_Face)
            {
                if (_FaceHue <= 0)
                {
                    compiled += String.Format(_Format1A, _X + 33, _Y + 33, 1210);
                }
                else
                {
                    compiled += String.Format(_Format1B, _X + 33, _Y + 33, 1210, FixHue(_FaceHue));
                }
            }

            if (_Numbers)
            {
                for (var number = 1; number <= 12; number++)
                {
                    compiled += Compile(number, _NumbersColor);
                }
            }

            var center = new Point2D(_X + 40, _Y + 40);

            if (_Hours)
            {
                var ha = 2.0f * Math.PI * (_Time.Hour + _Time.Minute / 60.0f) / 12.0f;
                var hl = center.GetLine2D(center.Clone2D((int)(40 * Math.Sin(ha) / 1.5f), (int)(-40 * Math.Cos(ha) / 1.5f)));

                compiled += Compile(hl, 3, _HoursColor);
            }

            if (_Minutes)
            {
                var ma = 2.0f * Math.PI * (_Time.Minute + _Time.Second / 60.0f) / 60.0f;
                var ml = center.GetLine2D(center.Clone2D((int)(40 * Math.Sin(ma)), (int)(-40 * Math.Cos(ma))));

                compiled += Compile(ml, 3, _MinutesColor);
            }

            if (_Seconds)
            {
                var sa = 2.0f * Math.PI * _Time.Second / 60.0f;
                var sl = center.GetLine2D(center.Clone2D((int)(40 * Math.Sin(sa)), (int)(-40 * Math.Cos(sa))));

                compiled += Compile(sl, 1, _SecondsColor);
            }

            if (String.IsNullOrWhiteSpace(compiled))
            {
                compiled = String.Format(_Format2, _X, _Y, Width, Height, Parent.Intern(" ".WrapUOHtmlBG(Color.Transparent)));
            }

            return(compiled);
        }
Esempio n. 9
0
        public virtual void AddClockBasic(
            int x,
            int y,
            DateTime time,
            bool bg         = true,
            int bgHue       = 0,
            bool center     = true,
            int centerHue   = 0,
            bool num        = true,
            int numStyle    = 0,
            Color?numColor  = null,
            bool hour       = true,
            Color?hourColor = null,
            bool min        = true,
            Color?minColor  = null,
            bool sec        = true,
            Color?secColor  = null)
        {
            var b = new Rectangle2D(x, y, 80, 80);
            var c = new Point2D(b.X + (b.Width / 2), b.Y + (b.Height / 2));

            if (bg)
            {
                AddImage(b.X, b.Y, 1417, bgHue);
            }

            if (center)
            {
                AddImage(c.X - 7, c.Y - 7, 1210, centerHue);
            }

            if (num)
            {
                for (int i = 1; i <= 12; i++)
                {
                    var n = i.ToString(CultureInfo.InvariantCulture);

                    switch (numStyle)
                    {
                    case 1:
                        n = n.WrapUOHtmlTag("SMALL");
                        break;

                    case 2:
                        n = n.WrapUOHtmlTag("BIG");
                        break;
                    }

                    AddHtml(
                        (c.X - 10) + (int)(-1 * (40 * Math.Cos((Math.PI / 180.0f) * (i * 30 + 90)))),
                        (c.Y - 10) + (int)(-1 * (40 * Math.Sin((Math.PI / 180.0f) * (i * 30 + 90)))),
                        20,
                        40,
                        n.WrapUOHtmlTag("B").WrapUOHtmlTag("CENTER").WrapUOHtmlColor(numColor ?? DefaultHtmlColor),
                        false,
                        false);
                }
            }

            var h = time.Hour;
            var m = time.Minute;
            var s = time.Second;

            if (hour)
            {
                var ha  = 2.0f * Math.PI * (h + m / 60.0f) / 12.0f;
                var hhp = c.Clone2D((int)(40 * Math.Sin(ha) / 1.5f), (int)(-40 * Math.Cos(ha) / 1.5f));

                foreach (var p in c.GetLine2D(hhp))
                {
                    AddHtml(p.X - 1, p.Y - 1, 3, 3, " ".WrapUOHtmlBG(hourColor ?? DefaultHtmlColor), false, false);
                }
            }

            if (min)
            {
                var ma  = 2.0f * Math.PI * (m + s / 60.0f) / 60.0f;
                var mhp = c.Clone2D((int)(40 * Math.Sin(ma)), (int)(-40 * Math.Cos(ma)));

                foreach (var p in c.GetLine2D(mhp))
                {
                    AddHtml(p.X - 1, p.Y - 1, 3, 3, " ".WrapUOHtmlBG(minColor ?? DefaultHtmlColor), false, false);
                }
            }

            if (!sec)
            {
                return;
            }

            var sa  = 2.0f * Math.PI * s / 60.0f;
            var shp = c.Clone2D((int)(40 * Math.Sin(sa)), (int)(-40 * Math.Cos(sa)));

            foreach (var p in c.GetLine2D(shp))
            {
                AddHtml(p.X, p.Y, 1, 1, " ".WrapUOHtmlBG(secColor ?? DefaultHtmlColor), false, false);
            }
        }