Revision 45762 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/primitive/curve/line/Line3D.java
Line3D.java | ||
---|---|---|
23 | 23 |
package org.gvsig.fmap.geom.jts.primitive.curve.line; |
24 | 24 |
|
25 | 25 |
import com.vividsolutions.jts.geom.Coordinate; |
26 |
import com.vividsolutions.jts.geom.GeometryFactory; |
|
27 |
|
|
26 |
import com.vividsolutions.jts.operation.buffer.BufferParameters; |
|
28 | 27 |
import org.gvsig.fmap.geom.Geometry; |
29 | 28 |
import org.gvsig.fmap.geom.jts.util.JTSUtils; |
30 | 29 |
import org.gvsig.fmap.geom.jts.util.OpenJUMPUtils; |
... | ... | |
61 | 60 |
/* (non-Javadoc) |
62 | 61 |
* @see org.gvsig.fmap.geom.Geometry#cloneGeometry() |
63 | 62 |
*/ |
63 |
@Override |
|
64 | 64 |
public Line cloneGeometry() { |
65 | 65 |
return new Line3D(cloneCoordinates().toCoordinateArray()); |
66 | 66 |
} |
... | ... | |
74 | 74 |
/* (non-Javadoc) |
75 | 75 |
* @see org.gvsig.fmap.geom.Geometry#offset(double) |
76 | 76 |
*/ |
77 |
@Override |
|
77 | 78 |
public Geometry offset(double distance) throws GeometryOperationNotSupportedException, GeometryOperationException { |
78 | 79 |
|
79 | 80 |
if (isClosed()) { |
... | ... | |
85 | 86 |
} |
86 | 87 |
|
87 | 88 |
@Override |
89 |
public Geometry offset(int joinStyle, double distance) throws GeometryOperationNotSupportedException, GeometryOperationException { |
|
90 |
if (isClosed(0)) { |
|
91 |
return JTSUtils.offsetClosedLine( |
|
92 |
this.getProjection(), |
|
93 |
this.coordinates, |
|
94 |
joinStyle, |
|
95 |
distance |
|
96 |
); |
|
97 |
} else { |
|
98 |
BufferParameters bufParams = JTSUtils.getBufferParameters(joinStyle, BufferParameters.CAP_FLAT); |
|
99 |
return OpenJUMPUtils.offsetCleanOpenLine( |
|
100 |
this.getProjection(), |
|
101 |
this.coordinates, |
|
102 |
bufParams, |
|
103 |
distance |
|
104 |
); |
|
105 |
} |
|
106 |
} |
|
107 |
|
|
108 |
@Override |
|
88 | 109 |
public boolean equals(Object obj) { |
89 | 110 |
boolean res = super.equals(obj); |
90 | 111 |
if(res && obj instanceof Line3D){ |
Also available in: Unified diff