本文整理汇总了C#中System.Drawing.RectangleF类的典型用法代码示例。如果您正苦于以下问题:C# RectangleF类的具体用法?C# RectangleF怎么用?C# RectangleF使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
RectangleF类属于System.Drawing命名空间,在下文中一共展示了RectangleF类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Draw
public override void Draw(System.Drawing.RectangleF dirtyRect)
{
var g = new Graphics();
// NSView does not have a background color so we just use Clear to white here
g.Clear(Color.White);
//RectangleF ClientRectangle = this.Bounds;
RectangleF ClientRectangle = dirtyRect;
// Calculate the location and size of the drawing area
// within which we want to draw the graphics:
Rectangle rect = new Rectangle((int)ClientRectangle.X, (int)ClientRectangle.Y,
(int)ClientRectangle.Width, (int)ClientRectangle.Height);
drawingRectangle = new Rectangle(rect.Location, rect.Size);
drawingRectangle.Inflate(-offset, -offset);
//Draw ClientRectangle and drawingRectangle using Pen:
g.DrawRectangle(Pens.Red, rect);
g.DrawRectangle(Pens.Black, drawingRectangle);
// Draw a line from point (3,2) to Point (6, 7)
// using the Pen with a width of 3 pixels:
Pen aPen = new Pen(Color.Green, 3);
g.DrawLine(aPen, Point2D(new PointF(3, 2)),
Point2D(new PointF(6, 7)));
g.PageUnit = GraphicsUnit.Inch;
ClientRectangle = new RectangleF(0.5f,0.5f, 1.5f, 1.5f);
aPen.Width = 1 / g.DpiX;
g.DrawRectangle(aPen, ClientRectangle);
aPen.Dispose();
g.Dispose();
}
示例2: FillRoundedRectangle
public static void FillRoundedRectangle(this Graphics g, Brush brush, RectangleF rect, float topLeftCorner, float topRightCorner, float bottomLeftCorner, float bottomRightCorner)
{
using(var gp = GraphicsUtility.GetRoundedRectangle(rect, topLeftCorner, topRightCorner, bottomLeftCorner, bottomRightCorner))
{
g.FillPath(brush, gp);
}
}
示例3: FillPill
public static void FillPill(Brush b, RectangleF rect, Graphics g)
{
if (rect.Width > rect.Height)
{
g.SmoothingMode = SmoothingMode.HighQuality;
g.FillEllipse(b, new RectangleF(rect.Left, rect.Top, rect.Height, rect.Height));
g.FillEllipse(b, new RectangleF(rect.Left + rect.Width - rect.Height, rect.Top, rect.Height, rect.Height));
var w = rect.Width - rect.Height;
var l = rect.Left + ((rect.Height) / 2);
g.FillRectangle(b, new RectangleF(l, rect.Top, w, rect.Height));
g.SmoothingMode = SmoothingMode.Default;
}
else if (rect.Width < rect.Height)
{
g.SmoothingMode = SmoothingMode.HighQuality;
g.FillEllipse(b, new RectangleF(rect.Left, rect.Top, rect.Width, rect.Width));
g.FillEllipse(b, new RectangleF(rect.Left, rect.Top + rect.Height - rect.Width, rect.Width, rect.Width));
var t = rect.Top + (rect.Width / 2);
var h = rect.Height - rect.Width;
g.FillRectangle(b, new RectangleF(rect.Left, t, rect.Width, h));
g.SmoothingMode = SmoothingMode.Default;
}
else if (rect.Width == rect.Height)
{
g.SmoothingMode = SmoothingMode.HighQuality;
g.FillEllipse(b, rect);
g.SmoothingMode = SmoothingMode.Default;
}
}
示例4: pictureBox1_MouseDown
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
Caja = new RectangleF((int)((e.X - MedCambiante.X) / (trackBar1.Value / 100.0f)),
(int)((e.Y - MedCambiante.Y) / (trackBar1.Value / 100.0f)), 0, 0);
label1.Text = "X= " + Caja.X;
label2.Text = "Y= " + Caja.Y;
}
示例5: LoadingIndicator
private LoadingIndicator() : base()
{
int ScreenWidth = Platform.ScreenWidth;
int ScreenHeight = Platform.ScreenHeight - 80;
const int Padding = 10;
const int TextWidth = 65;
const int SpinnerSize = 20;
const int SeparateWidth = 5;
const int Width = Padding + SpinnerSize + SeparateWidth + TextWidth + Padding;
const int Height = Padding + SpinnerSize + Padding;
Frame = new RectangleF((ScreenWidth - Width) / 2, ScreenHeight / 2, Width, Height);
BackgroundColor = UIColor.FromWhiteAlpha(0.5f, 0.5f);
spinner = new UIActivityIndicatorView(UIActivityIndicatorViewStyle.WhiteLarge)
{
Frame = new RectangleF(Padding, Padding, SpinnerSize, SpinnerSize)
};
label = new UILabel
{
Frame = new RectangleF(Padding + SpinnerSize + SeparateWidth, Padding, TextWidth, SpinnerSize),
Text = "Loading...",
TextColor = StyleExtensions.lightGrayText,
BackgroundColor = StyleExtensions.transparent,
AdjustsFontSizeToFitWidth = true
};
AddSubview(label);
AddSubview(spinner);
Hidden = true;
}
示例6: DrawRectangle
// Draw a carpet in the rectangle.
private void DrawRectangle(Graphics gr, int level, RectangleF rect)
{
// See if we should stop.
if (level == 0)
{
// Fill the rectangle.
gr.FillRectangle(Brushes.Blue, rect);
}
else
{
// Divide the rectangle into 9 pieces.
float wid = rect.Width / 3f;
float x0 = rect.Left;
float x1 = x0 + wid;
float x2 = x0 + wid * 2f;
float hgt = rect.Height / 3f;
float y0 = rect.Top;
float y1 = y0 + hgt;
float y2 = y0 + hgt * 2f;
// Recursively draw smaller carpets.
DrawRectangle(gr, level - 1, new RectangleF(x0, y0, wid, hgt));
DrawRectangle(gr, level - 1, new RectangleF(x1, y0, wid, hgt));
DrawRectangle(gr, level - 1, new RectangleF(x2, y0, wid, hgt));
DrawRectangle(gr, level - 1, new RectangleF(x0, y1, wid, hgt));
DrawRectangle(gr, level - 1, new RectangleF(x2, y1, wid, hgt));
DrawRectangle(gr, level - 1, new RectangleF(x0, y2, wid, hgt));
DrawRectangle(gr, level - 1, new RectangleF(x1, y2, wid, hgt));
DrawRectangle(gr, level - 1, new RectangleF(x2, y2, wid, hgt));
}
}
示例7: MyOpenGLView
public MyOpenGLView (RectangleF frame,NSOpenGLContext context) : base(frame)
{
var attribs = new object[] { NSOpenGLPixelFormatAttribute.Accelerated, NSOpenGLPixelFormatAttribute.NoRecovery, NSOpenGLPixelFormatAttribute.DoubleBuffer, NSOpenGLPixelFormatAttribute.ColorSize, 24, NSOpenGLPixelFormatAttribute.DepthSize, 16 };
pixelFormat = new NSOpenGLPixelFormat (attribs);
if (pixelFormat == null)
Console.WriteLine ("No OpenGL pixel format");
// NSOpenGLView does not handle context sharing, so we draw to a custom NSView instead
openGLContext = new NSOpenGLContext (pixelFormat, context);
openGLContext.MakeCurrentContext ();
// Synchronize buffer swaps with vertical refresh rate
openGLContext.SwapInterval = true;
// Initialize our newly created view.
InitGL ();
SetupDisplayLink ();
// Look for changes in view size
// Note, -reshape will not be called automatically on size changes because NSView does not export it to override
notificationProxy = NSNotificationCenter.DefaultCenter.AddObserver (NSView.NSViewGlobalFrameDidChangeNotification, HandleReshape);
}
示例8: GameWindow
public GameWindow(Game game, RectangleF frame) : base (frame)
{
if (game == null)
throw new ArgumentNullException("game");
_game = game;
_platform = (MacGamePlatform)_game.Services.GetService(typeof(MacGamePlatform));
//LayerRetainsBacking = false;
//LayerColorFormat = EAGLColorFormat.RGBA8;
this.AutoresizingMask = MonoMac.AppKit.NSViewResizingMask.HeightSizable
| MonoMac.AppKit.NSViewResizingMask.MaxXMargin
| MonoMac.AppKit.NSViewResizingMask.MinYMargin
| MonoMac.AppKit.NSViewResizingMask.WidthSizable;
RectangleF rect = NSScreen.MainScreen.Frame;
clientBounds = new Rectangle (0,0,(int)rect.Width,(int)rect.Height);
// Enable multi-touch
//MultipleTouchEnabled = true;
// Initialize GameTime
_updateGameTime = new GameTime ();
_drawGameTime = new GameTime ();
// Initialize _lastUpdate
_lastUpdate = DateTime.Now;
}
示例9: ViewDidLoad
public override void ViewDidLoad()
{
base.ViewDidLoad ();
// Create the chart
float margin = UserInterfaceIdiomIsPhone ? 10 : 50;
RectangleF frame = new RectangleF (margin, margin, View.Bounds.Width - 2 * margin, View.Bounds.Height - 2 * margin);
chart = new ShinobiChart (frame) {
Title = "Project Commit Punchcard",
AutoresizingMask = ~UIViewAutoresizing.None,
LicenseKey = "", // TODO: add your trail licence key here!
DataSource = new BubbleSeriesDataSource(),
YAxis = new SChartCategoryAxis {
Title = "Day",
RangePaddingHigh = new NSNumber(0.5),
RangePaddingLow = new NSNumber(0.5)
},
XAxis = new SChartNumberAxis {
Title = "Hour",
RangePaddingHigh = new NSNumber(0.5),
RangePaddingLow = new NSNumber(0.5)
}
};
View.AddSubview (chart);
}
示例10: DrawVerticalScaleGrid
/// <summary>
/// Draws grid lines corresponding to a vertical scale</summary>
/// <param name="g">The Direct2D graphics object</param>
/// <param name="transform">Graph (world) to window's client (screen) transform</param>
/// <param name="graphRect">Graph rectangle</param>
/// <param name="majorSpacing">Scale's major spacing</param>
/// <param name="lineBrush">Grid line brush</param>
public static void DrawVerticalScaleGrid(
this D2dGraphics g,
Matrix transform,
RectangleF graphRect,
int majorSpacing,
D2dBrush lineBrush)
{
double xScale = transform.Elements[0];
RectangleF clientRect = Transform(transform, graphRect);
double min = Math.Min(graphRect.Left, graphRect.Right);
double max = Math.Max(graphRect.Left, graphRect.Right);
double tickAnchor = CalculateTickAnchor(min, max);
double step = CalculateStep(min, max, Math.Abs(clientRect.Right - clientRect.Left), majorSpacing, 0.0);
if (step > 0)
{
double offset = tickAnchor - min;
offset = offset - MathUtil.Remainder(offset, step) + step;
for (double x = tickAnchor - offset; x <= max; x += step)
{
double cx = (x - graphRect.Left) * xScale + clientRect.Left;
g.DrawLine((float)cx, clientRect.Top, (float)cx, clientRect.Bottom, lineBrush);
}
}
}
示例11: MonoMacGameView
public MonoMacGameView (RectangleF frame, NSOpenGLContext context) : base(frame)
{
var attribs = new object [] {
NSOpenGLPixelFormatAttribute.Accelerated,
NSOpenGLPixelFormatAttribute.NoRecovery,
NSOpenGLPixelFormatAttribute.DoubleBuffer,
NSOpenGLPixelFormatAttribute.ColorSize, 24,
NSOpenGLPixelFormatAttribute.DepthSize, 16 };
pixelFormat = new NSOpenGLPixelFormat (attribs);
if (pixelFormat == null)
Console.WriteLine ("No OpenGL pixel format");
// NSOpenGLView does not handle context sharing, so we draw to a custom NSView instead
openGLContext = new NSOpenGLContext (pixelFormat, context);
openGLContext.MakeCurrentContext ();
// default the swap interval and displaylink
SwapInterval = true;
DisplaylinkSupported = true;
// Look for changes in view size
// Note, -reshape will not be called automatically on size changes because NSView does not export it to override
notificationProxy = NSNotificationCenter.DefaultCenter.AddObserver (NSView.GlobalFrameChangedNotification, HandleReshape);
}
示例12: Physics
public Physics(Point p, RectangleF boundingBox)
{
startPosition = p;
position = startPosition;
this.boundingBox = boundingBox;
visible = true;
}
示例13: Draw
public override void Draw()
{
float powerScaleBy = 100;
var maxPower = Math.Max(pm.PowerProvided, pm.PowerDrained);
while (maxPower >= powerScaleBy) powerScaleBy *= 2;
// Current power supply
var providedFrac = pm.PowerProvided / powerScaleBy;
lastProvidedFrac = providedFrac = float2.Lerp(lastProvidedFrac.GetValueOrDefault(providedFrac), providedFrac, .3f);
var color = Color.LimeGreen;
if (pm.PowerState == PowerState.Low)
color = Color.Orange;
if (pm.PowerState == PowerState.Critical)
color = Color.Red;
var b = RenderBounds;
var rect = new RectangleF(b.X,
b.Y + (1-providedFrac)*b.Height,
(float)b.Width,
providedFrac*b.Height);
Game.Renderer.LineRenderer.FillRect(rect, color);
var indicator = ChromeProvider.GetImage("sidebar-bits", "left-indicator");
var drainedFrac = pm.PowerDrained / powerScaleBy;
lastDrainedFrac = drainedFrac = float2.Lerp(lastDrainedFrac.GetValueOrDefault(drainedFrac), drainedFrac, .3f);
float2 pos = new float2(b.X + b.Width - indicator.size.X,
b.Y + (1-drainedFrac)*b.Height - indicator.size.Y / 2);
Game.Renderer.RgbaSpriteRenderer.DrawSprite(indicator, pos);
}
示例14: OnRenderSeparator
protected override void OnRenderSeparator(ToolStripSeparatorRenderEventArgs e)
{
// base.OnRenderSeparator(e);
if (!e.Item.IsOnDropDown)
{
int top = 9;
int left = e.Item.Width / 2; left--;
int height = e.Item.Height - top * 2;
RectangleF separator = new RectangleF(left, top, 0.5f, height);
using (LinearGradientBrush b = new LinearGradientBrush(
separator.Location,
new Point(Convert.ToInt32(separator.Left), Convert.ToInt32(separator.Bottom)),
Color.Red, Color.Black))
{
ColorBlend blend = new ColorBlend();
blend.Colors = new Color[] { ToolStripColorTable.ToolStripSplitButtonTop, ToolStripColorTable.ToolStripSplitButtonMiddle, ToolStripColorTable.ToolStripSplitButtonMiddle, ToolStripColorTable.ToolStripSplitButtonBottom };
blend.Positions = new float[] { 0.0f, 0.22f, 0.78f, 1.0f };
b.InterpolationColors = blend;
e.Graphics.FillRectangle(b, separator);
}
}
}
示例15: ViewDidLoad
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
// set the background color of the view to white
View.BackgroundColor = UIColor.White;
// instantiate a new image view that takes up the whole screen and add it to
// the view hierarchy
RectangleF imageViewFrame = new RectangleF (0, -NavigationController.NavigationBar.Frame.Height, View.Frame.Width, View.Frame.Height);
imageView = new UIImageView (imageViewFrame);
View.AddSubview (imageView);
// create our offscreen bitmap context
// size
SizeF bitmapSize = new SizeF (imageView.Frame.Size);
using (CGBitmapContext context = new CGBitmapContext (IntPtr.Zero,
(int)bitmapSize.Width, (int)bitmapSize.Height, 8,
(int)(4 * bitmapSize.Width), CGColorSpace.CreateDeviceRGB (),
CGImageAlphaInfo.PremultipliedFirst)) {
// draw our coordinates for reference
DrawCoordinateSpace (context);
// draw our flag
DrawFlag (context);
// add a label
DrawCenteredTextAtPoint (context, 384, 700, "Stars and Stripes", 60);
// output the drawing to the view
imageView.Image = UIImage.FromImage (context.ToImage ());
}
}