Revision 8950 trunk/libraries/libFMap/src/com/iver/cit/gvsig/fmap/edition/UtilFunctions.java
UtilFunctions.java | ||
---|---|---|
166 | 166 |
|
167 | 167 |
return res; |
168 | 168 |
} |
169 |
public static Point2D[] getParallel(Point2D p1,Point2D p2,double distance) { |
|
170 |
Point2D[] pParallel=new Point2D[2]; |
|
171 |
pParallel[0]=getPerpendicularPoint(p1,p2,p1,distance); |
|
172 |
pParallel[1]=getPerpendicularPoint(p1,p2,p2,distance); |
|
173 |
return pParallel; |
|
174 |
} |
|
175 |
|
|
169 | 176 |
/** |
170 | 177 |
* Obtiene el punto que se encuentra a una distancia 'dist' de la recta |
171 | 178 |
* p1-p2 y se encuentra en la recta perpendicular que pasa por perpPoint |
... | ... | |
197 | 204 |
public static Point2D getUnitVector(Point2D p1, Point2D p2) { |
198 | 205 |
Point2D paux = new Point2D.Double(p2.getX() - p1.getX(), |
199 | 206 |
p2.getY() - p1.getY()); |
200 |
double v = Math.sqrt(Math.pow((double) paux.getX(), (double) 2) +
|
|
201 |
Math.pow((double) paux.getY(), (double) 2));
|
|
207 |
double v = Math.sqrt(Math.pow(paux.getX(), 2d) +
|
|
208 |
Math.pow(paux.getY(), 2d));
|
|
202 | 209 |
paux = new Point2D.Double(paux.getX() / v, paux.getY() / v); |
203 | 210 |
|
204 | 211 |
return paux; |
... | ... | |
228 | 235 |
|
229 | 236 |
return getIntersection(perp1[0], perp1[1], perp2[0], perp2[1]); |
230 | 237 |
} |
238 |
|
|
239 |
|
|
231 | 240 |
/** |
232 | 241 |
* Devuelve el punto de la intersecci?n entre las lineas p1-p2 y p3-p4. |
233 | 242 |
* |
... | ... | |
339 | 348 |
public static Point2D getPoint(Point2D p1, Point2D p2, double radio) { |
340 | 349 |
Point2D paux = new Point2D.Double(p2.getX() - p1.getX(), |
341 | 350 |
p2.getY() - p1.getY()); |
342 |
double v = Math.sqrt(Math.pow((double) paux.getX(), (double) 2) +
|
|
343 |
Math.pow((double) paux.getY(), (double) 2));
|
|
351 |
double v = Math.sqrt(Math.pow(paux.getX(), 2d) +
|
|
352 |
Math.pow(paux.getY(), 2d));
|
|
344 | 353 |
paux = new Point2D.Double(paux.getX() / v, paux.getY() / v); |
345 | 354 |
|
346 | 355 |
Point2D aux1 = new Point2D.Double(p1.getX() + (radio * paux.getX()), |
... | ... | |
424 | 433 |
|
425 | 434 |
return resul; |
426 | 435 |
} |
427 |
|
|
436 |
|
|
428 | 437 |
/** |
429 | 438 |
* Obtiene un arco a partir del |
430 | 439 |
* centro del arco y punto inicio y punto final |
... | ... | |
460 | 469 |
|
461 | 470 |
return resul; |
462 | 471 |
} |
463 |
|
|
472 |
|
|
464 | 473 |
/** |
465 | 474 |
* Devuelve el punto a una distancia radio del punto p1 y aplicandole un ?ngulo an. |
466 | 475 |
* una distancia radio de p1. |
... | ... | |
583 | 592 |
geometry.transform(at); |
584 | 593 |
} |
585 | 594 |
|
595 |
|
|
586 | 596 |
} |
Also available in: Unified diff