Revision 139 org.gvsig.toolbox/trunk/org.gvsig.toolbox/org.gvsig.toolbox.core/src/main/java/es/unex/sextante/shapesTools/ShapesTools.java
ShapesTools.java | ||
---|---|---|
71 | 71 |
final IVectorLayer output = outputFactory.getNewVectorLayer(layer.getName(), layer.getShapeType(), types, sFields, channel, |
72 | 72 |
layer.getCRS()); |
73 | 73 |
|
74 |
int j = 0; |
|
75 |
final IFeatureIterator iter = layer.iterator(); |
|
76 |
while (iter.hasNext()) { |
|
77 |
try { |
|
78 |
final IFeature feature = iter.next(); |
|
79 |
final IRecord record = feature.getRecord(); |
|
80 |
final Object[] orgValues = record.getValues(); |
|
81 |
for (i = 0; i < orgValues.length; i++) { |
|
82 |
values[i] = orgValues[i]; |
|
74 |
if (output != null) { |
|
75 |
int j = 0; |
|
76 |
final IFeatureIterator iter = layer.iterator(); |
|
77 |
while (iter.hasNext()) { |
|
78 |
try { |
|
79 |
final IFeature feature = iter.next(); |
|
80 |
final IRecord record = feature.getRecord(); |
|
81 |
final Object[] orgValues = record.getValues(); |
|
82 |
for (i = 0; i < orgValues.length; i++) { |
|
83 |
values[i] = orgValues[i]; |
|
84 |
} |
|
85 |
for (i = 0; i < sFieldNames.length; i++) { |
|
86 |
values[i + orgValues.length] = addedValues[i][j]; |
|
87 |
} |
|
88 |
output.addFeature(feature.getGeometry(), values); |
|
89 |
} catch (final Exception e) { |
|
90 |
e.printStackTrace(); |
|
91 |
} |
|
92 |
j++; |
|
83 | 93 |
} |
84 |
for (i = 0; i < sFieldNames.length; i++) { |
|
85 |
values[i + orgValues.length] = addedValues[i][j]; |
|
86 |
} |
|
87 |
output.addFeature(feature.getGeometry(), values); |
|
88 |
} |
|
89 |
catch (final Exception e) { |
|
90 |
e.printStackTrace(); |
|
91 |
} |
|
92 |
j++; |
|
93 |
} |
|
94 |
iter.close(); |
|
95 |
//layer.close(); |
|
94 |
iter.close(); |
|
95 |
// layer.close(); |
|
96 |
} |
|
96 | 97 |
|
97 | 98 |
return output; |
98 | 99 |
|
Also available in: Unified diff