Newsgroup: it.comp.lang.visual-basic
Titolo: [vb.net] Pset non c'è più...

Ho la necessità di disegnare dei punti su di un form specificando  le
coordinate x,y. Con VB 6 si va di Pset e tutto fila liscio...
In 
vb.net
 però Pset non c'è più e bisogna usare le classi system.drawing
Morale della favola: dopo due giorni non ne sono ancora venuto a
capo...nemmeno san Google mi ha fatto la grazia!
Mi aiutate?
Grazie mille,
ciao Fil
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 capo...nemmeno san Google mi ha fatto la grazia!
Due punti stesso punto x ma differente punto y
Private Sub btnCostruzionePunti_Click
        Dim g As System.Drawing.Graphics = Me.CreateGraphics
        Dim redPen As New Pen(Color.Red, 5)
        g.DrawEllipse(redPen, 24, 24, 5, 5)
        g.DrawEllipse(redPen, 24, 60, 5, 5)
    End Sub
Ave
giuseppeD

 capo...nemmeno san Google mi ha fatto la grazia!
Per la cronaca, GDI+ di .net come capacità è più simile a OpenGL (in 2D) 
che al vecchio GDI, quindi non sono proprio da rimpiangere i vecchi 
sistemi VB.
GDI+ è possibile utilizzarla anche in VB6 tramite questa dll:
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=BFC0B436-9015-43E2-81A3-54938B6F4614
Ovviamente la documentazione è su MSDN (che deve essere piuttosto 
recente) relativamente a GDI+ (le funzioni iniziano tutte per Gdip e 
l'elenco è reperibile tramite il Dependency Walker presente nel CD di VB).
Mi sembrava che esistesse anche un componente ActiveX che facesse da 
wrapper a questa dll, ma ora non mi riesce più di trovarlo :(
Ciao

 giuseppeD
Grazie per le risposte, ero riuscito anche io a disegnare un "punto"
tracciando una linea con coordinate di partenza e arrivo molto vicine.
Mi ero accanito nel cercare un modo per tracciare direttamente un punto
(come faceva appunto Pset). Mi sembra che anche le GDI+ prevedano linee,
rettangoli, ellissi, curve di Bezier ma non un semplice punto.
Grazie a tutti!
Ciao Fil


 rettangoli, ellissi, curve di Bezier ma non un semplice punto.
Beh, non saprei, non ho ancora giocato con GDI+, perň vedila cosě: un 
punto č un cerchio con raggio pari a zero... diciamo pari a uno per la 
grafica ;)
Ciao

 giuseppeD
Grazie per le risposte, ero riuscito anche io a disegnare un "punto"
tracciando una linea con coordinate di partenza e arrivo molto vicine.
Mi ero accanito nel cercare un modo per tracciare direttamente un punto
(come faceva appunto Pset). Mi sembra che anche le GDI+ prevedano linee,
rettangoli, ellissi, curve di Bezier ma non un semplice punto.
Grazie a tutti!
Ciao Fil


 Fil wrote:


Perň in teoria tracciare un punto dovrebbe essere piů veloce che tracciare
un cerchio (anche se di raggio nullo)...



 Attualmente GDI+ non fornisce l'accesso a un pixel.
Possibili soluzioni:
1)
Dim i As New Bitmap(1, 1)
i.SetPixel(0, 0, Color.Black)
e.Graphics.DrawImage(i, 10, 10)
i.Dispose()
2)
Dim p As New Pen(Color.Black, -1)
e.Graphics.PixelOffsetMode = Drawing.Drawing2D.PixelOffsetMode.Half
e.Graphics.DrawLine(p, 10, 20, 10.9F, 20)
p.Dispose()
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 rettangoli, ellissi, curve di Bezier ma non un semplice punto.
Sarebbe un po' strano, no? :-)
Si, le GDI/GDI+ prevedono il punto.