Graphics.IsVisible Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Указывает, содержится ли точка, указанная парой координат, в видимой области клипа этого Graphics.
Перегрузки
IsVisible(Single, Single, Single, Single) |
Указывает, содержится ли прямоугольник, заданный парой координат, шириной и высотой, в видимой области клипа этого Graphics. |
IsVisible(Int32, Int32, Int32, Int32) |
Указывает, содержится ли прямоугольник, заданный парой координат, шириной и высотой, в видимой области клипа этого Graphics. |
IsVisible(Int32, Int32) |
Указывает, содержится ли точка, указанная парой координат, в видимой области клипа этого Graphics. |
IsVisible(Single, Single) |
Указывает, содержится ли точка, указанная парой координат, в видимой области клипа этого Graphics. |
IsVisible(Rectangle) |
Указывает, содержится ли прямоугольник, указанный структурой Rectangle, в видимой области клипа этого Graphics. |
IsVisible(PointF) |
Указывает, содержится ли указанная структура PointF в видимой области клипа этого Graphics. |
IsVisible(Point) |
Указывает, содержится ли указанная структура Point в видимой области клипа этого Graphics. |
IsVisible(RectangleF) |
Указывает, содержится ли прямоугольник, указанный структурой RectangleF, в видимой области клипа этого Graphics. |
IsVisible(Single, Single, Single, Single)
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
Указывает, содержится ли прямоугольник, заданный парой координат, шириной и высотой, в видимой области клипа этого Graphics.
public:
bool IsVisible(float x, float y, float width, float height);
public bool IsVisible (float x, float y, float width, float height);
member this.IsVisible : single * single * single * single -> bool
Public Function IsVisible (x As Single, y As Single, width As Single, height As Single) As Boolean
Параметры
- x
- Single
Координата x левого верхнего угла прямоугольника для проверки видимости.
- y
- Single
Координата y верхнего левого угла прямоугольника для проверки видимости.
- width
- Single
Ширина прямоугольника для проверки видимости.
- height
- Single
Высота прямоугольника для проверки видимости.
Возвращаемое значение
true
, если прямоугольник, определенный x
, y
, width
и height
, содержится в видимой области клипа этого Graphics; в противном случае false
.
Примеры
Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse
, который является параметром обработчика событий Paint. Код выполняет следующие действия:
Создает прямоугольную область вырезки и задает ее в качестве области вырезки для графического объекта формы с помощью Replace.
Создает расположение и размер двух прямоугольников, один внутри области вырезки и один за пределами.
Проверяет каждый прямоугольник для видимости и рисует только видимый.
Результатом является один небольшой красный прямоугольник, который находится в области клипа.
public:
void IsVisible4Float( PaintEventArgs^ e )
{
// Set clip region.
System::Drawing::Region^ clipRegion = gcnew System::Drawing::Region( Rectangle(50,50,100,100) );
e->Graphics->SetClip( clipRegion, CombineMode::Replace );
// Set up coordinates of rectangles.
float x1 = 100.0F;
float y1 = 100.0F;
float width1 = 20.0F;
float height1 = 20.0F;
float x2 = 200.0F;
float y2 = 200.0F;
float width2 = 20.0F;
float height2 = 20.0F;
// If rectangle is visible, fill it.
if ( e->Graphics->IsVisible( x1, y1, width1, height1 ) )
{
e->Graphics->FillRectangle( gcnew SolidBrush( Color::Red ), x1, y1, width1, height1 );
}
if ( e->Graphics->IsVisible( x2, y2, width2, height2 ) )
{
e->Graphics->FillRectangle( gcnew SolidBrush( Color::Blue ), x2, y2, width2, height2 );
}
}
private void IsVisible4Float(PaintEventArgs e)
{
// Set clip region.
Region clipRegion = new Region(new Rectangle(50, 50, 100, 100));
e.Graphics.SetClip(clipRegion, CombineMode.Replace);
// Set up coordinates of rectangles.
float x1 = 100.0F;
float y1 = 100.0F;
float width1 = 20.0F;
float height1 = 20.0F;
float x2 = 200.0F;
float y2 = 200.0F;
float width2 = 20.0F;
float height2 = 20.0F;
// If rectangle is visible, fill it.
if (e.Graphics.IsVisible(x1, y1, width1, height1))
{
e.Graphics.FillRectangle(new SolidBrush(Color.Red), x1, y1, width1, height1);
}
if (e.Graphics.IsVisible(x2, y2, width2, height2))
{
e.Graphics.FillRectangle(new SolidBrush(Color.Blue), x2, y2, width2, height2);
}
}
Private Sub IsVisible4Float(ByVal e As PaintEventArgs)
' Set clip region.
Dim clipRegion As New [Region](New Rectangle(50, 50, 100, 100))
e.Graphics.SetClip(clipRegion, CombineMode.Replace)
' Set up coordinates of rectangles.
Dim x1 As Single = 100.0F
Dim y1 As Single = 100.0F
Dim width1 As Single = 20.0F
Dim height1 As Single = 20.0F
Dim x2 As Single = 200.0F
Dim y2 As Single = 200.0F
Dim width2 As Single = 20.0F
Dim height2 As Single = 20.0F
' If rectangle is visible, fill it.
If e.Graphics.IsVisible(x1, y1, width1, height1) Then
e.Graphics.FillRectangle(New SolidBrush(Color.Red), x1, y1, _
width1, height1)
End If
If e.Graphics.IsVisible(x2, y2, width2, height2) Then
e.Graphics.FillRectangle(New SolidBrush(Color.Blue), x2, y2, _
width2, height2)
End If
End Sub
Применяется к
IsVisible(Int32, Int32, Int32, Int32)
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
Указывает, содержится ли прямоугольник, заданный парой координат, шириной и высотой, в видимой области клипа этого Graphics.
public:
bool IsVisible(int x, int y, int width, int height);
public bool IsVisible (int x, int y, int width, int height);
member this.IsVisible : int * int * int * int -> bool
Public Function IsVisible (x As Integer, y As Integer, width As Integer, height As Integer) As Boolean
Параметры
- x
- Int32
Координата x левого верхнего угла прямоугольника для проверки видимости.
- y
- Int32
Координата y верхнего левого угла прямоугольника для проверки видимости.
- width
- Int32
Ширина прямоугольника для проверки видимости.
- height
- Int32
Высота прямоугольника для проверки видимости.
Возвращаемое значение
true
, если прямоугольник, определенный x
, y
, width
и height
, содержится в видимой области клипа этого Graphics; в противном случае false
.
Примеры
Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse
, который является параметром обработчика событий Paint. Код выполняет следующие действия:
Создает прямоугольную область вырезки и задает ее в качестве области вырезки для графического объекта формы с помощью Replace.
Создает расположение и размер двух прямоугольников, один внутри области вырезки и один за пределами.
Проверяет каждый прямоугольник для видимости и рисует только видимый.
Результатом является один небольшой красный прямоугольник, который находится в области клипа.
public:
void IsVisible4Int( PaintEventArgs^ e )
{
// Set clip region.
System::Drawing::Region^ clipRegion = gcnew System::Drawing::Region( Rectangle(50,50,100,100) );
e->Graphics->SetClip( clipRegion, CombineMode::Replace );
// Set up coordinates of rectangles.
int x1 = 100;
int y1 = 100;
int width1 = 20;
int height1 = 20;
int x2 = 200;
int y2 = 200;
int width2 = 20;
int height2 = 20;
// If rectangle is visible, fill it.
if ( e->Graphics->IsVisible( x1, y1, width1, height1 ) )
{
e->Graphics->FillRectangle( gcnew SolidBrush( Color::Red ), x1, y1, width1, height1 );
}
if ( e->Graphics->IsVisible( x2, y2, width2, height2 ) )
{
e->Graphics->FillRectangle( gcnew SolidBrush( Color::Blue ), x2, y2, width2, height2 );
}
}
private void IsVisible4Int(PaintEventArgs e)
{
// Set clip region.
Region clipRegion = new Region(new Rectangle(50, 50, 100, 100));
e.Graphics.SetClip(clipRegion, CombineMode.Replace);
// Set up coordinates of rectangles.
int x1 = 100;
int y1 = 100;
int width1 = 20;
int height1 = 20;
int x2 = 200;
int y2 = 200;
int width2 = 20;
int height2 = 20;
// If rectangle is visible, fill it.
if (e.Graphics.IsVisible(x1, y1, width1, height1))
{
e.Graphics.FillRectangle(new SolidBrush(Color.Red), x1, y1, width1, height1);
}
if (e.Graphics.IsVisible(x2, y2, width2, height2))
{
e.Graphics.FillRectangle(new SolidBrush(Color.Blue), x2, y2, width2, height2);
}
}
Private Sub IsVisible4Int(ByVal e As PaintEventArgs)
' Set clip region.
Dim clipRegion As New [Region](New Rectangle(50, 50, 100, 100))
e.Graphics.SetClip(clipRegion, CombineMode.Replace)
' Set up coordinates of rectangles.
Dim x1 As Integer = 100
Dim y1 As Integer = 100
Dim width1 As Integer = 20
Dim height1 As Integer = 20
Dim x2 As Integer = 200
Dim y2 As Integer = 200
Dim width2 As Integer = 20
Dim height2 As Integer = 20
' If rectangle is visible, fill it.
If e.Graphics.IsVisible(x1, y1, width1, height1) Then
e.Graphics.FillRectangle(New SolidBrush(Color.Red), x1, y1, _
width1, height1)
End If
If e.Graphics.IsVisible(x2, y2, width2, height2) Then
e.Graphics.FillRectangle(New SolidBrush(Color.Blue), x2, y2, _
width2, height2)
End If
End Sub
Применяется к
IsVisible(Int32, Int32)
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
Указывает, содержится ли точка, указанная парой координат, в видимой области клипа этого Graphics.
public:
bool IsVisible(int x, int y);
public bool IsVisible (int x, int y);
member this.IsVisible : int * int -> bool
Public Function IsVisible (x As Integer, y As Integer) As Boolean
Параметры
- x
- Int32
Координата x точки для проверки видимости.
- y
- Int32
Координата y точки для проверки видимости.
Возвращаемое значение
true
, если точка, определенная x
и параметрами y
, содержится в видимой области клипа этого Graphics; в противном случае false
.
Примеры
Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse
, который является параметром обработчика событий Paint. Код выполняет следующие действия:
Создает прямоугольную область вырезки и задает ее в качестве области вырезки для графического объекта формы с помощью Replace.
Создает две точки, один внутри области вырезки и один за пределами.
Проверяет каждую из точек видимости и рисует только видимую.
Результатом является один небольшой красный круг, который находится в области клипа.
public:
void IsVisibleInt( PaintEventArgs^ e )
{
// Set clip region.
System::Drawing::Region^ clipRegion = gcnew System::Drawing::Region( Rectangle(50,50,100,100) );
e->Graphics->SetClip( clipRegion, CombineMode::Replace );
// Set up coordinates of points.
int x1 = 100;
int y1 = 100;
int x2 = 200;
int y2 = 200;
// If point is visible, fill ellipse that represents it.
if ( e->Graphics->IsVisible( x1, y1 ) )
{
e->Graphics->FillEllipse( gcnew SolidBrush( Color::Red ), x1, y1, 10, 10 );
}
if ( e->Graphics->IsVisible( x2, y2 ) )
{
e->Graphics->FillEllipse( gcnew SolidBrush( Color::Blue ), x2, y2, 10, 10 );
}
}
private void IsVisibleInt(PaintEventArgs e)
{
// Set clip region.
Region clipRegion = new Region(new Rectangle(50, 50, 100, 100));
e.Graphics.SetClip(clipRegion, CombineMode.Replace);
// Set up coordinates of points.
int x1 = 100;
int y1 = 100;
int x2 = 200;
int y2 = 200;
// If point is visible, fill ellipse that represents it.
if (e.Graphics.IsVisible(x1, y1))
{
e.Graphics.FillEllipse(new SolidBrush(Color.Red), x1, y1, 10, 10);
}
if (e.Graphics.IsVisible(x2, y2))
{
e.Graphics.FillEllipse(new SolidBrush(Color.Blue), x2, y2, 10, 10);
}
}
Private Sub IsVisibleInt(ByVal e As PaintEventArgs)
' Set clip region.
Dim clipRegion As New [Region](New Rectangle(50, 50, 100, 100))
e.Graphics.SetClip(clipRegion, CombineMode.Replace)
' Set up coordinates of points.
Dim x1 As Integer = 100
Dim y1 As Integer = 100
Dim x2 As Integer = 200
Dim y2 As Integer = 200
' If point is visible, fill ellipse that represents it.
If e.Graphics.IsVisible(x1, y1) Then
e.Graphics.FillEllipse(New SolidBrush(Color.Red), x1, y1, _
10, 10)
End If
If e.Graphics.IsVisible(x2, y2) Then
e.Graphics.FillEllipse(New SolidBrush(Color.Blue), x2, y2, _
10, 10)
End If
End Sub
Применяется к
IsVisible(Single, Single)
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
Указывает, содержится ли точка, указанная парой координат, в видимой области клипа этого Graphics.
public:
bool IsVisible(float x, float y);
public bool IsVisible (float x, float y);
member this.IsVisible : single * single -> bool
Public Function IsVisible (x As Single, y As Single) As Boolean
Параметры
- x
- Single
Координата x точки для проверки видимости.
- y
- Single
Координата y точки для проверки видимости.
Возвращаемое значение
true
, если точка, определенная x
и параметрами y
, содержится в видимой области клипа этого Graphics; в противном случае false
.
Примеры
Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse
, который является параметром обработчика событий Paint. Код выполняет следующие действия:
Создает прямоугольную область вырезки и задает ее в качестве области вырезки для графического объекта формы с помощью Replace.
Создает две точки, один внутри области вырезки и один за пределами.
Проверяет каждую из точек видимости и рисует только видимую.
Результатом является один небольшой красный круг, который находится в области клипа.
public:
void IsVisibleFloat( PaintEventArgs^ e )
{
// Set clip region.
System::Drawing::Region^ clipRegion = gcnew System::Drawing::Region( Rectangle(50,50,100,100) );
e->Graphics->SetClip( clipRegion, CombineMode::Replace );
// Set up coordinates of points.
float x1 = 100.0F;
float y1 = 100.0F;
float x2 = 200.0F;
float y2 = 200.0F;
// If point is visible, fill ellipse that represents it.
if ( e->Graphics->IsVisible( x1, y1 ) )
{
e->Graphics->FillEllipse( gcnew SolidBrush( Color::Red ), x1, y1, 10.0F, 10.0F );
}
if ( e->Graphics->IsVisible( x2, y2 ) )
{
e->Graphics->FillEllipse( gcnew SolidBrush( Color::Blue ), x2, y2, 10.0F, 10.0F );
}
}
private void IsVisibleFloat(PaintEventArgs e)
{
// Set clip region.
Region clipRegion = new Region(new Rectangle(50, 50, 100, 100));
e.Graphics.SetClip(clipRegion, CombineMode.Replace);
// Set up coordinates of points.
float x1 = 100.0F;
float y1 = 100.0F;
float x2 = 200.0F;
float y2 = 200.0F;
// If point is visible, fill ellipse that represents it.
if (e.Graphics.IsVisible(x1, y1))
{
e.Graphics.FillEllipse(new SolidBrush(Color.Red), x1, y1, 10.0F, 10.0F);
}
if (e.Graphics.IsVisible(x2, y2))
{
e.Graphics.FillEllipse(new SolidBrush(Color.Blue), x2, y2, 10.0F, 10.0F);
}
}
Private Sub IsVisibleFloat(ByVal e As PaintEventArgs)
' Set clip region.
Dim clipRegion As New [Region](New Rectangle(50, 50, 100, 100))
e.Graphics.SetClip(clipRegion, CombineMode.Replace)
' Set up coordinates of points.
Dim x1 As Single = 100.0F
Dim y1 As Single = 100.0F
Dim x2 As Single = 200.0F
Dim y2 As Single = 200.0F
' If point is visible, fill ellipse that represents it.
If e.Graphics.IsVisible(x1, y1) Then
e.Graphics.FillEllipse(New SolidBrush(Color.Red), x1, y1, _
10.0F, 10.0F)
End If
If e.Graphics.IsVisible(x2, y2) Then
e.Graphics.FillEllipse(New SolidBrush(Color.Blue), x2, y2, _
10.0F, 10.0F)
End If
End Sub
Применяется к
IsVisible(Rectangle)
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
public:
bool IsVisible(System::Drawing::Rectangle rect);
public bool IsVisible (System.Drawing.Rectangle rect);
member this.IsVisible : System.Drawing.Rectangle -> bool
Public Function IsVisible (rect As Rectangle) As Boolean
Параметры
Возвращаемое значение
true
, если прямоугольник, указанный параметром rect
, содержится в видимой области клипа этого Graphics; в противном случае false
.
Примеры
Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse
, который является параметром обработчика событий Paint. Код выполняет следующие действия:
Создает прямоугольную область вырезки и задает ее в качестве области вырезки для графического объекта формы с помощью Replace.
Создает расположение и размер двух прямоугольников, один внутри области вырезки и один за пределами.
Проверяет каждый прямоугольник для видимости и рисует только видимый.
Результатом является один небольшой красный прямоугольник, который находится в области клипа.
public:
void IsVisibleRectangle( PaintEventArgs^ e )
{
// Set clip region.
System::Drawing::Region^ clipRegion = gcnew System::Drawing::Region( Rectangle(50,50,100,100) );
e->Graphics->SetClip( clipRegion, CombineMode::Replace );
// Set up coordinates of rectangles.
Rectangle rect1 = Rectangle(100,100,20,20);
Rectangle rect2 = Rectangle(200,200,20,20);
// If rectangle is visible, fill it.
if ( e->Graphics->IsVisible( rect1 ) )
{
e->Graphics->FillRectangle( gcnew SolidBrush( Color::Red ), rect1 );
}
if ( e->Graphics->IsVisible( rect2 ) )
{
e->Graphics->FillRectangle( gcnew SolidBrush( Color::Blue ), rect2 );
}
}
private void IsVisibleRectangle(PaintEventArgs e)
{
// Set clip region.
Region clipRegion = new Region(new Rectangle(50, 50, 100, 100));
e.Graphics.SetClip(clipRegion, CombineMode.Replace);
// Set up coordinates of rectangles.
Rectangle rect1 = new Rectangle(100, 100, 20, 20);
Rectangle rect2 = new Rectangle(200, 200, 20, 20);
// If rectangle is visible, fill it.
if (e.Graphics.IsVisible(rect1))
{
e.Graphics.FillRectangle(new SolidBrush(Color.Red), rect1);
}
if (e.Graphics.IsVisible(rect2))
{
e.Graphics.FillRectangle(new SolidBrush(Color.Blue), rect2);
}
}
Private Sub IsVisibleRectangle(ByVal e As PaintEventArgs)
' Set clip region.
Dim clipRegion As New [Region](New Rectangle(50, 50, 100, 100))
e.Graphics.SetClip(clipRegion, CombineMode.Replace)
' Set up coordinates of rectangles.
Dim rect1 As New Rectangle(100, 100, 20, 20)
Dim rect2 As New Rectangle(200, 200, 20, 20)
' If rectangle is visible, fill it.
If e.Graphics.IsVisible(rect1) Then
e.Graphics.FillRectangle(New SolidBrush(Color.Red), rect1)
End If
If e.Graphics.IsVisible(rect2) Then
e.Graphics.FillRectangle(New SolidBrush(Color.Blue), rect2)
End If
End Sub
Применяется к
IsVisible(PointF)
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
public:
bool IsVisible(System::Drawing::PointF point);
public bool IsVisible (System.Drawing.PointF point);
member this.IsVisible : System.Drawing.PointF -> bool
Public Function IsVisible (point As PointF) As Boolean
Параметры
Возвращаемое значение
true
, если точка, указанная параметром point
, находится в видимой области клипа этого Graphics; в противном случае false
.
Примеры
Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse
, который является параметром обработчика событий Paint. Код выполняет следующие действия:
Создает прямоугольную область вырезки и задает ее в качестве области вырезки для графики формы с помощью Replace.
Создает две точки, один внутри области вырезки и один за пределами.
Проверяет каждую из точек видимости и рисует только видимую.
Результатом является один небольшой красный круг, который находится в области клипа.
public:
void IsVisiblePointF( PaintEventArgs^ e )
{
// Set clip region.
System::Drawing::Region^ clipRegion = gcnew System::Drawing::Region( Rectangle(50,50,100,100) );
e->Graphics->SetClip( clipRegion, CombineMode::Replace );
// Set up coordinates of points.
float x1 = 100.0F;
float y1 = 100.0F;
float x2 = 200.0F;
float y2 = 200.0F;
PointF point1 = PointF(x1,y1);
PointF point2 = PointF(x2,y2);
// If point is visible, fill ellipse that represents it.
if ( e->Graphics->IsVisible( point1 ) )
{
e->Graphics->FillEllipse( gcnew SolidBrush( Color::Red ), x1, y1, 10.0F, 10.0F );
}
if ( e->Graphics->IsVisible( point2 ) )
{
e->Graphics->FillEllipse( gcnew SolidBrush( Color::Blue ), x2, y2, 10.0F, 10.0F );
}
}
private void IsVisiblePointF(PaintEventArgs e)
{
// Set clip region.
Region clipRegion = new Region(new Rectangle(50, 50, 100, 100));
e.Graphics.SetClip(clipRegion, CombineMode.Replace);
// Set up coordinates of points.
float x1 = 100.0F;
float y1 = 100.0F;
float x2 = 200.0F;
float y2 = 200.0F;
PointF point1 = new PointF(x1, y1);
PointF point2 = new PointF(x2, y2);
// If point is visible, fill ellipse that represents it.
if (e.Graphics.IsVisible(point1))
{
e.Graphics.FillEllipse(new SolidBrush(Color.Red), x1, y1, 10.0F, 10.0F);
}
if (e.Graphics.IsVisible(point2))
{
e.Graphics.FillEllipse(new SolidBrush(Color.Blue), x2, y2, 10.0F, 10.0F);
}
}
Private Sub IsVisiblePointF(ByVal e As PaintEventArgs)
' Set clip region.
Dim clipRegion As New [Region](New Rectangle(50, 50, 100, 100))
e.Graphics.SetClip(clipRegion, CombineMode.Replace)
' Set up coordinates of points.
Dim x1 As Single = 100.0F
Dim y1 As Single = 100.0F
Dim x2 As Single = 200.0F
Dim y2 As Single = 200.0F
Dim point1 As New PointF(x1, y1)
Dim point2 As New PointF(x2, y2)
' If point is visible, fill ellipse that represents it.
If e.Graphics.IsVisible(point1) Then
e.Graphics.FillEllipse(New SolidBrush(Color.Red), x1, y1, _
10.0F, 10.0F)
End If
If e.Graphics.IsVisible(point2) Then
e.Graphics.FillEllipse(New SolidBrush(Color.Blue), x2, y2, _
10.0F, 10.0F)
End If
End Sub
Применяется к
IsVisible(Point)
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
public:
bool IsVisible(System::Drawing::Point point);
public bool IsVisible (System.Drawing.Point point);
member this.IsVisible : System.Drawing.Point -> bool
Public Function IsVisible (point As Point) As Boolean
Параметры
Возвращаемое значение
true
, если точка, указанная параметром point
, находится в видимой области клипа этого Graphics; в противном случае false
.
Примеры
Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse
, который является параметром обработчика событий Paint. Код выполняет следующие действия:
Создает прямоугольную область вырезки и задает ее в качестве области вырезки для графического объекта формы с помощью Replace.
Создает две точки, один внутри области вырезки и один за пределами.
Проверяет каждую из точек видимости и рисует только видимую.
Результатом является один небольшой красный круг, который находится в области клипа.
public:
void IsVisiblePoint( PaintEventArgs^ e )
{
// Set clip region.
System::Drawing::Region^ clipRegion = gcnew System::Drawing::Region( Rectangle(50,50,100,100) );
e->Graphics->SetClip( clipRegion, CombineMode::Replace );
// Set up coordinates of points.
int x1 = 100;
int y1 = 100;
int x2 = 200;
int y2 = 200;
Point point1 = Point(x1,y1);
Point point2 = Point(x2,y2);
// If point is visible, fill ellipse that represents it.
if ( e->Graphics->IsVisible( point1 ) )
{
e->Graphics->FillEllipse( gcnew SolidBrush( Color::Red ), x1, y1, 10, 10 );
}
if ( e->Graphics->IsVisible( point2 ) )
{
e->Graphics->FillEllipse( gcnew SolidBrush( Color::Blue ), x2, y2, 10, 10 );
}
}
private void IsVisiblePoint(PaintEventArgs e)
{
// Set clip region.
Region clipRegion = new Region(new Rectangle(50, 50, 100, 100));
e.Graphics.SetClip(clipRegion, CombineMode.Replace);
// Set up coordinates of points.
int x1 = 100;
int y1 = 100;
int x2 = 200;
int y2 = 200;
Point point1 = new Point(x1, y1);
Point point2 = new Point(x2, y2);
// If point is visible, fill ellipse that represents it.
if (e.Graphics.IsVisible(point1))
{
e.Graphics.FillEllipse(new SolidBrush(Color.Red), x1, y1, 10, 10);
}
if (e.Graphics.IsVisible(point2))
{
e.Graphics.FillEllipse(new SolidBrush(Color.Blue), x2, y2, 10, 10);
}
}
Private Sub IsVisiblePoint(ByVal e As PaintEventArgs)
' Set clip region.
Dim clipRegion As New [Region](New Rectangle(50, 50, 100, 100))
e.Graphics.SetClip(clipRegion, CombineMode.Replace)
' Set up coordinates of points.
Dim x1 As Integer = 100
Dim y1 As Integer = 100
Dim x2 As Integer = 200
Dim y2 As Integer = 200
Dim point1 As New Point(x1, y1)
Dim point2 As New Point(x2, y2)
' If point is visible, fill ellipse that represents it.
If e.Graphics.IsVisible(point1) Then
e.Graphics.FillEllipse(New SolidBrush(Color.Red), x1, y1, _
10, 10)
End If
If e.Graphics.IsVisible(point2) Then
e.Graphics.FillEllipse(New SolidBrush(Color.Blue), x2, y2, _
10, 10)
End If
End Sub
Применяется к
IsVisible(RectangleF)
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
- Исходный код:
- Graphics.cs
Указывает, содержится ли прямоугольник, указанный структурой RectangleF, в видимой области клипа этого Graphics.
public:
bool IsVisible(System::Drawing::RectangleF rect);
public bool IsVisible (System.Drawing.RectangleF rect);
member this.IsVisible : System.Drawing.RectangleF -> bool
Public Function IsVisible (rect As RectangleF) As Boolean
Параметры
- rect
- RectangleF
RectangleF структуру для проверки видимости.
Возвращаемое значение
true
, если прямоугольник, указанный параметром rect
, содержится в видимой области клипа этого Graphics; в противном случае false
.
Примеры
Следующий пример кода предназначен для использования с Windows Forms и требует PaintEventArgse
, который является параметром обработчика событий Paint. Код выполняет следующие действия:
Создает прямоугольную область вырезки и задает ее в качестве области вырезки для графического объекта формы с помощью Replace.
Создает два прямоугольника, один внутри области вырезки и один за пределами.
Проверяет каждый прямоугольник для видимости и рисует только видимый.
Результатом является один небольшой красный прямоугольник, который находится в области клипа.
public:
void IsVisibleRectangleF( PaintEventArgs^ e )
{
// Set clip region.
System::Drawing::Region^ clipRegion = gcnew System::Drawing::Region( Rectangle(50,50,100,100) );
e->Graphics->SetClip( clipRegion, CombineMode::Replace );
// Set up coordinates of rectangles.
RectangleF rect1 = RectangleF(100.0F,100.0F,20.0F,20.0F);
RectangleF rect2 = RectangleF(200.0F,200.0F,20.0F,20.0F);
// If rectangle is visible, fill it.
if ( e->Graphics->IsVisible( rect1 ) )
{
e->Graphics->FillRectangle( gcnew SolidBrush( Color::Red ), rect1 );
}
if ( e->Graphics->IsVisible( rect2 ) )
{
e->Graphics->FillRectangle( gcnew SolidBrush( Color::Blue ), rect2 );
}
}
private void IsVisibleRectangleF(PaintEventArgs e)
{
// Set clip region.
Region clipRegion = new Region(new Rectangle(50, 50, 100, 100));
e.Graphics.SetClip(clipRegion, CombineMode.Replace);
// Set up coordinates of rectangles.
RectangleF rect1 = new RectangleF(100.0F, 100.0F, 20.0F, 20.0F);
RectangleF rect2 = new RectangleF(200.0F, 200.0F, 20.0F, 20.0F);
// If rectangle is visible, fill it.
if (e.Graphics.IsVisible(rect1))
{
e.Graphics.FillRectangle(new SolidBrush(Color.Red), rect1);
}
if (e.Graphics.IsVisible(rect2))
{
e.Graphics.FillRectangle(new SolidBrush(Color.Blue), rect2);
}
}
Private Sub IsVisibleRectangleF(ByVal e As PaintEventArgs)
' Set clip region.
Dim clipRegion As New [Region](New Rectangle(50, 50, 100, 100))
e.Graphics.SetClip(clipRegion, CombineMode.Replace)
' Set up coordinates of rectangles.
Dim rect1 As New RectangleF(100.0F, 100.0F, 20.0F, 20.0F)
Dim rect2 As New RectangleF(200.0F, 200.0F, 20.0F, 20.0F)
' If rectangle is visible, fill it.
If e.Graphics.IsVisible(rect1) Then
e.Graphics.FillRectangle(New SolidBrush(Color.Red), rect1)
End If
If e.Graphics.IsVisible(rect2) Then
e.Graphics.FillRectangle(New SolidBrush(Color.Blue), rect2)
End If
End Sub