147 |
147 |
lyrDef.setShapeType(FShape.POINT);
|
148 |
148 |
writer.initialize(lyrDef);
|
149 |
149 |
}
|
150 |
|
if(writer instanceof ShpWriter && lyrVect.getSource() instanceof VectorialFileAdapter)
|
151 |
|
((ShpWriter)writer).loadDbfEncoding(((VectorialFileAdapter)lyrVect.getSource()).getFile().getAbsolutePath());
|
152 |
|
|
|
150 |
|
153 |
151 |
// Creamos la tabla.
|
154 |
152 |
writer.preProcess();
|
155 |
153 |
|
... | ... | |
653 |
651 |
lyrDefPoint.setFile(filePoints);
|
654 |
652 |
lyrDefPoint.setName(filePoints.getName());
|
655 |
653 |
lyrDefPoint.setShapeType(FShape.POINT);
|
|
654 |
loadEnconding(layer, writer1);
|
656 |
655 |
writer1.setFile(filePoints);
|
657 |
656 |
writer1.initialize(lyrDefPoint);
|
658 |
657 |
writers[0]=writer1;
|
659 |
658 |
drivers[0]=getOpenShpDriver(filePoints);
|
660 |
659 |
//drivers[0]=null;
|
661 |
660 |
|
662 |
|
|
663 |
|
|
664 |
661 |
ShpWriter writer2 = (ShpWriter) LayerFactory.getWM().getWriter(
|
665 |
662 |
"Shape Writer");
|
666 |
663 |
// Lineas
|
... | ... | |
672 |
669 |
lyrDefLine.setFile(fileLines);
|
673 |
670 |
lyrDefLine.setName(fileLines.getName());
|
674 |
671 |
lyrDefLine.setShapeType(FShape.LINE);
|
|
672 |
loadEnconding(layer, writer2);
|
675 |
673 |
writer2.setFile(fileLines);
|
676 |
674 |
writer2.initialize(lyrDefLine);
|
677 |
675 |
writers[1]=writer2;
|
... | ... | |
688 |
686 |
lyrDefPolygon.setFile(filePolygons);
|
689 |
687 |
lyrDefPolygon.setName(filePolygons.getName());
|
690 |
688 |
lyrDefPolygon.setShapeType(FShape.POLYGON);
|
|
689 |
loadEnconding(layer, writer3);
|
691 |
690 |
writer3.setFile(filePolygons);
|
692 |
691 |
writer3.initialize(lyrDefPolygon);
|
693 |
692 |
writers[2]=writer3;
|
... | ... | |
698 |
697 |
} else {
|
699 |
698 |
ShpWriter writer = (ShpWriter) LayerFactory.getWM().getWriter(
|
700 |
699 |
"Shape Writer");
|
701 |
|
if(layer.getSource() instanceof VectorialFileAdapter)
|
702 |
|
writer.loadDbfEncoding(((VectorialFileAdapter)layer.getSource()).getFile().getAbsolutePath());
|
|
700 |
loadEnconding(layer, writer);
|
703 |
701 |
IndexedShpDriver drv = getOpenShpDriver(newFile);
|
704 |
702 |
SHPLayerDefinition lyrDef = new SHPLayerDefinition();
|
705 |
703 |
lyrDef.setFieldsDesc(fieldsDescrip);
|
... | ... | |
734 |
732 |
}
|
735 |
733 |
|
736 |
734 |
}
|
|
735 |
|
|
736 |
/**
|
|
737 |
* Loads the dbf enconding
|
|
738 |
* @param layer
|
|
739 |
* @param writer
|
|
740 |
*/
|
|
741 |
private void loadEnconding(FLyrVect layer, ShpWriter writer) {
|
|
742 |
if(layer.getSource() instanceof VectorialFileAdapter)
|
|
743 |
writer.loadDbfEncoding(((VectorialFileAdapter)layer.getSource()).getFile().getAbsolutePath());
|
|
744 |
else {
|
|
745 |
Object s = layer.getProperty("DBFFile");
|
|
746 |
if(s != null && s instanceof String)
|
|
747 |
writer.loadDbfEncoding((String)s);
|
|
748 |
}
|
|
749 |
}
|
737 |
750 |
|
738 |
751 |
private IndexedShpDriver getOpenShpDriver(File fileShp) throws OpenDriverException {
|
739 |
752 |
IndexedShpDriver drv = new IndexedShpDriver();
|