Revision 335 org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.prov/org.gvsig.vectorediting.lib.prov.rotate/src/main/java/org/gvsig/vectorediting/lib/prov/rotate/RotateEditingProvider.java

View differences:

RotateEditingProvider.java
38 38
import org.gvsig.fmap.geom.Geometry;
39 39
import org.gvsig.fmap.geom.GeometryLocator;
40 40
import org.gvsig.fmap.geom.GeometryManager;
41
import org.gvsig.fmap.geom.aggregate.Aggregate;
42
import org.gvsig.fmap.geom.aggregate.MultiCurve;
43
import org.gvsig.fmap.geom.aggregate.MultiPoint;
44
import org.gvsig.fmap.geom.aggregate.MultiSurface;
41 45
import org.gvsig.fmap.geom.operation.GeometryOperationException;
42 46
import org.gvsig.fmap.geom.operation.GeometryOperationNotSupportedException;
43 47
import org.gvsig.fmap.geom.primitive.Arc;
48
import org.gvsig.fmap.geom.primitive.Curve;
44 49
import org.gvsig.fmap.geom.primitive.Line;
45 50
import org.gvsig.fmap.geom.primitive.Point;
51
import org.gvsig.fmap.geom.primitive.Surface;
46 52
import org.gvsig.fmap.mapcontext.rendering.symbols.ISymbol;
47 53
import org.gvsig.symbology.SymbologyLocator;
48 54
import org.gvsig.symbology.SymbologyManager;
......
122 128
        ISymbol auxiliaryPointSymbolEditing = editingProviderManager.getSymbol("auxiliary-point-symbol-editing");
123 129
        ISymbol auxiliaryLineSymbolEditing = editingProviderManager.getSymbol("auxiliary-line-symbol-editing");
124 130
        ISymbol ruleAxisSymbol = editingProviderManager.getSymbol("rule-axis-symbol");
131
        ISymbol lineSymbolEditing = editingProviderManager.getSymbol("line-symbol-editing");
132
        ISymbol polygonSymbolEditing = editingProviderManager.getSymbol("polygon-symbol-editing");
125 133

  
126 134

  
135

  
127 136
        FeatureSelection selected =
128 137
            (FeatureSelection) values.get(selectionParameter);
129 138
        try {
......
185 194

  
186 195
                    while (it.hasNext()) {
187 196
                        Feature feat = (Feature) it.next();
188
                        Geometry geom =
189
                            feat.getDefaultGeometry().cloneGeometry();
190
                        geom.transform(at);
191
                        drawingStatus.addGeometry(geom);
197

  
198
                        Geometry transformedGeometry = feat.getDefaultGeometry().cloneGeometry();
199
                        transformedGeometry.transform(at);
200

  
201
                        ISymbol symbol=null;
202
                        if(transformedGeometry instanceof Curve || transformedGeometry instanceof MultiCurve){
203
                            symbol = lineSymbolEditing;
204
                        } else if(transformedGeometry instanceof Surface || transformedGeometry instanceof MultiSurface){
205
                            symbol = polygonSymbolEditing;
206
                        } else if(transformedGeometry instanceof Point || transformedGeometry instanceof MultiPoint){
207
                            symbol = auxiliaryPointSymbolEditing;
208
                        }
209
                        if(transformedGeometry instanceof Aggregate){
210
                            int primitivesNumber = ((Aggregate)transformedGeometry).getPrimitivesNumber();
211
                            for (int i = 0; i < primitivesNumber; i++) {
212
                                drawingStatus.addStatus(((Aggregate)transformedGeometry).getPrimitiveAt(i), symbol, "");
213
                            }
214
                        } else {
215
                            drawingStatus.addStatus(transformedGeometry, symbol, "");
216
                        }
217

  
192 218
                    }
193 219
                    it.dispose();
194 220
                }
......
288 314
                }
289 315

  
290 316
            } else if (value instanceof Double) {
291
                values.put(param, value);
317
                values.put(param, (Double)value*Math.PI/180);
292 318
                return;
293 319
            }
294 320
        }

Also available in: Unified diff