From: <emm...@us...> - 2008-11-03 10:36:15
|
Revision: 4150 http://fudaa.svn.sourceforge.net/fudaa/?rev=4150&view=rev Author: emmanuel_martin Date: 2008-11-03 10:36:06 +0000 (Mon, 03 Nov 2008) Log Message: ----------- bigfix #44 : "D?\195?\169placement d'un semis vers ligne de niveau ou inversement : Attribut Z non restaur?\195?\169." Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-02 01:09:08 UTC (rev 4149) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-03 10:36:06 UTC (rev 4150) @@ -7,15 +7,25 @@ */ package org.fudaa.fudaa.modeleur; +import java.awt.Frame; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.util.ArrayList; import java.util.List; +import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JComponent; +import javax.swing.JDialog; +import javax.swing.JPanel; +import javax.swing.border.Border; + import org.fudaa.ctulu.CtuluCommandComposite; -import org.fudaa.ctulu.CtuluCommandContainer; import org.fudaa.ctulu.CtuluListSelection; import org.fudaa.ctulu.CtuluListSelectionInterface; import org.fudaa.ctulu.gis.GISAttributeConstants; import org.fudaa.ctulu.gis.GISAttributeInterface; +import org.fudaa.ctulu.gis.GISAttributeModelDoubleArray; import org.fudaa.ctulu.gis.GISCoordinateSequenceContainerInterface; import org.fudaa.ctulu.gis.GISDataModel; import org.fudaa.ctulu.gis.GISGeometryFactory; @@ -37,6 +47,8 @@ import org.fudaa.fudaa.modeleur.layer.MdlModel2dLine; import org.fudaa.fudaa.modeleur.layer.MdlModel2dMultiPoint; +import com.memoire.bu.BuBorderLayout; +import com.memoire.bu.BuLabel; import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.CoordinateSequence; import com.vividsolutions.jts.geom.Geometry; @@ -151,6 +163,69 @@ if (colsrc.getAttribute(idxAtt)==GISAttributeConstants.ETAT_GEOM) datadest[iatt]=GISAttributeConstants.ATT_VAL_ETAT_MODI; } + // Cas particuliers de mapping entre les attributs Z et z \\ + else{ + // On va essayer de renseigner le Z global de destination + if(coldest.getAttribute(iatt).getID().equals("Z")){ + // Cas o\xF9 un z atomique existe dans la source et qu'il est constant + boolean identique=true; + int indexBathy=colsrc.getIndiceOf(GISAttributeConstants.BATHY); + if(indexBathy!=-1){ + GISAttributeModelDoubleArray data=(GISAttributeModelDoubleArray) colsrc.getValue(indexBathy, getScene().sceneId2LayerId(idxGeom[i])); + identique=data.getMin()==data.getMax(); + } + if(identique&&indexBathy!=-1) + datadest[iatt]=((GISAttributeModelDoubleArray) colsrc.getValue(indexBathy, getScene().sceneId2LayerId(idxGeom[i]))).getObjectValueAt(0); + // Dans le cas contraire, on demande \xE0 l'utilisateur + else{ + // Utilisation d'une fen\xEAtre modale pour l'obtension du Z. + class myDialogModal extends JDialog implements ActionListener{ + private JComponent text_; + public myDialogModal(Frame _frame){ + super(_frame, MdlResource.MDL.getString("Choix du Z"), true); + // Position & resizable + setLocation(_frame.getLocation().x+_frame.getSize().width/2, _frame.getLocation().y+_frame.getSize().height/2); + setResizable(false); + // Contenu + JPanel container=new JPanel(new BuBorderLayout(2, 2)); + container.setBorder(BorderFactory.createEmptyBorder(2, 2, 2, 2)); + text_=GISAttributeConstants.BATHY.getEditor().createEditorComponent(); + JButton ok=new JButton(MdlResource.MDL.getString("Valider")); + ok.addActionListener(this); + container.add(new BuLabel(MdlResource.MDL.getString("Valeur de Z :")), BuBorderLayout.WEST); + container.add(text_, BuBorderLayout.EAST); + container.add(ok, BuBorderLayout.SOUTH); + add(container); + pack(); + } + public void actionPerformed(ActionEvent e) { + setVisible(false); + dispose(); + } + public Double getValue(){ + return (Double) GISAttributeConstants.BATHY.getEditor().getValue(text_); + } + } + myDialogModal dialog =new myDialogModal(calquePanel_.getDefaultGisEditor().getFrame()); + dialog.setVisible(true); + datadest[iatt]=dialog.getValue(); + } + } + else if(coldest.getAttribute(iatt)==GISAttributeConstants.BATHY){ + // Recherche d'un attribut ayant pour ID 'Z' pour pouvoir utiliser sa valeur + boolean found=false; + int j=-1; + while(!found&&++j<colsrc.getNbAttributes()) + found=colsrc.getAttribute(j).getID().equals("Z"); + if(found){ + // Duplication de la valeur + Object[] values=new Object[geoms[i].getNumPoints()]; + for(int k=0;k<values.length;k++) + values[k]=colsrc.getValue(j, getScene().sceneId2LayerId(idxGeom[i])); + datadest[iatt]=values; + } + } + } } // La g\xE9om\xE9trie This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-03 14:29:33
|
Revision: 4154 http://fudaa.svn.sourceforge.net/fudaa/?rev=4154&view=rev Author: emmanuel_martin Date: 2008-11-03 14:29:31 +0000 (Mon, 03 Nov 2008) Log Message: ----------- tache #29 : "Le d?\195?\169placement vers un calque cible d'une g?\195?\169om?\195?\169trie n'oblige pas ?\195?\160 respecter le caract?\195?\168re ouvert/ferm?\195?\169." Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-03 13:56:37 UTC (rev 4153) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-03 14:29:31 UTC (rev 4154) @@ -18,7 +18,6 @@ import javax.swing.JComponent; import javax.swing.JDialog; import javax.swing.JPanel; -import javax.swing.border.Border; import org.fudaa.ctulu.CtuluCommandComposite; import org.fudaa.ctulu.CtuluListSelection; @@ -29,6 +28,7 @@ import org.fudaa.ctulu.gis.GISCoordinateSequenceContainerInterface; import org.fudaa.ctulu.gis.GISDataModel; import org.fudaa.ctulu.gis.GISGeometryFactory; +import org.fudaa.ctulu.gis.GISLib; import org.fudaa.ctulu.gis.GISMultiPoint; import org.fudaa.ctulu.gis.GISZoneCollection; import org.fudaa.ctulu.gis.GISZoneCollectionGeometry; @@ -42,6 +42,8 @@ import org.fudaa.ebli.calque.ZModeleDonnees; import org.fudaa.ebli.calque.ZModeleGeometry; import org.fudaa.ebli.calque.ZScene; +import org.fudaa.ebli.calque.dessin.DeForme; +import org.fudaa.ebli.calque.edition.ZCalqueEditable; import org.fudaa.ebli.calque.edition.ZSceneEditor; import org.fudaa.fudaa.commun.FudaaLib; import org.fudaa.fudaa.modeleur.layer.MdlModel2dLine; @@ -139,7 +141,7 @@ geoms[i]=(Geometry)getScene().getObject(idxGeom[i]); } - final CtuluCommandComposite cmp = new CtuluCommandComposite(); + final CtuluCommandComposite cmp = new CtuluCommandComposite(FudaaLib.getS("D\xE9placement de g\xE9om\xE9tries")); // Controle qu'une bloc n'est pas constitu\xE9 que d'un point => Message d'erreur. if (mdldest instanceof MdlModel2dLine) { @@ -236,7 +238,14 @@ coldest.addGeometry(gn,datadest,cmp); } else if (mdldest instanceof MdlModel2dLine) { - Geometry gn=GISGeometryFactory.INSTANCE.createLineString(geoms[i].getCoordinates()); + Geometry gn; + CoordinateSequence coordSeq=((GISCoordinateSequenceContainerInterface) geoms[i]).getCoordinateSequence(); + boolean isFerme=coordSeq.getCoordinate(0).equals(coordSeq.getCoordinate(coordSeq.size()-1)); + ZCalqueEditable calque=(ZCalqueEditable)getScene().getCalqueActif(); + if((calque.canAddForme(DeForme.LIGNE_BRISEE)&&!isFerme)||!calque.canAddForme(DeForme.POLYGONE)) + gn=GISLib.toPolyligne(coordSeq); + else + gn=GISLib.toPolygone(coordSeq); coldest.addGeometry(gn,datadest,cmp); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bma...@us...> - 2008-11-07 10:43:55
|
Revision: 4187 http://fudaa.svn.sourceforge.net/fudaa/?rev=4187&view=rev Author: bmarchan Date: 2008-11-07 10:43:51 +0000 (Fri, 07 Nov 2008) Log Message: ----------- Chgt intitul?\195?\169 titre commande. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 10:01:45 UTC (rev 4186) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 10:43:51 UTC (rev 4187) @@ -141,7 +141,7 @@ geoms[i]=(Geometry)getScene().getObject(idxGeom[i]); } - final CtuluCommandComposite cmp = new CtuluCommandComposite(FudaaLib.getS("D\xE9placement de g\xE9om\xE9tries")); + final CtuluCommandComposite cmp = new CtuluCommandComposite(FudaaLib.getS("D\xE9placer dans calque cible")); // Controle qu'une bloc n'est pas constitu\xE9 que d'un point => Message d'erreur. if (mdldest instanceof MdlModel2dLine) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 14:30:53
|
Revision: 4193 http://fudaa.svn.sourceforge.net/fudaa/?rev=4193&view=rev Author: emmanuel_martin Date: 2008-11-07 14:30:46 +0000 (Fri, 07 Nov 2008) Log Message: ----------- Ajout du nom dans la popup de demande du Z lors du d?\195?\169placement de g?\195?\169om?\195?\169tries dans un calque diff?\195?\169rent Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 14:06:27 UTC (rev 4192) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 14:30:46 UTC (rev 4193) @@ -7,6 +7,7 @@ */ package org.fudaa.fudaa.modeleur; +import java.awt.Dimension; import java.awt.Frame; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -185,8 +186,8 @@ // Utilisation d'une fen\xEAtre modale pour l'obtension du Z. class myDialogModal extends JDialog implements ActionListener{ private JComponent text_; - public myDialogModal(Frame _frame){ - super(_frame, MdlResource.MDL.getString("Choix du Z"), true); + public myDialogModal(Frame _frame, String _title){ + super(_frame, _title, true); // Position & resizable setLocation(_frame.getLocation().x+_frame.getSize().width/2, _frame.getLocation().y+_frame.getSize().height/2); setResizable(false); @@ -210,7 +211,14 @@ return (Double) GISAttributeConstants.BATHY.getEditor().getValue(text_); } } - myDialogModal dialog =new myDialogModal(calquePanel_.getDefaultGisEditor().getFrame()); + // Pour le titre de la popup, on met le titre de la geom si possible + String titre=MdlResource.MDL.getString("Nom : "); + if(colsrc.getIndiceOf(GISAttributeConstants.TITRE)!=-1) + titre+=(String) colsrc.getValue(colsrc.getIndiceOf(GISAttributeConstants.TITRE), getScene().sceneId2LayerId(idxGeom[i])); + else + titre+=MdlResource.MDL.getString("sans nom"); + // Instanciation de la popup + myDialogModal dialog =new myDialogModal(calquePanel_.getDefaultGisEditor().getFrame(), titre); dialog.setVisible(true); datadest[iatt]=dialog.getValue(); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-07 15:56:09
|
Revision: 4195 http://fudaa.svn.sourceforge.net/fudaa/?rev=4195&view=rev Author: emmanuel_martin Date: 2008-11-07 15:55:59 +0000 (Fri, 07 Nov 2008) Log Message: ----------- BugFix : Plantage lorsque l'on d?\195?\169place une g?\195?\169om?\195?\169trie ayant moins de 3 points dans un calque n'acceptant que les polygones. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 15:12:28 UTC (rev 4194) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-07 15:55:59 UTC (rev 4195) @@ -144,16 +144,23 @@ final CtuluCommandComposite cmp = new CtuluCommandComposite(FudaaLib.getS("D\xE9placer dans calque cible")); - // Controle qu'une bloc n'est pas constitu\xE9 que d'un point => Message d'erreur. - if (mdldest instanceof MdlModel2dLine) { + // Controle sur le nombre de point minimum + ZCalqueEditable calque=(ZCalqueEditable)getScene().getCalqueActif(); + if(calque.canAddForme(DeForme.POLYGONE)&&!calque.canAddForme(DeForme.LIGNE_BRISEE)) for (Geometry g : geoms) { + if (g.getNumPoints()<3) { + ui_.error(FudaaLib.getS("Vous ne pouvez pas d\xE9placer ces g\xE9om\xE9tries.\nUne au moins est constitu\xE9e de moins de 3 points.")); + return; + } + } + else if(calque.canAddForme(DeForme.LIGNE_BRISEE)) + for (Geometry g : geoms) { if (g.getNumPoints()<2) { - ui_.error(FudaaLib.getS("Vous ne pouvez pas d\xE9placer ces g\xE9om\xE9tries.\nUne au moins n'est constitu\xE9e que d'un point!")); + ui_.error(FudaaLib.getS("Vous ne pouvez pas d\xE9placer ces g\xE9om\xE9tries.\nUne au moins est constitu\xE9e de moins de 2 points.")); return; } } - } - + // Ajout des nouveaux objets. for (int i=0; i<idxGeom.length; i++) { @@ -249,7 +256,6 @@ Geometry gn; CoordinateSequence coordSeq=((GISCoordinateSequenceContainerInterface) geoms[i]).getCoordinateSequence(); boolean isFerme=coordSeq.getCoordinate(0).equals(coordSeq.getCoordinate(coordSeq.size()-1)); - ZCalqueEditable calque=(ZCalqueEditable)getScene().getCalqueActif(); if((calque.canAddForme(DeForme.LIGNE_BRISEE)&&!isFerme)||!calque.canAddForme(DeForme.POLYGONE)) gn=GISLib.toPolyligne(coordSeq); else This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2008-11-10 12:31:07
|
Revision: 4199 http://fudaa.svn.sourceforge.net/fudaa/?rev=4199&view=rev Author: emmanuel_martin Date: 2008-11-10 12:31:02 +0000 (Mon, 10 Nov 2008) Log Message: ----------- bugfix : ?\195?\169crasement des valeurs d'attributs des g?\195?\169om?\195?\169tries (sauf la premi?\195?\168re) lors qu'un d?\195?\169placement vers un calque cible qui se trouve plus 'haut' dans l'arbre. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-10 10:22:58 UTC (rev 4198) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2008-11-10 12:31:02 UTC (rev 4199) @@ -7,7 +7,6 @@ */ package org.fudaa.fudaa.modeleur; -import java.awt.Dimension; import java.awt.Frame; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -161,6 +160,10 @@ } } + // Nouveaux objets + Geometry[] newGeom=new Geometry[idxGeom.length]; + Object[][] newData=new Object[idxGeom.length][]; + // Ajout des nouveaux objets. for (int i=0; i<idxGeom.length; i++) { @@ -247,23 +250,26 @@ } } + // Enregistrement temporaire des data + newData[i]=datadest; + // La g\xE9om\xE9trie - if (mdldest instanceof MdlModel2dMultiPoint) { - Geometry gn=GISGeometryFactory.INSTANCE.createMultiPoint(geoms[i].getCoordinates()); - coldest.addGeometry(gn,datadest,cmp); - } + if (mdldest instanceof MdlModel2dMultiPoint) + newGeom[i]=GISGeometryFactory.INSTANCE.createMultiPoint(geoms[i].getCoordinates()); else if (mdldest instanceof MdlModel2dLine) { - Geometry gn; CoordinateSequence coordSeq=((GISCoordinateSequenceContainerInterface) geoms[i]).getCoordinateSequence(); boolean isFerme=coordSeq.getCoordinate(0).equals(coordSeq.getCoordinate(coordSeq.size()-1)); if((calque.canAddForme(DeForme.LIGNE_BRISEE)&&!isFerme)||!calque.canAddForme(DeForme.POLYGONE)) - gn=GISLib.toPolyligne(coordSeq); + newGeom[i]=GISLib.toPolyligne(coordSeq); else - gn=GISLib.toPolygone(coordSeq); - coldest.addGeometry(gn,datadest,cmp); + newGeom[i]=GISLib.toPolygone(coordSeq); } } + // Ajout des nouvelles g\xE9om\xE9tries + for (int i=0; i<newGeom.length; i++) + coldest.addGeometry(newGeom[i], newData[i], cmp); + // Suppression des anciens. removeSelectedObjects(cmp); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <emm...@us...> - 2009-01-28 12:55:26
|
Revision: 4417 http://fudaa.svn.sourceforge.net/fudaa/?rev=4417&view=rev Author: emmanuel_martin Date: 2009-01-28 11:58:49 +0000 (Wed, 28 Jan 2009) Log Message: ----------- Correction d'un bug de copier/coller Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2009-01-28 11:46:22 UTC (rev 4416) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2009-01-28 11:58:49 UTC (rev 4417) @@ -235,9 +235,9 @@ newData[i]=datadest; // La g\xE9om\xE9trie - if (_mldSource instanceof MdlModel2dMultiPoint) + if (_calqueDestination.modeleDonnees() instanceof MdlModel2dMultiPoint) newGeom[i]=GISGeometryFactory.INSTANCE.createMultiPoint(geoms[i].getCoordinates()); - else if (_mldSource instanceof MdlModel2dLine) { + else if (_calqueDestination.modeleDonnees() instanceof MdlModel2dLine) { CoordinateSequence coordSeq=((GISCoordinateSequenceContainerInterface) geoms[i]).getCoordinateSequence(); boolean isFerme=coordSeq.getCoordinate(0).equals(coordSeq.getCoordinate(coordSeq.size()-1)); if((_calqueDestination.canAddForme(DeForme.LIGNE_BRISEE)&&!isFerme)||!_calqueDestination.canAddForme(DeForme.POLYGONE)) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bma...@us...> - 2009-02-13 13:45:20
|
Revision: 4464 http://fudaa.svn.sourceforge.net/fudaa/?rev=4464&view=rev Author: bmarchan Date: 2009-02-13 13:45:11 +0000 (Fri, 13 Feb 2009) Log Message: ----------- Correction rendre rectiligne des polylignes. Modified Paths: -------------- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java Modified: branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java =================================================================== --- branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2009-02-13 13:30:34 UTC (rev 4463) +++ branches/FudaaModeleur_TC1Bis/fudaa_devel/fudaa/src/org/fudaa/fudaa/modeleur/MdlSceneEditor.java 2009-02-13 13:45:11 UTC (rev 4464) @@ -442,25 +442,25 @@ * Rend rectiligne une polyligne. */ public void linearisePolyligne() { - CtuluCommandComposite cmd=new CtuluCommandComposite(); - int[] geoms=getScene().getSelectionHelper().getSelectedIndexes(); + CtuluCommandComposite cmd=new CtuluCommandComposite(FudaaLib.getS("Rendre rectiligne des polylignes")); + int[] idxGeoms=getScene().getSelectionHelper().getSelectedIndexes(); // Verification de la selection \\ boolean selectionValid=true; int w=-1; - while(selectionValid&&++w<geoms.length) - selectionValid=getScene().getObject(geoms[w]) instanceof GISPolyligne; + while(selectionValid&&++w<idxGeoms.length) + selectionValid=getScene().getObject(idxGeoms[w]) instanceof GISPolyligne; if(selectionValid){ // Pour chaque polyligne selectionn\xE9es - for (int i : geoms) { - int idxGeom=getScene().sceneId2LayerId(i); + for (int idxGeom : idxGeoms) { + int idx=getScene().sceneId2LayerId(idxGeom); GISPolyligne polyligne=((GISPolyligne)getScene().getObject(idxGeom)); - ZCalqueAffichageDonneesInterface calque=getScene().getLayerForId(i); + ZCalqueAffichageDonneesInterface calque=getScene().getLayerForId(idxGeom); GISZoneCollectionLigneBrisee zone=(GISZoneCollectionLigneBrisee) ((ZModeleEditable)calque.modeleDonnees()).getGeomData(); - if (getScene().isAtomicMode()&&getScene().getLayerSelectionMulti().getSelection(i).getNbSelectedIndex()>1) - LibUtils.linearisePolyligne(zone, idxGeom, getScene().getLayerSelectionMulti().getSelection(i).getSelectedIndex(), cmd); + if (getScene().isAtomicMode()&&getScene().getLayerSelectionMulti().getSelection(idxGeom).getNbSelectedIndex()>1) + LibUtils.linearisePolyligne(zone, idx, getScene().getLayerSelectionMulti().getSelection(idxGeom).getSelectedIndex(), cmd); else - LibUtils.linearisePolyligne(zone, idxGeom, new int[]{0, polyligne.getNumPoints()-1}, cmd); + LibUtils.linearisePolyligne(zone, idx, new int[]{0, polyligne.getNumPoints()-1}, cmd); } } // Mise \xE0 jour du undo/redo This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |