GraphicsPath.Flatten Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Преобразует каждую кривую в этом пути в последовательность подключенных сегментов линий.
Перегрузки
Flatten() |
Преобразует каждую кривую в этом пути в последовательность подключенных сегментов линий. |
Flatten(Matrix) |
Применяет указанное преобразование, а затем преобразует каждую кривую в этой GraphicsPath в последовательность подключенных сегментов линий. |
Flatten(Matrix, Single) |
Преобразует каждую кривую в этом GraphicsPath в последовательность подключенных сегментов линий. |
Flatten()
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
Преобразует каждую кривую в этом пути в последовательность подключенных сегментов линий.
public:
void Flatten();
public void Flatten ();
member this.Flatten : unit -> unit
Public Sub Flatten ()
Примеры
Пример см. в разделе Flatten(Matrix, Single).
Применяется к
Flatten(Matrix)
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
Применяет указанное преобразование, а затем преобразует каждую кривую в этой GraphicsPath в последовательность подключенных сегментов линий.
public:
void Flatten(System::Drawing::Drawing2D::Matrix ^ matrix);
public void Flatten (System.Drawing.Drawing2D.Matrix? matrix);
public void Flatten (System.Drawing.Drawing2D.Matrix matrix);
member this.Flatten : System.Drawing.Drawing2D.Matrix -> unit
Public Sub Flatten (matrix As Matrix)
Параметры
- matrix
- Matrix
Matrix, с помощью которого необходимо преобразовать эту GraphicsPath перед сплощением.
Примеры
Пример см. в разделе Flatten(Matrix, Single).
Применяется к
Flatten(Matrix, Single)
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
- Исходный код:
- GraphicsPath.cs
Преобразует каждую кривую в этом GraphicsPath в последовательность подключенных сегментов линий.
public:
void Flatten(System::Drawing::Drawing2D::Matrix ^ matrix, float flatness);
public void Flatten (System.Drawing.Drawing2D.Matrix? matrix, float flatness);
public void Flatten (System.Drawing.Drawing2D.Matrix matrix, float flatness);
member this.Flatten : System.Drawing.Drawing2D.Matrix * single -> unit
Public Sub Flatten (matrix As Matrix, flatness As Single)
Параметры
- matrix
- Matrix
Matrix, с помощью которого необходимо преобразовать эту GraphicsPath перед сплощением.
- flatness
- Single
Указывает максимальную разрешенную ошибку между кривой и его приближением. Значение 0.25 — значение по умолчанию. Уменьшение значения плоскости увеличит количество сегментов линии в приближении.
Примеры
Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse
объекта события OnPaint. Код выполняет следующие действия:
Создает графический путь и матрицу перевода.
Добавляет кривую к пути с помощью четырех точек.
Рисует путь (кривую) на экран, используя черное перо.
Сдвигает кривую вниз на 10 пикселей и выравнивает ее.
Рисует кривую на экран с помощью красного пера.
Обратите внимание, что красная кривая имеет плоские линии, соединяющие точки.
private:
void FlattenExample( PaintEventArgs^ e )
{
GraphicsPath^ myPath = gcnew GraphicsPath;
Matrix^ translateMatrix = gcnew Matrix;
translateMatrix->Translate( 0, 10 );
Point point1 = Point(20,100);
Point point2 = Point(70,10);
Point point3 = Point(130,200);
Point point4 = Point(180,100);
array<Point>^ points = {point1,point2,point3,point4};
myPath->AddCurve( points );
e->Graphics->DrawPath( gcnew Pen( Color::Black,2.0f ), myPath );
myPath->Flatten( translateMatrix, 10.0f );
e->Graphics->DrawPath( gcnew Pen( Color::Red,1.0f ), myPath );
}
private void FlattenExample(PaintEventArgs e)
{
GraphicsPath myPath = new GraphicsPath();
Matrix translateMatrix = new Matrix();
translateMatrix.Translate(0, 10);
Point point1 = new Point(20, 100);
Point point2 = new Point(70, 10);
Point point3 = new Point(130, 200);
Point point4 = new Point(180, 100);
Point[] points = {point1, point2, point3, point4};
myPath.AddCurve(points);
e.Graphics.DrawPath(new Pen(Color.Black, 2), myPath);
myPath.Flatten(translateMatrix, 10f);
e.Graphics.DrawPath(new Pen(Color.Red, 1), myPath);
}
Public Sub FlattenExample(ByVal e As PaintEventArgs)
Dim myPath As New GraphicsPath
Dim translateMatrix As New Matrix
translateMatrix.Translate(0, 10)
Dim point1 As New Point(20, 100)
Dim point2 As New Point(70, 10)
Dim point3 As New Point(130, 200)
Dim point4 As New Point(180, 100)
Dim points As Point() = {point1, point2, point3, point4}
myPath.AddCurve(points)
e.Graphics.DrawPath(New Pen(Color.Black, 2), myPath)
myPath.Flatten(translateMatrix, 10.0F)
e.Graphics.DrawPath(New Pen(Color.Red, 1), myPath)
End Sub
'FlattenExample