Muchas gracias por la respuesta.He seguido las instrucciones, y he llegado al 
código que se muestra a continuación:

public boolean execute(PlugInContext context) throws Exception {                
        //******************    //MENSAJE DE DIALOGO    //******************    
                
DialogFactory.showInformationDialog(context.getWorkbenchFrame(), "Proyecto de 
exportación a dxf...",            "Diálogo de información");                    
          //************************************************************* 
//SELEECIONAR LOS ELEMENTOS DE LA CAPA DEL RECUADRO DE LA VISTA 
//*************************************************************                 
        //recuperamos el encuadre de la vista activa    Envelope encuadreActual 
= context.getLayerViewPanel().getViewport().getEnvelopeInModelCoordinates();    
                //recuperamos la capa a partir de la selección del árbol        
Layer selectedLayer = context.getSelectedLayer(0);  -->  ERROR: "Type mismatch: 
cannot convert from Layerable to Layer"
        //recuperamos los elementos que cruzan con el encuadre actual   
List<Layer> layersToFilter = new ArrayList<Layer>();    
layersToFilter.add(selectedLayer);      Geometry fence = 
EnvelopeUtil.toGeometry(encuadreActual);       Map layerToFeaturesInFenceMap =  
       context.getLayerViewPanel().layersToFeaturesInFenceMap(layersToFilter, 
fence); --> ERROR: "The method                   
layersToFeaturesInFenceMap(List<Layerable>, Geometry) in the type 
LayerViewPanel is not applicable                      for the arguments 
(List<Layer>, Geometry)"

Espero que me puedan ayudar con estos 2 errores.Gracias de nuevo, y un 
saludo,Alex. 



> Date: Mon, 7 Jun 2010 11:16:42 +0200
> From: [email protected]
> To: [email protected]
> Subject: [Kosmo] Re: Consulta desarrollo
> 
> Buenos días Alex.
> 
> Le comento una serie de puntos sobre la funcionalidad que quiere 
> implementar:
> 
> 1) En primer lugar, supondré que su herramienta será un PlugIn (es 
> decir, que la clase implementa la interfaz PlugIn o extiende a alguna de 
> sus subclases, como AbstractPlugIn o ThreadedPlugIn).
> 
> 2) En el método execute de dicha herramienta debe incluir el código que 
> debe ejecutarse al pulsar el botón de la misma en la interfaz de usuario 
> (o, si la tarea que desea realizar es de "larga duración", deberá 
> comprobarse en dicho método execute que se cumplen todas las 
> precondiciones para la ejecución de la misma en el método run(), 
> recuperando a su vez los datos que necesite).
> 
> En este caso, lo primero que necesitará es recuperar el encuadre de la 
> vista activa (no olvide incluir en el método getCheck() / 
> createEnableCheck la comprobación de que debe existir una vista activa):
> 
> Envelope encuadreActual = 
> context.getLayerViewPanel().getViewport().getEnvelopeInModelCoordinates();
> 
> 3) Una vez obtenida dicha referencia, sería necesario recuperar de qué 
> capa/s se van a seleccionar los elementos. Dependiendo de la 
> funcionalidad que desea implementar, puede obtener la referencia 
> directamente (si sabe de antemano de qué capa debe recuperarla), o, si 
> es una herramienta válida para cualquier capa, puede obtener la 
> referencia a la capa mediante la selección de la misma en el árbol de capas:
> 
> a) Referencia directa por nombre (sería recomendable incluir un chequeo 
> de que la capa de nombre nombreDeMiCapa existe realmente):
> 
> Layer selectedLayer = JUMPWorkbench.getLayer(nombreDeMiCapa);
> 
> b) Recuperarla a partir de la selección del árbol (sería recomendable 
> incluir un chequeo que compruebe que existe una capa vectorial y que 
> está seleccionada en el árbol)
> 
> Layer selectedLayer = context.getSelectedLayer(0);
> 
> 4) Recuperamos los elementos que cruzan con el encuadre actual:
> 
> List<Layer> layersToFilter = new ArrayList<Layer>();
> layersToFilter.add(selectedLayer);
> Geometry fence = EnvelopeUtil.toGeometry(encuadreActual);
> Map layerToFeaturesInFenceMap = 
> context.getLayerViewPanel().layersToFeaturesInFenceMap(
>                 layersToFilter, fence);
> 
> 5) Para seleccionar los elementos puedes consultar el método 
> refreshSelection(layerToFeaturesInFenceMap, context.getLayerViewPanel()) 
> del plugin CalculateSelectionPlugIn.
> 
> Saludos,
> 
> 
> Alex Mtz. de Agirre Escobar escribió:
> > Buenos días!
> >
> > Estoy teniendo algunos problemas a la hora de implementar una 
> > herramienta propia sobre Kosmo.
> >
> > El primer paso que debe realizar dicha herramienta es seleccionar los 
> > elementos de la capa activa que se encuentren en la ventana de 
> > visualización de Kosmo. Para ello, debo de llamar al evento que 
> > realiza el botón de selección, y posteriormente seleccionar los 
> > elementos que se encuentren dentro de las coordenadas de la ventana de 
> > visualización. De momento, me conformaría con lograr dicho 
> > propósito. El error que tengo en mi código es que el constructor 
> > /CalculateSelectionPlugIn/ no está definido.
> >
> > Si fuese posible, les agradecería que me ayudaran a solucionar dicho 
> > contratiempo.
> >
> > Gracias de antemano,
> > Alex.
> >
> > ------------------------------------------------------------------------
> > Eskura ezazu Windows Live Hotmail doanik, beti eskura edukiko duzun 
> > posta elektronikoko zerbitzua. Erregistratu orain. 
> > <https://signup.live.com/signup.aspx?id=60969>
> 
> -- 
> 
> Sergio Baños Calvo
> 
> Jefe de desarrollos
> Sistemas Abiertos de Información Geográfica, S.L. (SAIG S.L.)
> Tlfno. móvil: 685005960
> Tlfno. fijo: (+34) 954788876
> 
> E-mail: [email protected]
> 
                                          
_________________________________________________________________
Eskura ezazu Windows Live Hotmail doanik,  beti eskura edukiko duzun posta 
elektronikoko zerbitzua. 
https://signup.live.com/signup.aspx?id=60969
_______________________________________________
Kosmo mailing list
[email protected]
http://lists.saig.es/mailman/listinfo/kosmo

Responder a