Revision 42441 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.geometry/org.gvsig.fmap.geometry.jts/src/main/java/org/gvsig/fmap/geom/jts/aggregate/MultiLine3D.java

View differences:

MultiLine3D.java
31 31
import org.gvsig.fmap.geom.aggregate.MultiLine;
32 32
import org.gvsig.fmap.geom.aggregate.MultiPoint;
33 33
import org.gvsig.fmap.geom.aggregate.MultiPolygon;
34
import org.gvsig.fmap.geom.jts.primitive.curve.line.Line2D;
34 35
import org.gvsig.fmap.geom.jts.primitive.curve.line.Line3D;
36
import org.gvsig.fmap.geom.operation.GeometryOperationException;
37
import org.gvsig.fmap.geom.operation.GeometryOperationNotSupportedException;
35 38
import org.gvsig.fmap.geom.primitive.Polygon;
36 39
import org.gvsig.fmap.geom.primitive.Primitive;
37 40

  
......
158 161
        notifyDeprecated(message);
159 162
        throw new UnsupportedOperationException(message);
160 163
    }
164

  
165
    /* (non-Javadoc)
166
     * @see org.gvsig.fmap.geom.Geometry#transform(java.awt.geom.AffineTransform)
167
     */
168
    public Geometry offset(double distance) throws GeometryOperationNotSupportedException, GeometryOperationException {
169
        MultiLine3D result = new MultiLine3D();
170
        for (Iterator<Primitive> iterator = primitives.iterator(); iterator.hasNext();) {
171
            Primitive primitive = (Primitive) iterator.next();
172
            Geometry offset = primitive.offset(distance);
173
            if(offset instanceof MultiLine){
174
                MultiLine multiOffset = (MultiLine)offset;
175
                for(int i=0; i<multiOffset.getPrimitivesNumber(); i++){
176
                    result.addPrimitive(multiOffset.getPrimitiveAt(i));
177
                }
178
            } else {
179
                result.addPrimitive((Primitive)primitive.offset(distance));
180
            }
181
        }
182
        return result;
183
    }
161 184
}

Also available in: Unified diff