Programación General > Visual Basic para principiantes
Graficar Puntos En Visual Basic
(1/1)
MeGaS:
Hola amigos, soy nuevo en este foro, y me gusto mucho esta completo, yo soy un totalmente novato para esto pero me hice de un programa que calcula el equilibrio de fuerzas con vectores
pues todo el calculo ya esa bien pero ahora mi problema es la graficada
va a graficar solamente teniendo en cuenta el angulo, pero declare mis variables F1 que es la magnitud y a1 que es el angulo
y con simples matematicas encontramos que el punto Y=f1sina1 y para X=f1cosa1
como lo grafico que codigo utilizo, ayuda con este novato
Gracias por su atencion
Nebire:
Puedes usar la función 'pset' (set point) es una propiedad vinculada al formulario y a los controles picturebox.
Su uso es el siguiente objeto.pset [step opcional] (x,y), color
si pones el step los valores de x e y son relativos a las coordenadas actuales, si no se indica step, las coordenadas x e son absolutas. en color debes definir un color de varias formas: usando constantes de quickbasic antiguo (sólo 16 colores), usando un valor de tipo long (trango 0-16.777...) o usando la función rgb que es bastante cómoda donde defines valores para el rojo, verde y azul individualmente con valores de byte (0-255)
Un ejemplo; haz un nuevo proyecto coloca un picturebox sin cambiar su nombre, en el código pega lo siguiente y pulsa la tecla f5 para ejecutarlo, luego pulsa dentro del picture, o mueve el ratón... :
--- Código: Text --- Private Sub Picture1_Click() For i = 1 To 1000 Picture1.PSet (i, 20 + i), RGB(22, 44, 210) NextEnd Sub Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Picture1.PSet (X, Y), RGB((X Mod 256), 80, (Y Mod 256))End Sub
nota que si pones encima una ventana, luego el dibujo ha desaparecido, el gráfico no es persistente, para evitar esto debes activar la propiedad 'autoredraw'=true del control picturebox.
Cuando quieras salvar el dibujo a un fichero de imagen añade un botón y coloca el siguiente código:
--- Código: Text --- Private Sub Command1_Click() Dim ruta As String On Local Error GoTo falloGuardar ruta = "c:\midibujo.bmp" SavePicture Picture1.Image, ruta MsgBox "La imagen se guardó en la ruta: " & ruta, vbInformation, "Imagen guardada..." Exit Sub falloGuardar: MsgBox "Falló el intento de guardar la imagen en la ruta: " & ruta, vbCritical, "Imagen no guardada..."End Sub
También puedes usar los métodos 'line y 'circle' ... para leer puntos usa 'point'.
Epa:
Buenas
Si sigues interesado en el tema, creo que seria mas conveniente usar lineas.
Si tienes el modulo y el angulo, facilmente puedes sacar el extremo del vector. Y con el punto de aplicacion y el extremo puedes dibujar una linea.
Ten en cuenta que en las pcs el eje Y esta invertido, por lo que debes invertir todos los valores de y.
Y para centrar el origen usas las propiedades scaletop y scaleleft, que sirven para desplazar el origen.
Otro punto a notar es que las funciones seno y coseno en vb funcionan con radianes.
Navegación
Ir a la versión completa