Características y operaciones de los puntos
Características:
Un punto tiene muchas
características importantes que son muy útiles a la hora de resolver problemas
de cualquier tipo.
Para comenzar con el estudio del
punto, se presenta el listado de las caracterizas:
Listado de las Características:
1.
Nombre: Identifica en forma exclusiva a
un punto dentro de un poli, los nombres, además de ser especificados
explícitamente, también pueden ser generados como secuencia a partir de una
especificación base. Una secuencia es una serie de puntos que tienen por nombre
una base común seguido por un correlativo entero que inicia en 1, ejemplo: m1, m2, m3, m4,..,mn. Las secuencia son generadas por operaciones de
generación de puntos múltiples. Una vez establecido el nombre de un punto es
invariable, aun cuando se intente definir uno nuevo con el mismo nombre, lo
único que cambia son sus coordenadas, el resto de la propiedades se mantienen.
Este es también la única forma de poderse referir en forma exclusiva.
Los nombre por defectos no son
visibles, pero hay un comando para ponerlos todos visibles y otro para hacer
visible específicamente los que se deseen.
2.
Coordenadas: Son los valores x,y que determinan la localización
del punto en el plano.
3.
Elipse: A cada punto se le puede asociar una elipse cuyo
centro es el punto mismo, por defecto no esta definida. Se dice que no esta
definida cuando uno de los ejes de tal elipse es 0. Para establecer una elipse a un punto, solo hay que especificar
el punto y los ejes conjugados a,b, que al estar definidos a
diferente de 0, se dibuja la elipse. La elipse de un punto se puede usar para
generar puntos sobre la superficie de la misma.
4.
Circulo: Como consecuencia directa de la
propiedad de la elipse, esta la propiedad del circulo, que por su importancia
se le asigno su propia notación para establecerla. Se le aplican las mismas
operaciones que la elipse. Tanto la
elipse como el circulo pueden se rellenos y tener un color definido.
5.
Marcas: Una marca es un pequeño circulo
cuyo color y tamaño se puede personalizar generalmente para todos, o específicamente. Las marcas
pueden ser visibles en forma general o especifica, y permanecen invariables en
tamaño cuando el plano es escalado.
6.
Etiquetas: Como una adición para poder
presentan cualquier cantidad de información visible en las coordenadas del
punto, se le puede asociar un objeto gstring. La
asociación se puede hacer de dos tipos: Una que presenta exclusivamente el
nombre del punto y su coordenada, y el otro que presenta el nombre de la etique
y lo demás es personalizable.
Una vez ejecutada la operación de
obtención de la etiqueta se crea automáticamente un objeto gstring, entonces este objeto se localizara automáticamente sobre
las coordenadas del punto siempre. Incluso puedes controlar este objeto desde el entorno (excepto sus coordenadas, y
dependiendo del tipo el texto
presentado).
Cuando el punto es eliminado,
automáticamente se elimina el objeto gstring asociado,
o lo puedes hacer desde el entorno
deseas establece uno nuevo o de otro tipo.
El nombre del objeto gstring es siempre una combinación del nombre del poly y el punto,
separados por un punto (.).
7.
Store: También se incluyo por motivos de
ampliación en las posibilidades de asociación de información con cada punto.
Por defecto no esta definido. Cuando se realiza la obtención de un store, se
crea el objeto. Entonces es posible acceder al objeto desde el entorno. La
característica que asocia al estor con el punto es el nombre del estor que
siempre se establece a partir del nombre del poli, el punto y la palabra store
al final, cada una separadas por punto (.). Cuando un punto asociado con un
objeto store es eliminado, también el store respectivo
es eliminado. Para saber como
administrar un objeto estor consultar el objeto store.
8.
Imagen: Otra característica es la
asociación de una imagen a un punto. Es posible especificarle a la imagen, el
ancho y alto por separado, esto permite la distorsión de la imagen con respecto
al ancho y alto. Una vez asociada, la imagen siempre esta en las coordenadas
del punto que son el centro de la imagen(si las coordenadas del punto cambian,
la imagen sigue las coordenadas).
Operando con puntos y administrando
sus características.
Después de la
breve explicación conceptual de los puntos, que se espera haya creado un
panorama amplio sobre las posibilidades que estos proporcionan, se entra en
materia sobre los comandos y su sintaxis.
El siguiente es un listado de
1.
nameon: Hace que el nombre de un punto
sea visible
2.
nameoff: Hace que el nombre del punto no
sea visible
3.
setpoint: agrega o actualiza un punto
4.
ellipse: establece o elimina una elipse a
un punto
5.
circle: establece o elimina un circulo a
un punto
6.
cgradient: Establece el segundo color del
gradiente de relleno de la elipse
7.
markon: Hace visible una marca en el
punto
8.
markoff: Hace no visible la marca en un
punto
9.
markcolor: Establece el color del centro de
la marca de un punto
10.
markzise: Establece el diámetro en pixeles
de un punto
11.
plabel: asocia un objeto gstring al punto.
12.
store: asocia un objeto store a un punto.
13.
storename: retorna el nombre del store
asociado al punto
14.
setimg: asocia una imagen a un punto
15.
unsetimg: elimina la imagen asociada a un
punto
16.
trace: crea un punto independiente del poly en el plano,
del tipo de punto manejados por el comando point.
Se continuara con el orden en que las propiedades y
operaciones han sido descritas, y se agregaran algunos otros comandos que
también incluyen a los puntos.
EL nombre que aparece entre paréntesis junto a la
operación es abreviatura que se puede usar
en vez del comando.
Operación nameon: Esta opción hace visible
específica e individualmente al nombre de un punto. Esta no es la única forma
en que el nombre de un punto se puede hacer visible. El poly como un todo
incluye una opción que hace visibles todos los nombres de los puntos del poli;
las conexiones también incluyen una opción que hacen visibles solo los nombres
de puntos de la conexión.
La parte inferior de la primera letra del nombre de
un punto siempre se punta sobre su coordenada.
Por defecto, los nombres de los puntos están
novisibles.
Sintaxis: polyname nameon pointname
1.
polyname: Nombre del objeto poli
2.
nameon: opción
3.
pointname: Nombre del punto a hacer visible
Ejemplo: Aquí, el punto c no será visible.
poly create p
p setpoint a 1 1, b 2 3 , c 3 2
p nameon a
p nameon b
Operación nameoff: Lo contrario del comando
anterior. Pone el nombre de un punto invisible.
Sintaxis: polyname nameoff pointname
1.
polyname: Nombre del objeto poli
2.
nameoff: opción
3.
pointname: Nombre del punto a hacer invisible
Ejemplo: Partiendo del ejemplo anterior, este
ejemplo, hace invisible los nombres de puntos de a y b.
p nameoff a
p nameoff b
Operación setpoint (setp): Asigna las coordenadas x,y al punto. Además, cualquier comando de generación de puntos cambia las
coordenadas de un punto si cuyo nombre es especificado o creado en la
secuencia.
Mas de un punto puede ser
especificado separando por coma los puntos. Los tres datos que un punto
nececita son el nombre y sus coordenadas x,y.
Sintaxis: polyname setpoint pointname x y
, …
1.
polyname: Nombre del objeto poli
2.
setpoint: opción
3.
pointname: Nombre del punto
4.
x: Valor de x
5.
y: Valor de y
6.
...: Se
puede especificar mas de un punto separándolos con coma.
Ejemplo: Partiendo del ejemplo anterior, este
ejemplo, hace invisible los nombres de puntos de a y b.
poly create p
p setpoint a 1 1, b 3 3
p setp c -4 4
p names
Operación ellipse: Establece los ejes conjugados de
la elipse. Por defecto estos están definidos a 0. Si alguno de los ejes esta
definido a 0 se considera que la elipse no esta definida. El valor que se
especifica para los ejes esta medido desde el centro a uno de sus extremos.
Tal como se muestra en la siguiente
figura.

Para eliminar una elipse del plano (ponerla a no
definida), establece uno o los dos ejes a cero.
La coordenada del punto se establece como centro de
la elipse.
Sintaxis: polyname ellipse pointname a b [type] [color]
1.
polyname: Nombre del objeto poli
2.
ellipse: opción
3.
pointname: Nombre del punto
4.
a: Valor del eje a
5.
b: Valor de eje b
6.
type: (Parámetro Opcional) Es tipo de
relleno de la elipse y puede ser none,
normal y gradient, el valor por defecto es none. La opción
gradient llena la
elipse o con un gradiente de color. Se toma el color especificado en este
comando como el color mas afuera de la elipse, el segundo color puede se
especificado con la opción cgradient. Por defecto esta establecido a
blanco.
7.
color: (Parámetro Opcional) Establece el
color de la elipse, por defecto es un color aleatorio. Si se desea especificar
el color, se debe de especificar primero el tipo.
Ejemplo:
poly create p
p setp a 3 3
p names
p ellipse a 3 5 gradient red
Operación circle: Establece un circulo de radio R cuyo centro es el punto.
Para eliminar un circulo del plano (ponerlo a no definido),
establece uno su radio a cero.
Sintaxis: polyname circle pointname radio
[type color]
1.
polyname: Nombre del objeto poli
2.
circle: opción
3.
pointname: Nombre del punto
4.
radio: Valor del radio
5.
type: (Parámetro Opcional) Es el tipo
de relleno del circulo que puede ser none, normal y gradient, el valor por defecto es none. La opción
gradient llena el
circulo o con un gradiente de color. Se toma el color especificado en este
comando como el color mas afuera de la elipse, el segundo color puede se
especificado con la opción cgradient. Por defecto esta establecido a
blanco.
6.
color: (Parámetro Opcional) Establece el
color del circulo, por defecto es un color aleatorio.
Ejemplo:
poly create p
p setp a 3 3
p names
p circle a 4 normal blue
Operación cgradient: Establece el segundo color con se
forma el gradiente de color con el cual sde rellena la elipse o el circulo de
un punto. Su valor por defecto es blanco y siempre es el color mas interno en
la elipse.
Sintaxis: polyname cgradient pointname [color]
1.
polyname: Nombre del objeto poli
2.
cgradient: opción
3.
pointname: Nombre del punto
4.
color:
El color. Parámetro opcional.
Ejemplo:
poly create p
p setp A 1 1
p names
p ellipse A 3 2 gradient yellow
p cgradient A green
Resultado:

Operación markon: Hace visible la marca del punto.
Sintaxis: polyname markon pointname
1.
polyname: Nombre del objeto poli
2.
markon: opción
3.
pointname: Nombre del punto, si es un
carácter de asterisco (*), se aplica a todos los puntos.
Ejemplo: Partiendo del ejemplo anterior, este
ejemplo, hace invisible los nombres de puntos de a y b.
poly create p
p setp a 1 1
p markon a
Operación markoff: Hace no visible la marca del
punto.
Sintaxis: polyname markoff pointname
1.
polyname: Nombre del objeto poli
2.
markoff: opción
3.
pointname: Nombre del punto, si es un
carácter de asterisco (*), se aplica a todos los puntos.
Ejemplo: Partiendo del ejemplo anterior, este
ejemplo, hace no invisible los nombres de puntos de a y b.
poly create p
p setp a 1 1
p markoff a
Operación markcolor: Cambia el color de la marca de un
punto especifico.
Sintaxis: polyname markcolor pointname color
1.
polyname: Nombre del objeto poli
2.
markcolor: opción
3.
pointname: Nombre del
punto, si es un carácter de asterisco (*), se aplica a todos los puntos.
4.
color:
El color en cualquiera de sus formatos
Ejemplo:
poly create p
p setp a 1 1
p markon a
p markcolor a red
Operación markzise: Cambia tamaño del circulo que
se dibuja como marca de un punto
especifico. El tamaño esta dado en pixeles y es el valor del diámetro del
circulo.
Sintaxis: polyname markzise pointname size
1.
polyname: Nombre del objeto poli
2.
markzise: opción de tamaño
3.
pointname: Nombre del
punto, si es un carácter de asterisco (*), se aplica a todos los puntos.
4.
size:
El tamaño del diámetro en píxeles
Ejemplo:
poly create p
p setp a 1 1
p markon a
p marksize a 20
Operación plabel: Establece una etiqueta al punto,
esta es un objeto gstring, este se construye
automáticamente, cuyo nombre es formado usando el nombre del poly mas el nombre
del punto separados por un punto. Una vez asociada la etiqueta, esta siempre se
localiza en la coordenada del punto. Si el punto es eliminado, el objeto gstring es eliminado automáticamente, pero también puede ser
eliminado como por los medios normales.
Se puede asociar de dos formas una etiqueta a un
punto, la forma estática y la forma no estática.
En la estática
no es posible cambiar el contenido de la etiqueta, que siempre tendrá al
nombre del punto y sus coordenadas. Las demás propiedades del objeto si se
pueden establecer usando el nombre del objeto.
Para cambiar o eliminar la etiqueta sin eliminar el
punto, elimínese el objeto gstring y créese de nuevo la etiqueta al
punto si es el cambio de tipo que se desea.
En las etiquetas no estáticas, se presenta en la
primera línea el nombre del objeto gstring y a continuación la información
pasada como parámetro. A las etiquetas no estáticas puedes personalizarle todas
sus características.
Para crear una etiqueta estática, solo especifica el
nombre del punto, y para las no estáticas, especifica el texto que se
presentara (el tipo es dado automáticamente dependiendo de si hay o no texto a
presentar)
La siguiente imagen muestra ambos tipos de etiquetas:

Sintaxis: polyname plabel pointname [string]
1.
polyname: Nombre del objeto poli
2.
plabel: opción de tamaño
3.
pointname: Nombre del
punto
4.
string: (parámetro opcional) Es la información a presentar, si se
especifica; la etiqueta es creada como no estática, si no, se crea como
estática.
Ejemplo: La etiqueta del punto a es estática por que
no se le especifica el texto. La etiqueta del punto b es no estática por que se
le especifico el texto a presentar. Este ejemplo genera la imagen anterior.
poly create p
p names
p setp b 5.5 1.53
p setp a 3 3
p plabel a
p plabel b Etiqueta No estatica
Operación store: Asocia un objeto estor al punto.
El cual es creado automáticamente, el nombre de este objeto es creado usando el
nombre del poly mas el nombre del punto mas la palabra store cada una separada
por un punto. Una vez creado el store, se puede administrar como cualquier
objeto de su tipo.
Si el punto es eliminado, el store
es eliminado automáticamente.
Un store es un poderoso mecanismo
de almacenamiento de datos. Por lo que un punto podría representar un objeto
complejo con muchos datos, localizado visualmente en ciertas coordenadas de un
plano.
Si un objeto poly es pasado como
parámetro a un función o devuelto desde la misma, el store se pasa por
referencia, esto haría que los nombres de los store se perdieran ya que se
desconoce el nombre del poly original, así que hay un comando para extraer el
nombre del store asociado un punto que veremos es este operación.
Sintaxis: polyname store pointname
1.
polyname: Nombre del objeto poli
2.
store: opción
3.
pointname: Nombre del
punto
Ejemplo: este ejemplo crea un store para el punto a, y luego se digita su nombre, esto provoca
que el objeto estor responda con algo se su infamación.
poly create p
p setp a 1 1
p store a
p.a.store
El resultado se muestra en la barra de estado tal
como:
Store: p.a.store=>Str=0, Num=0, StrKey=0, NumKey=0
Operación storename: Retorna el nombre del objeto store asociado con el punto. Esta opción es útil cuando un poly
es pasado como parámetro o retornado
como resultado en las funciones.
Sintaxis: polyname storename pointname [variable]
1.
polyname: Nombre del objeto poli
2.
storename: opción
3.
pointname: Nombre del
punto
4.
variable: nombre de la variable para
almacenar el resultado, si no se especifica, el nombre es mostrado en la barra
de estado.
Ejemplo: este ejemplo crea un store para el punto a, y luego se digita su nombre, esto provoca
que el objeto estor responda con algo se su infamación.
poly create p
p setp a 1 1
p store a
p storename a thestore
strln El estor de a se llama 'thestore'
Operaciones setimg,
unsetimg: Asocia
una imagen de alto H y ancho W al punto, centrándose en las coordenadas del
mismo y manteniendo así cuando el punto es movido. Los valores H y W son dados
como paramentos del comando.
Para cambiar una imagen solo se vuelve a ejecutar
este comando, la imagen anterior es remplazada por la nueva imagen.
EL valor de la altura y ancho es 1.
Si el punto en cuestión es eliminado, la imagen es
también eliminada con el.
Queen tiene un directorio de imágenes por defccto
(Queen/images/), si la imagen esta en el este directorio, no es necesario
especificar el path. También la extensión por defecto es .gif, si el archivo de imagen tiene
esta extensión, también se puede omitir. Queen solo carga archivos de imagen en
los formatos GIF y JPG.
Para mes información sobre las imágenes, véase el
comando image.
La opción unsetimg remueve la
imagen del punto.
Sintaxis: polyname setimg pointname image
1.
polyname: Nombre del objeto poli
2.
setimg: opción
3.
pointname: Nombre del
punto
4.
image: Localización y nombre de la
imagen.
Ejemplo: Este ejemplo asocia al punto a una imagen que esta en el directorio por defecto, llamada glovo1.gif, Luego mueve el punto a otra
coordenada.
Si La imagen no aparece la primera vez, mueve el
plano desde el panel de control, por alguna razón que desconozco, algunas veces
Java no pinta la imagen la primera vez que es creada.
poly create p
p setp a 1 1
p setimg a glovo1
p setp a 4 5
Ejemplo: Este ejemplo muestra como eliminar la imagen
del punto.
p unsetimg a
Operación trace: Establece un punto en las mismas
coordenadas, este nuevo punto es independiente del poli, del tipo manejado por
el comando point.
Sintaxis: polyname trace pointname
1.
polyname: Nombre del objeto poli
2.
trace: opción
3.
pointname: Nombre del
punto, si es un signo de asterisco (*), se aplica la operación a todos los
puntos.
Ejemplo:
poly create p
p setp a 1 1
p store a
p trace a
p setp a 2 2
p trace a
p setp a 3 3
p names
Etiquetas de punto medio y Anglos.
Aparte de las operaciones generadas por los objetos
asociados visto anteriormente, hay otro conjunto de Operaciones de los objetos
derivados y Operaciones de información.
Objetos derivados: Etiquetas de punto medio y Anglos.
A partir de los puntos, se generan dos tipos de
objetos gráficos internos al poli; los cuales son los ángulos y las etiquetas
de punto medio.
Etiquetas de punto medio.
Una etiqueta de punto medio es un objeto gstring que se asocia a dos puntos, entonces siempre se presenta
en el punto medio de ellos. Así como las etiqueta asociada a un punto, las
etiquetas de punto medio son de dos tipos: Estáticas y No estáticas. Las
estáticas siempre muestran la distancia entre los dos puntos, y las no
estáticas pueden presenta cualquier cosa, por defecto, presentan su nombre y la
cadena de texto que se le pase como parámetro. El tipo se selecciona
automáticamente, si no se especifica la cadena de texto, la etiqueta se crea
como estática, y no es posible establecerle un nuevo texto. Si se agrega texto,
se crea como no estática.
Como el objeto gstring se crea
automáticamente, el nombre que se le pone es una combinación del nombre del
poly y el de los dos puntos, cada uno separado por un punto. Puedes utilizar
este nombre para administrarlo como cualquier objeto gstring, con la excepción de que las estáticas no puedes cambiarle
el texto.
Para establecer un tipo diferente de etiqueta, solo
ejecuta el comando definiendo el nuevo tipo, la etiqueta es sobrescrita.
Si un punto asociado a una etiqueta de punto medio es
eliminado, el objeto gstring es eliminada automáticamente.
La siguiente figura muestra los dos tipos de etiquetas. El punto P2 esta debajo de la
etiqueta No estática. El punto P2 se encuentra oculto bajo la etiqueta no
estática.
Sintaxis: polyname pplabel p1 p2 [string]
1.
polyname: Nombre del objeto poli
2.
pplabel: opcion
3.
p1: Nombre del
punto 1
4.
p2: Nombre del
punto 2
5.
string: (parámetro opcional) Es la información a presentar, Si no se
especifica, se presenta automáticamente la distancia entre los puntos p1 y p2
Ejemplo: La etiqueta del punto a es estática por que
no se le especifica el texto. La etiqueta del punto b es no estática por que se
le especifico el texto a presentar. Este ejemplo genera la imagen anterior.
fx cls
mousezoom off
poly create p
p names
p setp b -1.5 1.53
p setp a 2 2
p setp c -1 -2
p pplabel a b Hola
p pplabel a c
p marks
Ángulos:
Un ángulo se forma a partir de un nombre que los
identifica y 3 puntos, donde el primer punto es considerado el vértice del
ángulo. Una vez definido, Un arco es dibujado entre los segmentos del vértice y
el nombre junto seguido de su valor es presentado en el punto medio del arco.
El valor se puede presentarse en grados o radianes (cuando es posible se
presenta como factor de PI). Por defecto, el ángulo medido es
el interno al vértice (siempre menor que 180 grados) pero es posible presentar
la medida del ángulo externo del vértice (siempre mayor a 180 grados).
Otras características de los ángulos son:
·
El color
·
Relleno o
no
·
La
distancia que el ángulo se dibuja con respecto al vértice y nunca mayor que el menor segmento.
·
Su medida
en radianes o en grado
·
Su
visibilidad
Una vez es definido un ángulo a un vértice formado
por 3 puntos, este se recalcula cada vez que los puntos son reubicados, en
otras palabras, siempre esta actualizado. Así como se crean también se pueden
eliminar.
Operando con Ángulos:
Las operaciones que se pueden realizar con los
ángulos son:
1.
setangle: Crea un ángulo
2.
delangle: Borra un ángulo
3.
anglefill: Rellena un ángulo del color
establecido
4.
anglenofill: Pinta solo la línea del arco del
ángulo
5.
angleoff: Hace no visible el ángulo
6.
angleon: Hace visible el ángulo
7.
angleout: Traslada la medida al ángulo
externo del vértice
8.
anglein: Traslada la medida al ángulo
interno del vértice
9.
anglecolor: Establece el color al ángulo
10.
angletype: Establece la medida en grados o
en radianes
11.
angleval: Para obtener el valor de la
medida del ángulo
12.
anglelength: Establece la distancia (en razón
de unidad) a la que será pintado el arco, siempre con respecto al segmento
menor
Operación setangle (seta): crea un ángulo a partir de un
vértice formado por los puntos P1, P2, P3. P1 es considerado el vértice del
ángulo, Por defecto en ángulo se presenta en grados y no relleno. El ángulo
medico por defecto es el interno (menor que 180) del vértice.
Los ángulos no dibujan líneas,
solamente el arco sobre el ángulo que se esta midiendo.
Sintaxis: polyname setangle anglename P1 P2 P3 [type][color]
1.
polyname: Nombre del objeto poli
2.
setangle: opción
3.
anglename: Nombre del
ángulo, se presenta en la etiqueta de la medida
4.
type: Opcional, El tipo puede ser fill=relleno y nofill=No relleno
5.
color: Opcional, El color puede
escribirse en cualquier formato, si se desea especificar el color, debe
especificarse el tipo
Ejemplo: en este ejemplo se ha utilizado una conexión
para hacer mas evidente el vértice.
A partir de de aquí el ángulo es un objeto que
podemos operar con varios comandos.
poly create p
p setp O 1 1, A 4 4, B 5 1
p names
p setangle t O A B nofill blue
//===una conexion
p setconn c sec red
p conn c connect A O B
Resultado:

Operación delangle: Elimina un ángulo
Sintaxis: polyname delangle anglename
1.
polyname: Nombre del objeto poli
2.
delangle: opción
3.
anglename: Nombre del
ángulo
Ejemplo:
poly create p
p setp O 1 1, A 4 4, B 5 1
p names
p setangle t O A B nofill blue
p delangle t
En los ejemplos siguientes se supone que el ángulo t ya esta creado.
Operación anglefill: Rellena el arco del angulo
Sintaxis: polyname anglefill anglename
1.
polyname: Nombre del objeto poli
2.
anglefill : opción
3.
anglename: Nombre del
ángulo
Ejemplo: Se
supone que el ángulo t ya existe.
p anglefill t
Operación anglenofill: Elimina el relleno del ángulo y pinta solamente la línea
del arco.
Sintaxis: polyname
anglenofill anglename
1. polyname: Nombre del objeto poli
2. anglenofill : opción
3. anglename: Nombre del ángulo
Ejemplo:
p
anglenofill t
Operación angleoff: Hace que el ángulo no sea visible.
Sintaxis: polyname angleoff anglename
1.
polyname: Nombre
del objeto poli
2.
angleoff: opción
3.
anglename: Nombre
del ángulo
Ejemplo:
p
angleoff t
Operación angleon: Hace que el ángulo visible.
Sintaxis: polyname angleon anglename
1.
polyname: Nombre
del objeto poli
2.
angleon: opción
3.
anglename: Nombre
del ángulo
Ejemplo:
p
angleon t
Operación angleout: Hace que la medida se aplique al ángulo exterior.
Sintaxis: polyname angleout anglename
1.
polyname: Nombre
del objeto poli
2.
angleout: opción
3.
anglename: Nombre
del ángulo
Ejemplo:
p angleout t
Operación anglein: Hace que la medida se aplique al ángulo exterior.
Sintaxis: polyname anglein anglename
1.
polyname: Nombre
del objeto poli
2.
anglein: opción
3.
anglename: Nombre
del ángulo
Ejemplo:
p anglein t
Operación anglecolor: Establece el color
del ángulo, el formato de color puede ser cualquiera.
Sintaxis: polyname anglecolor anglename color
1.
polyname: Nombre
del objeto poli
2.
anglecolor: opción
3.
anglename: Nombre
del ángulo
4.
color: El color en
cualquier formato
Ejemplo:
p anglein t
Operación angletype: Establece el tipo
de unidad en la medida del ángulo, esta puede ser en radianes o grados. Si se
especifica radianes, el resultado es presentado como factor de pi
cuando es posible.
Sintaxis: polyname angletype anglename type
1.
polyname: Nombre
del objeto poli
2.
angletype: opción
3.
anglename: Nombre
del ángulo
4.
type: Especifica el
tipo: rad = Radianes, y deeg=Grados
Ejemplo:
p angletype t rad
Operación angleval: Retorna el valor
del ángulo. El tipo de medida angular siempre es igual a la establecida en el
ángulo (radianes o grados).
Sintaxis: polyname angleval anglename [variable]
1.
polyname: Nombre
del objeto poli
2.
angleval: opción
3.
anglename: Nombre
del ángulo
4.
variable: La variable donde será almacenado el ángulo, si no se
especifica, el resultado se muestra en la barra de estado.
Ejemplo:
p angleval t angle
strln El valor del angulo es = ~angle~
Operación anglelength: Establece la
distancia a la cual se pinta el arco, medida desde el vértice hasta final del
segmento mas pequeño. La medida se expresa como fracción del segmento, 1 es la
máxima longitud, ½ es la mitad, y así sucesivamente.
Sintaxis: polyname anglelength anglename value
1.
polyname: Nombre
del objeto poli
2.
anglelength: opción
3.
anglename: Nombre
del ángulo
4.
value: Un numero que
representa una porción del segmento mas pequeño que forman el vértice. Su valor
debe de ser mayor que cero y menor o igual a 1.
Ejemplo:
p anglelength t 1
Operaciones de información de puntos.
Son todas aquellas que se utilizan para la obtención
de información con puntos o segmentos formados por dos puntos.
Los nombres que aparecen entre paréntesis a lado de
la operación son abreviaturas para tal operación. Pueden ser usados también
así.
Las siguientes son las operaciones de información:
1.
getpoint: retorna las coordenadas del punto
2.
anglevertex: Retorna el ángulo de un vértice
formado por 3 puntos, no es necesario la existencia de un objeto ángulo
3.
getppoint: Retorna las coordenadas en polar
del punto.
4.
getellipse: Retorna los ejes conjugados de la
elipse, si la elipse es un circulo, cualquiera de sus ejes es el radio.
5.
ispoint: Verifica si el punto existe
6.
distance: Retorna la distancia entre dos
puntos.
7.
tequa: Retorna la ecuación de la recta tangente en el
punto x, sobre la elipse (o circulo) de un punto.
8.
equa: Retorna la ecuación de la recta que pasa por dos
puntos
9.
angleline: Retorna el ángulo de un segmento
definido por dos puntos con respecto al eje polar.
10.
anglepoint: Retorna el ángulo del segmento
definido desde el origen (0,0) hasta un punto, siempre con respecto al eje
polar.
Todos los ángulos retornados por las operaciones, son
ángulos completos: es decir su valor va de 0 a 360 grados o 0 a 2π
radianes respectivamente en su tipo.
Operación getpoint
(getp):
Obtiene las coordenadas de un punto en formato rectangular.
Sintaxis: polyname getpoint pointname [varx] [vary]
1.
polyname: Nombre
del objeto poli
2.
getpoint: opción
3.
pointname: Nombre del punto
4.
varx: Una variable
opcional para almacenar el valor de la coordenada x, si no se
especifica, las coordenadas del punto son presentadas en la barra de estado.
5.
vary: Una variable
opcional para almacenar el valor de y.
Ejemplo:
poly create p
p setp A 1 1
p getp A x y
strln Localizacion de A=(~x~,~y~)
Operación anglevertex
(anglev):
Retorna el valor del un ángulo interno del un vértice formado por los
puntos P1, P2 y P3. P1 es considerado como el punto del vértice.
El ángulo siempre se retorna el grados.
Sintaxis: polyname anglevertex P1 P2 P3
[variable]
1.
polyname: Nombre
del objeto poli
2.
anglevertex: opción
3.
P1: Punto del vértice
4.
P2: Punto de un
extremo del vértice
5.
P3: Punto de un
extremo del vértice.
6.
var: Variable
opcional para almacenar el valor del ángulo, si no se especifica, el valor del
ángulo se presenta en la barra de estado.
Ejemplo:
poly create p
p setp A 1 1, B 3 1, C 4 4
p anglevertex A B C angle
p names
strln Ángulo del Vértice ABC =~angle~ grados
Resultado:
Ángulo del Vértice ABC =45 grados
Operación getppoint
(getpp):
Obtiene las coordenadas de un punto en formato polar.
Sintaxis: polyname getpoint pointname type
[t] [radio]
1.
polyname: Nombre
del objeto poli
2.
getpoint: opción
3.
pointname: Nombre del punto
4.
type: El tipo de unidad de medida en que se desea el ángulo, puede ser rad
para radianes y deeg para grados.
5.
t: Una variable
opcional para almacenar el valor del ángulo. Si no se especifica, los datos son
presentados en la barra de estado.
6.
radio: Una
variable opcional para almacenar el valor del radio.
Ejemplo:
poly create p
p setp A -3 -4
p getpp A deg angle radio
p names
p coors
strln Las coordenadas en polar
de A son A=(~angle~,~radio~)
Resultado:
Las coordenadas en polar de A
son A=(233.13,5)
Operación getellipse: Obtiene los ejes
conjugados de la elipse definida en un punto.
Sintaxis: polyname getellipse pointname
[a] [b]
1.
polyname: Nombre
del objeto poli
2.
getellipse: opción
3.
pointname: Nombre del punto
4.
a: Una variable opcional para almacenar el valor del eje a. Si no se especifica, los datos son presentados en la
barra de estado.
5.
b: Una variable
opcional para almacenar el valor del eje b.
Ejemplo:
poly create p
p setp A 1 1
p ellipse A 4 3 fill red
p getellipse A a b
p names
p coors
strln Los ejes de la elipse de A son a=~a~ y b=~b~
Resultado:
Los ejes de la elipse de A son a=4 y
b=3
Operación ispoint: Verifica la
existencia de un punto.
Sintaxis: polyname ispoint pointname variable
1.
polyname: Nombre
del objeto poli
2.
ispoint: opción
3.
pointname: Nombre del punto
4.
variable: La variable para almacenar el resultado. Si el punto
existe el valor es 1, de lo contrario es 0.
Ejemplo: En
este ejemplo el punto B no existe
poly create p
p setp A 1 1
p names
p ispoint A c1
p ispoint B c2
if c1==1;strln A si existe @
strln A no existe
if c2==1;strln B si existe @
strln B no existe
Resultado:
A si existe
B no existe
Operación distance
(dis):
Retorna la distancia entre dos puntos del poly.
Sintaxis: polyname distance P1 P2 [variable]
1.
polyname: Nombre
del objeto poli
2.
distance: opción
3.
P1: Punto 1
4.
P2: Punto 2
5.
variable: Una
variable opcional para almacenar el resultado. Si no se especifica, el mostrado
en la barra de estado.
Ejemplo: En
este ejemplo el punto B no existe
poly create p
p setp A 1 1, B 5 5
p names
p distance A B dis
strln La distancia entre A y B es ~dis~
Resultado:
La distancia entre A y B es 5.66
Operación tequa: Retorna la
ecuación de la recta tangente a la elipse o circulo de un punto, en el punto x
que este definido en la circunferencia o la elipse. La elipse o circunferencia
debe estar definida.
Una elipse o un circulo tiene dos rectas tangentes en cada
valor de x que la atraviesa, excepto en
aquellos puntos (2) donde la recta tangente es vertical.
Entonces esta opción devuelve dos ecuaciones separadas por
punto y coma (;), para los valores de x que atraviesan la elipse o circulo, una
ecuación en los valores de x donde la recta tangente es vertical.
Puedes mejorar la precisión decimal de los datos numéricos
de las ecuaciones usando el comando deci.
Sintaxis: polyname tequa P1 x [variable]
1.
polyname: Nombre
del objeto poli
2.
tequa: opción
3.
P1: Punto con la elipse o circulo
definido
4.
x: Valor de x donde se desea la
tangente. Debe estar en el rango de la elipse
5.
variable: Una
variable opcional para almacenar el resultado. Si no se especifica, el mostrado
en la barra de estado.
Ejemplo:
Atención a este ejemplo.
Se crea un poly con el punto A al cual se le define
una elipse, Cuando se obtiene las dos ecuaciones en la variable ecuaciones, se procede a separarlas usando las operaciones de
los objetos strings, luego se crea objetos graph con cada ecuación. Los objetos graph son funciones
graficas.
poly create p
p setp A 1 1
p ellipse A 4 2 none red
p names
x=-2
//este commando muestra el resultado en la barra de estado
p tequa A x
//esta almacena el resultado en la variable ecuaciones
p tequa A x ecuaciones
ecuaciones token ; 1 ecua1
ecuaciones token ; 2 ecua2
addgraph tangente1 'ecua1'
addgraph tangente2 'ecua2'
strln Las ecuaciones son:
strln y1='ecua1'
strln y2='ecua2'
Resultado que se muestra en la barra de estado:
Poli: Tangen Line Equation at oval of point A on
x=-2=>0.57*x+3.46;-0.57*x-1.46
Resultado que se muestra en el área de salida:
Las ecuaciones son:
y1=0.57*x+3.46
y2=-0.57*x-1.46
Resultado en el plano: Las dos rectas que se ven en
el plano son tangentes a la elipse en x=-2.

Operación equa: Retorna la
ecuación de la recta que pasa por los puntos P1 y P2 del poly.
Puedes mejorar la precisión decimal de los datos numéricos
de la ecuación usando el comando deci.
Sintaxis: polyname equa P1 P2 [variable]
1.
polyname: Nombre
del objeto poli
2.
tequa: opción
3.
P1: Punto 1
4.
P2: Punto 2
5.
variable: Una
variable opcional para almacenar el resultado. Si no se especifica, el mostrado
en la barra de estado.
Ejemplo: Este ejemplo obtiene la ecuación que pasa por los
puntos A y B, posteriormente crea
un grafico con tal ecuación y luego la
imprime en el área de salida.
poly create p
p setp A -1 3, B -5 4
p names
p marks
p
equa A B ecuacion
addgraph ecua_AB 'ecuacion'
strln
La ecuacion que pasa por A y B es y='ecuacion'
Resultado en el área de salida:
La ecuación que pasa por A y B es y=-0.25*x+2.75
Resultado en el plano:

Operación angleline: Retorna el ángulo
de un segmento definido por los puntos P1 y P2. El ángulo es medido con respecto al eje positivo de las x. Siempre se
retorna en grados. Para calcular este ángulo se hace un proceso similar a poner
el punto P1 en el origen y
medir el ángulo partiendo del eje positivo de las x al punto P2, por lo tanto, no se obtendra el mismo ángulo al permutar
los puntos P1 y P2. La relación entre los ángulos es P1P2+180=P2P1.
Sintaxis: polyname angleline P1 P2 [variable]
1.
polyname: Nombre
del objeto poli
2.
angleline: opción
3.
P1: Punto 1
4.
P2: Punto 2
5.
variable: Una
variable opcional para almacenar el resultado. Si no se especifica, el mostrado
en la barra de estado.
Ejemplo: Se crea
una conexión para poder representar al segmento con una línea del punto A al B.
poly create p
p setp A -1 3, B -3 4
p names
p marks
p setconn c cic red
p conn c wide 4
p angleline A B angulo
p conn c connect A B
strln El ángulo del segmento AB es =~angulo~
Resultado :
El ángulo del segmento AB es =153.43
Segmento en el plano:

Operación anglepoint: Retorna el ángulo
de un segmento definido desde el origen (0,0) al punto P1. El ángulo es medido con respecto al eje positivo de las x. Siempre se
retorna en grados.
Sintaxis: polyname anglepoint P1
[variable]
1.
polyname: Nombre
del objeto poli
2.
anglepoint: opción
3.
P1: Punto
4.
variable: Una
variable opcional para almacenar el resultado. Si no se especifica, el mostrado
en la barra de estado.
Ejemplo: Se crea
una conexión y un punto en el origen para poder representar al segmento con una
línea del punto (0,0) al punto A.
poly create p
p setp A 3 4, B 0 0
p names
p marks
p setconn c cic red
p conn c wide 4
p anglepoint A
angulo
p conn c connect A B
strln El ángulo del segmento 0 A es =~angulo~
Resultado :
El ángulo del segmento 0 A es =53.13
El segmento en el plano;
