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;

 
 

 

 

 

 

 

 

 

 

 

Hosted by www.Geocities.ws

1