EL OBJETO POLY

 

Concepto y Generalidades

Un poly ha sido diseñado para resolver problemas de geometría-trigonometría plana y  realizar cualquier clase de dibujo o grafica usando líneas interconectadas.

Su gran cantidad de característica da la posibilidad de realizar presentaciones muy sofisticadas e incluir animación a través del uso de timers.

Incluso se pueden desarrollar complejos diagramas utilizando sus características.

 

El objeto poly agrupa un conjunto de puntos y diferentes formas de conectarlos con líneas(usando las conexiones). Las líneas poseen características como color y grosor. Los puntos tienen también características que los hacen muy útiles para los análisis geométricos-trigonométricos.

Además a un poly se le aplican un conjunto de operaciones como por  ejemplo rotación, translación y escalado, etc.

El concepto de conexión es un subconjunto de puntos del poly que se conectan con líneas usando lógicas diferentes. Entonces los puntos de una conexión siempre se mantienen conectados aun cuando los puntos cambien de coordenadas.

 

Para ubicarnos mejor, veamos como puede lucir un poly simple:

 

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Los de las siguientes figuras son polis más complejos, desarrollados con programación:

 

 

 

 

 

 

 


Estructura de un poly:

·         Set de puntos: El primer ingrediente de un poly es su set de punto los cuales cada uno debe de ser nombrado para poder referirse específicamente a cada uno. La colección de punto es única y un punto puede ser compartido por diferentes conexiones o no tener relación con ninguna conexión.

·         Set de conexiones: Una conexión es una agrupación parcial o total del set de puntos del poly. Todo los puntos agrupados en una conexión tiene una relación de conexión. La forma como se conecta cada punto con el otro depende del tipo de la conexión.  Un punto puede formar parte de mas de una conexión o no formar parte de ninguna.

 

Puntos: Una vez creado el poli, se pueden agregar todos los punto que se deseen. Si se agrega uno que tenga el mismo nombre de un punto ya existente,  solo se actualizan sus coordenadas, conservando todas las demás propiedades. Las propiedades mas importantes de los punto son el nombre y sus coordenadas (x,y). Las coordenadas de los puntos nunca se ven afectadas por el modo en que el plano se encuentre(polar o rectangular), en otras palabras, las coordenadas de los puntos de un poly siempre permanecen modo rectangular, aunque el plano este en modo polar.

 

Características de los puntos:

A continuación se listas las características de los puntos, estas no dependen de las conexiones.

1.       Un nombre: que puede ser pintado en las coordenadas del punto, esta característica permite la ubicación de etiquetas en coordenadas especificas,  que realmente no tienen significado como punto sino como un rotulo.

2.       Coordenadas (x,y): esta pueden ser pintadas en las coordenadas del punto, junto con su nombre.

3.       Asociación de una imagen al punto: una vez asociada la imagen siempre se dibuja con el centro en la coordenada del punto, es posible especificar el ancho y el alto de la imagen.

4.       Asociación de un objeto gstring: sucede lo mismo que con la imagen. Pero el objeto debe de estar definido de antemano, y por lo tanto se puede manipular después de haberlo asociado.

5.       Asociación de un objeto store. Cada punto se le puede asociar un objeto store, que permite tener cualquier cantidad  de información asociado a un punto especifico, si el punto es eliminado, el objeto de elimina automáticamente.

6.        Dibujado de un circulo o una elipse con centro en las coordenadas del punto, y de radio arbitrario o ejes (a,b) de la elipse, puede ser de cualquier color y estar o no rellena. Además hay otras características asociadas con la elipse o circulo de cada punto que se verán mas adelante.

7.       Los puntos pueden tener marcas: Pequeños puntos que se pintan en las coordenadas de cada punto, Su tamaño permanece constante cuando el plano es escalado. Puede  personalizarse en tamaño color y ser visible o no para cada punto.

8.        Anglos: Si se asocian 3 puntos, se puede pintar el anglo del vértice que forman, este ángulo tiene un nombre que se dibuja junto con el valor del ángulo, puede ser visible o no, relleno o no y se le puede establecer un color, así como la distancia a la que se traza la línea circular del ángulo; una vez definido un ángulo con uno de los vértices que forman 3 puntos, este se recalcula y repinta cuando los puntos cambian de coordenadas. Esta característica es muy útil para análisis trigonométricos.

9.       Trazado de puntos(trace): un o mas puntos pueden dejar la huella de donde están situados, esta permanece inmóvil después de que el punto ha cambiado de posición. El trazado se hace pintando su localización con un pequeño circulo y sus coordenadas, estas marcas pueden ser manipuladas por el comando point,  y son del  mismo tipo que los puntos dibujados con el ratón o con el comando point.

 

Operaciones con los puntos:

Un poly ha sido diseñado principalmente para trabajar con Geometría y  Trigonometría plana.  La clave esta en los puntos y todas sus operaciones.

Conociendo bien las operaciones con puntos, se cuenta con una gran herramienta para resolver problemas muy complejos. Todas esta operaciones son independientes de las conexiones.

 

Lista de operaciones con puntos:

Todos los ángulos están dados en grado.

1.       Anglo del punto: Obtiene el ángulo con respecto al eje positivo x de la recta que pasa por el origen y el punto.

2.       Anglo con respecto al eje positivo x de una recta que pasa entre dos puntos

3.       Angulo de un vértice formado por 3 puntos (siempre el menor)

4.       Distancia entre dos puntos

5.       Obtención de las coordenadas del punto

6.       Especificación de nuevas coordenadas para el punto

7.       Eliminación e inserción de puntos

8.       Conteo de puntos

9.       Obtener la ecuación de la recta que pasa por dos puntos.

10.   Obtención de listados de puntos como un string

11.   Preguntar si un punto se encuentra en el set de puntos

12.   entre otras...

 

Generación geométrica de puntos

Un poly cuenta con operaciones de generación geométrica automática de puntos, esta característica y un poco de lógica son de gran ayuda para la resolución de problemas de Geometría y Trigonometría. La generaciones automática pueden generar uno o mas puntos; cuando se ejecuta una operación de generación, se especifica el nombre que se le pondrá al punto,  si son mas de un punto, los nombres van acompañados con un correlativo, para diferenciar cada punto; Opcionalmente puedes hacer que los puntos de una generación automática se agreguen a una conexión ya existente. 

 

Si alguna de las generaciones de puntos aquí brevemente explicadas no queda muy clara,  No es importante ya que cuando se explique el comando que realiza esa operación, se amplia con detalle la explicación y se incluyen diagramas.

 

Se explican los acrónimos del cual provienen los nombres de los comandos para tener una referencia de en el recordatorio de los mismo.

El siguiente es el listado de las operaciones de generación geométrica de puntos:

1.       Punto en una coordenada especifica. Ver el comando setpoint.

2.       Punto medio: del segmento formado por dos puntos. Véase el comando setmpoint del acrónimo Set MidPoint.

3.       Punto polar: localización de un punto a un ángulo t y a una distancia d tomando como base el segmento formado entre dos punto. Véase el comando setppoint del acrónimo Set Polar Point .

4.       Punto intercepción de la proyección de un ángulo y su lado opuesto en un triángulo: Localización de un punto en donde se interceptan una proyección de ángulo y un lado atado al segmento base de la de proyección. Este es el caso de un triangulo del cual se conoce dos lado y un anglo opuesto a un lado conocido. Donde se interceptan las proyección del ángulo y su lado  opuesto  debería de ubicase el punto, pero esto depende de la longitud del lado opuesto, así que puede no existir, o tener única o doble solución. Véase el comando setaspoint, su nombre viene acrónimo Set  Angle and Segmento Point.

5.       Punto desplazamiento en x y en y: Localiza un punto que se desplaza x,y unidades del punto dado. Véase el comando setdxypoint del acrónimo Set Displacement xy Point.

6.       Punto Intercepción de rectas: Localiza un punto donde se interceptan dos  rectas generadas por 4 puntos dados, L1 Pasa por p1,p2 y L2 pasa por p2,p3. Véase el  comando setipoint del acrónimo Set Interception Point.

7.       Punto Intercepción de ángulos: Localiza un punto donde se interceptan las proyecciones de dos ángulos internos que parten de los puntos opuestos de un segmento de recta. Véase el comando setaipoint del acrónimo Set Angle Interception Point.

8.       Puntos radiales: Localización una serie de puntos sobre una circunferencia  con centro en el origen y de radio especificado, ángulo de inicio y finalización. Usando las operaciones de las conexiones se puede desplazar el set circular de puntos a cualquier parte del plano. Véase el comando setrpoints del acrónimo Set Radio Points,

9.       Puntos elípticos: Localiza un conjunto de puntos sobre la superficie de una elipse con centro en el origen, se puede especificar los tamaños de los ejes  de la elipse así como desde el ángulo de inicio hasta el ángulo de finalización y el numero de punto deseados. Véase el comando setelipoints del acrónimo Set Eliptic Point.

10.   Puntos curva Bezier: Localiza un conjunto de puntos sobre una curva Bezier generada por 4 puntos.  Vea al comando setbpoints del acrónimo Set Bezier Points.

11.   Puntos de ecuación: Localiza un conjunto de puntos  de una ecuación evaluada desde x1 a x2 en intervalos definidos Véase el comando seteqpoints del acrónimo Set Equation Points.

12.   Punto de curva multiBezier: Genera un conjunto de puntos sobre una curva múltiple Bezier, los puntos deben pertenecer a una conexión sin importar el tipo Véase el comando setmbpoints del acrónimo  Set Multi Bezier Points.

13.   Puntos en segmento: Conjunto de puntos que se localizan sobre un segmento de recta generado por dos punto. Se puede especificar el numero de puntos a generar, La distribución de los puntos es homogénea y divide al segmentos en n+1 sub segmentos iguales, donde n es el numero de puntos especificados. Véase el comando setspoints del Acrónimo Set Segment Points.

14.   A un punto se le puede asociar una elipse, cuyo centro es el punto, luego, es posible poner puntos sobre esa elipse, pasando una coordenada  x, como en una elipse tiene dos valores para x, dos puntos son agregados sobre la elipse, pero si la coordenada de x esta en donde la pendiente de la recta tangente a la elipse en ese punto no existe(los extremos izquierdo y derecho de la elipse), solo un punto es agregado. Esta comando también incluye al circulo como una elipse de ejes a=b. Véase el comando setxelipoints del acrónimo Set x Oval Point.

15.   Ubicación de un punto sobre la elipse de otro punto. Dado un ángulo con respecto al eje polar, se localiza el punto donde la proyección del ángulo corta la superficie de la elipse. Véase el comando setaelipoint del acrónimo Set Angle and Eliptic Point.

16.   Punto en trayectoria. Dado un punto,  un ángulo de trayectoria y una distancia, localiza un punto a la distancia especificada en la dirección de la del ángulo de trayectoria. Véase el comando settpoint acrónimo de Set Trajectory Point.

17.   Puntos de un segmento desconocido que es perpendicular en el punto medio a un segmento conocido. Dado un segmento entre p1 y p2, genera dos puntos p3 y p4 que son los extremos de otro segmento perpendicular cuyo punto medio es el lugar de intercepción de los dos segmentos p1p2 y p3p4.Véase el comando set setpspoints del acrónimo Set Perpendicular Segment Points.

18.   Intercepción Perpendicular de un punto conocido a un segmento conocido: Dado un segmento entre dos punto p1 y p1, y un punto p3, localiza un punto donde se intercepta la perpendicular del segmento que pasa por el punto p3. Véase el comando setiplpoint del acrónimo Set Interception Perpendicular Line Point.

19.   Puntos del plano: Es posible hacer que los puntos que se localizan en el pano usando el ratón o por medio del comando point sean agregados al poly. Véase  el comando setplpoints del acrónimo Set Plane Points.

20.   Puntos de un dibujo: Queen permite el dibujado de figuras a mano alzada en el plano. Estos dibujos pueden ser fuentes de puntos para un poli, pudiéndose    particularizar que dibujo  es el que se toma como fuente, especificando el orden de creación, o simplemente todos especificando todos. Véase el comando setdrpoints del acrónimo Set Draw Points.

21.   Puntos aleatorios: Se crea una secuencia de puntos aleatorios en el interior de un rectángulo delimitado por dos puntos, donde el primer punto se con considera la esquina superior izquierda y el segundo la esquina inferior derecha. Véase  el  comando setrdpoints del acrónimo Set Random Points.

22.   Lo mismo que el comando anterior, solo que el rectángulo es dado por coordenadas del plano y no por puntos en el poly. Véase el comando setrd2points del mismo acrónimo de la operación anterior.

23.   Copia de un punto: Esta operación crea otro punto en las mismas coordenadas del punto fuente. Las demás características no son copiadas. Véase el comando setcppoint del acrónimo Set Copy Point.  

24.   Punto a partir de las coordenadas en polar. El ángulo debe estar en grado. Véase el comando setpopoint del acrónimo Set Polar Point.

25.   Intercambio de coordenadas: Esta no es una opción de generación de puntos. Intercambia  la localización de los punto. Véase  el comando setswpoint del acrónimo Set Swap Points.

26.   Punto de una función polar. Generación de una secuencia de puntos a partir de un ángulo de inicio y uno de fin en el cual se evalúa una función en polar. Véase el comando setpeqpoints  del acrónimo Set Polar Function Points.

27.   Creación de puntos desde una capa de puntos: Crea una secuencia de puntos en el poli, con el contenido de todos los puntos de una capa. Véase el comando setlvpoints del acrónimo Set Level Points.

28.   Otra forma de generar puntos en haciendo una copia de una conexión; en este caso también la conexión se duplica y los punto copiados se nombran uniendo el nombre de la conexión copia y el nombre original del punto. Los puntos de la conexión copia son ahora independientes de la primera conexión.

 

Conexiones: Una conexión es una especie de nodo interno que agrupa a un subconjunto de punto del set de puntos de un poly.  Una conexión puede referir mas de una vez al mismo punto. En este caso, el punto es reconectado todas las veces que se repita, la forma en la que se reconecta dependerá del tipo de conexión.

 

Principales características de las conexiones:

1.       El set de puntos

2.       Tipo de conexión

3.       Color de las líneas de conexión

4.       Grosor de línea

5.       Visibilidad

6.       Imagen asociada a la conexión.

7.       Orden de pintado

 

Estas características se explican con mas detalle posteriormente.

Un punto puede formar parte de ninguna o muchas conexiones.

Los tipo de conexiones son las siguientes:

1.       sec: conexión secuencial. En esta conexión los puntos son conectados con líneas secuenciales desde el primer punto al ultimo. Una conexión de este tipo puede estar cerrada (se conecta el ultimo punto con el primero) o no cerrada.

2.       syn: conexión sincronizada. Aquí, el primer punto agregado a la conexión es considerado como el pivote, y las líneas se conectan del pivote hacia cada uno de los demás  puntos, de tal forma que el pivote se conecta con todos los punto y los demás puntos no se conectan entre si.

3.       sync: conexión sincronizada cerrada. Es igual a syn, con la adición de que también se conectan los puntos terminales entre si.

4.       pol: conexión poligonal, el conjunto de puntos son considerados como las esquinas de un polígono, por lo que los punto se conectan de forma secuencial pero el ultimo punto se cierra con el primero y luego se rellena el polígono formado con el color de la conexión.

5.       cic: Conexión cíclica, realiza una conexión por ciclos, el valor de este ciclo es una característica configurable de una conexión. Por defecto el ciclo es igual a 2, u no puede ser menor que 2. La forma de conexión por ciclos es la siguiente: supongamos que una conexión tiene 6 punto para conectar, y que el ciclo de conexión es 2; el primer punto se conecta con el segundo. Luego en tercero con el cuarto, luego el quinto con el sexto(en otras palabras se conectan dos puntos si, dos puntos no). Luego cambiamos el ciclo de la conexión a 3, entonces el punto uno se conecta con el punto 2 y con el tres, luego el 4 se conecta con el 5 y el seis. Es como varias conexiones syn en una. Todo esto se entiende mejor con un ejemplo.

6.       cicc: Conexión cíclica cerrada,  Es la misma concepto de la anterior, solo que los extremos son conectados entre si. Es como varias conexiones sysnc en una. La explicación suena muy complicada. Por lo que mas adelante se presentan varios ejemplos de las mimas conexiones con diferentes ciclos.

7.       bezier: Esta conexión solo toma 4 puntos (si se incluyen mas, el resto son ignorados) con los cuales construye una curva Bezier.

8.       pbezier: Igual que bezier, solo que la curva es rellenada con el color de la conexión.

9.       mbezier: Conexión de curvas múltiples  Bezier, este tipo de conexión puede tener cualquier  cantidad de puntos, y traza una curva suave uniéndolos.

10.   pmbezier: Lo mismo que la anterior, solo que la curva es rellena con el  color de la conexión.

11.   multiple: Conecta cada punto con los demás.

12.   gradient: Crea un rectángulo relleno con un gradiente de color con los primeros 2 puntos de la conexión.

13.   inverted: Con esta conexión puedes crear óvalos y rectángulos transparentes, que invierte de alguna forma el color del fondo.

14.   dooted: Un tipo de conexión que conecta los puntos con líneas entrecortadas.

15.   patten: Este es un tipo de conexión que llena con una imagen que se toma como patrones sucesivos en el área de un  rectángulo formado por dos puntos.

16.   dottedcic: Conexión igual que la cic, la diferencia es que las líneas se dibujan punteadas.

 

Secuencia de trabajo de un poli:

Para trabajar con un poly desde el punto de vista de dibujo, la construcción debe ser un proceso sistemático. Los siguiente es lo que se recomienda seguir:

·         Realizar el diseño  del dibujo en papel milimetrado.

·         Encontrar la lista de puntos del poli

·         Determinar las conexiones necesarias y sus tipos  para desarrollar el dibujo

·         Crear el poli

·         Agregar el set de puntos del poli

·         Crear las conexiones de con sus respectivo tipos

·         Agregar a cada conexión el set de puntos que debe de conectar según el diseño.

 

Desde el punto de vista analítico no hay un orden, todo dependen de la necesidad inmediata.

 

 

Conjunto de opciones generales:

 

El concepto del poly es un poco complicado, pero es una herramienta poderosa para realizar análisis de gomería y trigonometría plana, hacer figuras  y diagramas. Este objeto cuenta con operaciones actúan en el, como un todo, y operaciones que aplican a solo una conexión especifica. En este caso, solo los puntos de tal conexión se ven afectados por la operación. Si una conexión comparte un punto con otras, la otras conexión se ven afectadas por el cambio de las coordenadas del punto que comparten.

Antes de operar un poly es necesario crearlo. Por lo que existen los comandos generales, los cuales no es necesario la existencia de un objeto poly para ejecutarlos:

Los comando Generales son los siguientes:

1.       poly create: crea un nuevo objeto poli

2.       poly delete: elimina un objeto poli

3.       poly list: presenta la lista de los objetos poly definidos en memoria

4.       poly cls: elimina todos los objetos poly de la memoria.

 

Cuando el nombre de un objeto poly es digitado solo como comando, y ejecutado, este responde identificándose en la barra de estado.

 

Operaciones Generales:

Estas opciones se utilizan para controlar en forma general el conjunto de objetos poly. Son ejecutadas a través del comando poly.

 

El comando general poly tiene las siguientes opciones:

 

·         Opción create: crea un nuevo objeto poly. Toma como argumento el nombre del objeto.

 

Sintaxis: poly create polyname

1.       poly :  El comando

2.       create : opción

3.       polyname: Nombre del poli

 

Ejemplo:

 

poly create p

 

·         Opción list: presenta la lista de todos los objetos poly que hay definidos en memoria.

 

Sintaxis: poly list

1.       poly :  El comando

2.       list : opción

 

 

Ejemplo:

poly list

 

·         Opción cls: Elimina todos los objetos poly definidos en memoria.

 

Sintaxis: poly cls

1.       poly :  El comando

2.       cls : opción

 

 

Ejemplo:

poly cls

 

·         Opción delete: Elimina el objeto poly que se le pasa como parámetro. Si en lugar del nombre del objeto se le pasa un asterisco (*), elimina todos los objetos poly existentes.

 

Sintaxis: poly delete polyname

1.       poly :  El comando

2.       delete  : opción

3.       polyname: el nombre del poli

 

Ejemplo: Borra el objeto poly p

poly delete p

 

Comandos Internos del poly.

Controlan internamente a un objeto poly específico, siempre están antecedidas por el nombre del objeto sobre el cual actúan.

Se clasifican en 3 tipos:

1.       operaciones del objeto poli: Realizan una operación sobre el poly activan  o desactivan alguna propiedad.

2.       operaciones de los puntos: Realizan alguna operación con uno o más puntos especifico o activan o desactivan alguna propiedad, estas características son independientes de las conexiones.

3.       operaciones de las conexiones: Realizan operaciones con una conexión,  activan o desactivan alguna propiedad.

 

Operaciones con el Objeto Poli

Se clasifican como sigue:

1.       Manejo del objeto poli

2.       Manejo de puntos

3.       Manejo de ángulos

4.       Manejo de conexiones

 

En el manejo del poly  están la creación de puntos, conexiones y operaciones que tienen efecto sobre todo sus elemento. A continuación veremos las operaciones globales de los polis, y dejaremos para otros apartados las operaciones especificas con puntos y conexiones.

 

Manejo del Objeto poly.

 

Un poly tiene operaciones que involucra a todo el conjunto de conexiones y puntos. La mayoría de estas operaciones son soportadas individualmente por las conexiones.  La siguiente es una lista de estas operaciones:

Operaciones globales de un poli:

1.       setpoint: crea o actualiza, uno o mas puntos.

2.       setconn: crea una nueva conexión.

3.       orderconn: Orden de pintado de las conexiones.

4.       deletepoint: Elimina puntos del poly.

5.       delconn: Elimina conexiones del poly.

6.       rotate: Hace rotar todos los puntos de un poly con respecto a cualquier punto en el plano o a un punto interno del poly.

7.       locate: Localiza a todo el poly en un lugar especifico, tomando como pivote un punto, el resto de puntos mantienen su localización con respecto al punto pivote.

8.       displace: Desplaza al poly una distancia en x y y en el plano.

9.       scale: Escala en tamaño al poly.

10.   info: Presenta información del todos los puntos y conexiones.

11.   cls: Elimina todos los puntos y las conexiones del poly.

12.   stringpoints: Retorna una lista de los nombres de los puntos.

13.   countpoints: Retorna el numero de puntos en el poly.

14.   stringconns: Retorna los nombres de todas las conexiones como un string.

15.   deletesecuence: Elimina una secuencia de puntos.

16.   clspoints: Elimana todos los puntos

17.   clsconns: Elimina todas las conexiones.

18.   on: Hace visible el poly.

19.   off: Hece el poly invisible.

20.   trace: Crea puntos independientes del poli, del tipo manejados por el comando point, en cada localización  de los puntos del poly. No se incluyen las coordenadas, solo un pequeño circulo y su nombre.

21.   tracecoor: la mismo que el anterior, solo que los puntos incluyen las coordenadas.

22.   names: Hace visibles los nombres de todos los puntos

23.   nonames: Hace invisible los nombre de los puntos

24.   coors: Hace que las coordenadas del punto se presenten junto a su nombre

25.   nocoors: No presenta las coordenadas junto con su nombre

26.   marks: Hace que se presente un pequeño circulo que representa la localización del punto

27.   nomarks: Hace invisibles las marcas de los puntos

28.   markdiameter: Establece el radio (tamaño) de la marca de los puntos.

29.   markcolor: Establece el color del centro de la marca de los puntos

30.   markon: Hace visible la marca de los puntos, a diferencia de marks, este puede particulariza un punto.

31.   markoff: Hace invisible la marca de los puntos

32.   maneon: Hace visible los nombres de los puntos, puede particulariza un punto

33.   nameoff: Hace invisible los nombres de los puntos, puede particularizar.

34.   marksize: Establece el diámetro del circulo que representa la marca del punto.

 

Si una operación presenta otro nombre entre paréntesis junto, tal nombre es una abreviatura de la operación.

 

Sintaxis de las operaciones:

 

Operación setpoint: Crea uno o mas puntos. Véase  la sección de las características de los puntos. Para mas información consulte este comando en el tema: Características y operaciones de los puntos

 

 

Operación setconn: Crea una conexión. Véase  la sección de las características de las conexiones. Para mas información consulte este comando en el tema: Características y operaciones de las conexiones

 

 

Operación orderconn:  Establece el orden de pintado de las conexiones.

Por defecto el orden es al azar. Este comando toma la secuencia de las conexiones, separadas por un espacio. No es necesario especificarlas todas, solo las que interesen. Solo las especificadas se pintaran en orden, el resto se pintan al azar pero debajo de las que si se especificaron.

 Se recalca que las que se listen primero, son las que se verán mas encima del dibujo. En otras palabras, las ultimas en pintarse, por lo tanto caen enzima de las demás.

 

Sintaxis: polyname orderconn conn1 [conn2 ...]

1.       polyname :  Nombre del poli

2.       orderconn  : La operación 

3.       conn1: nombre de la conexión que se sobrepondrá a todas

4.       conn2 ...: Las demás conexiones que se pintaran en orden. Las primeras se sobreponen a las siguientes.

Debido a que los comandos a utiliza para dar un ejemplo resultarían  desconocidos a estas alturas; este comando se vuelve a repetir al final del aparatado de las conexión y entonces se muestra un ejemplo.

 

 

Operación deletepoint: Elimina un punto del poly. Véase  la sección de las características de los puntos. Para mas información consulte este comando en el tema: Características y operaciones de los puntos

 

 

Operación delconn: Elimina una conexión. Véase  la sección de las características de las conexiones. Para mas información consulte este comando en el tema: Características y operaciones de las conexiones

 

 

Operación rotate: Esta operación hace rotar T grados el poly completo alrededor de un punto (x,y) del plano o un punto P interno del poly. Si T es positivo, la rotación es en sentido anti-horario, si es negativo entonces se rota en sentido horario. T siempre  debe estar en grados.

T,  el punto (x,y) y P, son parámetros del comando,

Tiene dos forma, la primera para dar como centro de giro un punto (x,y) del plano, La segunda para dar como cetro de giro a un punto P interno al poly.

 

Forma 1: Sintaxis: polyname rotate x y  T

5.       polyname :  Nombre del poli

6.       rotate  : La operación 

7.       x: Coordenada x del punto en el plano

8.       y: Coordenada y del punto en el plano

9.       T: Ángulo de giro en grados

 

Forma 2: Sintaxis: polyname rotate P  T

1.       polyname :  Nombre del poli

2.       rotate  : La operación 

3.       P: Punto pivote

4.       T: Ángulo de giro en grados

 

Ejemplo: Para que sea mas ilustrativo este ejemplo, se crea una conexión.

poly create p

p names

p setconn c pol  red

p setpoint A -0.02    5.01, B -2.96    0.97, C  2.98    1.04

p conn c connect A B C

p rotate 0 0 30

 

 

Operación locate: Localiza el poly en las coordenadas (x,y) del plano, tomando como pivote un punto P interno del poli, el resto de puntos conservan su localización con respecto al punto pivote.

(x,y) y P, son parámetros del comando.

 

Sintaxis: polyname locate P x y

1.       polyname :  Nombre del poli

2.       locate  : La operación 

3.       P: Punto pivote del poli

4.       x: Coordenada x en el plano

5.       y: Coordenada y  en el plano

 

Ejemplo: Para que sea mas ilustrativo este ejemplo, se crea una conexión.

poly create p

p names

p setconn c pol  red

p setpoint A -0.02    5.01, B -2.96    0.97, C  2.98    1.04

p conn c connect A B C

p locate A 0 0

 

 

Operación displace: Desplaza al poly X unidades en las axizas y Y unidades en las ordenadas.

X  y Y  son parámetros del comando. Y es opcional, si no se especifica, solo se desplaza el las axizas.

 

Sintaxis: polyname displace X [Y]

1.       polyname :  Nombre del poli

2.       locate  : La operación 

3.       P: Punto pivote del poli

4.       X: Unidades a desplazarse en las axizas.

5.       Y: Unidades a desplazarse en las ordenadas. Paramento opcional.

 

Ejemplo: Para que sea mas ilustrativo este ejemplo, se crea una conexión.

poly create p

p names

p setconn c pol  red

p setpoint A -0.02    5.01, B -2.96    0.97, C  2.98    1.04

p conn c connect A B C

p displace  -3 -3

 

 

Operación scale: Escala a un poly W veces en las axizas y H veces en las ordenadas. Todas las distancias respectivamente se ven afectadas por los factores. Esto significa que si un punto se encontraba a X distancia del eje x y, a una distancia del eje y, Después de la operación estar a las distancias W*X, H*Y , respectivamente. Para preservar la ubicación del poly con respecto a un punto, debes guardar las coordenadas y  después de la operación scale, aplicar una operación locate.

X  y Y  son parámetros del comando. Y es opcional, si no se especifica, solo se desplaza el las axizas.

Los valores W y H son parámetros del comando.

El valor H es un parámetro opcional, si no se especifica toma el valor de W, y un escalado homogéneo es ejecutado, Para escalar solo las ordenadas, especifica el valor de W igual a 1.

 

Sintaxis: polyname scale W [H]

1.       polyname :  Nombre del poli

2.       scale  : La operación 

3.       W: Veces en las que se escalaran las axizas. Debe ser mayor que cero.

4.       H: Veces en las que se escalaran las ordenadas. Debe ser mayor que cero. Parámetro opcional, si no se especifica toma el valor de W.  

 

Ejemplo: Para que sea mas ilustrativo este ejemplo, se crea una conexión.

poly create p

p names

p setconn c pol  red

p setpoint A -0.02    5.01, B -2.96    0.97, C  2.98    1.04

p conn c connect A B C

p scale  2

 

 

Operación info: Imprime información acerca de los puntos y las conexiones del poly en el área de salida.

 

Sintaxis: polyname info

1.       polyname :  Nombre del poli

2.       info: La operación 

 

Ejemplo: Para que sea mas ilustrativo este ejemplo, se crea una conexión.

poly create p

p names

p setconn c pol  red

p setpoint A -0.02    5.01, B -2.96    0.97, C  2.98    1.04

p conn c connect A B C

p info

 

 

El resultado de este ejemplo es:

Poly :p Inform:

 ----------- Points ----------

p: Points:

     A=( -0.02, 5.01 )

     C=( 2.98, 1.04 )

     B=( -2.96, 0.97 )

 

 --------- Connections --------

p: Connections:

  1- c,  type=pol  visible=true  Wide=1, Connected Points:A, B, C

 

 

Operación cls: Elimina todas las conexiones y puntos del poly.

 

Sintaxis: polyname cls

1.       polyname :  Nombre del poli

2.       cls: La operación 

 

Ejemplo: Para que sea mas ilustrativo este ejemplo, se crea una conexión.

poly create p

p names

p setconn c pol  red

p setpoint A -0.02    5.01, B -2.96    0.97, C  2.98    1.04

p conn c connect A B C

strln ====== antes de la operacion cls =====

p info

pcls

strln ====== después de la operacion cls =====

p info

 

El resultado de este ejemplo es:

====== antes de la operacion cls =====

Poly :p Inform:

 ----------- Points ----------

p: Points:

     A=( -0.02, 5.01 )

     C=( 2.98, 1.04 )

     B=( -2.96, 0.97 )

 

 --------- Connections --------

p: Connections:

  1- c,  type=pol  visible=true  Wide=1, Connected Points:A, B, C

====== después de la operacion cls =====

Poly :p Inform:

 ----------- Points ----------

p: Points:

 

 --------- conecctions --------

p: Conections:

 

 

Operación stringpoints: Retorna una lista de los nombres de todos los punto del polis.

Si después de la opción se especifica una variable, se almacenan   los nombres en ella, cada nombre esta separado por una coma (,). Si no se especifica. Se presenta en la barra de estado el mensaje informado sobre los puntos. Cuando el resultado se pone en una variable, solamente van los nombres de los puntos separados por coma, cuando se presenta en la barra de estado, se le agrega información para hacer mas legible el resultado. 

 

Sintaxis: polyname stringpoints [variable]

1.       polyname :  Nombre del poli

2.       stringpoints  : La operación 

3.       variable: Opcional, es la variable para almacenar el resultado.

 

Ejemplo:

poly create p

p setpoint A -0.02    5.01, B -2.96    0.97, C  2.98    1.04

p stringpoints

 

Resultado que se presenta en la barra de estado:

poli: p has the points:A,C,B

 

 

Operación stringconns: Retorna una lista de los nombres de todas las conexiones del polis.

Si después de la opción se especifica una variable, se almacenan   los nombres en ella, cada nombre esta separado por una coma (,). Si no se especifica. Se presenta en la barra de estado el mensaje informado sobre las conexiones. Cuando el resultado se pone en una variable, solamente van los nombres de las conexiones separados por coma, cuando se presenta en la barra de estado, se le agrega información para hacer mas legible el resultado. 

 

Sintaxis: polyname stringconns [variable]

1.       polyname :  Nombre del poly

2.       stringconns: La operación 

3.       variable: Opcional, es la variable para almacenar el resultado.

 

 

 

 

Ejemplo:

poly create p

p setconn c pol  red

p setpoint A -0.02    5.01, B -2.96    0.97, C  2.98    1.04

p conn c connect A B C

p stringconns

Resultado que se presenta en la barra de estado:

 poly: p has the connections:c

 

 

Operación deletesecuence (dels):  Una secuencia es una serie de puntos creado por una sola operación, cuyo nombre tiene un inicio común. Por ejemplo la siguiente es una secuencia: m1, m2, m3, m4. Para mas información sobre las secuencias, véase la generación geométrica de puntos, en Las características de los puntos.

Esta operación elimina una secuencia que inicia con la palabra que se le pasa como parámetro.

dels es una abreviatura de esta operación.

 

Sintaxis: polyname deletesecuence name

1.       polyname :  Nombre del poli

2.       deletesecuence: La operación 

3.       name: Palabra con la que inicia la secuencia. Cualquier punto cuyo nombre inicie con esta palabra será eliminado.

 

Ejemplo:  Para ilustrar esta operación, se creara una secuencia de 8 puntos aleatorios dentro de las coordenadas del recuadro formado por (-2,2)-(2,-2).

poly create p

p setp A 1 1, B 2 2, C 3 3

p setrd2points m 8 -2 2 2 -2

p stringpoints points

strln Los puntos antes de dels  son : 'points'

p dels m

p stringpoints points

strln Los puntos despues de dels son: 'points'

 

Resultado :

Los puntos antes de dels  son : C,B,A,m8,m7,m6,m5,m4,m3,m2,m1

Los puntos despues de dels son: C,B,A

 

 

Operación clspoints: Elimina todos los puntos del poly. 

 

Sintaxis: polyname clspoints

1.       polyname :  Nombre del poli

2.       clspoints  : La operación 

 

Ejemplo:

poly create p

p setpoint A -0.02    5.01, B -2.96    0.97, C  2.98    1.04

p countpoints Num1

p clspoints

p countpoints Num2

strln Habian ~Num1~ puntos, Pero despues de clspoints quedaron ~Num2~.

 

Resultado:

Habian 3 puntos, Pero despues de clspoints quedaron 0.

 

 

Operación clsconns: Elimina todas las conexiones del poly. 

 

Sintaxis: polyname clsconns

1.       polyname :  Nombre del poli

2.       clsconns: La operación 

 

Ejemplo:

poly create p

p setconn c1 sec red

p setconn c2 sec blue

p setconn c3 sec green

strln ==== antes  de borradas ====

p info

p clsconns

strln

strln ==== despues de borradas ====

p info

 

Resultado:

==== antes  de borradas ====

Poly :p Inform:

 ----------- Points ----------

p: Points:

 

 --------- Connections --------

p: Connections:

  1- c3,  type=sec  visible=true  Wide=1, Connected Point

  2- c2,  type=sec  visible=true  Wide=1, Connected Point

  3- c1,  type=sec  visible=true  Wide=1, Connected Point

 

==== despues de borradas ====

Poly :p Inform:

 ----------- Points ----------

p: Points:

 

 --------- Connections --------

p: Connections:

 

 

 

 

Operación on: Si el poly esta invisible, lo hace visible.. 

 

Sintaxis: polyname on

1.       polyname :  Nombre del poli

2.       on: La operación 

 

Ejemplo:

p on

 

 

Operación off: Si el poly esta visible, lo hace invisible.. 

 

Sintaxis: polyname off

1.       polyname :  Nombre del poli

2.       off: La operación 

 

Ejemplo:

p off

 

 

Operación trace: Duplica cada punto del poly con un punto independiente del tipo manejado por el comando point. Esta operación puede ser útil para salvar en disco la localización actual de los puntos del poli, ya que el comando point puede hacer eso, para mas información vea Capas de puntos en la Sección Entorno Queen y el Plano carteciano.

El cada punto ubicado en el plano por la operación   trace dibuja un pequeño punto y el nombre del  mismo. El color, el tipo y tamaño de la fuente con que se pintan dependen de la configuración para los puntos del plano establecidos actualmente, estas operaciones se realizan también con el comando point.

 

La operación tarce también es soportada individualmente por las conexiones y los puntos.

 

Sintaxis: polyname tarce [pointname]

1.       polyname :  Nombre del poli

2.       tarce: La operación 

3.       pointnane: Nombre de un punto. Es opcional, si se especifica, solo tal punto es marcado. Si no se especifica  o  es un asterisco (*), todos los puntos son incluidos.

 

 

 

Ejemplo: Aquí se crea una secuencia de 20 puntos circulares en un radio de 3. luego se hacen rotar con respecto a la coordenada (1,1). Se cambia el color de los puntos del plano (no del poli), y se ejecuta la operación trace, y así sucesivamente.

poly create p

p setrpoints m 20 3

p names

point color blue

p trace

p rotate 1 1 20

point color red

p trace

point color green 

p rotate 1 1 30

p trace

p setrpoints m 24 3

p trace

 

Resultado:

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Operación tracecoor: Duplica cada punto del poly con un punto independiente del tipo manejado por el comando point. El cada punto ubicado en el plano por la operación   tracecoor dibuja un pequeño, el nombre del punto y las coordenadas de su localización.

 

 

La operación tarcecoor también es soportada individualmente por las conexiones y los puntos.

La precisión o lugares decimales mostrados se pueden aumentar con el comando deci. Los lugares decimales se deben especificar antes de ejecutar  la opción tracecoor,  ya que con el numero de decimales que se crea el punto del plano permanecerá  estático.

Sintaxis: polyname tarcecoor [pointname]

1.       polyname :  Nombre del poli

2.       tarcecoor: La operación 

3.       pointnane: Nombre de un punto. Es opcional, si se especifica, solo tal punto es marcado. Si no se especifica  o  es un asterisco (*), todos los puntos son incluidos.

 

Ejemplo:

poly create p

p setrpoints m 20 3

p names

deci  8

p tracecoor

p displace -4

deci 1

p tracecoor

p displace 8

 

 

Operación names: Hace visible el nombre de todos los puntos del poly. Por defecto son invisibles. Esta presentación del nombre es independiente de la presentación individual  del nombre que se activa con el comando nameon, e individual de la presentación del nombre por parte de la conexión. Esto significa que aunque la opción names no se ejecute, el nombre de un punto puede estar visible por cualquiera de los demás medios. Esta opción afecta en forma general a todos los puntos del poli, las opciones nameon, nameoff afectan en forma individual y general, por medio de la conexión solo se puede afectar a los puntos de la conexión.

 

Sintaxis: polyname names

1.       polyname :  Nombre del poli

2.       names: La operación 

 

Ejemplo:

p names

 

 

Operación nonames: Hace invisible el nombre de todos los puntos del poly. Se aplican todas las observaciones de la opción names.

 

Sintaxis: polyname nonames

1.       polyname :  Nombre del poli

2.       nonames: La operación 

 

Ejemplo:

p nonames

 

 

Operación coors: Hace visible las coordenadas de cada punto junto con sus nombres, si este ultimo es visible por cualquiera de las opciones names or nameon.

La precisión puede decimal puede modificarse con el comando deci.

 

Sintaxis: polyname coors

1.       polyname :  Nombre del poli

2.       coors: La operación 

 

Ejemplo:

p coors

 

 

Operación nocoors: Oculta las coordenadas de cada punto junto, presentando solo el nombre.

 

Sintaxis: polyname nocoors

1.       polyname :  Nombre del poli

2.       nocoors: La operación 

 

Ejemplo:

p nocoors

 

 

Marcas:

Antes de entrar en las operaciones para las marcas, es necesario comentar el concepto, para que se aborden las operaciones con una visión  mas amplia.

 

Las marcas se han implementado para mostrar la localización de un punto de una forma concisa y decorosa, de tal forma que se mantenga constante en tamaño al escalar el plano en cualquier factor.

El tamaño del circulo se establece a través de su diámetro, las unidades de medida siempre se deben de especificar en pixeles.

 

Cada punto mantiene en memoria su propio diámetro y color del centro del circulo(marca). Por defecto el valor de su radio es 0, y se dice que no esta definido cuando tiene ese valor. El color por defecto es negro.

El poly mantiene otra medida del diámetro que es aplicada solo cuando el diámetro de un punto no esta definido (con valor de cero). Si el diámetro del punto se encuentra definido, el circulo es pintado con su propio diámetro.

 

Si se establece el diámetro de un punto a cero, queda como no definido y su circulo (marca) se vera afectada por el valor que maneja el poly como diámetro general, cuyo valor por defecto es 5. Esto significa que si se define individualmente el diámetro de la marca de un punto, esta se mantendrá aun cuando se cambien el valor del diámetro general mantenido por el poly.

 

La visibilidad de las marcas pueden ser activada en forma general (todos los puntos del poli) y en forma individual. Otro aspecto es el color, del centro del circulo que solo puede ser establecido individualmente.

 

Las dos formas de hacer visibles o invisibles a las marcas son independientes. Esto quiere decir que la visibilidad general solo se puede desactivar con la operación de no visibilidad general, y la visibilidad individual solo se puede desactivar con la operación de no visibilidad individual.

En otras palabras, si se hace visible individualmente la marca de un punto, permanecerá  visible aun cuando se ejecute la operación de no visibilidad general.

 

Las opciones que afectan en forma general a las marcas son:

·         masks: hace visibles a las marcas

·         nomark: hace invisibles a las marcas

·         markdiameter: estable el diámetro de la marca para las marcas con el diámetro no definido.

 

Las opciones que afectan en forma individual son:

·         markon: Hace visible individualmente a una marca de un punto.

·         markoff:  Hace invisible individualmente la marca de un punto.

·         markcolor: Establece el color del centro de la marca de un punto

·         marksize: Establece individualmente el diámetro de la marca de un punto.

 

 

Operaciones generales de marcas

 

Operación marks: Hace visible la marca de localización del punto. La marca es un punto que se centra exactamente en las coordenadas del punto. Este circulo permanece constante en tamaño cuando el plano es escalado. 

 

Las marcas pueden hacerse visibles individual para cada punto o general usando la opción markon, y únicamente en forma general usando esta opción.

 

Las marcas son independiente de si el nombre es visible o no.

 

Sintaxis: polyname marks

1.       polyname :  Nombre del poli

2.       makrs: La operación 

 

Ejemplo: Este ejemplo crea 40 puntos sobre una circunferencia de radio 2 y luego activa sus marcas

poly create p

p setrpoints m 40 2

p marks

 

Resultado:

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Operación nomarks: Oculta la marca de localización del punto.

 

Las marcas pueden hacerse invisibles individual para cada punto o general usando la opción markoff, y únicamente en forma general usando esta opción. 

 

Sintaxis: polyname nomarks

1.       polyname :  Nombre del poli

2.       nomakrs: La operación 

 

Ejemplo:

p nomarks

 

 

Operación markdiameter: Establece el diámetro por defecto para los puntos que tengan el diámetro de su marca no definido. Se considera un diámetro no definido si se establece a 0.

 

Sintaxis: polyname markdiameter value

1.       polyname :  Nombre del poli

2.       markdiameter: La operación 

3.       value: El valor del diámetro en pixeles, no puede ser cero.

 

Ejemplo:

poly create p

p setrpoints m 40 2

p marks

p markdiameter 30

 
Resultado:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Operaciones individuales de marcas

 

Operación markcolor: Establece el color a uno o todos los puntos del poly.

 

Sintaxis: polyname markcolor  pointname color

1.       polyname :  Nombre del poli

2.       markcolor  : La operación 

3.       pintname: Nombre del punto, si es un asterisco (*), se aplica el color a todos los puntos del poly.

4.       color: El color en cualquiera de sus formatos.

 

Ejemplo:

poly create p

p setrpoints m 40 2

p marks

p markdiameter 30

p markcolor * red

p markcolor m10 blue

p markcolor m11 green

p markcolor m12 blue

p markcolor m13 green

 

Resultado:

 
 

 

 

 

 

 

 

 

 

 

 

 

 


Operación markon: Hace visible individualmente  la marca de uno o todos los puntos.

Sintaxis: polyname markon pointname

1.       polyname :  Nombre del poli

2.       markon: La operación 

3.       pintname: Nombre del punto, si es un asterisco (*), se aplica la operación  a  todos los puntos, esta visibilidad solo puede ser desactivada por la opción markoff.

 

 

Ejemplo:

p markon

 

 

Operación markoff: Hace invisible individualmente  la marca de uno o todos los puntos.

Sintaxis: polyname markoff pointname

4.       polyname :  Nombre del poli

5.       markoff: La operación 

6.       pintname: Nombre del punto, si es un asterisco (*), se aplica la operación  a  todos los puntos. Esta opción solo puede hacer visibles a aquellas marcas visibles a través de la opción markon.

 

Ejemplo:

p markoff

 

 

 

Operación marksize: Estable el diámetro de la marca individual propio de cada punto. Si se establece a cero, se dice el diámetro no esta definido y cuando se pinta se toma un valor por defecto establecido por la operación  markdiameter.

 

Sintaxis: polyname marksize pointname value

1.       polyname :  Nombre del poli

2.       marksize: La operación 

3.       pintname: Nombre del punto, si es un asterisco (*), se aplica la operación  a  todos los puntos..

4.       value: El valor del diámetro es un valor entero en unidades de pixeles.

 

Ejemplo: Los puntos que no se les estableció  individualmente el diámetro de la marca se pintan con el diámetro especificado por markdiameter.

Prueba escalando el plano desde el panel de control, las marcas se mantienen constantes en tamaño.

Se ha agregado un timer al final, solo como diversión, para detenerlo ejecuta t stop y para echarlo a andar t start.

poly create p

p setrpoints m 40 2

p marks

p markdiameter 10

p markcolor * red

 

p markcolor m10 blue

p marksize m10 20

 

p markcolor m11 green

p marksize m11 30

 

p markcolor m12 blue

p marksize m12 40

 

p markcolor m13 green

p marksize m13 50

timer create t 1 p rotate 0 0 10

t start

 

Resultado:

 

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Hosted by www.Geocities.ws

1