Visual Basic.NET - Consulta sobre uso de "CreateGraphics"

   
Vista:

Consulta sobre uso de "CreateGraphics"

Publicado por Francisco fcorossi.ici@hotmail.com (2 intervenciones) el 11/03/2015 10:38:13
Estimados,

Tengo el siguiente problema:

Al usar la función CreateGraphics en Visual Studio 2013 (Visual Basic), deseo crear una matriz de imágenes (para hacer un mapa), pero el problema es que esta función no me permite dibujar, ni pintar, nada después de cierto límite (creo que es 300, 300), por lo cual no puedo hacer lo que necesito.

En resumen, quiero poner varias imagenes en el formulario, pero si quiero poner una imagen usando la función mencionada arriba en una posición por ejemplo 500, 500... no me la dibujará en el formulario, pero si la mando a poner a 0, 0, me la podrá dibujar, pero cortará de igual modo a su límite.

Espero su pronta respuesta, desde ya muchas gracias. Saludos!
VS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Consulta sobre uso de "CreateGraphics"

Publicado por Horroroso (46 intervenciones) el 17/03/2015 15:03:25
Debes utilizar Translate y Scale para poder ampliar los limites o mostrar otra seccion de tus coordenadas.

Si quieres ayuda extra por favor avisa.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consulta sobre uso de "CreateGraphics"

Publicado por Francisco (2 intervenciones) el 18/03/2015 07:12:13
Estimado,

He buscado la función o la misma palabra Translade y no la encuentro en ayuda de Visual Studio, agradecería que me indicaras donde encontrar mayor información al respecto.

Desde ya muchas gracias, saludos!.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consulta sobre uso de "CreateGraphics"

Publicado por Horroroso (46 intervenciones) el 19/03/2015 00:17:49
te paso un ejemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
        Dim w As Integer = 200
        Dim h As Integer = 200
        Dim bmp As New Bitmap(w, h)
        Dim g As Graphics
 
        g = Graphics.FromImage(bmp)
        g.Clear(Color.GreenYellow)
        g.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
        g.CompositingQuality = Drawing2D.CompositingQuality.HighQuality
        g.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
 
        g.TranslateTransform(CSng(w / 2), CSng(h / 2))
        g.ScaleTransform(0.5, -0.5)
 
 
        For x As Integer = -w To w Step 10
            g.DrawLine(Pens.Gray, x, -w, x, h)
        Next
        For y As Integer = -h To h Step 10
            g.DrawLine(Pens.Gray, -h, y, w, y)
        Next
 
        g.DrawLine(Pens.Black, 0, 0, 50, 50)
        g.FillEllipse(Brushes.Blue, -40, -20, 30, 30)
 
 
        Dim w2 As Integer = 200
        Dim h2 As Integer = 200
 
 
        Dim bmp2 As New Bitmap(w2, h2)
        Dim g2 As Graphics
 
 
        g2 = Graphics.FromImage(bmp2)
        g2.Clear(Color.Green)
        g2.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
        g2.CompositingQuality = Drawing2D.CompositingQuality.HighQuality
        g2.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
 
 
        g2.TranslateTransform(CSng(w2 / 2), CSng(h2 / 2))
        g2.ScaleTransform(1, -1)
 
 
        For x As Integer = -w2 To w2 Step 10
            g2.DrawLine(Pens.Gray, x, -w2, x, h2)
        Next
        For y As Integer = -h2 To h2 Step 10
            g2.DrawLine(Pens.Gray, -h2, y, w2, y)
        Next
        g2.DrawLine(Pens.Black, 0, 0, 50, 50)
        g2.FillEllipse(Brushes.Blue, -40, 60, 30, 30)
 
 
        Dim fg As Graphics
        fg = Me.CreateGraphics
        fg.DrawImage(bmp, 0, 0)
        fg.DrawImage(bmp2, w, 0)
 
    End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar