Revision 37504 branches/v2_0_0_prep/extensions/extEditing/src/org/gvsig/editing/gui/cad/tools/ComplexSelectionCADTool.java
ComplexSelectionCADTool.java | ||
---|---|---|
21 | 21 |
*/ |
22 | 22 |
package org.gvsig.editing.gui.cad.tools; |
23 | 23 |
|
24 |
import java.awt.Color; |
|
25 | 24 |
import java.awt.event.InputEvent; |
26 | 25 |
import java.awt.event.MouseEvent; |
27 | 26 |
import java.awt.geom.Point2D; |
... | ... | |
40 | 39 |
import org.gvsig.editing.layers.VectorialLayerEdited; |
41 | 40 |
import org.gvsig.fmap.dal.exception.DataException; |
42 | 41 |
import org.gvsig.fmap.dal.exception.ReadException; |
43 |
import org.gvsig.fmap.dal.feature.Feature; |
|
44 | 42 |
import org.gvsig.fmap.dal.feature.FeatureSelection; |
45 | 43 |
import org.gvsig.fmap.dal.feature.FeatureStore; |
46 | 44 |
import org.gvsig.fmap.geom.Geometry; |
47 |
import org.gvsig.fmap.geom.handler.Handler; |
|
48 | 45 |
import org.gvsig.fmap.geom.primitive.Curve; |
49 | 46 |
import org.gvsig.fmap.geom.primitive.GeneralPathX; |
50 | 47 |
import org.gvsig.fmap.geom.primitive.OrientablePrimitive; |
... | ... | |
281 | 278 |
} |
282 | 279 |
|
283 | 280 |
/** |
284 |
* Draw method to draw a geometry with handlers |
|
285 |
* |
|
286 |
* @param mapControlDrawer |
|
287 |
* object used to draw. |
|
288 |
* @param x |
|
289 |
* selected x coordinate. |
|
290 |
* @param y |
|
291 |
* selected y coordinate. |
|
292 |
* @param selectedHandlers |
|
293 |
* the selected handlers |
|
294 |
*/ |
|
295 |
private void drawWithHandlers(MapControlDrawer mapControlDrawer, double x, |
|
296 |
double y, ArrayList selectedHandlers) { |
|
297 |
// Movemos los handlers que hemos seleccionado |
|
298 |
// previamente dentro del m?todo select() |
|
299 |
double xPrev = 0; |
|
300 |
double yPrev = 0; |
|
301 |
for (int k = 0; k < selectedHandlers.size(); k++) { |
|
302 |
Handler h = (Handler) selectedHandlers.get(k); |
|
303 |
xPrev = h.getPoint().getX(); |
|
304 |
yPrev = h.getPoint().getY(); |
|
305 |
h.set(x, y); |
|
306 |
} |
|
307 |
// Y una vez movidos los v?rtices (handles) |
|
308 |
// redibujamos la nueva geometr?a. |
|
309 |
for (int i = 0; i < rowselectedHandlers.size(); i++) { |
|
310 |
Feature rowEd = (Feature) rowselectedHandlers.get(i); |
|
311 |
Geometry geom = (rowEd.getDefaultGeometry()).cloneGeometry(); |
|
312 |
mapControlDrawer.setColor(Color.gray); |
|
313 |
mapControlDrawer.draw(geom, |
|
314 |
mapControlManager.getAxisReferenceSymbol()); |
|
315 |
} |
|
316 |
for (int k = 0; k < selectedHandlers.size(); k++) { |
|
317 |
Handler h = (Handler) selectedHandlers.get(k); |
|
318 |
h.set(xPrev, yPrev); |
|
319 |
} |
|
320 |
} |
|
321 |
|
|
322 |
/** |
|
323 | 281 |
* Draw method for the second point of the "circle" option |
324 | 282 |
* |
325 | 283 |
* @param mapControlDrawer |
Also available in: Unified diff