Fede, supongo que quieres hacer una extensión que realice la importación/exportación a través de código de manera automática, o algo por el estilo. Si es asi, la mecanica sería más o menos la siguiente (hace un par de meses que empecé a desarrollar sobre gvSig por lo que es probable que esta no sea la forma más correcta de hacerlo, pero tal vez te de una idea de las clases que intervienen).<br>
<br>Espero te sirva,<br>Antonio Grassi<br><br>Crear las capas origen y destino:<br><br>View v = (View) PluginServices.getMDIManager().getActiveWindow();<br><br>IProjection proj = v.getMapControl().getMapContext().getProjection();<br>
<br>Driver d = LayerFactory.getDM().getDriver(&quot;nombre driver DXF o SHP&quot;);<br><br>FLayer l = LayerFactory.createLayer(&quot;nombre de capa&quot;, (VectorialFileDriver) d, new File(&quot;ruta al archivo DXF o SHP&quot;), proj);<br>
<br>Con esto creas una layer. Los nombres de los drivers puedes verlos en la salida del log cuando inicias gvsig. Si la capa es nueva, se creará automáticamente el SHP o DXF. Luego tienes que leer el contenido de una capa e insertarlo en la otra. Puedes hacerlo mediante el siguiente método (las capas que creaste en el paso anterior al ser SHP o DXF son instancias de FLyrVect):<br>
<br>public static void addLayerContent(FLyrVect target, FLyrVect source) throws<br>    VisitorException, ReadDriverException, InitializeWriterException {<br>        <br>    if (!target.isWritable()) {<br>        throw new RuntimeException(&quot;The layer &quot; + target.getName() + &quot; is not writeable&quot;);<br>
    }<br><br>    IWriter writer = ((IWriteable) target.getSource().getDriver()).getWriter();<br><br>    LayerDefinition ld = new LayerDefinition();<br>    ld = new LayerDefinition();<br>    ld.setName(target.getName());<br>
    ld.setProjection(target.getProjection());<br>    ld.setShapeType(target.getShapeType());<br>    ld.setFieldsDesc(target.getRecordset().getFieldsDescription());<br><br>    writer.initialize(ld);<br>    writer.preProcess();<br>
<br>    int index = 0;<br>        <br>    IFeatureIterator fi = source.getSource().getFeatureIterator();<br>        <br>    while (fi.hasNext()) {<br>        IRowEdited r = new DefaultRowEdited(fi.next(),<br>            IRowEdited.STATUS_ADDED, index++);<br>
        writer.process(r);<br>    }<br>        <br>    writer.postProcess();<br>    fi.closeIterator();<br>}<br><br><br><br>&gt; Hola, me llamo Federico Jeanne.<br>
&gt; Soy un desarrollador de software trabajando con GIS, estoy haciendo un<br>
&gt; visualizador de capas y algunas otras cosas. Hace poco me pidieron para mi<br>
&gt; proyecto la posibilidad de importar/exportar capas DXF y noté que la<br>
&gt; funcionalidad ya está hecha en gvSIG.<br>
&gt; Escribo a ustedes para pedir un poco de ayuda con este asunto, actualmente<br>
&gt; estoy navegando un poco las clases de su proyecto (lo bajé desde el<br>
&gt; repositorio SVN) y estoy tratando de rastrear la funcionalidad que necesito,<br>
&gt; pero me está costando bastante<br>