<HTML dir=ltr><HEAD><TITLE>Re: [Gvsig_italian] programmazione java</TITLE>
<META http-equiv=Content-Type content="text/html; charset=unicode">
<META content="MSHTML 6.00.2900.2873" name=GENERATOR></HEAD>
<BODY>
<DIV id=idOWAReplyText37793 dir=ltr>
<DIV dir=ltr><FONT face="Times New Roman" color=#000000 size=3>Ciao, c'era un errore nel codice, questo invece è andato bene:</FONT></DIV>
<DIV dir=ltr> </DIV>
<DIV dir=ltr> </DIV>
<DIV dir=ltr><FONT face="Times New Roman" color=#000000 size=3>// -------------<BR>IWindow w = PluginServices.getMDIManager().getActiveWindow();<BR>if (w instanceof View) {<BR>   <BR> View v = (View) w;<BR> MapControl mcontrol = v.getMapControl();<BR> MapContext mcontext = mcontrol.getMapContext();<BR> FLayers root = mcontext.getLayers();<BR> FLayer lyr = root.getLayer(0);</FONT></DIV>
<DIV dir=ltr><FONT face="Times New Roman" color=#000000 size=3> // verifica se il layer è di tipo vettoriale<BR> if (lyr instanceof FLyrVect) {<BR>    <BR>  FLyrVect lyr_vect = (FLyrVect) lyr;<BR>  SelectableDataSource sds;<BR>  try {<BR>   // questo oggeto contiene l'informazione alfanumerica:</FONT></DIV>
<DIV dir=ltr><FONT face="Times New Roman" color=#000000 size=3>   sds = lyr_vect.getRecordset();<BR>                    <BR>   sds.start();<BR> <BR>  // chiediamo il numero di campi:</FONT></DIV>
<DIV dir=ltr><FONT face="Times New Roman" color=#000000 size=3>   int count = sds.getFieldCount();<BR>   sds.stop();</FONT></DIV>
<DIV dir=ltr><FONT face="Times New Roman" color=#000000 size=3>   // questo oggetto contiene gli oggetti geometrici:<BR>   ReadableVectorial rv = lyr_vect.getSource();<BR>   rv.start();<BR>   Rectangle2D extent = rv.getFullExtent();<BR>   rv.stop();</FONT></DIV>
<DIV dir=ltr><FONT face="Times New Roman" color=#000000 size=3>   // verifico i valori<BR>   checkedMapCode = checkCodeSystem(extent);<BR>  } catch (Exception e) {<BR>   System.err.println("Error: " + e.getMessage());<BR>  }<BR> }<BR>}<BR>// -------------</FONT></DIV>
<DIV dir=ltr> </DIV><FONT face="Times New Roman" color=#000000 size=3></FONT></DIV>
<DIV dir=ltr><FONT face="Times New Roman" color=#000000 size=3>Saluti
<DIV dir=ltr><BR></DIV></FONT>
<DIV dir=ltr><FONT face="Times New Roman" color=#000000 size=3></FONT> </DIV></DIV>
<DIV id=idSignature28916 dir=ltr>
<DIV>Juan Lucas Domínguez Rubio<BR>Prodevelop SL, Valencia (España)<BR>Tlf.: 96.351.06.12 -- Fax: 96.351.09.68<BR><A href="http://www.prodevelop.es/">http://www.prodevelop.es</A></DIV></DIV>
<DIV dir=ltr><BR>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>De:</B> gvsig_italian-bounces@lists.gvsig.org en nombre de gaghi<BR><B>Enviado el:</B> mié 30/04/2008 19:03<BR><B>Para:</B> gvsig_italian@lists.gvsig.org<BR><B>Asunto:</B> Re: [Gvsig_italian] programmazione java<BR></FONT><BR></DIV>
<DIV><BR>
<P><FONT size=2>Ciao a tutti, scusate l'ennesima domanda...<BR>stavo scrivendo questa parte di codice per un plugin. dal layer dovevo<BR>tirare fuori l'extent. Cosa abbastanza semplice, se non fosse che mi da un<BR>errore di parsing da Driver a IndexedShpDriver. Come posso fare per ovviare<BR>al problema?<BR>La condizione  if (drv instanceof IndexedShpDriver)  non mi permette di<BR>entrare nell'if ma se la tolgo incorro nell'errore di casting. Conosco poco<BR>le classi e il loro funzionamento, lo scheletro del codice l'avevo preso da<BR>un esempio(mi pare in questa discussione?).<BR>Spero che qualcuno possa aiutarmi.<BR>grazie e buon 1 maggio a tutti.<BR><BR>if (lyr instanceof FLyrVect) {//verifica se il layer è di tipo vettoriale<BR>                FLyrVect lyr_vect = (FLyrVect) lyr;<BR>                SelectableDataSource sds;<BR>                try {<BR>                    // ------ questo oggeto contiene l'informazione<BR>alfanumerica:<BR>                    sds = lyr_vect.getRecordset();<BR>                    sds.start();<BR>                    // ------ chiediamo il numero di campi:<BR>                    int count = sds.getFieldCount();<BR>                    sds.stop();<BR>                   <BR>                    Driver drv = sds.getDriver();<BR>                   <BR>                    if (drv instanceof IndexedShpDriver) {<BR>                       <BR>                        try{<BR>                           <BR>                            // ------ questo oggetto contiene gli oggetti<BR>geometrici:<BR>                          <BR>                              IndexedShpDriver shp_drv = (IndexedShpDriver)<BR>drv;<BR>                          <BR>                           <BR>                            // ------ chiediamo l'extent:<BR>                            Rectangle2D extent = shp_drv.getFullExtent();<BR>                           <BR>                            checkedMapCode =<BR>checkCodeSystem(extent);//verifico i valori<BR><BR>                         } catch (IOException e) {<BR>                           e.printStackTrace();<BR>                          }<BR>                    //}<BR>                } catch (Exception e) {<BR>                    System.err.println("Error: " + e.getMessage());<BR>                }<BR>            }<BR><BR><BR>--<BR>Gabriele Lipari<BR>--<BR>View this message in context: <A href="http://www.nabble.com/programmazione-java-tp16935242p16987323.html">http://www.nabble.com/programmazione-java-tp16935242p16987323.html</A><BR>Sent from the gvSIG Italian mailing list archive at Nabble.com.<BR><BR>_______________________________________________<BR>Gvsig_italian mailing list<BR>Gvsig_italian@lists.gvsig.org<BR><A href="https://gvsig.org/lists/mailman/listinfo/gvsig_italian">https://gvsig.org/lists/mailman/listinfo/gvsig_italian</A><BR></FONT></P></DIV></BODY></HTML>