public void Draw(IRenderingContext renderContext, int layer, string text, Point position) { if (charTex == null) charTex = renderContext.LoadResource(info.ImagePath); if (!info.CaseSensitive) { text = text.ToUpper(); } int xpos = position.X; foreach (char c in text) { if (c == ' ') { xpos += info.CharWidth; continue; } var location = info[c]; if (location != null) { renderContext.Draw(charTex, layer, new Point(xpos, position.Y), new Rectangle(location.Value.X, location.Value.Y, info.CharWidth, info.CharWidth)); xpos += info.CharWidth; } } }
public void Draw(IRenderingContext context, int layer, float positionX, float positionY) { if (!Visible || Count == 0 || context == null) { return; } if (texture == null) { texture = context.LoadResource(SheetPath, PaletteName); } bool flipHorizontal = HorizontalFlip ^ Reversed; bool flipVertical = VerticalFlip; int hx = (HorizontalFlip ^ Reversed) ? Width - HotSpot.X : HotSpot.X; int hy = VerticalFlip ? Height - HotSpot.Y : HotSpot.Y; var drawTexture = this.texture; context.Draw(drawTexture, layer, new Common.Geometry.Point((int)(positionX - hx), (int)(positionY - hy)), new Common.Geometry.Rectangle(CurrentFrame.SheetLocation.X, CurrentFrame.SheetLocation.Y, CurrentFrame.SheetLocation.Width, CurrentFrame.SheetLocation.Height), flipHorizontal, flipVertical); }
public void Draw(IRenderingContext renderContext, int layer, string text, Point position) { if (charTex == null) { charTex = renderContext.LoadResource(info.ImagePath); } if (!info.CaseSensitive) { text = text.ToUpper(); } int xpos = position.X; foreach (char c in text) { if (c == ' ') { xpos += info.CharWidth; continue; } var location = info[c]; if (location != null) { renderContext.Draw(charTex, layer, new Point(xpos, position.Y), new Rectangle(location.Value.X, location.Value.Y, info.CharWidth, info.CharWidth)); xpos += info.CharWidth; } } }
private void Draw(IRenderingContext context, float positionX, float positionY) { if (meterTexture == null) { meterTexture = context.LoadResource(this.info.Background); bounds = new RectangleF(positionX, positionY, meterTexture.Width, meterTexture.Height); } if (tickTexture == null) { tickTexture = context.LoadResource(this.info.TickImage); } if (tickTexture != null) { int i = 0; int ticks = (int)Math.Ceiling(value / tickSize); // prevent float errors if (ticks > 28) { ticks = 28; } if (meterTexture != null) { context.Draw(meterTexture, 4, new Common.Geometry.Point((int)positionX, (int)positionY)); } if (horizontal) { for (int y = (int)positionX; i < ticks; i++, y += tickTexture.Width) { context.Draw(tickTexture, 4, new Common.Geometry.Point(y, (int)positionY)); } } else { for (int y = 54 + (int)positionY; i < ticks; i++, y -= tickTexture.Height) { context.Draw(tickTexture, 4, new Common.Geometry.Point((int)(positionX + tickOffset.X), (int)(y + tickOffset.Y))); } } } }
private void Draw(IRenderingContext context, float positionX, float positionY) { if (meterTexture == null) { meterTexture = context.LoadResource(this.info.Background); bounds = new RectangleF(positionX, positionY, meterTexture.Width, meterTexture.Height); } if (tickTexture == null) tickTexture = context.LoadResource(this.info.TickImage); if (tickTexture != null) { int i = 0; int ticks = (int)Math.Ceiling(value / tickSize); // prevent float errors if (ticks > 28) ticks = 28; if (meterTexture != null) context.Draw(meterTexture, 4, new Common.Geometry.Point((int)positionX, (int)positionY)); if (horizontal) { for (int y = (int)positionX; i < ticks; i++, y += tickTexture.Width) { context.Draw(tickTexture, 4, new Common.Geometry.Point(y, (int)positionY)); } } else { for (int y = 54 + (int)positionY; i < ticks; i++, y -= tickTexture.Height) { context.Draw(tickTexture, 4, new Common.Geometry.Point((int)(positionX + tickOffset.X), (int)(y + tickOffset.Y))); } } } }