jipfunc
Class FInterSegment
java.lang.Object
|
+--jip.JIPFunction
|
+--jipfunc.FInterSegment
- public class FInterSegment
- extends JIPFunction
FInterSegment: Calcula las intersecciones de los segmentos.
DESCRIPCION: Calcula el punto de intersección de los segmentos de la imagen.
La imagen debe ser de tipo Segmento.
Aplicable a tipos: SEGMENT
Parametros de Entrada:
- img: Imagen de Entrada
Parametros de Salida:
- Imagen de tipo Punto con los puntos de intersección.
Field Summary |
(package private) int |
devx
Variable donde devolvemos la coordenada X de la intersección |
(package private) int |
devy
Variable donde devolvemos la coordenada Y de la intersección |
(package private) java.util.Vector |
Puntos
Vector donde almacenaremos los puntos ya creados |
(package private) java.util.Vector |
Segmentos
Vector que contiene los segmentos de la imagen |
Constructor Summary |
FInterSegment()
Constructor de la Clase.
Obtiene los parámetros de entrada para aplicar la función.
|
Method Summary |
private int |
area2(int ax,
int ay,
int bx,
int by,
int cx,
int cy)
DESCRIPCIÓN
Metodo que devuelve el área (con signo) del triángulo formado por los tres puntos
Parametros de Entrada:
ax: Coordenada X del Punto 1
ay: Coordenada Y del Punto 1
bx: Coordenada X del Punto 2
by: Coordenada Y del Punto 2
cx: Coordenada X del Punto 3
cy: Coordenada Y del Punto 3
Parametros de Salida:
return: Devuelve el área del triángulo
|
private boolean |
colinear(int p1x,
int p1y,
int p2x,
int p2y,
int p3x,
int p3y)
DESCRIPCIÓN
Metodo que nos indica si tres puntos son colineales
Parametros de Entrada:
p1x: Coordenada X del Punto 1
p1y: Coordenada Y del Punto 1
p2x: Coordenada X del Punto 2
p2y: Coordenada Y del Punto 2
p3x: Coordenada X del Punto 3
p3y: Coordenada Y del Punto 3
Parametros de Salida:
return: Devuelve True si los puntos son colineales
|
private boolean |
InterseccionPropia(int ax0,
int ay0,
int ax1,
int ay1,
int sx0,
int sy0,
int sx1,
int sy1)
DESCRIPCIÓN
Metodo para calcular si dos segmentos se intersectan entre si.
Parametros de Entrada:
ax0: Coordenada X del Punto Inicial del Primer Segmento
ay0: Coordenada Y del Punto Inicial del Primer Segmento
ax1: Coordenada X del Punto Final del Primer Segmento
ay1: Coordenada Y del Punto Final del Primer Segmento
sx0: Coordenada X del Punto Inicial del Segundo Segmento
sy0: Coordenada Y del Punto Inicial del Segundo Segmento
sx1: Coordenada X del Punto Final del Segundo Segmento
sy1: Coordenada Y del Punto Final del Segundo Segmento
Parametros de Salida:
return: Devuelve true si los segmentos se intersectan.
|
private boolean |
left(int ax,
int ay,
int bx,
int by,
int cx,
int cy)
DESCRIPCIÓN
Metodo que nos dice si un punto esta a la izquierda de otros dos.
Parametros de Entrada:
ax: Coordenada X del Punto 1
ay: Coordenada Y del Punto 1
bx: Coordenada X del Punto 2
by: Coordenada Y del Punto 2
cx: Coordenada X del Punto 3
cy: Coordenada Y del Punto 3
Parametros de Salida:
return: Devuelve True si el punto está a la izquierda
|
JIPImage |
processImg(JIPImage img)
Método Principal
Se llama a este método para calcular los puntos de interseccion de
los segmentos de la imagen de entrada (que es de tipo Segmento).
Parametros de Entrada:
img: Imagen a procesar
Parametros de Salida:
Imagen de tipo Punto con los puntos de intersección.
|
(package private) void |
PuntoCorte(int ax1,
int ay1,
int bx1,
int by1,
int cx1,
int cy1,
int dx1,
int dy1)
DESCRIPCIÓN
Metodo para calcular el punto de corte de dos segmentos. |
private boolean |
xor(boolean a,
boolean b)
DESCRIPCIÓN
Metodo que realiza la función XOR entre dos booleanos
Parametros de Entrada:
a: Booleano 1
b: Booleano 2
Parametros de Salida:
return: Devuelve True o False dependiendo del resultado de la función XOR
|
Methods inherited from class jip.JIPFunction |
getDescription, getName, getNumParams, getNumResults, getParamDescr, getParamNames, getParamType, getParamValueBool, getParamValueImg, getParamValueInt, getParamValueReal, getParamValueStr, getResultDescr, getResultNames, getResultType, getResultValueBool, getResultValueImg, getResultValueInt, getResultValueReal, getResultValueStr, isParam, isParamAsigned, isParamRequired, isResult, isResultAsigned, isResultRequired, paramsOK, processSeq, setParamValue, setParamValue, setParamValue, setParamValue, setParamValue, setResultValue, setResultValue, setResultValue, setResultValue, setResultValue |
Methods inherited from class java.lang.Object |
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait |
Segmentos
java.util.Vector Segmentos
- Vector que contiene los segmentos de la imagen
Puntos
java.util.Vector Puntos
- Vector donde almacenaremos los puntos ya creados
devx
int devx
- Variable donde devolvemos la coordenada X de la intersección
devy
int devy
- Variable donde devolvemos la coordenada Y de la intersección
FInterSegment
public FInterSegment()
Constructor de la Clase.
Obtiene los parámetros de entrada para aplicar la función.
Parametros de Entrada:
- NINGUNO
Parametros de Salida:
- NINGUNO
processImg
public JIPImage processImg(JIPImage img)
Método Principal
Se llama a este método para calcular los puntos de interseccion de
los segmentos de la imagen de entrada (que es de tipo Segmento).
Parametros de Entrada:
- img: Imagen a procesar
Parametros de Salida:
- Imagen de tipo Punto con los puntos de intersección.
- Overrides:
processImg
in class JIPFunction
- Following copied from class:
jip.JIPFunction
- Parameters:
img
- Imagen de entrada.- Returns:
- Imagen de salida.
PuntoCorte
void PuntoCorte(int ax1,
int ay1,
int bx1,
int by1,
int cx1,
int cy1,
int dx1,
int dy1)
DESCRIPCIÓN
Metodo para calcular el punto de corte de dos segmentos. Antes de llamar
a éste método hay que comprobar que realmente existe ese punto de corte.
Parametros de Entrada:
- ax1: Coordenada X del Punto Inicial del Primer Segmento
- ay1: Coordenada Y del Punto Inicial del Primer Segmento
- bx1: Coordenada X del Punto Final del Primer Segmento
- by1: Coordenada Y del Punto Final del Primer Segmento
- cx1: Coordenada X del Punto Inicial del Segundo Segmento
- cy1: Coordenada Y del Punto Inicial del Segundo Segmento
- dx1: Coordenada X del Punto Final del Segundo Segmento
- dy1: Coordenada Y del Punto Final del Segundo Segmento
Parametros de Salida:
- devx: Coloca en la variable de clase la coordenada x del punto
perteneciente a la intersección
- devy: Coloca en la variable de clase la coordenada y del punto
perteneciente a la intersección
left
private boolean left(int ax,
int ay,
int bx,
int by,
int cx,
int cy)
DESCRIPCIÓN
Metodo que nos dice si un punto esta a la izquierda de otros dos.
Parametros de Entrada:
- ax: Coordenada X del Punto 1
- ay: Coordenada Y del Punto 1
- bx: Coordenada X del Punto 2
- by: Coordenada Y del Punto 2
- cx: Coordenada X del Punto 3
- cy: Coordenada Y del Punto 3
Parametros de Salida:
- return: Devuelve True si el punto está a la izquierda
InterseccionPropia
private boolean InterseccionPropia(int ax0,
int ay0,
int ax1,
int ay1,
int sx0,
int sy0,
int sx1,
int sy1)
DESCRIPCIÓN
Metodo para calcular si dos segmentos se intersectan entre si.
Parametros de Entrada:
- ax0: Coordenada X del Punto Inicial del Primer Segmento
- ay0: Coordenada Y del Punto Inicial del Primer Segmento
- ax1: Coordenada X del Punto Final del Primer Segmento
- ay1: Coordenada Y del Punto Final del Primer Segmento
- sx0: Coordenada X del Punto Inicial del Segundo Segmento
- sy0: Coordenada Y del Punto Inicial del Segundo Segmento
- sx1: Coordenada X del Punto Final del Segundo Segmento
- sy1: Coordenada Y del Punto Final del Segundo Segmento
Parametros de Salida:
- return: Devuelve true si los segmentos se intersectan.
xor
private boolean xor(boolean a,
boolean b)
DESCRIPCIÓN
Metodo que realiza la función XOR entre dos booleanos
Parametros de Entrada:
- a: Booleano 1
- b: Booleano 2
Parametros de Salida:
- return: Devuelve True o False dependiendo del resultado de la función XOR
colinear
private boolean colinear(int p1x,
int p1y,
int p2x,
int p2y,
int p3x,
int p3y)
DESCRIPCIÓN
Metodo que nos indica si tres puntos son colineales
Parametros de Entrada:
- p1x: Coordenada X del Punto 1
- p1y: Coordenada Y del Punto 1
- p2x: Coordenada X del Punto 2
- p2y: Coordenada Y del Punto 2
- p3x: Coordenada X del Punto 3
- p3y: Coordenada Y del Punto 3
Parametros de Salida:
- return: Devuelve True si los puntos son colineales
area2
private int area2(int ax,
int ay,
int bx,
int by,
int cx,
int cy)
DESCRIPCIÓN
Metodo que devuelve el área (con signo) del triángulo formado por los tres puntos
Parametros de Entrada:
- ax: Coordenada X del Punto 1
- ay: Coordenada Y del Punto 1
- bx: Coordenada X del Punto 2
- by: Coordenada Y del Punto 2
- cx: Coordenada X del Punto 3
- cy: Coordenada Y del Punto 3
Parametros de Salida:
- return: Devuelve el área del triángulo