Learn how to draw shapes, such as ellipses, rectangles, polygons, and paths. Path classWindows. Shapes namespaceWindows. Shape classes and Geometry classes. The main difference between these classes is that a Shape has a brush associated with it and can be rendered to the screen, and a Geometry simply defines a region of space and is not rendered unless it helps contribute information to another UI property.
This topic covers mainly the Shape classes. For a Shape to render to the app canvas, you must associate a Brush with it. Set the Fill большой зрелый зат of the Shape to the Brush you want.
For more info about brushes, see Using brushes. A Stroke also requires a Brush that defines its appearance, большой зрелый зат should большой зрелый зат a non-zero value for StrokeThickness. An Ellipse is a shape with a curved perimeter. When an Ellipse is positioned in a UI layout, its size is assumed to be the same as a rectangle with that Width and Height ; большой зрелый зат area outside the perimeter does not have rendering but still is part of its layout slot size.
The next example creates a Rectangle with a Width of and a Height of We set the StrokeThickness to 3. We set the RadiusX property to 50 and the RadiusY property to 10, which gives the Rectangle rounded corners. If большой зрелый зат intention is to create a rectangle shape around other content, it might be better to use Border because it can have child content and will automatically size around that content, rather than using the fixed dimensions for height and большой зрелый зат like Rectangle does.
A Polygon is a shape with a boundary defined by an arbitrary number of points. The boundary is created by connecting a line from one point to the next, with the last point connected to the first point. The Points большой зрелый зат defines the collection of points that make up the boundary.
The next example creates a Polygon with 4 points set to 10,60,andFor example, a Point is part of the event data for touch events, so you can know exactly where in a coordinate space the touch action occurred. A Line is simply a line drawn between two points in coordinate space. A Line ignores any value provided for Fillbecause it has no interior space. This enables minimal markup for большой зрелый зат or vertical lines.
You could then use a TranslateTransform to move the entire Lineif you wanted it to start at a point большой зрелый зат than 0,0. A Polyline is similar to a Polygon in that the boundary of the shape is defined by a set of points, except the last point in a Polyline is not connected to the first point. If you specify a Fill of a Большой зрелый затthe Fill paints the interior space of the shape, even if the start point and end point of the Points set for the Polyline do not intersect.
If you do not specify a Fillthen the Polyline is similar to what would have rendered if you had specified several большой зрелый зат Line elements where the start points and end points of consecutive lines intersected.
Notice that the first and last points are not connected by the Stroke outline as they are in a Polygon. A Path is the большой зрелый зат versatile Shape because you can use it to define an arbitrary geometry. But with this versatility comes complexity. You define the geometry of a path with the Data property. There are two techniques большой зрелый зат setting Data:. This example shows a Path that might have resulted from using Blend for Visual Studio to produce just a few vector shapes and then saving the result as XAML.
The total Path consists of a Bezier curve segment and a line segment. The example is mainly intended to give you some examples of what большой зрелый зат exist in the Path. Data serialization format and what the numbers represent. This Data begins with the move command, indicated by "M", which establishes an absolute start point for the path. The first segment is a cubic Bezier curve that begins atand ends at, which is drawn by using the two control points ,25 andThis segment is indicated by the "C" command in the Data attribute string.
The second segment begins with an absolute horizontal line command "H", which большой зрелый зат a line drawn from the preceding subpath endpointto a new endpointThe next example shows a usage of the other technique we discussed: This example exercises some of the contributing geometry types that can be used as part of a PathGeometry: PathFigure and the various elements that can be a segment in PathFigure.
Fill and Stroke for shapes For a Shape to render большой зрелый зат the app canvas, you must associate a Brush with it. Ellipse An Ellipse is a shape with a curved perimeter. Rectangle A Rectangle is a four-sided shape with its opposite sides being equal. Polygon A Polygon is a shape with a boundary defined by an arbitrary number of points.
Point 10, ; points. Point 60, ; points. Point; points. Point; polygon1. Line A Line is simply a line drawn between two points in coordinate space. Add line1 ; Polyline A Polyline is similar to a Polygon in that the boundary of the shape is defined by большой зрелый зат set of points, except the last point in a Polyline is not connected to the first point.