internal override SFML.Graphics.Glyph GetGlyph(char c, int size, bool bold) { var rect = new SFML.Graphics.IntRect(); var bounds = new SFML.Graphics.FloatRect(); var advance = 0; if (DataType == BitmapFontDataType.None) { var width = Texture.Width; var height = Texture.Height; var offsetChar = (int)c - CharCodeOffset; rect.Left = Util.TwoDeeX(offsetChar * CharacterWidth, width) + CharacterOffsetX; rect.Top = Util.TwoDeeY(offsetChar * CharacterHeight, width) * CharacterHeight + CharacterOffsetY; rect.Width = CharacterWidth; rect.Height = CharacterHeight; bounds.Top = 0; bounds.Left = 0; bounds.Width = CharacterWidth; bounds.Height = CharacterHeight; advance = CharacterWidth; } else { var data = charData[c]; rect.Left = data.X; rect.Top = data.Y; rect.Width = data.Width; rect.Height = data.Height; bounds.Left = data.OffsetX; bounds.Top = data.OffsetY; bounds.Width = data.Width; bounds.Height = data.Height; advance = data.Advance; } return(new SFML.Graphics.Glyph() { Advance = advance, Bounds = bounds, TextureRect = rect }); }
public static SFML.Graphics.FloatRect GetBroadBounds(this SFML.Graphics.View view) { var rt = new SFML.Graphics.FloatRect(); var a = view.Size.X / 2; var b = view.Size.Y / 2; float c = (float)Math.Sqrt(a * a + b * b); rt.Left = view.Center.X - c; rt.Top = view.Center.Y - c; rt.Width = c * 2; rt.Height = c * 2; return(rt); }
private static SFML.Window.Vector2f GetSpriteCenter(SFML.Graphics.Shape Object) { SFML.Graphics.FloatRect AABB = Object.GetGlobalBounds(); return(new SFML.Window.Vector2f(AABB.Left + AABB.Width / 2.0f, AABB.Top + AABB.Height / 2.0f)); }
public override SFML.Graphics.Drawable[] RenderBrain(SFML.Graphics.FloatRect view) { throw new NotImplementedException(); }
public abstract SFML.Graphics.Drawable[] RenderBrain(SFML.Graphics.FloatRect view);