Grazie per la risposta... adesso provo a fare come hai suggerito.
In realtà ho già risolto il mio problema, ma la soluzione che ho adottao non mi piace.
ho usato qualcosa di simile:
codice:
Public Class Arco
Dim a As Point
Dim b As Point
Dim c As Point
Public Sub New()
...
End Sub
Public Property punto1() As Point
Get
Return a
End Get
Set(ByVal value As Point)
a = value
End Set
End Property
Public Property Punto2() As Point
Get
Return b
End Get
Set(ByVal value As Point)
b = value
End Set
End Property
Public Property punto3() As Point
Get
Return c
End Get
Set(ByVal value As Point)
c = value
End Set
End Property
Public Sub DisegnaArco(ByVal graphics As System.Drawing.Graphics)
...
istruzioni per ricavare i dati necessari a disegnare un arco dati i 3 punti
...
graphics.DrawArc(Pens.Black, X, Y, Width,...)
End Sub
End Class
e nel modulo uso:
codice:
Dim mioArco As New Arco
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
mioArco.punto1 = New Point(10,10)
mioArco.Punto2 = New Point(20,20)
mioArco.punto3 = New Point(30,40)
End Sub
Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
mioArco.DisegnaArco(e.Graphics)
End Sub
Mi sarebbe piaciuto poter avere una classe che contiene il metodo DrawArc(pen, punto1, punto2, punto3) anziché DisegnaArco(e.Graphics).