Graphics.IsVisible Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje, zda bod určený dvojicí souřadnic je obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu .
Přetížení
IsVisible(Point) |
Určuje, zda je zadaná Point struktura obsažena ve viditelné oblasti klipu tohoto Graphicsobjektu . |
IsVisible(PointF) |
Určuje, zda je zadaná PointF struktura obsažena ve viditelné oblasti klipu tohoto Graphicsobjektu . |
IsVisible(Rectangle) |
Určuje, zda je obdélník určený strukturou Rectangle obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu . |
IsVisible(RectangleF) |
Určuje, zda je obdélník určený strukturou RectangleF obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu . |
IsVisible(Int32, Int32) |
Určuje, zda bod určený dvojicí souřadnic je obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu . |
IsVisible(Single, Single) |
Určuje, zda bod určený dvojicí souřadnic je obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu . |
IsVisible(Int32, Int32, Int32, Int32) |
Určuje, zda obdélník určený dvojicí souřadnic, šířky a výšky je obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu . |
IsVisible(Single, Single, Single, Single) |
Určuje, zda obdélník určený dvojicí souřadnic, šířky a výšky je obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu . |
IsVisible(Point)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- 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
Parametry
Návraty
true
pokud je bod určený parametrem point
obsažen v oblasti viditelného klipu ; Graphicsv opačném případě false
hodnota .
Příklady
Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny Paint události. Kód provede následující akce:
Vytvoří obdélníkovou oblast oříznutí a nastaví ji jako oblast oříznutí pro grafický objekt formuláře pomocí Replace.
Vytvoří dva body, jeden uvnitř oblasti oříznutí a jeden vnější.
Otestuje viditelnost každého z bodů a vykreslí jenom ten viditelný.
Výsledkem je jeden malý červený kroužek, který je uvnitř oblasti klipu.
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
Platí pro
IsVisible(PointF)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- 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
Parametry
Návraty
true
pokud je bod určený parametrem point
obsažen v oblasti viditelného klipu ; Graphicsv opačném případě false
hodnota .
Příklady
Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny Paint události. Kód provede následující akce:
Vytvoří obdélníkovou oblast oříznutí a nastaví ji jako oblast oříznutí pro grafiku formuláře pomocí Replacepříkazu .
Vytvoří dva body, jeden uvnitř oblasti oříznutí a jeden vnější.
Otestuje viditelnost každého z bodů a vykreslí jenom ten viditelný.
Výsledkem je jeden malý červený kroužek, který je uvnitř oblasti klipu.
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
Platí pro
IsVisible(Rectangle)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- 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
Parametry
Návraty
true
pokud je obdélník určený parametrem rect
obsažen v oblasti viditelného klipu , Graphicsv opačném případě false
.
Příklady
Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny Paint události. Kód provede následující akce:
Vytvoří obdélníkovou oblast oříznutí a nastaví ji jako oblast oříznutí pro grafický objekt formuláře pomocí Replace.
Vytvoří umístění a velikost dvou obdélníků, jednoho uvnitř oblasti oříznutí a jednoho vnějšího.
Otestuje viditelnost každého obdélníku a vykreslí jenom ten viditelný.
Výsledkem je jeden malý červený obdélník, který je uvnitř oblasti klipu.
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
Platí pro
IsVisible(RectangleF)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Určuje, zda je obdélník určený strukturou RectangleF obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu .
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
Parametry
- rect
- RectangleF
RectangleF struktury pro testování viditelnosti.
Návraty
true
pokud je obdélník určený parametrem rect
obsažen v oblasti viditelného klipu , Graphicsv opačném případě false
.
Příklady
Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny Paint události. Kód provede následující akce:
Vytvoří obdélníkovou oblast oříznutí a nastaví ji jako oblast oříznutí pro grafický objekt formuláře pomocí Replace.
Vytvoří dva obdélníky, jeden uvnitř oblasti oříznutí a jeden vnější.
Otestuje viditelnost každého obdélníku a vykreslí jenom ten viditelný.
Výsledkem je jeden malý červený obdélník, který je uvnitř oblasti klipu.
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
Platí pro
IsVisible(Int32, Int32)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Určuje, zda bod určený dvojicí souřadnic je obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu .
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
Parametry
- x
- Int32
Souřadnice x bodu, který se má otestovat z hlediska viditelnosti.
- y
- Int32
Souřadnice y bodu, který se má otestovat z hlediska viditelnosti.
Návraty
true
pokud je bod definovaný x
parametry a y
obsažen v oblasti viditelného klipu ; Graphicsv opačném případě false
.
Příklady
Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny Paint události. Kód provede následující akce:
Vytvoří obdélníkovou oblast oříznutí a nastaví ji jako oblast oříznutí pro grafický objekt formuláře pomocí Replace.
Vytvoří dva body, jeden uvnitř oblasti oříznutí a jeden vnější.
Otestuje viditelnost každého z bodů a vykreslí jenom ten viditelný.
Výsledkem je jeden malý červený kroužek, který je uvnitř oblasti klipu.
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
Platí pro
IsVisible(Single, Single)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Určuje, zda bod určený dvojicí souřadnic je obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu .
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
Parametry
- x
- Single
Souřadnice x bodu, který se má otestovat z hlediska viditelnosti.
- y
- Single
Souřadnice y bodu, který se má otestovat z hlediska viditelnosti.
Návraty
true
pokud je bod definovaný x
parametry a y
obsažen v oblasti viditelného klipu ; Graphicsv opačném případě false
.
Příklady
Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny Paint události. Kód provede následující akce:
Vytvoří obdélníkovou oblast oříznutí a nastaví ji jako oblast oříznutí pro grafický objekt formuláře pomocí Replace.
Vytvoří dva body, jeden uvnitř oblasti oříznutí a jeden vnější.
Otestuje viditelnost každého z bodů a vykreslí jenom ten viditelný.
Výsledkem je jeden malý červený kroužek, který je uvnitř oblasti klipu.
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
Platí pro
IsVisible(Int32, Int32, Int32, Int32)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Určuje, zda obdélník určený dvojicí souřadnic, šířky a výšky je obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu .
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
Parametry
- x
- Int32
Souřadnice x levého horního rohu obdélníku pro testování viditelnosti.
- y
- Int32
Souřadnice y levého horního rohu obdélníku pro testování viditelnosti.
- width
- Int32
Šířka obdélníku pro testování viditelnosti
- height
- Int32
Výška obdélníku, který se má otestovat z viditelnosti.
Návraty
true
Pokud je obdélník definovaný x
parametry , y
, width
a height
obsažen ve viditelné oblasti klipu , Graphicsv opačném případě false
.
Příklady
Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny Paint události. Kód provede následující akce:
Vytvoří obdélníkovou oblast oříznutí a nastaví ji jako oblast oříznutí pro grafický objekt formuláře pomocí Replace.
Vytvoří umístění a velikost dvou obdélníků, jednoho uvnitř oblasti oříznutí a jednoho vnějšího.
Otestuje viditelnost každého obdélníku a vykreslí jenom ten viditelný.
Výsledkem je jeden malý červený obdélník, který je uvnitř oblasti klipu.
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
Platí pro
IsVisible(Single, Single, Single, Single)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Určuje, zda obdélník určený dvojicí souřadnic, šířky a výšky je obsažen ve viditelné oblasti klipu tohoto Graphicsobjektu .
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
Parametry
- x
- Single
Souřadnice x levého horního rohu obdélníku pro testování viditelnosti.
- y
- Single
Souřadnice y levého horního rohu obdélníku pro testování viditelnosti.
- width
- Single
Šířka obdélníku pro testování viditelnosti
- height
- Single
Výška obdélníku, který se má otestovat z viditelnosti.
Návraty
true
Pokud je obdélník definovaný x
parametry , y
, width
a height
obsažen ve viditelné oblasti klipu , Graphicsv opačném případě false
.
Příklady
Následující příklad kódu je navržený pro použití s model Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny Paint události. Kód provede následující akce:
Vytvoří obdélníkovou oblast oříznutí a nastaví ji jako oblast oříznutí pro grafický objekt formuláře pomocí Replace.
Vytvoří umístění a velikost dvou obdélníků, jednoho uvnitř oblasti oříznutí a jednoho vnějšího.
Otestuje viditelnost každého obdélníku a vykreslí jenom ten viditelný.
Výsledkem je jeden malý červený obdélník, který je uvnitř oblasti klipu.
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
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro