Пример #1
0
        public void DrawLabels(Viking.UI.Controls.SectionViewerControl _Parent)
        {
            float Scale = (float)(1.0f / _Parent.StatusMagnification);
            Vector2 Offset;

            _Parent.spriteBatch.Begin();

            for (int i = 0; i < this.Tile.Verticies.Length; i++)
            {
                GridVector2 ControlPositionScreen = _Parent.WorldToScreen(this.Tile.Verticies[i].Position.X, this.Tile.Verticies[i].Position.Y);

                Offset = _Parent.GetLabelSize(_Parent.fontArial, i.ToString());
                Offset.X /= 2f;
                Offset.Y /= 2f;

                _Parent.spriteBatch.DrawString(_Parent.fontArial,
                                        i.ToString(),
                                        new Vector2((float)ControlPositionScreen.X, (float)ControlPositionScreen.Y),
                                        this.TileColor,
                                        0,
                                        Offset,
                                        Scale,
                                        SpriteEffects.None,
                                        0);
            }

            if (this.Tile.Verticies.Length > 0)
            {
                double TileNameX = this.Tile.Bounds.Left + (this.Tile.Bounds.Width / 2);
                double TileNameY = this.Tile.Bounds.Bottom + (this.Tile.Bounds.Height / 2);
                GridVector2 NamePositionScreen = _Parent.WorldToScreen(TileNameX, TileNameY);
                Offset = _Parent.GetLabelSize(_Parent.fontArial, this.Tile.TextureFullPath);
                Offset.X /= 2f;
                Offset.Y /= 2f;

                _Parent.spriteBatch.DrawString(_Parent.fontArial,
                                        this.Tile.TextureFullPath.ToString(),
                                        new Vector2((float)NamePositionScreen.X, (float)NamePositionScreen.Y),
                                        this.TileColor,
                                        0,
                                        Offset,
                                        Scale,
                                        SpriteEffects.None,
                                        0);
            }

            _Parent.spriteBatch.End();
        }
Пример #2
0
        public void DrawLabels(Viking.UI.Controls.SectionViewerControl _Parent)
        {
            float Scale = (float)(1.0f / _Parent.StatusMagnification) * 10;

            _Parent.spriteBatch.Begin();

            for (int i = 0; i < MapPoints.Length; i++ )
            {
                GridVector2 ControlPositionScreen = _Parent.WorldToScreen(this.MapPoints[i].ControlPoint.X, this.MapPoints[i].ControlPoint.Y);
                GridVector2 MappedPositionScreen = _Parent.WorldToScreen(this.MapPoints[i].MappedPoint.X, this.MapPoints[i].MappedPoint.Y);

                Vector2 Offset = _Parent.GetLabelSize(_Parent.fontArial, i.ToString());
                Offset.X /= 2f;
                Offset.Y /= 2f;

                _Parent.spriteBatch.DrawString(_Parent.fontArial,
                                        i.ToString(),
                                        new Vector2((float)ControlPositionScreen.X, (float)ControlPositionScreen.Y),
                                        ControlColor,
                                        0,
                                        Offset,
                                        Scale,
                                        SpriteEffects.None,
                                        0);

                _Parent.spriteBatch.DrawString(_Parent.fontArial,
                                       i.ToString(),
                                       new Vector2((float)MappedPositionScreen.X, (float)MappedPositionScreen.Y),
                                       MappedColor,
                                       0,
                                       Offset,
                                       Scale,
                                       SpriteEffects.None,
                                       0);
            }

            _Parent.spriteBatch.DrawString(_Parent.fontArial,
                                        "Control Points",
                                        new Vector2((float)15, (float)15),
                                        ControlColor,
                                        0,
                                        new Vector2(),
                                        .2f,
                                        SpriteEffects.None,
                                        0);

            Vector2 LegendSize = _Parent.GetLabelSize(_Parent.fontArial,  "Control Points");

            _Parent.spriteBatch.DrawString(_Parent.fontArial,
                                   "Mapped Points",
                                   new Vector2((float)15, (float) 3 + 15 + LegendSize.Y),
                                   MappedColor,
                                   0,
                                   new Vector2(),
                                   .2f,
                                   SpriteEffects.None,
                                   0);

            _Parent.spriteBatch.End();
        }