Resumen Representacion grafica de funciones

Mensaje enviado por "Ramiro Alcocer" <ralcocer29@hotmail.com>

un poco tarde pero aqui te va un ejemplo muy sencillo, mira escribime a mi correo ante cualquier duda, y con gusto te la respondo :-)

alcocer_ramiro@hotmail.com

Option Explicit
Const MaxPuntos = 1000

'para almacenar los valores de la función
Dim valx(1 To MaxPuntos) As Double
Dim valy(1 To MaxPuntos) As Double
'esto es para guardar los valores escalados de
'la función
Dim tmpx(1 To MaxPuntos) As Double
Dim tmpy(1 To MaxPuntos) As Double

Dim Xmin, Xmax, Ymin, Ymax As Double
Dim NPuntos As Long

'dimenciones del PictureBox
Dim ScreenX, ScreenY As Long

Private Sub Form_Load()
Picture1.ScaleMode = 3
ScreenX = Picture1.ScaleWidth
ScreenY = Picture1.ScaleHeight
Picture1.BackColor = &HFFFFFF
End Sub

'aqui va la función a graficar, la unica restricción es
'que esta función sea continua
Function f(ByVal x As Double) As Double
f = Exp(-0.5 * x) * Sin(2 * x)
End Function

'Busco el indice del valor máximo de valy
Function PosMaxY() As Long
Dim i, j As Integer
i = 1
j = NPuntos
Do While (i <> j)
    If (valy(i) <= valy(j)) Then
        i = i + 1
    Else
        j = j - 1
    End If
Loop
PosMaxY = i
End Function

'Busco el indice del valor minimo de valy
Function PosMinY() As Long
Dim i, j As Integer
i = 1
j = NPuntos
Do While (i <> j)
    If (valy(i) >= valy(j)) Then
        i = i + 1
    Else
        j = j - 1
    End If
Loop
PosMinY = i
End Function

'Evaluo la función a gráficar y ademas calculo Ymin, Ymax
Private Sub EvaluarFuncion()
Dim x, deltax As Double
Dim i As Integer
deltax = (Xmax - Xmin) / (NPuntos - 1)
x = Xmin
For i = 1 To NPuntos
    valy(i) = f(x)
    valx(i) = x
    x = x + deltax
Next i
Ymin = valy(PosMinY)
Ymax = valy(PosMaxY)
End Sub

'Escalo todos los valores de la función a las dimenciones
'del PictureBox
Private Sub EscalarFuncion()
Dim i As Integer
For i = 1 To NPuntos
    tmpx(i) = (ScreenX / (Xmax - Xmin)) * (valx(i) - Xmin)
    tmpy(i) = (ScreenY / (Ymax - Ymin)) * (valy(i) - Ymin)
Next i
End Sub

'Dibujo la función, utilizando rectas para unir los
'puntos
Private Sub Plot_Click()
Dim i As Integer
Picture1.Cls
Xmin = Text1.Text
Xmax = Text2.Text
NPuntos = Text3.Text
EvaluarFuncion
EscalarFuncion
For i = 1 To (NPuntos - 1)
    Picture1.Line (tmpx(i), ScreenY - tmpy(i))-(tmpx(i + 1), ScreenY - tmpy(i + 1)), QBColor(0)
Next i
End Sub

----- Original Message -----
From: Angel Garcia
To: visualbasic-esp@egroups.com ; vb-esp@ccc.uba.ar
Sent: Sunday, October 15, 2000 5:50 AM
Subject: (VB-ESP) representacion grafica de funciones

Hola compañeros..
Necesito algún ejemplo de representación gráfica de funciones matematicas..

Gracias

Download plot2d.zip  



Resumen Resumen

Visual Basic Página de Visual Basic

Página principal Página principal

www.jrubi.com