+ All Categories
Home > Education > Graficador en visual basic

Graficador en visual basic

Date post: 19-Jun-2015
Category:
Upload: sestebans
View: 1,893 times
Download: 2 times
Share this document with a friend
Description:
proyecto 2007 politecnico central medellin,codigo para hacer un graficador en visual basic
Popular Tags:
68
Graficador en visual Basic 6.0 Graficator Sergio Esteban velez conde Politecnico central Sistemas de comunicacin e informatica Medellín 2007
Transcript
Page 1: Graficador en visual basic

Graficador en visual Basic 6.0

Graficator

Sergio Esteban velez conde

Politecnico central

Sistemas de comunicacin e informatica

Medellín

2007

Page 2: Graficador en visual basic

Graficador en visual Basic 6.0

Graficator

Creado por:

Sergio Esteban velez conde

Bajo la direccion de:

Politecnico central

Sistemas de comunicacin e informatica

Medellín

2007

Page 3: Graficador en visual basic

Nota de aceptacion

Firma del presidente del jurado

Firma de jurado

Firma de jurado

Firma de jurado Medellín 1 de diciembre de 2007

Page 4: Graficador en visual basic

Contenido

Pag

INTRODUCCION 1 Antecedentes históricos del lenguaje de aplicación

2 Características Generales del programa con el que se desarrollo “graficator”

2.1 Creación de una interfaz de usuario:

2.2 Generación del código del programa:

3 descripcion de manejo de visual basic

3.1 metodos graficos

3.1.1 metodo Line

3.1.2 metodo pset

3.1.3 metodo point

4 Construccion de graficator

4.1 construccion de las aplicaciones de geometria

4.1.1 linea recta en el plano 4.1.2 Dos lineas rectas en el plano 4.1.3 Proyeccion y reflexion sobre la recta L1 4.1.4 Solucion de ecuaciones de primer grado con dos incognitas 4.1.5 Valores y vectores propios

4.2 construccion de las aplicaciones de precalculo

4.2.1 Trasformaciones de diversas funciones 4.2.2 Transforamaciones de la forma a(x^b)+c 4.2.3Transformaciones de la forma a(x+b)+c 4.2.4 Transforamaciones de la forma a*(raiz(x+b))+c

4.2.5 Transformaciones trigonometricas

5 colores en visual basic

BIBLIOGRAFIA

Page 5: Graficador en visual basic

INTRODUCCION

Este trabajo fue una largo proceso de aprendizaje en la programacion mezclado con el

aprendizaje de las matematicas, lo que reflejé aquí fue una vision que un dia en especial se me

vino a la cabeza y me propuse a reallizarlo. Lo que deseo hacer es lo teorico grafico para

entender mejor el concepto que tal vez en una hoja dejamos muchas veces pasar por alto,

quiero convertir la matematica en un juego agradable que sea complementado con el analisis

en el papel, en relildad esta aplicación hecha tiene principalmente dos motivos: ir orientado a

los estudiantes bachilleres en el caso de la ejecucion del programa y mostrar como se hizo

esta aplicación en uno de los lenguajes de programacion mas faciles que existen.

Page 6: Graficador en visual basic

Lista de figuras

Pág

Tabla 1......................................................................................................................

Tabla 2………………………………………………………………………………………

Tabla 3………………………………………………………………………………………

Tabla 4………………………………………………………………………………………

Tabla 5………………………………………………………………………………………

Tabla 6………………………………………………………………………………………

Tabla 7………………………………………………………………………………………

Tabla 8………………………………………………………………………………………

Tabla 9………………………………………………………………………………………

Tabla 10……………………………………………………………………………………..

Tabla 11……………………………………………………………………………………..

Tabla 12……………………………………………………………………………………..

Tabla 13…………………………………………………………………………………….

Tabla 14…………………………………………………………………………………….

Tabla 15…………………………………………………………………………………….

Tabla 16…………………………………………………………………………………….

Tabla 17…………………………………………………………………………………….

Tabla 18…………………………………………………………………………………….

Tabla 19…………………………………………………………………………………….

Tabla 20…………………………………………………………………………………….

Tabla 21…………………………………………………………………………………….

Tabla 22…………………………………………………………………………………….

Tabla 23…………………………………………………………………………………….

Tabla 24…………………………………………………………………………………….

Tabla 25…………………………………………………………………………………….

Page 7: Graficador en visual basic

Tabla 26……………………………………………………………………………………

Tabla 27……………………………………………………………………………………

Tabla 28…………………………………………………………………………………..

Tabla 29………………………………………………………………………………….

Tabla 30……………………………………………………………………………………

Tabla 31……………………………………………………………………………………

Tabla 32……………………………………………………………………………………

Tabla 33……………………………………………………………………………………

Tabla 34…………………………………………………………………………………….

Tabla 35……………………………………………………………………………………..

Tabla 36…………………………………………………………………………………….

Tabla 37…………………………………………………………………………………….

Tabla 38…………………………………………………………………………………….

Tabla 39…………………………………………………………………………………….

Tabla 40…………………………………………………………………………………….

Tabla 41…………………………………………………………………………………….

Tabla 42…………………………………………………………………………………….

Page 8: Graficador en visual basic

Antecedentes históricos del lenguaje de aplicación

Graficator fue diseñado en el lenguaje de programación Basic en una de sus versiones, (visual

Basic 6.0) primero que todo daré antecedentes históricos de este lenguaje y sus diversas

versiones antes de explicar en si como fue hecho esta aplicación propuesta,

El lenguaje de programación BASIC (Beginner's All purpose Symbolic Instrucción Code ) nació

en el año 1964 como una herramienta destinado a principiantes, buscaba una forma de realizar

programas de la forma mas fácil posible, fue hecho en ingles y con instrucciones muy sencillas

y escasas, Su evolución fue muy escasa por los años setenta por lenguajes de alto nivel que le

quitaron auge.

En 1978 se definió una norma para unificar los Basic existentes llamada BASIC STANDARD.

En los años ochenta apareció una versión mas potente de Basic se llamo quick-Basic de

Microsoft que corregía los defectos de las versiones anteriores, pero paso inadvertida, ya que

el sistema operativo al mismo tiempo lanzo una versión con quick-Basic como un producto

competitivo estoy hablando de MS-DOS.

Esta versión del popular BASIC ya es un lenguaje estructurado, lo que permite crear programas

modularmente, mediante subrutinas y módulos, capaz de crear programas ya competitivos con

otros lenguajes de alto nivel. Sin embargo llegaba tarde, pues los entornos MS-DOS estaban

ya superados por el entorno gráfico Windows.

Pero apareció un producto BASIC que siguió siendo sencillo, añadiendo el entorno grafico de

Windows entre otras cosas. Se llamo VISUAL –BASIC deasorrollasdo por Alan cooper para

Microsoft y tras su lanzamiento al mercado con su primera versión en 1991, la aceptación a

nivel profesional hizo borrar por fin el "mal nombre" asociado a la palabra BASIC.

Su intención era de simplificar la programación utilizando un ambiente de desarrollo

completamente gráfico que facilitara la creación de interfaces gráficas y en cierta medida

también la programación misma. constituye un IDE (entorno de desarrollo integrado )que ha

sido empaquetado como un programa de aplicación, es decir, consiste en un editor de código

(programa donde se escribe el código fuente), un depurador (programa que corrige errores en

el código fuente para que pueda ser bien compilado), un compilador (programa que traduce el

código fuente a lengua máquina), y un constructor de interfaz gráfica o GUI (es una forma de

programar en la que no es necesario escribir el código para la parte gráfica del programa, sino

que se puede hacerlo de forma visual).

Las versiones lanzadas desde su primera versión hasta hoy son:

La versión de Microsoft Visual Basic 1.0 para MS-DOS (ediciones Profesional y Estándar) menos difundida y que data de 1992. Era un entorno que, aunque en modo texto, incluía un diseñador de formularios en el que se podían arrastrar y soltar distintos controles. La versión 3.0, incluía ya una detallada biblioteca de componentes para toda clase de usos. La versión 4.0, apareció Durante la transición de Windows 3.11 a Windows 95, que podía generar programas de 16 y 32 bits a partir de un mismo código fuente, a costa de un gran aumento en el tamaño de los archivos "runtime" necesarios. Además, se sustituyen los controles VBX por los nuevos OCX. la versión 5.0, se implementó por primera vez la posibilidad de compilar a código nativo, obteniendo una mejora de rendimiento considerable, soportan características propias de los lenguajes orientados a objetos, La versión 6.0 soportan características propias de los lenguajes orientados a objetos, aunque careciendo de algunos ítems importantes como la herencia, el polimorfismo y la sobrecarga. La versión 6.0 continúa utilizándose masivamente. Las versiones actuales de Visual Basic se basan en la plataforma .NET la versión 7 del lenguaje fue implementada por Microsoft en el programa Visual Basic .NET y tiene muchas de las características del lenguaje original la versión 8 fue implementada en el programa Visual Basic 2005. Tienen muchas de las características del lenguaje original

Page 9: Graficador en visual basic

2 Características Generales del programa con el que se desarrollo “graficator”

Visual-Basic 6.0 es una herramienta de diseño de aplicaciones para Windows, en la que estas

se desarrollan en una gran parte a partir del diseño de una interfaz gráfica. “Graficator” esta

formado por una parte de código, y otras partes asociadas a los objetos que forman la interfaz

gráfica (Llamo Objeto también al nombre dado a un control).

2.1 Creación de una interfaz de usuario:

Este es el primer paso para desarrollar a “graficator” ya que será la vía por la cual la maquina

se comunicara con el usuario y este con la maquina, tanto para la entrada de los datos como la

respuesta de este al usuario. Por eso es necesario partir de un formulario que comúnmente los

usuarios llaman ventana, aquí es donde Irán todos los controles necesarios para ejecución del

programa.

Tabla 1 Al insertar los controles necesarios se les da un nombre y unas propiedades, estos se convierten en objetos la cual llaman a un procedimiento, una función o un modulo mediante un evento (�lic, doble �lic, una tecla pulsada. Entre otros). En el caso de graficator se llamaran solo a procedimientos y diversos eventos.

Controles Propiedades de los controles

Tabla 2

Page 10: Graficador en visual basic

Las propiedades de los controles definen las características del control seleccionado, si es una

propiedad escrita en código se identifica por tener la forma: Objeto.Propiedad = Valor

2.2 Generación del código del programa:

Un programa puede hacerse con la programación de los distintos procedimientos que

acompañan a cada control. Sin embargo, VB ofrece la posibilidad de establecer un código de

programa separado de estos eventos. Este código puede introducirse en unos bloques

llamados Funciones, y otros llamados Procedimientos.

Tabla 3

3 descripcion de manejo de visual basic El primer objeto con el que nos encontramos al abrir visual Basic es el formulario que tiene por defecto el nombre de form1, este lo vamos a cambiar por frmgraficador, este formulario no va servir como contenedor de otros controles para desarrollar el graficador.

Tabla 4

Page 11: Graficador en visual basic

Antes de darle las propiedades a los diversos controles les explicare para que sirve las propiedades que fueron utilizadas en graficator, además los métodos que utilizamos para poder obtener estas graficas antes de generar el código fuente. Propiedades del formulario principal Name Nombre Define al objeto durante la ejecución del programa. Caption Título Es el texto que aparecerá en la barra de Título al ingresar a este formulario. . MinButton y MaxButton Botones de minimizar y maximizar el graficador. admiten el valor True o False. BorderStyle Tipo de borde Define el tipo de borde que tendrá el formulario durante la ejecución. en graficator sera 2-Sizable su borde sera grueso, y se podrá cambiar su tamaño en tiempo de ejecución mediante los botones de maximizar y minimizar, y mediante el arrastre de uno de los bordes con el ratón. Appearance Apariencia Graficator tendra la propiedad (3D), el formulario aparecerá con cierto efecto tridimensional, y los controles que le introduzcamos a este formulario aparecerán como esculpidos dentro de él. Backcolor Color del fondo Establece el color del fondo del formulario. DrawStyle Establece el estilo de línea de la salida de métodos gráficos: Valores: 0 - Línea continua 1 - Rayas 2 - Puntos 3 - Raya-Punto 4 - Raya - Punto - Punto 5 - Transparente 6 - Continuo interior. Font Tipo de letra Especifica el tipo y tamaño de la letra que se usará en el formulario. FontSize Tamaño de letra Establece el tamaño de la letra. Height Altura Define la altura del formulario.

Page 12: Graficador en visual basic

Icon Icono Esta propiedad define el icono que va a representar a este formulario cuando esté minimizado. Left Borde Izquierdo Indica la posición del borde izquierdo del formulario. ScaleHeight, ScaleWidth, ScaleMode Indican la unidad de medida de dimensión de altura y anchura del Formulario. ScaleMode indica en qué unidades de medida se van a medir esas dimensiones. . ScaleLeft, ScaleTop Expresan las coordenadas iniciales de la parte izquierda y de la parte superior respectivamente del Formulario.

Top Posición del borde superior Esta propiedad establece la posición del borde superior del formulario. Width Ancho Define la anchura del formulario. Juntamente con Height define el tamaño del formulario.. WindowState Establece el estado en el que aparecerá el formulario cuando se activa y presenta en pantalla. Admite tres opciones: 0 - Normal El formulario recupera la posición y tamaño que tenía en el tiempo de diseño. 1 - Minimizado El formulario aparece minimizado, representado por su icono. 2 - Maximizado El formulario aparece maximizado, ocupando toda la pantalla.

Los controles y sus propiedades que insertaremos en el formulario de graficator son:

Etiquetas (label) Esta etiquetas se utilizan generalmente para dos fines:

• Escribir texto en el formulario

• Mostrar resultados

Propiedades: Backcolor Color de fondo

Es el color de fondo de la etiqueta.

BackStyle Tipo de fondo

Opaco o transparente. Cuando se selecciona transparente, se ve solamente el texto de la

etiqueta. Cuando se selecciona opaco, este texto se vé sobre un fondo gris.

BorderStyle Tipo de borde

Page 13: Graficador en visual basic

Sin borde o con borde.

Caption Título

Es el texto de la etiqueta.

. Font Fuente

Es el tipo de letra para el título. Name Nombre

Es el nombre de la etiqueta con el que se le conocerá a lo largo del programa

Cuadros de texto (textbox)

• Leer valores

• Mostrar resultados tal como las etiquetas, pero en este caso facilita la posibilidad de copiar y pegar.

Propiedades: . Backcolor: Color de fondo

Es el color de fondo de la caja de texto.

BorderStyle: Tipo de borde

Sin borde o con borde. Enabled: Habilitado

Propiedad Booleana que habilita o deshabilita la etiqueta ,Cuando está deshabilitado (Enabled

= False), no tienen efecto los eventos que se produzcan sobre el TextBox.

Name: Nombre

Es el nombre de la caja de texto con el que se le conocerá a lo largo del programa

TabIndex Nº de orden para obtener el foco

esta propiedad marca el orden en el que le llegará el foco al pulsar la tecla TAB

Visible: Visible

Propiedad Booleana. Si es true, la caja de texto se ve, si es False no se ve

Botones de comando (commandbuton): Su finalidad es de generar acciones cuando se hace clic sobre ellos , el evento principal es el evento clic.

Propiedades:

Page 14: Graficador en visual basic

Name: Nombre

Es el nombre que define a este objeto. El nombre por defecto es Command1, Command2, etc.

Caption: Título

Es el texto que aparece en el botón.

Appearance: Apariencia

Determina la forma del botón. Admite los valores de Flat (Plano) y 3D.

Backcolor: Color de fondo

Es el color de un pequeño cuadrado que aparece rodeando el título,

Enabled: Habilitado

Propiedad Booleana que habilita o deshabilita el botón. Cuando está deshabilitado (Enabled =

False), el botón no tiene efecto, y su apariencia varía, presentando un tono pálido tanto en su

cuerpo como en su título. Font: Fuente

Es el tipo de letra para el título. Puede TabIndex Nº de orden para obtener el foco

esta propiedad marca el orden en el que le llegará el foco al pulsar la tecla TAB

Visible : Visible

Propiedad Booleana. Si es true, el botón se ve, si es False el botón no se ve..

Combobox (cuadro combinado)

Este control combina las posibilidades de una lista con un cuadro de texto, de manera que

presenta la posibilidad de elegir de una lista un elemento de interés, en graficator aparece

cuando se da a escoger cual funcion trigonometrica se desea graficar.

ListCount - Indica el número de elementos que tiene la lista

ListIndex - Indica el número de orden del elemento seleccionado dentro de la lista.

AddItem - Añade un elemento a la lista.

RemoveItem - Elimina un elemento de la lista.

Text - Obtiene el elemento seleccionado.

List (n) - Obtiene el elemento cuyo orden dentro de la lista es n.

Page 15: Graficador en visual basic

HScrollBar y VScrollBar

Son dos controles similares, para introducir un dato cuasi-analógico en una aplicación. El

HScrollBar está en posición horizontal, y el VScrollBar en posición vertical.

Propiedades: Max

Esta propiedad establece el valor máximo para la propiedad Value, es decir, el valor de esta

propiedad cuando el cursor está en su parte máxima.

Min

Esta propiedad establece el valor mínimo para la propiedad Value, es decir, el valor de esta

propiedad cuando el cursor está en su parte mínima.

SmallChange

Esta propiedad establece la variación de la propiedad Value cada vez que se hace click en las

flechas superior o inferior de la barra de desplazamiento.

Value

Esta propiedad lee o establece el valor dado por la posición del cursor. Este valor tiene un

mínimo, establecido por Min y un máximo, establecido por Max. Esta propiedad es la que se

debe leer para conocer la posición del cursor.

Picturebox ( cuadro de imagen ): Los controles picturebox se utilizaron mara mostrar mediante los metodos graficos crear los graficos de funciones trigonometricas. Tambien lo utilizamos para que sirviera como contenedor de otros controles. Los Métodos Gráficos: En el control PictureBox se realizo el graficador de funciones trigonometricas ya que utilizamos el formulario principal como graficador de las demas funciones y graficas geometricas.

• Puntos: Se realizan mediante el método Pset:

Objeto.Pset (X,Y), [color] Donde el Objeto es el nombre en este caso del picturebox.

• Líneas: Se utiliza el método Line:

Objeto.Line (X1,Y1)-(X2,Y2), [color]

Donde X1 y Y1 son las coordenadas del punto inicial y X2 y Y2 las del punto final, el color es opcional.

Page 16: Graficador en visual basic

3.1 metodos graficos Los metodos graficos fueron aquellas acciones que nos permitieron dibujar o representar graficos, analizarlos y borrarlos, los metodos graficos que dispones visual Basic y utilizamos fueron: Line, Point y PSet. 3.1.1 metodo Line Con este metodo dibujamos llineas mas que todo para representar el plano cartesiano, vectores directores y algunas rectas. Aunque con este metodo tambien se puede representar rectagulo y muchas figuras geometricas. Este metodo se ejecuto en el formulario principal y tambien en un picturebox un control que sirvio de contenedor para representar las funciones trigonometricas. Sintaxis 1 objeto.Line (x1, y1) - (x2, y2), color (Con esta sintaxis trazará una línea desde las coordenadas absolutas x1,y1 (origen) a las coordenadas también absolutas x2,y2. El color de la línea será el especificado en color. Sintaxis 2 objeto.Line (x1,y1) - Step (x2,y2), color objeto.Line (x1,y1) - (x1+x2, y1+y2), color (Con estas sintaxis se trazará una línea desde las coordenadas absolutas x1,y1 hasta las coordenadas relativas a (x1,y1), x2,y2. Es decir, al poner la palabra Step (paso) antes de las coordenadas finales, le estamos indicando que las coordenadas que siguen a Step son relativas. Sintaxis 3 objeto.Line Step (x1,y1) - Step (x2,y2), color Con esta expresión trazará una línea entre las coordenadas relativas (x1, y1), y las coordenadas relativas (x2,y2). En estas expresiones, las coordenadas estarán especificadas en las unidades de medida determinadas por las propiedades ScaleMode o ScaleWidth / ScaleHeight del objeto.

3.1.2 metodo pset Asigna a un punto de un objeto un color especificado. El objeto en graficator es el formulario principal o un picturebox que contendra un metodo grafico. Su sintaxis es: objeto.PSet (x, y), Color ó objeto.PSet Step (x, y), Color

3.1.3 metodo point Devuelve, como entero Long, el color rojo - verde - azul (RGB) del punto especificado en el formulario principal o picturebox donde estaran los planos cartesianos pero sera invocado en las aplicaciones que tiene graficator. Sintaxis objeto.Point(x, y) x, y Parámetro requerido. Valores Single que indican las coordenadas horizontal (eje x) y vertical (eje y) del punto según la propiedad ScaleMode del formulario principal o control PictureBox.

Page 17: Graficador en visual basic

4 Construccion de graficator

Teniendo todos estos conceptos claros vamos a proceder a construir tan mencionando

graficator; Nuestra meta es llegara a hacer un graficador que ayude a estudiantes de

bachillerato y talves algunos que esten comenzando la universidad, la interfaz de entrada al

usuario seria el siguiente:

Tabla 5

bueno vamos a comenzar a desarrollar esta apllicacion que se ve muy interesante al espectador, primero que todo vamos a entrar al programa que permitira desarrollarla y nos encontraremos con los siguiente :

Tabla 6

Lo que vamos a hacer es una aplicación en entorno Windows por esto daremos clic en EXE estandar que generara un formulario. En este formulario modificaremos sus propiedades y le agregaremos diversos controles, en el caso de graficator todos los controles los contendra un solo formulario que lleva por nombre frmgraficador. Las propiedades del formulario son las siguientes: Begin VB.Form fmrgraficator

Page 18: Graficador en visual basic

BackColor = &H80000007& (negro) Caption = "Form1" ClientHeight = 10815 ClientLeft = 195 ClientTop = 390 ClientWidth = 14880 Icon = (Icono) MinButton = 0 'False ScaleHeight = 14000 ScaleMode = 0 'User ScaleWidth = 14000

Tabla 7 Al dar las propiedades pertinentes y necesarias al formulario que contendra todos los controles, se procedera a generar el codigo en los bloques que genera visual Basic al dar dobleclick a un control. Primero que todo generaremos el codigo para hacer el plano cartesiano que contendra las graficas.

Tabla 8

Const XMIN = -15, XMAX = 15, YMIN = -15, YMAX = 15

Private Sub Form_Resize()

Page 19: Graficador en visual basic

Scale Left = XMIN

Scale Top = YMAX + 4

Scale Width = (XMAX - XMIN)

Scale Height = - (YMAX - YMIN)

Refresh

End Sub

Private Sub Form_Paint()

DrawStyle = 0

Dim xcelda As Single

Dim ycelda As Single

ForeColor = vbBlue

For xcelda = -15 To 15 Step 0.5

Line (XMIN, xcelda)-(XMAX, xcelda)

Next

ForeColor = vbBlue

For ycelda = -15 To 15 Step 0.5

Line (ycelda, YMIN)-(ycelda, YMAX)

Next

ForeColor = vbGreen

Line (0, YMIN)-(0, YMAX)

ForeColor = vbWhite

For ycelda = -15 To 15 Step 1

Line (0 - 0.2, ycelda + 0.3)-(0 - 0.2, ycelda + 0.3)

Font.Size = 8

MSG = ycelda

Print MSG

Next

ForeColor = vbGreen

Line (XMIN, 0)-(XMAX, 0)

ForeColor = vbWhite

For xcelda = -15 To 15 Step 1

Line (xcelda - 0.2, 0 + 0.3)-(xcelda - 0.2, 0 + 0.3)

Font.Size = 8

MSG2 = xcelda

Print MSG2

Next

End Sub

Este es el resultado de lo hecho anteriormente (tabla 9), se puede visualizar un plano cartesiano con un espacio en la parte superior, que es donde ira un picturebox que contendra los diversos controles para la ejecucion del programa. Tenga en cuenta que hay ejecutarlo para ver este avance.

Page 20: Graficador en visual basic

Tabla 9 Despues de generar el codigo para visualizar el plano cartesiano, Vamos entonces a proceder a colocar los botones que nos llevara a la aplicacion deseada, que estaran en tres picturebox que servira como contenedor. Y estos a su vez dentro de otro Picturebox. Que es el ocupara el espacio vacio en la visualizacion anterior. Lo que haremos es que jugaremos con la propieda visible para esconder o mostrar botones dando click a otro boton. En el caso de graficator los botones principales son: el boton geometría y el boton calculo, dando click a cualquiera de estos se desplegara una lista con otros botones, que daran entrada a aplicaciones graficas que ofrece graficator.

Tabla 10

Tabla 11

Page 21: Graficador en visual basic

Conjunta mente se llevara a cabo la tarea arrastrar los controles a cada una de las aplicaciones de graficator que estaran contenidas encima de Picturebox que tambien se mostraran o escondera activando un boton de la lista que despliega gemetria o calculo, Tambien colocaremos otros dos picturebox para crear la interfaz del plano cartesiano para la aplicacones trigonometricas y la interfaz de entrada, que a su vez contendra otro picturebox para hacer una especia de barra que mostrara el boton cerrar y la hora.

Tabla 12

Para efecto de comprensión se comenzara primero por especificar las propiedades de todos los controles y la generacion de codigo excepto, los que estan contenidos en los picturebox que serviran para la ejecución de cada una de las apllicaciones de graficator, Teniendo esto claro vamos a comenzar por dar las propiedades de los controles que aquí se mencionan: Begin VB.PictureBox Picture1 AutoSize = -1 'True TabIndex = 0 Begin VB.Frame Framecontenedorcolor TabIndex = 28 Visible = 0 'False Begin VB.PictureBox pctgeometriavalorpropio Appearance = 0 'Flat BackColor = &H80000015& BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 27 Visible = 0 'False Begin VB.PictureBox pctgeometriamatricez Appearance = 0 'Flat BackColor = &H80000015& BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 26 Visible = 0 'False Begin VB.PictureBox pctgeometriaproyeccionyreflexiion Appearance = 0 'Flat BackColor = &H80000015& BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 25 Visible = 0 'False Begin VB.PictureBox pctbarratransformaciones

Page 22: Graficador en visual basic

BackColor = &H00FF0000& TabIndex = 20 Visible = 0 'False Begin VB.CommandButton cmdcalculotransformacion2 Caption = "a(x+b)^c+d" TabIndex = 24 Begin VB.CommandButton cmdcalculotransformacion3 Caption = "a*raiz(x+b)+c" TabIndex = 23 Begin VB.CommandButton cmdcalculotransformaciontrigonometricas Caption = "trigonometricas" TabIndex = 22 Begin VB.CommandButton cmdcalculotransformacion1 Caption = "a(x+b)+c" TabIndex = 21 Begin VB.PictureBox pctbarracalculo BackColor = &H80000007& TabIndex = 17 Visible = 0 'False Begin VB.CommandButton cmdcalculograficasdefunciones Caption = "ax^n+bx^(n-1)+c" TabIndex = 19 Visible = 0 'False Begin VB.CommandButton cmdcalculotransformaciones Caption = "transformaciones" TabIndex = 18 Visible = 0 'False Begin VB.PictureBox pctbarrageometria BackColor = &H000000C0& TabIndex = 11 Visible = 0 'False Begin VB.CommandButton cmdgeometriarectasenelplano Caption = " linea recta en el plano" TabIndex = 16 Visible = 0 'False Begin VB.CommandButton cmdgeometriaproyeccionyreflexion Caption = "Pu(x) y Su(x) " TabIndex = 15 Visible = 0 'False Begin VB.CommandButton cmdgeometriaboton3 Caption = "solucion de ecuacjones 1`" TabIndex = 14 Visible = 0 'False Begin VB.CommandButton cmdgeometrialinearectaenelplano Caption = " linea recta en el plano " TabIndex = 13 Visible = 0 'False Begin VB.CommandButton cmdgeometriaboton5 Caption = "valor y vector propio" TabIndex = 12 Visible = 0 'False Begin VB.PictureBox pctgeometriarectasenelplano Appearance = 0 'Flat BackColor = &H80000015& BorderStyle = 0 'None Name = "Calibri" ForeColor = &H80000008& TabIndex = 9 Visible = 0 'False Begin VB.PictureBox Picture2 Appearance = 0 'Flat BackColor = &H80000015& BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 10 Begin VB.PictureBox pctcalculotransformacion2 Appearance = 0 'Flat

Page 23: Graficador en visual basic

BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 8 Visible = 0 'False Begin VB.PictureBox pctcalculograficasdefunciones Appearance = 0 'Flat BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 7 Visible = 0 'False Begin VB.PictureBox pctcalculotransformacionestrigonometricas Appearance = 0 'Flat BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 6 Visible = 0 'False Begin VB.PictureBox pctcalculotransformacion3 Appearance = 0 'Flat BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 5 Visible = 0 'False Begin VB.PictureBox pctgeometrialinearectaenelplano Appearance = 0 'Flat BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 4 Visible = 0 'False Begin VB.PictureBox pctcalculotransformacion1 Appearance = 0 'Flat ForeColor = &H80000008& TabIndex = 3 Visible = 0 'False Begin VB.CommandButton cmdgeometria Caption = "geometria" TabIndex = 2 Begin VB.CommandButton cmdcalculo BackColor = &H8000000A& Caption = "calculo" MaskColor = &H80000002& TabIndex = 1 Begin VB.PictureBox pctplanocartesianotrigonometricas AutoSize = -1 'True BackColor = &H80000007& TabIndex = 4 Visible = 0 'False Begin VB.CommandButton Command12 Caption = "borrar" TabIndex = 5 Begin VB.PictureBox principal AutoRedraw = -1 'True AutoSize = -1 'True BackColor = &H00FFC0C0& OLEDropMode = 1 'Manual Picture = (Mapa de bits) TabIndex = 0 Begin VB.PictureBox Picture6 AutoSize = -1 'True TabIndex = 1 Top = 0 Begin VB.Timer Timer1 Interval = 1000 Begin VB.CommandButton cmdcerrar BackColor = &H00C0C0C0& Caption = "cerrar" TabIndex = 2 Begin VB.Label lblhora

Page 24: Graficador en visual basic

BorderStyle = 1 'Fixed Single BeginProperty Font Name = "Calibri" TabIndex = 3

Teniendo todo esto hecho se generara el codigo para que todas estas acciones descritas se ejecuten:

Private Sub cmdcalculo_Click()

If pctbarracalculo.Visible = False Then

pctbarrageometria.Visible = False

pctbarratransformaciones.Visible = False

pctbarracalculo.Visible = True

cmdgeometrialinearectaenelplano.Visible = False

cmdgeometriarectasenelplano.Visible = False

cmdgeometriaboton3.Visible = False

cmdgeometriaproyeccionyreflexion.Visible = False

cmdgeometriaboton5.Visible = False

Framecontenedorcolor.Visible = True

cmdcalculograficasdefunciones.Visible = True

cmdcalculotransformaciones.Visible = True

cmdcalculotransformacion1.Visible = True

cmdcalculotransformacion3.Visible = True

cmdcalculotransformaciontrigonometricas.Visible = True

principal.Visible = True

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

principal.Visible = True

Else

pctgeometriamatricez.Visible = False

pctbarrageometria.Visible = False

pctbarratransformaciones.Visible = False

pctbarracalculo.Visible = False

cmdgeometrialinearectaenelplano.Visible = False

cmdgeometriarectasenelplano.Visible = False

cmdgeometriaboton3.Visible = False

cmdgeometriaproyeccionyreflexion.Visible = False

cmdgeometriaboton5.Visible = False

Framecontenedorcolor.Visible = False

cmdcalculograficasdefunciones.Visible = False

cmdcalculotransformaciones.Visible = False

cmdcalculotransformacion1.Visible = False

cmdcalculotransformacion3.Visible = False

cmdcalculotransformaciontrigonometricas.Visible = False

principal.Visible = True

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

Page 25: Graficador en visual basic

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriavalorpropio.Visible = False

principal.Visible = True

End If

End Sub

Private Sub cmdgeometriaboton3_Click()

frmgraficador.Refresh

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = True

pctgeometriavalorpropio.Visible = False

End Sub

Private Sub cmdgeometriaboton5_Click()

frmgraficador.Refresh

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = True

End Sub

Private Sub cmdcalculotransformaciones_Click()

If pctbarratransformaciones.Visible = False Then

pctbarrageometria.Visible = False

pctbarratransformaciones.Visible = True

pctbarracalculo.Visible = True

cmdgeometrialinearectaenelplano.Visible = False

cmdgeometriarectasenelplano.Visible = False

cmdgeometriaboton3.Visible = False

cmdgeometriaproyeccionyreflexion.Visible = False

cmdgeometriaboton5.Visible = False

cmdcalculograficasdefunciones.Visible = True

cmdcalculotransformaciones.Visible = True

cmdcalculotransformacion1.Visible = True

Page 26: Graficador en visual basic

cmdcalculotransformacion3.Visible = True

cmdcalculotransformaciontrigonometricas.Visible = True

pctplanocartesianotrigonometricas.Visible = False

principal.Visible = True

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

principal.Visible = True

Else

pctbarrageometria.Visible = False

pctbarratransformaciones.Visible = False

pctbarracalculo.Visible = True

cmdgeometrialinearectaenelplano.Visible = False

cmdgeometriarectasenelplano.Visible = False

cmdgeometriaboton3.Visible = False

cmdgeometriaproyeccionyreflexion.Visible = False

cmdgeometriaboton5.Visible = False

cmdcalculograficasdefunciones.Visible = True

cmdcalculotransformaciones.Visible = True

cmdcalculotransformacion1.Visible = True

cmdcalculotransformacion3.Visible = True

cmdcalculotransformaciontrigonometricas.Visible = True

principal.Visible = True

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

principal.Visible = True

End If

End Sub

Private Sub cmdcalculograficasdefunciones_Click()

Refresh

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = True

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

Page 27: Graficador en visual basic

principal.Visible = False

pctbarratransformaciones.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

End Sub

Private Sub cmdgeometrialinearectaenelplano_Click()

frmgraficador.Refresh

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = True

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

End Sub

Private Sub cmdgeometriaproyeccionyreflexion_Click()

frmgraficador.Refresh

pctgeometriaproyeccionyreflexiion.Visible = True

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

End Sub

Private Sub cmdgeometriarectasenelplano_Click()

frmgraficador.Refresh

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = True

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

End Sub

Private Sub cmdgeometria_Click()

If pctbarrageometria.Visible = False Then

pctbarrageometria.Visible = True

Page 28: Graficador en visual basic

pctbarratransformaciones.Visible = False

pctbarracalculo.Visible = False

cmdgeometrialinearectaenelplano.Visible = True

cmdgeometriarectasenelplano.Visible = True

cmdgeometriaboton3.Visible = True

cmdgeometriaproyeccionyreflexion.Visible = True

cmdgeometriaboton5.Visible = True

Framecontenedorcolor.Visible = True

cmdcalculograficasdefunciones.Visible = False

cmdcalculotransformaciones.Visible = False

cmdcalculotransformacion1.Visible = False

cmdcalculotransformacion3.Visible = False

cmdcalculotransformaciontrigonometricas.Visible = False

principal.Visible = True

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

principal.Visible = True

Else

pctgeometriamatricez.Visible = False

pctbarrageometria.Visible = False

pctbarratransformaciones.Visible = False

pctbarracalculo.Visible = False

cmdgeometrialinearectaenelplano.Visible = False

cmdgeometriarectasenelplano.Visible = False

cmdgeometriaboton3.Visible = False

cmdgeometriaproyeccionyreflexion.Visible = False

cmdgeometriaboton5.Visible = False

cmdcalculograficasdefunciones.Visible = False

Framecontenedorcolor.Visible = False

cmdcalculotransformaciones.Visible = False

cmdcalculotransformacion1.Visible = False

cmdcalculotransformacion3.Visible = False

cmdcalculotransformaciontrigonometricas.Visible = False

principal.Visible = True

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriavalorpropio.Visible = False

principal.Visible = True

End If

End Sub

Page 29: Graficador en visual basic

Private Sub cmdcalculotransformacion1_Click()

frmgraficador.Refresh

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = True

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

End Sub

Private Sub cmdcalculotransformacion2_Click()

frmgraficador.Refresh

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = True

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

End Sub

Private Sub cmdcalculotransformacion3_Click()

frmgraficador.Refresh

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = False

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

pctcalculotransformacion3.Visible = True

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = False

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

End Sub

Private Sub cmdcalculotransformaciontrigonometricas_Click()

pctplanocartesianotrigonometricas.Refresh

pctgeometriaproyeccionyreflexiion.Visible = False

pctgeometriarectasenelplano.Visible = False

pctcalculotransformacionestrigonometricas.Visible = True

pctcalculograficasdefunciones.Visible = False

pctcalculotransformacion2.Visible = False

pctgeometrialinearectaenelplano.Visible = False

pctcalculotransformacion1.Visible = False

Page 30: Graficador en visual basic

pctcalculotransformacion3.Visible = False

principal.Visible = False

pctplanocartesianotrigonometricas.Visible = True

pctgeometriamatricez.Visible = False

pctgeometriavalorpropio.Visible = False

End Sub

Lo que generamos con este algoritmo es el de tener dos botones principales uno llamado geometia y otro calculo, el de geometria desprede cinco botones mas y el de calculo un boton y otro llamodo transformaciones que llama a otros cuatro. Estos botones hacen visible a unos picturebox que normalmente estan en estado invisible. Pero la condicion es que si yo presiono un boton no me muestre los controles de otras aplicaciones que se invocan con otros botones y por ejemplo si estoy en un boton de geometria y presiono un boton de calculo los de geometria se escondan.

Tabla 13

Private Sub pctplanocartesianotrigonometricas_Paint()

pctplanocartesianotrigonometricas.ScaleLeft = -10

pctplanocartesianotrigonometricas.ScaleTop = 10

pctplanocartesianotrigonometricas.ScaleWidth = 20

pctplanocartesianotrigonometricas.ScaleHeight = -20

Dim xcelda As Single

Dim ycelda As Single

pctplanocartesianotrigonometricas.ForeColor = vbBlue

For xcelda = -10 To 10 Step 0.5

pctplanocartesianotrigonometricas.Line (-10, xcelda)-(10, xcelda)

Next

pctplanocartesianotrigonometricas.ForeColor = vbBlue

For ycelda = -15.708 To 15.708 Step (3.1416 / 4)

pctplanocartesianotrigonometricas.Line (ycelda, -10)-(ycelda, 10)

Next

pctplanocartesianotrigonometricas.ForeColor = vbGreen

pctplanocartesianotrigonometricas.Line (0, -10)-(0, 10)

pctplanocartesianotrigonometricas.ForeColor = vbWhite

For ycelda = -10 To 10 Step 1

pctplanocartesianotrigonometricas.Line (0 - 0.2, ycelda + 0.3)-(0 - 0.2, ycelda + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG = ycelda

pctplanocartesianotrigonometricas.Print MSG

Next

pctplanocartesianotrigonometricas.ForeColor = vbGreen

pctplanocartesianotrigonometricas.Line (-10, 0)-(10, 0)

pctplanocartesianotrigonometricas.ForeColor = vbWhite

pctplanocartesianotrigonometricas.PSet (0 + 3.1416, 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "pi"

Page 31: Graficador en visual basic

pctplanocartesianotrigonometricas.Print MSG2

pctplanocartesianotrigonometricas.PSet (0 + (3.1416 * 2), 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "2pi"

pctplanocartesianotrigonometricas.Print MSG2

pctplanocartesianotrigonometricas.PSet (0 + (3.1416 * 3), 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "3pi"

pctplanocartesianotrigonometricas.Print MSG2

pctplanocartesianotrigonometricas.PSet (0 - 3.1416, 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "-pi"

pctplanocartesianotrigonometricas.Print MSG2

pctplanocartesianotrigonometricas.PSet (0 - (3.1416 * 2), 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "-2pi"

pctplanocartesianotrigonometricas.Print MSG2

pctplanocartesianotrigonometricas.PSet (0 - (3.1416 * 3), 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "-3pi"

pctplanocartesianotrigonometricas.Print MSG2

pctplanocartesianotrigonometricas.PSet (0 + 3.1416 / 2, 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "pi/2"

pctplanocartesianotrigonometricas.Print MSG2

pctplanocartesianotrigonometricas.PSet (0 + (3.1416 / 2 * 3), 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "3/2pi"

pctplanocartesianotrigonometricas.Print MSG2

pctplanocartesianotrigonometricas.PSet (0 + (3.1416 / 2 * 5), 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "5/2pi"

pctplanocartesianotrigonometricas.Print MSG2

pctplanocartesianotrigonometricas.PSet (0 - 3.1416 / 2, 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "-pi/2"

pctplanocartesianotrigonometricas.Print MSG2

pctplanocartesianotrigonometricas.PSet (0 - (3.1416 / 2 * 3), 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "-3/2pi"

pctplanocartesianotrigonometricas.Print MSG2

pctplanocartesianotrigonometricas.PSet (0 - (3.1416 / 2 * 5), 0 + 0.3)

pctplanocartesianotrigonometricas.Font.Size = 8

MSG2 = "-5/2pi"

pctplanocartesianotrigonometricas.Print MSG2

End Sub

Lo que hicimos con este algoritmo es hacer otro plano cartesiano pero ideal para funciones trigonometricas ya que el formulario principal los dos ejes van con un paso de numeros enteros y este en el eje x va con un paso de π/2, este plano cartesiano esta hecho encima de un objeto llamado pctplanocartesiano que simplemente es un picturebox que nos sirvio de contenedor de este metodo grafico. Aquí podemos visualizar como es el plano cartesiano llamado por el boton trigonometricas desplegado del boton calculo.

Page 32: Graficador en visual basic

Tabla 15

Private Sub cmdcerrar_Click()

End

End Sub

Private Sub Timer1_Timer() lblhora.Caption = Time End Sub

Tabla 16 Ya concluido la fase de nombrar y generar el codigo a todos los objetos ingresados anteriormente, vamos a la siguiente fase que es el de arrastrar los controles necesarios a los picturebox que me serviran como contenedores de cada una de las aplicaciones que ofrece graficator y generar su codigo pero Para comprender mejor como se elaboran y funciona cada una de las aplicaciones de graficator se estudiaran por separado y aquí comenzaremos con la siguiente: 4.1 construccion de las aplicaciones de geometría 4.1.1 linea recta en el plano

Tabla 17

Esta aplicacion que ofrece graficator nos permite graficar una recta generada por un punto y un vector director en el plano cartesiano, genera un vector ortogonal a la recta (la recta normal). Es una aplicación diseñada para ayudar a los estudiantes bachilleres a comprender mejor este concepto pertececinte a la geometria vectoria y analitica. Los controles y propiedades de esta aplicación son:

Page 33: Graficador en visual basic

Begin VB.PictureBox pctgeometrialinearectaenelplano Appearance = 0 'Flat BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 0 Visible = 0 'False Begin VB.CommandButton cmdgraficargeometrialinearectaenelplano Caption = "graficar" TabIndex = 9 Begin VB.TextBox txtgeometriavectordirectorx Enabled = 0 'False TabIndex = 8 Text = "1" Begin VB.TextBox txtgeometriapuntox Enabled = 0 'False TabIndex = 7 Text = "0" Begin VB.TextBox txtgeometriavectordirectory Enabled = 0 'False TabIndex = 6 Text = "1" Begin VB.TextBox txtgeometriapuntoy Enabled = 0 'False TabIndex = 5 Text = "0" Begin VB.VScrollBar VSbgeometriapuntoy Max = -15 Min = 15 TabIndex = 4 Begin VB.VScrollBar VSbgeometriapuntox Max = -15 Min = 15 TabIndex = 3 Begin VB.VScrollBar VSbgeometriavectordirectory Max = -15 Min = 15 TabIndex = 2 Begin VB.VScrollBar VSbgeometriavectordirectorx Max = -15 Min = 15 TabIndex = 1 Begin VB.Label Label3 Caption = "t" Name = "MS Sans Serif" TabIndex = 13 Begin VB.Label Label4 Caption = "( )=" Name = "MS Sans Serif" TabIndex = 12 Begin VB.Label lblx Caption = "x" Name = "MS Sans Serif" Index = 4 TabIndex = 11 Begin VB.Label lbly Caption = "y" Name = "MS Sans Serif" TabIndex = 10

Private Sub cmdgraficargeometrialinearectaenelplano_Click()

Refresh

For u = -20 To 20 Step 0.01

DrawWidth = 2

Font.Size = 12

Line (0, 0)-(txtgeometriavectordirectorx, txtgeometriavectordirectory)

Page 34: Graficador en visual basic

MSG = "D"

Print MSG

Line (txtgeometriapuntox, txtgeometriapuntoy)-(Val(txtgeometriapuntox.Text) +

Val(txtgeometriavectordirectorx.Text), Val(txtgeometriavectordirectory.Text) +

Val(txtgeometriapuntoy.Text))

DrawWidth = 5

Font.Size = 30

PSet (txtgeometriavectordirectorx, txtgeometriavectordirectory)

ForeColor = vbGreen

PSet (txtgeometriapuntox, txtgeometriapuntoy)

ForeColor = pctcolorl1.BackColor

PSet (Val(txtgeometriapuntox.Text) + Val(txtgeometriavectordirectorx.Text),

Val(txtgeometriavectordirectory.Text) + Val(txtgeometriapuntoy.Text))

DrawWidth = 1

Font.Size = 12

X = txtgeometriapuntox + txtgeometriavectordirectorx * u

Y = txtgeometriapuntoy + txtgeometriavectordirectory * u

msg3 = "L1"

Print msg3

PSet (X, Y)

ForeColor = vbRed

Line (0, 0)-(-txtgeometriavectordirectory, txtgeometriavectordirectorx)

MSG2 = "N"

Print MSG2

PSet (-txtgeometriavectordirectory, txtgeometriavectordirectorx)

ForeColor = vbWhite

Next

End Sub

Private Sub VSbgeometriapuntox_Change()

txtgeometriapuntox.Text = VSbgeometriapuntox.Value

End Sub

Private Sub VSbgeometriapuntoy_Change()

txtgeometriapuntoy.Text = VSbgeometriapuntoy.Value

End Sub

Private Sub VSbgeometriavectordirectorx_Change()

txtgeometriavectordirectorx.Text = VSbgeometriavectordirectorx.Value

End Sub

Private Sub VSbgeometriavectordirectory_Change()

txtgeometriavectordirectory.Text = VSbgeometriavectordirectory.Value

End Sub

Page 35: Graficador en visual basic

Tabla 18

4.1.2 Dos lineas rectas en el plano

Tabla 19

Esta aplicación genera dos rectas llamadas L1 y L2 dando un punto y un vector director de cado una de ellas, las grafica y ademas de esto da la ecuación en forma general de cada una de ellas y determina si son paralelas y si son ortogonales (`perpendiculares). Begin VB.PictureBox pctgeometriarectasenelplano Appearance = 0 'Flat BackColor = &H80000015& BorderStyle = 0 'None BeginProperty Font Name = "Calibri" ForeColor = &H80000008& TabIndex = 0 Visible = 0 'False Begin VB.PictureBox Picture2 Appearance = 0 'Flat BackColor = &H80000015& BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 8 Begin VB.TextBox Txtgeometriavectordirectorxl1 Enabled = 0 'False TabIndex = 24 Text = "1" Begin VB.TextBox Txtgeometriapuntoxl1 Enabled = 0 'False TabIndex = 23 Text = "0"

Page 36: Graficador en visual basic

Begin VB.TextBox Txtgeometriavectordirectoryl1 Enabled = 0 'False TabIndex = 22 Text = "1" Begin VB.TextBox txtgeometriapuntoyl1 Enabled = 0 'False TabIndex = 21 Text = "0" Begin VB.VScrollBar VSbgeometriapuntoyl1 Max = -15 Min = 15 TabIndex = 20 Begin VB.VScrollBar VSbgeometriapuntoxl1 Max = -15 Min = 15 TabIndex = 19 Begin VB.VScrollBar VSbgeometriavectordirectoryl1 Max = -15 Min = 15 TabIndex = 18 Begin VB.VScrollBar VSbgeometriavectordirectorxl1 Max = -15 Min = 15 TabIndex = 17 VB.VScrollBar VSbgeometriapuntoxl2 Max = -15 Min = 15 TabIndex = 16 Begin VB.VScrollBar VSbgeometriapuntoyl2 Max = -15 Min = 15 TabIndex = 15 Begin VB.TextBox Txtgeometriapuntoxl2 Enabled = 0 'False TabIndex = 14 Text = "0" Begin VB.TextBox Txtgeometriapuntoyl2 Enabled = 0 'False TabIndex = 13 Text = "0" Begin VB.VScrollBar VSbgeometriavectordirectorxl2 Max = -15 Min = 15 TabIndex = 12 Begin VB.VScrollBar VSbgeometriavectordirectoryl2 Max = -15 Min = 15 TabIndex = 11 Begin VB.TextBox Txtgeometriavectordirectorxl2 Enabled = 0 'False TabIndex = 10 Text = "1" Begin VB.TextBox Txtgeometriavectordirectoryl2 Enabled = 0 'False TabIndex = 9 Text = "1" Begin VB.Label Label17 BackColor = &H80000015& Caption = "( )=" Name = "MS Sans Serif" TabIndex = 32 Begin VB.Label Label1 BackColor = &H80000015& Caption = "x" Name = "MS Sans Serif" TabIndex = 31 Begin VB.Label Label19

Page 37: Graficador en visual basic

BackColor = &H80000015& Caption = "y" Name = "MS Sans Serif" TabIndex = 30 Begin VB.Label Label12 BackColor = &H80000015& Caption = "( )=" Name = "MS Sans Serif" TabIndex = 29 Begin VB.Label Label10 BackColor = &H80000015& Caption = "x'" Name = "MS Sans Serif" TabIndex = 28 Begin VB.Label Label11 BackColor = &H80000015& Caption = "y'" Name = "MS Sans Serif" TabIndex = 27 Begin VB.Label l1 Caption = "L1 L2" BeginProperty Font Name = "Arial" TabIndex = 26 Begin VB.Label l1 Caption = "T J" Name = "Calibri" Index = 1 TabIndex = 25 Begin VB.CommandButton cmdgraficargeometriarectasenelplano Caption = "graficar" TabIndex = 7 Begin VB.TextBox txtecuaciondelarectal1x Enabled = 0 'False TabIndex = 6 Begin VB.TextBox txtecuaciondelarectal2x Enabled = 0 'False TabIndex = 5 Begin VB.TextBox Txtecuaciondelarectal1y Enabled = 0 'False TabIndex = 4 Begin VB.TextBox Txtecuaciondelarectal2y Enabled = 0 'False TabIndex = 3 Begin VB.TextBox Txtecuaciondelarectal1c Enabled = 0 'False TabIndex = 2 Begin VB.TextBox Txtecuaciondelarectal2c Enabled = 0 'False TabIndex = 1 Begin VB.Label l BorderStyle = 1 'Fixed Single TabIndex = 40 Begin VB.Label pendientel1 BorderStyle = 1 'Fixed Single TabIndex = 39 Begin VB.Label Label29 Caption = "D : vector director " TabIndex = 38 Begin VB.Label paralelas BorderStyle = 1 'Fixed Single TabIndex = 37 Begin VB.Label p BorderStyle = 1 'Fixed Single TabIndex = 36 Begin VB.Label Label6 Caption = "pendiente de L1 pendiente de L2"

Page 38: Graficador en visual basic

TabIndex = 35 Begin VB.Label Label5 Caption = "x y x y" BeginProperty Font Name = "MS Sans Serif" TabIndex = 34 Begin VB.Label l1 Caption = "=" Index = 3 TabIndex = 33

Private Sub cmdgraficargeometriarectasenelplano_Click()

Refresh

For u = -25 To 25 Step 0.01

DrawWidth = 2

Font.Size = 12

Line (0, 0)-(Txtgeometriavectordirectorxl1, Txtgeometriavectordirectoryl1)

msg7 = "D1"

Print msg7

Line (Txtgeometriapuntoxl1, txtgeometriapuntoyl1)-(Val(Txtgeometriapuntoxl1.Text) +

Val(Txtgeometriavectordirectorxl1.Text), Val(Txtgeometriavectordirectoryl1.Text) +

Val(txtgeometriapuntoyl1.Text))

ForeColor = vbGreen

DrawWidth = 5

Font.Size = 30

ForeColor = vbWhite

PSet (Txtgeometriavectordirectorxl1, Txtgeometriavectordirectoryl1)

ForeColor = vbGreen

PSet (Txtgeometriapuntoxl1, txtgeometriapuntoyl1)

PSet (Val(Txtgeometriapuntoxl1.Text) + Val(Txtgeometriavectordirectorxl1.Text),

Val(Txtgeometriavectordirectoryl1.Text) + Val(txtgeometriapuntoyl1.Text))

DrawWidth = 1

Font.Size = 12

ForeColor = pctcolorl1.BackColor

x = Txtgeometriapuntoxl1 + Txtgeometriavectordirectorxl1 * u

y = txtgeometriapuntoyl1 + Txtgeometriavectordirectoryl1 * u

msg4 = "L1"

Print msg4

PSet (x, y)

ForeColor = vbWhite

Next

If Tm1 = 0 Then

lbllpendiente = "no hay pendiente"

Else

lblpendiente = Txtgeometriavectordirectoryl1 / Txtgeometriavectordirectorxl1

End If

For u = -25 To 25 Step 0.01

DrawWidth = 2

Font.Size = 12

Line (0, 0)-(Txtgeometriavectordirectorxl2, Txtgeometriavectordirectoryl2)

msg8 = "D2"

Print msg8

Line (Txtgeometriapuntoxl2, Txtgeometriapuntoyl2)-(Val(Txtgeometriapuntoxl2.Text) +

Val(Txtgeometriavectordirectorxl2.Text), Val(Txtgeometriavectordirectoryl2.Text) +

Val(Txtgeometriapuntoyl2.Text))

ForeColor = vbGreen

DrawWidth = 5

Font.Size = 30

ForeColor = vbWhite

Page 39: Graficador en visual basic

PSet (Txtgeometriavectordirectorxl2, Txtgeometriavectordirectoryl2)

ForeColor = vbGreen

PSet (Txtgeometriapuntoxl2, Tl4)

ForeColor = vbWhite

PSet (Val(Txtgeometriapuntoxl2.Text) + Val(Txtgeometriavectordirectorxl2.Text),

Val(Txtgeometriavectordirectoryl2.Text) + Val(Txtgeometriapuntoyl2.Text))

DrawWidth = 1

Font.Size = 12

ForeColor = pctcolorl2.BackColor

x = Txtgeometriapuntoxl2 + Txtgeometriavectordirectorxl2 * u

y = Txtgeometriapuntoyl2 + Txtgeometriavectordirectoryl2 * u

msg6 = "L2"

Print msg6

PSet (x, y)

ForeColor = vbRed

Next

If Txtgeometriavectordirectorxl2 = 0 Then

l.Caption = " no hay pendiente"

Else

l.Caption = Txtgeometriavectordirectoryl2 / Txtgeometriavectordirectorxl2

End If

If Txtgeometriavectordirectorxl1 = 0 Then

pendientel1 = " no hay pendiente"

Else

pendientel1 = Txtgeometriavectordirectoryl1 / Txtgeometriavectordirectorxl1

End If

If Txtgeometriavectordirectoryl1 <> 0 And Txtgeometriavectordirectorxl2 <> 0 Then

If pendiente1 * l = -1 Then

p = "son perpendiculares"

Else

p = "no son perpendiculares"

End If

End If

If l.Caption = pendientel1.Caption Then

paralelas.Caption = "son paralelas"

Else

paralelas.Caption = "no son paralelas "

End If

End Sub

Private Sub VSbgeometriapuntoxl1_Change()

Txtgeometriapuntoxl1.Text = VSbgeometriapuntoxl1.Value

End Sub

Private Sub VSbgeometriapuntoxl1_Change()

Txtgeometriapuntoxl1.Text = VSbgeometriapuntoxl1.Value

End Sub

Private Sub VSbgeometriapuntoxl2_Change()

Txtgeometriapuntoxl2.Text = VSbgeometriapuntoxl2.Value

End Sub

Private Sub VSbgeometriapuntoyl1_Change()

txtgeometriapuntoyl1.Text = VSbgeometriapuntoyl1

End Sub

Private Sub VSbgeometriapuntoyl2_Change()

Txtgeometriapuntoyl2.Text = VSbgeometriapuntoyl2.Value

Page 40: Graficador en visual basic

End Sub

Private Sub VSbgeometriavectordirectorxl1_Change()

Txtgeometriavectordirectorxl1.Text = VSbgeometriavectordirectorxl1.Value

End Sub

Private Sub VSbgeometriavectordirectorxl2_Change()

Txtgeometriavectordirectorxl2.Text = VSbgeometriavectordirectorxl2.Value

End Sub

Private Sub VSbgeometriavectordirectoryl1_Change()

Txtgeometriavectordirectoryl1.Text = VSbgeometriavectordirectoryl1.Value

End Sub

Private Sub VSbgeometriavectordirectoryl2_Change()

Txtgeometriavectordirectoryl2.Text = VSbgeometriavectordirectoryl2.Value

End Sud

Tabla 20

4.1.3 Proyeccion y reflexion sobre la recta L1

Tabla 21

Esta aplicación calcula la proyecion y reflexion de un punto a una recta, dando un punto de la recta y un punto exterior a ella. Ademas de esto se muestra la formula con los puntos dados y la grafica. los controles arrastrados y sus propiedades son :

Page 41: Graficador en visual basic

Begin VB.PictureBox pctgeometriavalorpropio Appearance = 0 'Flat BackColor = &H80000015& BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 0 Visible = 0 'False Begin VB.CommandButton cmdvalorpropio Caption = "graficar" TabIndex = 19 Begin VB.VScrollBar VSbTxtgeometriavalorpropiol1x Max = -15 Min = 15 TabIndex = 18 Begin VB.VScrollBar VSbTxtgeometriavalorpropiol2x Max = -15 Min = 15 TabIndex = 17 Begin VB.TextBox Txtgeometriavalorpropiol1x Enabled = 0 'False TabIndex = 16 Text = "1" Begin VB.TextBox Txtgeometriavalorpropiol2x Enabled = 0 'False TabIndex = 15 Text = "1" Begin VB.VScrollBar VSbTxtgeometriavalorpropiol1y Max = -15 Min = 15 TabIndex = 14 Begin VB.VScrollBar VSbTxtgeometriavalorpropiol2y Max = -15 Min = 15 TabIndex = 13 Begin VB.TextBox Txtgeometriavalorpropiol1y Enabled = 0 'False TabIndex = 12 Text = "1" Begin VB.TextBox Txtgeometriavalorpropiol2y Enabled = 0 'False TabIndex = 11 Text = "1" Begin VB.TextBox txtvectorpropiox1 Enabled = 0 'False TabIndex = 10 Begin VB.TextBox Text2 Enabled = 0 'False TabIndex = 9 Text = "0" Begin VB.TextBox Text3 Enabled = 0 'False TabIndex = 8 Text = "0" Begin VB.TextBox txtvectorpropioy2 Enabled = 0 'False TabIndex = 7 Begin VB.TextBox txtvectorpropioy1 Enabled = 0 'False TabIndex = 6 Begin VB.TextBox txtvectorpropiox2 Enabled = 0 'False TabIndex = 5 Begin VB.TextBox txtesultadovectorpropiox1 Enabled = 0 'False TabIndex = 4 Begin VB.TextBox txtesultadovectorpropioy1 Enabled = 0 'False

Page 42: Graficador en visual basic

TabIndex = 3 Begin VB.TextBox txtesultadovectorpropiox2 Enabled = 0 'False TabIndex = 2 Begin VB.TextBox txtesultadovectorpropioy2 Enabled = 0 'False TabIndex = 1 Begin VB.Label Label23 Caption = "@^2 @ = 0" TabIndex = 33 Begin VB.Label Lblecuaciovalorpropiox BorderStyle = 1 'Fixed Single TabIndex = 32 Begin VB.Label Lblecuaciovalorpropioy BorderStyle = 1 'Fixed Single TabIndex = 31 VB.Label lblvalorpropio1 BorderStyle = 1 'Fixed Single TabIndex = 30 Begin VB.Label lblvalorpropio2 BorderStyle = 1 'Fixed Single TabIndex = 29 Begin VB.Label Label30 Caption = "@1" TabIndex = 28 Begin VB.Label Label31 Caption = "@2" TabIndex = 27 Begin VB.Label Label32 Caption = "valores propios" TabIndex = 26 Begin VB.Label Label20 Caption = "A=" TabIndex = 25 End Begin VB.Label lblparentesis Caption = " ( ) " Name = "MS Sans Serif" Index = 10 TabIndex = 24 Begin VB.Label Label26 BackColor = &H80000002& Caption = "x y =" Name = "MS Sans Serif" TabIndex = 23 Begin VB.Label Label33 BackColor = &H80000002& Caption = "x y = " Name = "MS Sans Serif" TabIndex = 22 Begin VB.Label Label37 Caption = "vectores propios" TabIndex = 21 Begin VB.Label lblparentesis Caption = "( ) ( )" Name = "Arial" Index = 0 TabIndex = 20

El codigo generado es el siguiente :

Private Sub cmdgraficargeometriaproyeccion_Click()

Refresh

Page 43: Graficador en visual basic

a = (((proy1 * proy1 * proy3) / (proy1 * proy1 + proy2 * proy2)) + ((proy2 * proy1 * proy4) / (proy1 *

proy1 + proy2 * proy2)))

b = (((proy1 * proy2 * proy3) / (proy1 * proy1 + proy2 * proy2)) + ((proy2 * proy2 * proy4) / (proy1 *

proy1 + proy2 * proy2)))

DrawWidth = 5

ForeColor = pctcolorl1.BackColor

PSet (proy1, proy2)

MSG1 = "U"

Print MSG1

DrawWidth = 5

ForeColor = vbYellow

PSet (a, b)

MSG = " Pu(x)"

Print MSG

DrawWidth = 5

ForeColor = pctcolorl2.BackColor

PSet (proy3, proy4)

MSG2 = " X"

Print MSG2

DrawWidth = 1

ForeColor = pctcolorl1.BackColor

Lpx(0).Caption = proy1.Text

Lpy(0).Caption = proy2.Text

Ly(0).Caption = proy2.Text

Lx(0).Caption = proy1.Text

Luxu(0).Caption = (proy1 * proy1) + (proy2 * proy2)

Lpx(1).Caption = proy1.Text

Lpy(1).Caption = proy2.Text

Ly(1).Caption = proy2.Text

Lx(1).Caption = proy1.Text

Luxu(1).Caption = (proy1 * proy1) + (proy2 * proy2)

lblresultadopuxx.Caption = a

lblresultadopuxy.Caption = b

lblresultadosuxx.Caption = ""

lblresultadosuxy.Caption = ""

For u = -15 To 15 Step 0.01

X = proy1 + a * u

Y = proy2 + b * u

PSet (X, Y)

Next

ForeColor = vbGreen

DrawStyle = 2

Line (a, b)-(proy3, proy4)

DrawStyle = 0

End Sub

Private Sub cmdgraficargeometriareflexion_Click()

Refresh

a = (((proy1 * proy1 * proy3) / (proy1 * proy1 + proy2 * proy2)) + ((proy2 * proy1 * proy4) / (proy1 *

proy1 + proy2 * proy2)))

b = (((proy1 * proy2 * proy3) / (proy1 * proy1 + proy2 * proy2)) + ((proy2 * proy2 * proy4) / (proy1 *

proy1 + proy2 * proy2)))

DrawWidth = 5

PSet (proy1, proy2)

MSG1 = "U"

Print MSG1

DrawWidth = 5

ForeColor = vbYellow

Page 44: Graficador en visual basic

PSet (a, b)

MSG = " Pu(x)"

Print MSG

DrawWidth = 5

PSet (proy3, proy4)

MSG2 = " X"

Print MSG2

DrawWidth = 5

c = 2 * a - proy3

d = 2 * b - proy4

PSet (c, d)

msgsu = "Su(x)"

Print msgsu

DrawWidth = 1

ForeColor = pctcolorl1.BackColor

Lpx(0).Caption = proy1.Text

Lpy(0).Caption = proy2.Text

Ly(0).Caption = proy2.Text

Lx(0).Caption = proy1.Text

Luxu(0).Caption = (proy1 * proy1) + (proy2 * proy2)

Lpx(1).Caption = proy1.Text

Lpy(1).Caption = proy2.Text

Ly(1).Caption = proy2.Text

Lx(1).Caption = proy1.Text

Luxu(1).Caption = (proy1 * proy1) + (proy2 * proy2)

lblresultadosuxx.Caption = c

lblresultadosuxy.Caption = d

lblresultadopuxx.Caption = a

lblresultadopuxy.Caption = b

For u = -15 To 15 Step 0.01

X = proy1 + a * u

Y = proy2 + b * u

PSet (X, Y)

Next

ForeColor = vbGreen

DrawStyle = 2

Line (a, b)-(proy3, proy4)

ForeColor = vbYellow

DrawStyle = 2

Line (a, b)-(c, d)

DrawStyle = 0

End Sub

Private Sub VSbproy1_Change()

proy1.Text = VSbproy1.Value

End Sub

Private Sub VSbproy2_Change()

proy2.Text = VSbproy2.Value

End Sub

Private Sub VSbproy3_Change()

proy3.Text = VSbproy3.Value

End Sub

Private Sub VSbproy4_Change()

proy4.Text = VSbproy4.Value

End Sub

Page 45: Graficador en visual basic

Tabla 22

4.1.4 Solucion de ecuaciones de primer grado con dos incognitas

Tabla 23

Esta aplicacion nos permite a travez de la formula general de la recta generar dos rectas L1 y L2, mostra su matriz y si es invertible dar el punto solucion de ambas rectas mediante la transpuesta de la matriz y el punto solucion de cada una de las rectas. Ademas grafica lo dicho anterior mente. Begin VB.PictureBox pctgeometriamatricez Appearance = 0 'Flat BackColor = &H80000015& BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 0 Visible = 0 'False Begin VB.PictureBox Picture4 BackColor = &H00E0E0E0& TabIndex = 19 Begin VB.TextBox Txtgeometriaecuacionl2c Enabled = 0 'False Index = 0 TabIndex = 31 Text = "0" Begin VB.TextBox Txtgeometriaecuacionl1c Enabled = 0 'False Index = 0 TabIndex = 30 Text = "0" Begin VB.TextBox Txtgeometriaecuacionl1y Enabled = 0 'False

Page 46: Graficador en visual basic

Index = 0 TabIndex = 29 Text = "1" Begin VB.TextBox Txtgeometriaecuacionl1x Enabled = 0 'False Index = 0 TabIndex = 28 Text = "1" Begin VB.TextBox Txtgeometriaecuacionl2y Enabled = 0 'False Index = 0 TabIndex = 27 Text = "1" Begin VB.TextBox Txtgeometriaecuacionl2x Enabled = 0 'False TabIndex = 26 Text = "1" Begin VB.VScrollBar VSbTxtgeometriaecuacionl1x Max = -15 Min = 15 TabIndex = 25 Begin VB.VScrollBar VsbTxtgeometriaecuacionl2x Max = -15 Min = 15 TabIndex = 24 Begin VB.VScrollBar VSbTxtgeometriaecuacionl1y Max = -15 Min = 15 TabIndex = 23 Value = 1 Begin VB.VScrollBar VSbTxtgeometriaecuacionl2y Max = -15 Min = 15 TabIndex = 22 Top = 360 Value = 1 Begin VB.VScrollBar VSbTxtgeometriaecuacionl2c Max = -15 Min = 15 TabIndex = 21 Begin VB.VScrollBar VSbTxtgeometriaecuacionl1c Max = -15 Min = 15 TabIndex = 20 Begin VB.Label Label9 BackColor = &H00E0E0E0& Caption = "L2" TabIndex = 38 Begin VB.Label l1 BackColor = &H00E0E0E0& Caption = "=" Index = 4 TabIndex = 37 Begin VB.Label Label13 BackColor = &H00E0E0E0& Caption = "y" Name = "MS Sans Serif" TabIndex = 36 Begin VB.Label Label15 BackColor = &H00E0E0E0& Caption = "x" Name = "MS Sans Serif" TabIndex = 35 Begin VB.Label l1 BackColor = &H00E0E0E0& Caption = "L1" Index = 5

Page 47: Graficador en visual basic

TabIndex = 34 Begin VB.Label Label16 BackColor = &H00E0E0E0& Caption = "x" Name = "MS Sans Serif" TabIndex = 33 Begin VB.Label Label18 BackColor = &H00E0E0E0& Caption = "y" BeginProperty Font Name = "MS Sans Serif" TabIndex = 32 Begin VB.CommandButton cmdgraficarecuacionesconmatricez Caption = "graficar" TabIndex = 18 Begin VB.TextBox Txtgeometriaecuacionl1x Enabled = 0 'False Index = 1 TabIndex = 17 Text = "1" Begin VB.TextBox Txtgeometriaecuacionl1y Enabled = 0 'False Index = 1 TabIndex = 16 Text = "1" Begin VB.TextBox Txtgeometriaecuacionl2x Enabled = 0 'False Index = 1 TabIndex = 15 Text = "1" Begin VB.TextBox Txtgeometriaecuacionl2y Enabled = 0 'False Index = 1 TabIndex = 14 Text = "1" Begin VB.PictureBox pctmatricez Appearance = 0 'Flat BackColor = &H80000015& BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 1 Begin VB.TextBox Txtx Enabled = 0 'False TabIndex = 10 Begin VB.TextBox txty Enabled = 0 'False TabIndex = 9 Begin VB.TextBox Txtinvertible Enabled = 0 'False TabIndex = 8 Begin VB.TextBox Txtgeometriaecuacionl1x Enabled = 0 'False Index = 2 TabIndex = 7 Begin VB.TextBox Txtgeometriaecuacionl2x Enabled = 0 'False Index = 2 TabIndex = 6 Begin VB.TextBox Txtgeometriaecuacionl1y Enabled = 0 'False Index = 2 TabIndex = 5 Begin VB.TextBox Txtgeometriaecuacionl2y Enabled = 0 'False Index = 2 TabIndex = 4 Begin VB.TextBox Txtgeometriaecuacionl1c

Page 48: Graficador en visual basic

Enabled = 0 'False Index = 1 TabIndex = 3 Begin VB.TextBox Txtgeometriaecuacionl2c Enabled = 0 'False Index = 1 TabIndex = 2 Begin VB.Label lblparentesis BackColor = &H80000002& Caption = "( ) =" Name = "MS Sans Serif" TabIndex = 13 Begin VB.Label lblparentesis BackColor = &H80000002& Caption = "---( ) ( ) " Name = "Arial" Index = 8 TabIndex = 12 Begin VB.Label Label24 BackColor = &H80000002& Caption = "1" Name = "MS Sans Serif" Size = 12 TabIndex = 11 Begin VB.Label lblmatrizA Caption = "A=" TabIndex = 41 Begin VB.Label lblparentesis Caption = "( ) " Name = "Arial" Index = 6 TabIndex = 40 Begin VB.Label lblesinvertible Caption = "no es invertible" TabIndex = 39 Visible = 0 'False

Private Sub cmdgraficarecuacionesconmatricez_Click()

Refresh

For X = -20 To 20 Step 0.01

Y = ((-Txtgeometriaecuacionl1x(1) * X) + Txtgeometriaecuacionl1c(0)) / Txtgeometriaecuacionl1y(1)

Y2 = ((-Txtgeometriaecuacionl2x(1) * X) + Txtgeometriaecuacionl2c(0)) / Txtgeometriaecuacionl2y(1)

ForeColor = pctcolorl1.BackColor

PSet (X, Y)

ForeColor = pctcolorl2.BackColor

PSet (X, Y2)

Next

If (Txtgeometriaecuacionl1x(1) * Txtgeometriaecuacionl2y(1)) - (Txtgeometriaecuacionl2x(1) *

Txtgeometriaecuacionl1y(1)) = 0 Then

pctmatricez.Visible = False

lblesinvertible.Visible = True

Else

Txtinvertible.Text = (Txtgeometriaecuacionl1x(1) * Txtgeometriaecuacionl2y(1)) -

(Txtgeometriaecuacionl2x(1) * Txtgeometriaecuacionl1y(1))

pctmatricez.Visible = True

lblesinvertible.Visible = False

Txtgeometriaecuacionl1x(2).Text = Txtgeometriaecuacionl2y(1).Text

Txtgeometriaecuacionl2y(2).Text = Txtgeometriaecuacionl1x(1).Text

Txtgeometriaecuacionl1y(2).Text = -Txtgeometriaecuacionl1y(1).Text

Txtgeometriaecuacionl2x(2).Text = -Txtgeometriaecuacionl2x(1).Text

Txtgeometriaecuacionl1c(1).Text = Txtgeometriaecuacionl1c(0).Text

Txtgeometriaecuacionl2c(1).Text = Txtgeometriaecuacionl2c(0).Text

Page 49: Graficador en visual basic

Txtx = ((Txtgeometriaecuacionl1x(2) * Txtgeometriaecuacionl1c(1)) + (Txtgeometriaecuacionl1y(2) *

Txtgeometriaecuacionl2c(1))) / Txtinvertible

txty = ((Txtgeometriaecuacionl2x(2) * Txtgeometriaecuacionl1c(1)) + (Txtgeometriaecuacionl2y(2) *

Txtgeometriaecuacionl2c(1))) / Txtinvertible

End If

End Sub

Tabla 24

4.1.5 Valores y vectores propios

Tabla25

Esta aplicación encuentra los valores propios y el vector propio de dos rectas que es ingresada al sistema por sus matricez dando las ecuaciones en forma general de cada una de las rectas la ecuación caracteristicas de de ambas ecuaciones y sus graficas. Begin VB.PictureBox pctgeometriavalorpropio Appearance = 0 'Flat BackColor = &H0000FF00& BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 0 Visible = 0 'False Begin VB.CommandButton cmdvalorpropio Caption = "graficar" TabIndex = 19 Begin VB.VScrollBar VSbTxtgeometriavalorpropiol1x Max = -15 Min = 15 TabIndex = 18 Begin VB.VScrollBar VSbTxtgeometriavalorpropiol2x Max = -15 Min = 15 TabIndex = 17 Begin VB.TextBox Txtgeometriavalorpropiol1x

Page 50: Graficador en visual basic

Enabled = 0 'False TabIndex = 16 Text = "1" Begin VB.TextBox Txtgeometriavalorpropiol2x Enabled = 0 'False TabIndex = 15 Text = "1" Begin VB.VScrollBar VSbTxtgeometriavalorpropiol1y Max = -15 Min = 15 TabIndex = 14 Begin VB.VScrollBar VSbTxtgeometriavalorpropiol2y Max = -15 Min = 15 TabIndex = 13 Begin VB.TextBox Txtgeometriavalorpropiol1y Enabled = 0 'False TabIndex = 12 Text = "1" Begin VB.TextBox Txtgeometriavalorpropiol2y Enabled = 0 'False TabIndex = 11 Text = "1" Begin VB.TextBox txtvectorpropiox1 Enabled = 0 'False TabIndex = 10 Begin VB.TextBox Text2 Enabled = 0 'False TabIndex = 9 Text = "0" Begin VB.TextBox Text3 Enabled = 0 'False TabIndex = 8 Text = "0" Begin VB.TextBox txtvectorpropioy2 Enabled = 0 'False TabIndex = 7 Begin VB.TextBox txtvectorpropioy1 Enabled = 0 'False TabIndex = 6 Begin VB.TextBox txtvectorpropiox2 Enabled = 0 'False TabIndex = 5 Begin VB.TextBox txtesultadovectorpropiox1 Enabled = 0 'False TabIndex = 4 Begin VB.TextBox txtesultadovectorpropioy1 Enabled = 0 'False TabIndex = 3 Begin VB.TextBox txtesultadovectorpropiox2 Enabled = 0 'False TabIndex = 2 Begin VB.TextBox txtesultadovectorpropioy2 Enabled = 0 'False TabIndex = 1 Begin VB.Label Label23 Caption = "@^2 @ = 0" TabIndex = 33 Begin VB.Label Lblecuaciovalorpropiox BorderStyle = 1 'Fixed Single TabIndex = 32 Begin VB.Label Lblecuaciovalorpropioy BorderStyle = 1 'Fixed Single TabIndex = 31 Begin VB.Label lblvalorpropio1 BorderStyle = 1 'Fixed Single TabIndex = 30

Page 51: Graficador en visual basic

Begin VB.Label lblvalorpropio2 BorderStyle = 1 'Fixed Single TabIndex = 29 Begin VB.Label Label30 Caption = "@1" TabIndex = 28 Begin VB.Label Label31 Caption = "@2" TabIndex = 27 Begin VB.Label Label32 Caption = "valores propios" TabIndex = 26 Begin VB.Label Label20 Caption = "A=" TabIndex = 25 Begin VB.Label lblparentesis Caption = " ( ) " BeginProperty Font Name = "MS Sans Serif" Index = 10 TabIndex = 24 Begin VB.Label Label26 BackColor = &H80000002& Caption = "x y =" BeginProperty Font Name = "MS Sans Serif" TabIndex = 23 Begin VB.Label Label33 BackColor = &H80000002& Caption = "x y = " BeginProperty Font Name = "MS Sans Serif" TabIndex = 22 Begin VB.Label Label37 Caption = "vectores propios" TabIndex = 21 Begin VB.Label lblparentesis Caption = "( ) ( )" BeginProperty Font Name = "Arial" Index = 0 TabIndex = 20

Private Sub cmdvalorpropio_Click()

Refresh

Lblecuaciovalorpropioy = (Txtgeometriavalorpropiol1x * Txtgeometriavalorpropiol2y) -

(Txtgeometriavalorpropiol2x * Txtgeometriavalorpropiol1y)

Lblecuaciovalorpropiox = -(-(-Txtgeometriavalorpropiol1x) - (-Txtgeometriavalorpropiol2y))

If (Lblecuaciovalorpropiox ^ 2) - (4 * Lblecuaciovalorpropioy) < 0 Then

lblvalorpropio1 = "raicez imaginarias"

lblvalorpropio2 = "raicez imaginarias"

For X = -20 To 20 Step 0.01

Y = (-Txtgeometriavalorpropiol1x * X) / Txtgeometriavalorpropiol1y

Y2 = (-Txtgeometriavalorpropiol2x * X) / Txtgeometriavalorpropiol2y

ForeColor = pctcolorl1.BackColor

PSet (X, Y)

ForeColor = pctcolorl2.BackColor

PSet (X, Y2)

Next

Else

lblvalorpropio1.Caption = (-Lblecuaciovalorpropiox + Sqr(Lblecuaciovalorpropiox ^ 2 - (4 *

Lblecuaciovalorpropioy))) / 2

Page 52: Graficador en visual basic

lblvalorpropio2.Caption = (-Lblecuaciovalorpropiox - Sqr(Lblecuaciovalorpropiox ^ 2 - (4 *

Lblecuaciovalorpropioy))) / 2

txtvectorpropiox1 = Txtgeometriavalorpropiol1x - lblvalorpropio1

txtvectorpropioy1 = Txtgeometriavalorpropiol1y

txtvectorpropiox2 = Txtgeometriavalorpropiol1x - lblvalorpropio2

txtvectorpropioy2 = Txtgeometriavalorpropiol1y

txtesultadovectorpropiox1 = txtvectorpropioy1

txtesultadovectorpropioy1 = -txtvectorpropiox1

txtesultadovectorpropiox2 = txtvectorpropioy2

txtesultadovectorpropioy2 = -txtvectorpropiox2

DrawWidth = 1

Font.Size = 12

For X = -20 To 20 Step 0.01

Y = -(txtvectorpropiox1 * X) / txtvectorpropioy1

Y2 = -(txtvectorpropiox2 * X) / txtvectorpropioy2

ForeColor = pctcolorl1.BackColor

PSet (X, Y)

ForeColor = pctcolorl2.BackColor

PSet (X, Y2)

Next

End Sub

Tabla 26

4.2 construccion de las aplicaciones de precalculo

4.2.1 Trasformaciones de diversas funciones

Tabla 27

Mediante esta aplicación se podra graficar tantas graficas como queramos, cuadraticas, racionales, de tercer grado entre otras, ejemplo la graficas de 2x^-3 + x^2 + x^1+x^1+x^1 -2 que es igual a (x^5 + 2x^4-2x^3+2)/ x^3 si hacemos las operaciones para llevarla a esta forma. El color del contenedor podras escogerlo a tu gusto

Su grafica seria la siguiente:

Page 53: Graficador en visual basic

Tabla 28 Los controles con sus propiedades son: Begin VB.PictureBox pctcalculograficasdefunciones Appearance = 0 'Flat BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 0 Visible = 0 'False Begin VB.TextBox txttransformacionpolinomica1 Enabled = 0 'False TabIndex = 19 Text = "1" Begin VB.TextBox txttransformacionpolinomica2 Enabled = 0 'False TabIndex = 18 Text = "1" Begin VB.TextBox txttransformacionpolinomicaindice1 Enabled = 0 'False TabIndex = 17 Text = "1" Begin VB.TextBox txttransformacionpolinomica5 Enabled = 0 'False TabIndex = 16 Text = "1" Begin VB.CommandButton cmdgraficarcalculograficasdefunciones Caption = "graficar" TabIndex = 15 Begin VB.TextBox txttransformacionpolinomica3 Enabled = 0 'False TabIndex = 14 Text = "1" Begin VB.TextBox txttransformacionpolinomicaindice2 Form1 - 2 Enabled = 0 'False TabIndex = 13 Text = "1" Begin VB.TextBox txttransformacionpolinomica4 Enabled = 0 'False TabIndex = 12 Text = "1" Begin VB.TextBox txttransformacionpolinomicaindice3 Enabled = 0 'False

Page 54: Graficador en visual basic

TabIndex = 11 Text = "1" Begin VB.TextBox txttransformacionpolinomicaindice4 Enabled = 0 'False TabIndex = 10 Text = "1" Begin VB.VScrollBar VSbtransformacionpolinomicaindice2 Max = -4 Min = 4 TabIndex = 9 Begin VB.VScrollBar VSbtransformacionpolinomica3 Max = -8 Min = 8 TabIndex = 8 Begin VB.VScrollBar VSbtransformacionpolinomicaindice3 Max = -4 Min = 4 TabIndex = 7 Begin VB.VScrollBar VSbtransformacionpolinomica4 Max = -8 Min = 8 TabIndex = 6 Begin VB.VScrollBar VSbtransformacionpolinomicaindice4 Max = -4 Min = 4 TabIndex = 5 Begin VB.VScrollBar VSbtransformacionpolinomica5 Max = -8 Min = 8 TabIndex = 4 Begin VB.VScrollBar VSbtransformacionpolinomica2 Max = -8 Min = 8 TabIndex = 3 Begin VB.VScrollBar VSbtransformacionpolinomica1 Max = -8 Min = 8 TabIndex = 2 Begin VB.VScrollBar VSbtransformacionpolinomicaindice1 Max = -4 Min = 4 TabIndex = 1 Begin VB.Label lblx Appearance = 0 'Flat Caption = "x x x x" Index = 0 Left = 960 TabIndex = 20

Private Sub cmdgraficarcalculograficasdefunciones_Click()

Refresh

DrawWidth = 1

If txttransformacionpolinomicaindice1 > 0 And txttransformacionpolinomicaindice2 > 0 And

txttransformacionpolinomicaindice3 > 0 And txttransformacionpolinomicaindice4 > 0 Then

For x = -20 To 20 Step 0.01

y = (txttransformacionpolinomica1 * (x ^ txttransformacionpolinomicaindice1)) +

(txttransformacionpolinomica2 * (x ^ txttransformacionpolinomicaindice2)) +

(txttransformacionpolinomica3 * (x ^ txttransformacionpolinomicaindice3)) +

(txttransformacionpolinomica4 * (x ^ txttransformacionpolinomicaindice4)) +

txttransformacionpolinomica5

ForeColor = pctcolorl1.BackColor

PSet (x, y)

Next

End If

Page 55: Graficador en visual basic

If txttransformacionpolinomicaindice1 < 0 Or txttransformacionpolinomicaindice2 < 0 Or

txttransformacionpolinomicaindice3 < 0 Or txttransformacionpolinomicaindice4 < 0 Then

For x = -20 To -0.1 Step 0.01

y = (txttransformacionpolinomica1 * (x ^ txttransformacionpolinomicaindice1)) +

(txttransformacionpolinomica2 * (x ^ txttransformacionpolinomicaindice2)) +

(txttransformacionpolinomica3 * (x ^ txttransformacionpolinomicaindice3)) +

(txttransformacionpolinomica4 * (x ^ txttransformacionpolinomicaindice4)) +

txttransformacionpolinomica5

ForeColor = pctcolorl13.BackColor

PSet (x, y)

Next

For x = 0.1 To 20 Step 0.01

y = (txttransformacionpolinomica1 * (x ^ txttransformacionpolinomicaindice1)) +

(txttransformacionpolinomica2 * (x ^ txttransformacionpolinomicaindice2)) +

(txttransformacionpolinomica3 * (x ^ txttransformacionpolinomicaindice3)) +

(txttransformacionpolinomica4 * (x ^ txttransformacionpolinomicaindice4)) +

txttransformacionpolinomica5

ForeColor = pctcolorl1.BackColor

PSet (x, y)

Next

End If

End Sub

Private Sub VSbtransformacionpolinomica1_Change()

txttransformacionpolinomica1.Text = VSbtransformacionpolinomica1.Value

End Sub

Private Sub VSbtransformacionpolinomica2_Change()

txttransformacionpolinomica2.Text = VSbtransformacionpolinomica2.Value

End Sub

Private Sub VSbtransformacionpolinomica3_Change()

txttransformacionpolinomica3.Text = VSbtransformacionpolinomica3.Value

End Sub

Private Sub VSbtransformacionpolinomica4_Change()

txttransformacionpolinomica4.Text = VSbtransformacionpolinomica4.Value

End Sub

Private Sub VSbtransformacionpolinomicaindice1_Change()

txttransformacionpolinomicaindice1.Text = VSbtransformacionpolinomicaindice1.Value

End Sub

Private Sub VSbtransformacionpolinomicaindice2_Change()

txttransformacionpolinomicaindice2.Text = VSbtransformacionpolinomicaindice2.Value

End Sub

Private Sub VSbtransformacionpolinomicaindice3_Change()

txttransformacionpolinomicaindice3.Text = VSbtransformacionpolinomicaindice3.Value

End Sub

Private Sub VSbtransformacionpolinomicaindice4_Change()

txttransformacionpolinomicaindice4.Text = VSbtransformacionpolinomicaindice4.Value

End Sub

Private Sub VSbtransformacionpolinomicaindice5_Change()

Page 56: Graficador en visual basic

txttransformacionpolinomica5.Text = VSbtransformacionpolinomica5.Value

End Sub

Private Sub VSbtransformacionpolinomican_Change()

txttransformacionpolinomican.Text = VSbtransformacionpolinomican.Value

End Sub

Tabla 29

4.2.2 Transforamaciones de la forma a(x^b)+c

Tabla 30 Esta aplicacion genera la grafica de una ecuacin lineal, cuadratica, hasta de cuarto grado, de la forma a(x+b)+c que sera muy util para estudiantes. La importancia de mostrarla en esta forma es que nos ayadan a comprender las transformaciones ejemplo (x+3)^2 +5 es una parabola que esta corrida 3 unidades hacia la izquierda y 5 unidades hacia arriba y si la llevamos a la forma general seria: x^2 + 3x + 14 por completacion de trinomio cuadrado perfecto.

Page 57: Graficador en visual basic

Tabla 31

Begin VB.PictureBox pctcalculotransformacion2 Appearance = 0 'Flat BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 0 Visible = 0 'False Begin VB.TextBox txttransformacionpolinomica Enabled = 0 'False TabIndex = 11 Text = "1" Begin VB.TextBox txttransformacionpolinomicagrado Enabled = 0 'False TabIndex = 10 Text = "1" Begin VB.TextBox txttransformacionpolinomicadesplazamientovertical Enabled = 0 'False TabIndex = 9 Text = "0" Begin VB.CommandButton cmdgraficarcalculotransformacion2 Caption = "graficar" TabIndex = 8 Begin VB.VScrollBar VSbtransformacionpolinomica Max = -15 Min = 15 TabIndex = 7 Value = 1 Begin VB.TextBox txttransformacionpolinomican Enabled = 0 'False TabIndex = 6 Text = "1" Begin VB.VScrollBar VSbtransformacionpolinomican Max = -15 Min = 15 TabIndex = 5 Begin VB.VScrollBar VSbtransformacionpolinomicagrado Max = -5 Min = 5 TabIndex = 4 Begin VB.VScrollBar Vsbtransformacionpolinomicadesplazamientovertical Max = -15 Min = 15 TabIndex = 3 Begin VB.TextBox txttransformacionpolinomicadesplazamientohorizontal Enabled = 0 'False

Page 58: Graficador en visual basic

TabIndex = 2 Text = "1" Begin VB.VScrollBar Vsbtransformacionpolinomicadesplazamientohorizontal Max = -15 Min = 15 TabIndex = 1 Begin VB.Label lblparentesis BackStyle = 0 'Transparent Caption = "----(x )" Index = 1 TabIndex = 12

Su codigo seria el siguiente:

Private Sub cmdgraficarcalculotransformacion2_Click()

Refresh

DrawWidth = 1

If txttransformacionpolinomicagrado > 0 Then

For x = -25 To 25 Step 0.01

y = (txttransformacionpolinomican / txttransformacionpolinomica) * (x +

txttransformacionpolinomicadesplazamientohorizontal) ^ (txttransformacionpolinomicagrado) +

txttransformacionpolinomicadesplazamientovertical

ForeColor = pctcolorl1.BackColor

PSet (x, y)

Next

End If

If txttransformacionpolinomicagrado < 0 Then

For x = -25 To -txttransformacionpolinomicadesplazamientohorizontal - 0.1 Step 0.01

y = (txttransformacionpolinomican / txttransformacionpolinomica) * (x +

txttransformacionpolinomicadesplazamientohorizontal) ^ (txttransformacionpolinomicagrado) +

txttransformacionpolinomicadesplazamientovertical

ForeColor = pctcolorl1.BackColor

PSet (x, y)

Next

For x = -txttransformacionpolinomicadesplazamientohorizontal + 0.1 To 25 Step 0.01

y = (txttransformacionpolinomican / txttransformacionpolinomica) * (x +

txttransformacionpolinomicadesplazamientohorizontal) ^ (txttransformacionpolinomicagrado) +

txttransformacionpolinomicadesplazamientovertical

ForeColor =pctcolorl1.BackColor

PSet (x, y)

Next

End If

End Sub

Private Sub VSbtransformacionpolinomica_Change()

txttransformacionpolinomica.Text = VSbtransformacionpolinomica.Value

End Sub

Private Sub VSbtransformacionpolinomica5_Change()

txttransformacionpolinomica5.Text = VSbtransformacionpolinomica5.Value

End Sub

Private Sub Vsbtransformacionpolinomicadesplazamientohorizontal_Change()

txttransformacionpolinomicadesplazamientohorizontal.Text =

_Vsbtransformacionpolinomicadesplazamientohorizontal.Value

End Sub

Page 59: Graficador en visual basic

Private Sub Vsbtransformacionpolinomicadesplazamientovertical_Change()

txttransformacionpolinomicadesplazamientovertical.Text =

_Vsbtransformacionpolinomicadesplazamientovertical.Value

End Sub

Private Sub VSbtransformacionpolinomicagrado_Change()

txttransformacionpolinomicagrado.Text = VSbtransformacionpolinomicagrado.Value

End Sub

Tabla 32

4.2.3Transformaciones de la forma a(x+b)+c

Tabla 33

Esta aplicación nos permite hallar graficas de raices cuadradas teniendo en cuenta la transformaciones de las funciones es de la forma a -,+1*(x^b)+c y si b es positivo se mueve hacia la izquierda, si es negativo se mueve hacia la derecha si c es positivo la grafica sube,si es negaivo la grafica baja , si 1 es positivo la grafica estara en el primer o segundo cuadrante y si es negativo habra una reflexion con respecto al eje x. Begin VB.PictureBox pctcalculotransformacion1 Appearance = 0 'Flat BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 0 Visible = 0 'False Begin VB.CommandButton cmdgraficarcalculotransformacion1 Caption = "graficar" TabIndex = 9 Begin VB.TextBox txttransformacionexponencialbase Enabled = 0 'False

Page 60: Graficador en visual basic

TabIndex = 8 Text = "2" WhatsThisHelpID = 1 Begin VB.TextBox txttransforamacionexponencialdesplazamientovertical Enabled = 0 'False TabIndex = 7 Text = "0" Begin VB.TextBox txttransformacionexponencialexponente Enabled = 0 'False TabIndex = 6 Text = "1" Begin VB.TextBox txttransformacionmenos Enabled = 0 'False TabIndex = 5 Text = "+" Begin VB.CommandButton Cmdtransformacionmenos TabIndex = 4 Begin VB.VScrollBar VSbtransformacionexponencialexponente Max = -15 Min = 15 TabIndex = 3 Begin VB.VScrollBar VSbtransforamacionexponencialdesplazamientovertical Max = -15 Min = 15 TabIndex = 2 Begin VB.VScrollBar VSbtransformacionexponencialbase Max = 1 Min = 4 TabIndex = 1 Top = 360 Value = 1 Begin VB.Label lblparectesisyx Caption = "(x ) " TabIndex = 10

Private Sub cmdgraficarcalculotransformacion1_Click()

Refresh

DrawWidth = 1

If txttransformacionmenos= "+" Then

For x = -25 To -txttransformacionmenos + 5 Step 0.01

y = (txttransformacionexponencialbase) ^ (x + txttransformacionexponencialexponente) +

txttransforamacionexponencialdesplazamientovertical

ForeColor = pctcolorl1.BackColor

PSet (x, y)

Next

Else

If txttransformacionexponmenos = "-" Then

For x = -25 To -txttransformacionmenos + 5 Step 0.01

y = -(txttransformacionexponencialbase) ^ (x + txttransformacionexponencialexponente) +

txttransforamacionexponencialdesplazamientovertical

ForeColor = pctcolorl1.BackColor

PSet (x, y)

Next

End If

End If

End Sub

Private Sub VSbtransforamacionexponencialdesplazamientovertical_Change()

txttransforamacionexponencialdesplazamientovertical.Text =

VSbtransforamacionexponencialdesplazamientovertical

End Sub

Page 61: Graficador en visual basic

Private Sub VSbtransformacionexponencialbase_Change()

txttransformacionexponencialbase.Text = VSbtransformacionexponencialbase

End Sub

Private Sub VSbtransformacionexponencialexponente_Change()

txttransformacionexponencialexponente.Text = VSbtransformacionexponencialexponente.Value

End Sub

Private Sub Cmdtransformacionmenos_Click()

If txttransformacionmenos.Text = "+" Then txttransformacionmenos.Text = "-"

Else

txttransformacionmenos.Text = "+"

End If

End Sub

Tabla 34

4.2.4 Transforamaciones de la forma a*(raiz(x+b))+c

Tabla 35

Esta aplicación nos permite hallar graficas de raices cuadradas teniendo en cuenta la transformaciones de las funciones es de la forma a*(raiz(x+b))+c y si b es positivo se mueve hacia la izquierda, si es negativo se mueve hacia la derecha si c es positivo la grafica sube,si es negaivo la grafica baja , si a es positivo la grafica estara en el primer o segundo cuadrante y si es negativo habra una reflexion con respecto al eje x.

Los controles y sus propiedades son: Begin VB.PictureBox pctcalculotransformacion3 Appearance = 0 'Flat BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 0 Visible = 0 'False

Page 62: Graficador en visual basic

Begin VB.CommandButton cmdgraficarcalculotransformacion3 Caption = "graficar" TabIndex = 9 Begin VB.TextBox txtraiz3 Enabled = 0 'False TabIndex = 8 Text = "0" Begin VB.TextBox Txtraiz1 Enabled = 0 'False TabIndex = 7 Text = "1" Begin VB.TextBox txtraiz2 Enabled = 0 'False TabIndex = 5 Text = "0" Begin VB.VScrollBar VSbraiz2 Max = -15 Min = 15 TabIndex = 4 Begin VB.Label Label25 BackColor = &H00E0E0E0& Caption = "(x )" BeginProperty Font Name = "MS Sans Serif" TabIndex = 6 Begin VB.VScrollBar VSbraiz1 Max = -15 Min = 15 TabIndex = 2 Begin VB.VScrollBar VSbraiz3 Max = -15 Min = 15 TabIndex = 1

Private Sub cmdgraficarcalculotransformacion3_Click()

Refresh

DrawWidth = 1

For X = -txtraiz2 To 25 Step 0.01

Y = Txtraiz1 * Sqr(X + txtraiz2) + txtraiz3

ForeColor = pctcolorl1.BackColor

PSet (X, Y)

Next

End Sub

Private Sub VSbraiz1_Change()

Txtraiz1.Text = VSbraiz1.Value

End Sub

Private Sub VSbraiz2_Change()

txtraiz2.Text = VSbraiz2.Value

End Sub

Private Sub VSbraiz3_Change()

txtraiz3.Text = VSbraiz3.Value

End Sub

Page 63: Graficador en visual basic

Tabla 36

4.2.5 Transformaciones trigonometricas

Tabla 37

Esta aplicación servira para graficar funciones trigonometrica, lo que la diferencia de las otras aplicacones es que tiene un combobox que le permitira escoger de las diversa funciones trigonometricas: seno, coseno,tangente y sus inversas, por ejemplo cosecante -4 es la siguiente grafica:

Tabla 38

Begin VB.PictureBox pctcalculotransformacionestrigonometricas Appearance = 0 'Flat BorderStyle = 0 'None ForeColor = &H80000008& TabIndex = 0 Visible = 0 'False

Page 64: Graficador en visual basic

Begin VB.ComboBox cbotrigonometricas TabIndex = 8 Text = "seno" Begin VB.CommandButton cmdgraficarcalculotransformacionestrigonometricas Caption = "graficar" TabIndex = 7 Begin VB.TextBox txtdesfasamientotrigonometrica Enabled = 0 'False TabIndex = 6 Text = "0" Begin VB.TextBox txtdesplazamientoverticaltrigonometrica Enabled = 0 'False TabIndex = 5 Text = "0" Begin VB.TextBox txtaplitudtrigonometrica Enabled = 0 'False TabIndex = 4 Text = "1" Begin VB.VScrollBar Vsbaplitudtrigonometrica Max = -15 Min = 15 TabIndex = 3 Begin VB.VScrollBar VSbdesfasamientotrigonometrica Max = -15 Min = 15 TabIndex = 2 Begin VB.VScrollBar VSbdesplazamientoverticaltrigonometrica Max = -15 Min = 15 TabIndex = 1 Begin VB.Label Label27 Caption = "( ) " Name = "MS Sans Serif" TabIndex = 9

Private Sub cmdgraficarcalculotransformacionestrigonometricas_Click()

pctplanocartesianotrigonometricas.Refresh

For X = -25 To -txttrig2 Step 0.01

Select Case cbotrigonometricas.Text

Case "cosecante"

Y = txtaplitudtrigonometrica * (1 / Sin(X + txtdesfasamientotrigonometrica)) +

txtdesplazamientoverticaltrigonometrica

Case "secante"

Y = txtaplitudtrigonometrica * (1 / Cos(X + txtdesfasamientotrigonometrica)) +

txtdesplazamientoverticaltrigonometrica

Case " cotangente"

Y = txtaplitudtrigonometrica * (1 / Tan(X + txtdesfasamientotrigonometrica)) +

txtdesplazamientoverticaltrigonometrica

Case "coseno"

Y = txtaplitudtrigonometrica * Cos(X + txtdesfasamientotrigonometrica) +

txtdesplazamientoverticaltrigonometrica

Case "seno"

Y = txtaplitudtrigonometrica * Sin(X + txtdesfasamientotrigonometrica) +

txtdesplazamientoverticaltrigonometrica

Case "tangente"

Y = txtaplitudtrigonometrica * Tan(X + txtdesfasamientotrigonometrica) +

txtdesplazamientoverticaltrigonometrica

End Select

pctplanocartesianotrigonometricas.ForeColor = pctcolorl1.BackColor

pctplanocartesianotrigonometricas.PSet (X, Y)

Next

Page 65: Graficador en visual basic

For X = -txtdesfasamientotrigonometrica + 0.1 To 25 Step 0.01

Select Case cbotrigonometricas.Text

Case "cosecante"

Y = txtaplitudtrigonometrica * (1 / Sin(X + txtdesfasamientotrigonometrica)) +

txtdesplazamientoverticaltrigonometrica

Case "secante"

Y = txtaplitudtrigonometrica * (1 / Cos(X + txtdesfasamientotrigonometrica)) +

txtdesplazamientoverticaltrigonometrica

Case " cotangente"

Y = txtaplitudtrigonometrica * (1 / Tan(X + txtdesfasamientotrigonometrica)) +

txtdesplazamientoverticaltrigonometrica

Case "coseno"

Y = txtaplitudtrigonometrica * Cos(X + txtdesfasamientotrigonometrica) +

txtdesplazamientoverticaltrigonometrica

Case "seno"

Y = txtaplitudtrigonometrica * Sin(X + txtdesfasamientotrigonometrica) +

txtdesplazamientoverticaltrigonometrica

Case "tangente"

Y = txtaplitudtrigonometrica * Tan(X + txtdesfasamientotrigonometrica) +

txtdesplazamientoverticaltrigonometrica

End Select

pctplanocartesianotrigonometricas.ForeColor = pctcolorl1.BackColor

pctplanocartesianotrigonometricas.PSet (X, Y)

Next

End Sub

Private Sub VSbdesfasamientotrigonometrica_Change()

txtdesfasamientotrigonometrica.Text = VSbdesfasamientotrigonometrica.Value

End Sub

Private Sub VSbdesplazamientoverticaltrigonometrica_Change()

txtdesplazamientoverticaltrigonometrica.Text = VSbdesplazamientoverticaltrigonometrica.Value

End Sub

Private Sub Vsbaplitudtrigonometrica_Change()

txtaplitudtrigonometrica.Text = Vsbaplitudtrigonometrica.Value

End Sub

Tabla 40

Page 66: Graficador en visual basic

5 colores en visual basic

Visual Basic acepta para especificar un color, tres procedimientos: Mediante el número de color

o mediante la sentencia RGB ( rojo, verde, azul )

Por número

El número que representa el color en VB está formado por la suma de la componente roja, la

componente verde y la componente azul. Podríamos verlo muy bien en numeración

Hexadecimal:

Color = Hex XX YY ZZ

Donde ZZ es un número Hexadecimal que representa la cantidad del color rojo. El mínimo

estaría en 0 (H00) y el máximo en 255 (HFF)

YY representaría la cantidad de color verde y XX la de color azul, ambos con los mismos

límites explicados para el rojo.

Por ejemplo: el rojo puro sería: Hex(0000FF) = 255

el verde puro sería: Hex(00FF00) = 652280

el azul puro sería: Hex(FF0000) = 16711680

Una mezcla de un poco de rojo (HB1), otro poco de verde (H56) y otro poco de azul (H1F)

daría el siguiente número:

Hex(1F56B1) = 2053809

Por la sentencia RGB

Se puede expresar el color, poniendo simplemente RGB (rojo, verde, azul), donde rojo es un

número entre 0 y 255 que indica la cantidad de color rojo que se aporta al color, verde un

número comprendido entre 0 y 255 indicando la cantidad de verde, y lo mismo para azul.

Esta es la forma mas sencilla de poner la propiedad color, y con la que mejor controlaremos el

mismo.

Teniendo en cuenta como funcionan los colores en visual Basic vamos a hacer una pequeña

aplicación que nos servira para cambiar los colores a la recta L1 y L2 por sentencia RBG.

Tabla 41 Begin VB.Frame Framecontenedorcolor TabIndex = 0 Visible = 0 'False Begin VB.Frame framecolorl1y2 BorderStyle = 0 'None TabIndex = 7 Begin VB.OptionButton Optcolorl2

Page 67: Graficador en visual basic

TabIndex = 9 Begin VB.OptionButton Optcolorl1 TabIndex = 8 Begin VB.PictureBox pctcolorl1 BackColor = &H0000FFFF& TabIndex = 6 Begin VB.PictureBox pctcolorl2 BackColor = &H00C0FFC0& TabIndex = 5 Begin VB.Frame frameColor Caption = "Color" TabIndex = 1 Begin VB.HScrollBar Azul Height = 255 LargeChange = 20 Max = 255 TabIndex = 4 Begin VB.HScrollBar Verde LargeChange = 20 Left = 120 Max = 255 TabIndex = 3 Begin VB.HScrollBar Rojo LargeChange = 20 Left = 120 Max = 255 TabIndex = 2 Begin VB.Label l1 Caption = "L1 L2" BeginProperty Font Name = "Arial" Index = 2 TabIndex = 10

Private Sub Rojo_Change()

If Optcolorl1.Value = True Then

pctcolorl1.BackColor = RGB(Rojo.Value, Verde.Value, Azul.Value)

End If

If Optcolorl2.Value = True Then

pctcolorl2.BackColor = RGB(Rojo.Value, Verde.Value, Azul.Value)

End If

End Sub

Private Sub Verde_Change()

If Optcolorl1.Value = True Then

pctcolorl1.BackColor = RGB(Rojo.Value, Verde.Value, Azul.Value)

End If

If Optcolorl2.Value = True Then

pctcolorl2.BackColor = RGB(Rojo.Value, Verde.Value, Azul.Value)

End If

End Sub

Private Sub Azul_Change()

If Optcolorl1.Value = True Then

pctcolorl1.BackColor = RGB(Rojo.Value, Verde.Value, Azul.Value)

End If

If Optcolorl2.Value = True Then

pctcolorl2.BackColor = RGB(Rojo.Value, Verde.Value, Azul.Value)

End If

End Sub

Page 68: Graficador en visual basic

Tabla 42

BIBLIOGRAFIA

Geometría Vectorial y Analítica. Una Introducción al Algebra Lineal: Abraham Asmar Charris, Patricia Restrepo de Pelaez,Rosa Franco Arbelaez,Fernando Vargas Hernandez. Escuela de Matemáticas. Universidad Nacional de Colombia Sede Medellín. 2006.


Recommended