OBJETO VECTOR
Definición y concepto de
Vector.
El tema Vector en el entorno matemático es muy amplio, voy
a suponer que ya eres un maestro en vectores en dos dimensiones, si tienes
algunas dudas consulta bibliografía especifica el respecto.
Aunque obviamos el estudio de los vectores en esta sección,
al final de la descripción de todas las operaciones, se dedicara un apartado
especial para resolver problemas vectoriales usando este objeto.
Características Generales
de la implementación
Los Vectores en Queen también son objetos en memoria. Solo se portan en dos
dimensiones. Un objeto vector puede ejecutar muchas de las operaciones del
álgebra vectorial 2D, y tienen
representación grafica en el plano.
Un objeto Vector puede ser pasado como parámetro a funciones y recibido como retorno de
una función. Los pasos de los argumentos a los parámetros de la función siempre
se hacen por referencia.
A continuación se presenta una lista de las operaciones que
son soportadas por los objetos Vector.
1.
Sumar
2.
Restar
3.
Multiplicación por un escalar
4.
Obtención del vector unitario
5.
Establecimiento de nuevas
componentes, tanto en polar como en rectangular
6.
Obtención de las componentes de un
vector con relación a ejes no
rectangulares.
7.
Obtención de múltiples datos del
vector, como su ángulo, modulo, componentes, etc.
8.
Operación del producto punto con
otro vector
9.
Proyección de un vector con
respecto a otro.
10. Personalización de características como el color, ancho,
Etiqueta para presentar datos del vector, etc.
Los
vectores pueden tener una representación tanto polar como rectangular .
Las
tareas de suma resta resultan realmente sencillas.
La
siguiente figura muestra algunos vectores en el plano:
Comandos
Generales y operaciones del objetos.
Comandos
Los comandos generales del objeto Vector van precedidos de la palabra vector. A
continuación se describen:
Comando create: Este
comando crea un vector. Este comando toma los siguiente parámetros:
1.
Nombre de la variable:
2.
Opción de creación: Esta opción define la forma en
que las componentes de creación serán procesadas: usa rec para rectangular y pol para polar.
3.
Las componentes de creación: Esta son en el caso rectangular (x,y), y en el caso polar (ángulo,radio); si es en polar, el ángulo debe
estar en grados.
Ejemplo: Este ejemplo crea el
vector v1 donde las componentes que se le pasan deben estar en modo
rectangular. Y v2 se crea con componentes en modo polar
vector create v1 rec 3 4
vector create v2 pol 45 4
Cuando se crea un vector, se le
designa un color aleatorio.
Comando list: Muestra
una ventan conteniendo todos los objetos Vector
actualmente en memoria.
El formato de la presentación como
se muestra: La variable o nombre del objeto. El nombre que esta entre
paréntesis, es el identificador del vector en el plano. Esto se explicara con
detalle en operación name. La ultima parte que esta entre
paréntesis son las componentes del vetor en polar[1].
--- VECTOR
LIST -----
------------------
No Name
------------------
1.-
v3=(v3)->(a=261.67, r=1.18)
2.-
v2=(v2)->(a=45, r=4)
3.-
v1=(v1)->(a=53.13, r=5)
Ejemplo:
vector list
Comando cls: Elimina
todos los objetos Vector actualmente en memoria.
Ejemplo:
vector cls
Comando delete: Elimina
un objeto Vector especifico de memoria.
Si en lugar del nombre de un objeto
se especifica un asterisco (*), todos los objetos en memoria son eliminados.
Este comando toma como parámetro la
variable de memoria.
Ejemplo:
Vector delete
v1
Operaciones
Opción pluss: Suma dos
vectores. El resultado es asignado al primer vector, el segundo vector no
modifica. Si a continuación del segundo vector se especifica un nombre de
variable, es creado un vector resultante con ese nombre de variable.
Ejemplo: en este ejemplo se suman
los vectores v1 y v2 , el resultado es asignado a un nuevo vector v3.
vector create v1 rec 3 4
vector create v2 pol 45 4
v1 pluss v2 v3
Opción less: Resta al primer vector el
segundo. El resultado es asignado al primer vector, el segundo vector no
modifica. Si a continuación del segundo vector se especifica un nombre de
variable, es creado un vector resultante con ese nombre de variable.
Ejemplo: en este ejemplo le resta
v2 a v1, el resultado es asignado a un nuevo vector v3.
vector create v1 rec 3 4
vector create v2 pol 45 4
v1 less
v2 v3
Opción kmul: Multiplica al vector por un
escalar. El resultado es asignado al primer vector. Si a continuación del
escalar se especifica un nombre de variable, es creado un vector resultante con
ese nombre de variable.
Ejemplo: el resultado es asignado a
un nuevo vector v3.
vector create v1 rec -2 3
v1 kmul –1.8 v3
Opción unitary: Obtiene el vector unitario de un
vector. El resultado es asignado al primer vector. Si a continuación de la
opción un nombre de variable, es creado un vector unitario con ese nombre de
variable.
Ejemplo: el vector unitario es
creado como v3.
vector create v1 rec -5 6
v1 unitary v3
Opción ij: Asigna nuevas componentes
rectangulares al vector.
Ejemplo:
v1 ij -3 -4
Opción ar: Asigna nuevas componentes polares
al vector. Las componentes rectangulares están compuestas por el ángulo[2]
y el modulo.
Ejemplo:
v1 ar 45 6
Opción i: Obtiene la componente rectangular i. Si se especifica una variable a continuación de la
opción, el valor es almacenado en ella. Si no, se presenta en la barra de
estado.
Ejemplo:
v1 i
Opción j: Obtiene la componente rectangular j. Si se especifica una variable a continuación de la
opción, el valor es almacenado en ella. Si no, se presenta en la barra de estado.
Ejemplo:
v1 j
Opción module: Obtiene el modulo del vector. Si se especifica una variable a continuación de la
opción, el valor es almacenado en ella. Si no, se presenta en la barra de
estado. El ángulo siempre es obtenido en grados con respecto al origen.
Ejemplo:
v1 angle
Opción angle: Obtiene la componente rectangular
j. Si se especifica una variable a
continuación de la opción, el valor es almacenado en ella. Si no, se presenta
en la barra de estado.
Ejemplo:
v1 angle
Opción dot: Obtiene el producto punto de dos
vectores. Si se especifica una variable a
continuación del segundo vector, el valor es almacenado en ella. Si no, se
presenta en la barra de estado.
El producto punto tiene muchas
aplicaciones en el álgebra vectorial: Su formula es:
Partiendo de los vectores A y B. PP=producto punto
PP=|A|*|B|*cos(θ), donde θ, es el ángulo
entre A y B ... Y PP=0, si los vectores son
perpendiculares, PP=|A|*|B| si los vectores son paralelos.
Ejemplo:
v1 dot v2
Opción unrec: Determina las componentes de el
vector con respecto a un sistema de ejes no rectangulares. Esta operación
retorna un vector cuyas componentes son las componentes que corresponden al
sistema de ejes no rectangulares.
Ejemplo: Para este ejemplo tenemos
el siguiente esquema: El problemas es encontrar las componentes Fa y Fb con
respecto a los ejes a y b. Se Parte de F=12 y de los
ángulos:θ=35˚ y
β=88˚ que son
los ángulos de cada eje a F.
Los comandos:
vector create v1 pol 45 12
v1 labelpol
v1
unrec 35 88 v2
La respuesta se muestra en esta
figura en v2: Fa=14.299643
, Fb=8.206938
Opción proyection: Por medio de esta opción se
obtiene información sobre la proyección de este vector con respecto a otro.
Esta es una opción compuesta por tres sub opciones que son:
·
parallel: Obtiene la componente paralela
del primer vector con respecto al segundo vector.
·
perpendicular: Obtiene la
componente perpendicular del primer vector con respecto al segundo vector.
·
angle : Obtiene el ángulo entre los dos
vectores, siempre se retorna en grados.
Los parámetros de este comando son:
1.
Una de las
tres opciones arriba listadas.
2.
el vector
al cual el primer vector se esta proyectando
3.
Y
opcionalmente una variable para almacenar el valor, si no se especifica, el
valor se presenta en la barra de estado.
En siguiente esquema muestra la
solución de un problema típico: Aquí se tienen dos vectores: F=(120,10) y G=(135,12)
mostrados en
componentes polares. El problemas es encontrar Fa (la
proyección paralela de F en G) , Fb(la Proyección perpendicular de F en G) y θ (el ángulo entre F y G). Se parte de los dos vectores F y G bien definidos.
Los comandos:
vector create F pol 120 10
vector create G pol 135 12
G labelpol
F labelpol
F
proyection parallel G paral
F
proyection perpendicular G perpen
F
proyection angle G angle
strln Fa=~paral~
strln Fb=~perpen~
strln Angle FG=~angle~
La salida de este programa es:
Fa=9.659
Fb=2.588
Angle FG=15
Que son los datos que
necesitábamos.
Opción labelpol: Un vector despliega sus
componentes en el plano, por defecto están modo rectangular. Este opción hace
que se muestren en modo polar.
Ejemplo: Se asume que v1 existe.
v1 labelpol
Opción labelrec: Hace que las componentes del
vector se desplieguen en modo rectangular.
Ejemplo: Se asume que v1 existe.
v1 labelrec
Opción off: Hace que el vector invisible y no
se muestra en el plano
Ejemplo: Se asume que v1 existe.
v1 off
Opción on: Hace que el vector visible en el
plano
Ejemplo: Se asume que v1 existe.
v1 on
Opción labeloff: Hace que el vector no muestre sus
componentes, solo se muestra el nombre en el plano
Ejemplo: Se asume que v1 existe.
v1 labeloff
Opción labeloff: Hace que el vector muestre sus
componentes.
Ejemplo: Se asume que v1 existe.
v1 labelon
Opción color : Establece el color de la flecha
del vector
Ejemplo: Se asume que v1 existe.
v1 color red
Opción wide: Establece el ancho de la flecha
del vector
Ejemplo: Se asume que v1 existe.
v1 wide 8
Opción fill: La flecha del vector viene
subrayada de los borde por defecto, esta opción establece si este borde es
visible o no.
Ejemplo: Establece el borde a no
visible
v1 fill off
Ejemplo: Establece el borde a
visible
v1 fill on
Opción font: Controla el color y el tamaño del
texto de la etiqueta para mostrar las componentes.
Tiene dos sub opciones:
1.
color: cambia el color del texto
2.
size: cambia el tamaño del texto
Ejemplo:
v1 font size 20
v1 font color blue
Opción name: Un vector tiene un nombre aparte
del nombre del objeto o nombre de la variable.
Por defecto, este es igual al
nombre de la variable. Puede ser cambiado a antojo, incluso por una frase
larga. Su objetivo es dar un nombre mas explicativo al vector sin complicar el
nombre del objeto que permanece sin alterar cuando se cambia el nombre grafico.
Ejemplo:
v1 name Fuerza Resultante
Opción gstrin: Asocia un objeto gstring, que se usa como etiqueta para mostrar las componentes. Este
objeto gstring, debe de definirse por separado y debe de existir
antes de asociarse al vector. Tu tienes todo el control sobre el objeto gstring, pero el vector cambia automáticamente sus coordenadas si el
vector es alterado. En otras palabras, la etiqueta sigue a la punta del vector
donde quiera que esta se posicione. Y
la primera línea del objeto gstring es siempre las componentes del
vector. De la segunda línea en adelante las puedes usar para que pongas mas
información que seguirá al vector.
La forma de quitar el gstring de un vector es borrando uno de
los dos.
Ejemplo:
vector create v1 rec 3 3
gstring create g1
g1 add Esta es la prime linea es la que sera
sustituida
g1 add Esta si se va a ver
v1 gstring g1
g1 yend