diff --git a/designer-chart/src/main/java/com/fr/design/chartx/component/MapAreaMatchPane.java b/designer-chart/src/main/java/com/fr/design/chartx/component/MapAreaMatchPane.java index f37a01c22..f2c4d7bd2 100644 --- a/designer-chart/src/main/java/com/fr/design/chartx/component/MapAreaMatchPane.java +++ b/designer-chart/src/main/java/com/fr/design/chartx/component/MapAreaMatchPane.java @@ -261,7 +261,7 @@ public class MapAreaMatchPane extends BasicBeanPane { private void populateMatchData(Object[] columnData) { Set geoAreas = matchAreaTable.getItems(); - Map resultMap = ChartGEOJSONHelper.matchArea(columnData, geoAreas, matchResultTable.getCustomResult()); + Map resultMap = ChartGEOJSONHelper.matchAreaList(columnData, geoAreas, matchResultTable.getCustomResult()); Object[][] data = new Object[resultMap.size()][2]; diff --git a/designer-chart/src/main/java/com/fr/design/chartx/component/MatchAreaTable.java b/designer-chart/src/main/java/com/fr/design/chartx/component/MatchAreaTable.java index e8f98f2a3..2d808e893 100644 --- a/designer-chart/src/main/java/com/fr/design/chartx/component/MatchAreaTable.java +++ b/designer-chart/src/main/java/com/fr/design/chartx/component/MatchAreaTable.java @@ -1,5 +1,6 @@ package com.fr.design.chartx.component; +import com.fr.base.Utils; import com.fr.design.gui.ilable.UILabel; import com.fr.design.i18n.Toolkit; import com.fr.general.GeneralUtils; @@ -80,8 +81,7 @@ public class MatchAreaTable extends JTable { return; } int index = areaNameIndex.get(areaName); - Map resultMap = ChartGEOJSONHelper.matchArea(new Object[]{areaName}, items); - String result = resultMap.get(areaName); + String result = ChartGEOJSONHelper.matchArea(Utils.objectToString(areaName), items); getColumnModel().getColumn(1).getCellEditor().stopCellEditing(); this.setValueAt(result, index, 1); } diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ChartDataPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ChartDataPane.java index ad549c5af..aea7142b5 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ChartDataPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/ChartDataPane.java @@ -27,6 +27,7 @@ public class ChartDataPane extends AbstractChartAttrPane { public ChartDataPane(AttributeChangeListener listener) { super(); this.listener = listener; + this.addAttributeChangeListener(listener); } @Override diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/TableDataPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/TableDataPane.java index f8092b859..886397774 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/TableDataPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/TableDataPane.java @@ -15,7 +15,6 @@ import com.fr.design.i18n.Toolkit; import com.fr.design.mainframe.chart.gui.ChartDataPane; import com.fr.design.mainframe.chart.gui.data.table.AbstractTableDataContentPane; import com.fr.design.utils.gui.UIComponentUtils; -import com.fr.van.chart.map.designer.data.contentpane.table.VanMapTableDataContentPane; import javax.swing.BorderFactory; import java.awt.BorderLayout; @@ -128,9 +127,7 @@ public class TableDataPane extends FurtherBasicBeanPane{ } public void refreshLevel(int level){ - if(dataContentPane instanceof VanMapTableDataContentPane) { - ((VanMapTableDataContentPane) dataContentPane).setLevel(level); - } + dataContentPane.refreshLevel(level); } /** diff --git a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/AbstractTableDataContentPane.java b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/AbstractTableDataContentPane.java index 1bfb9657c..710b2a421 100644 --- a/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/AbstractTableDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/design/mainframe/chart/gui/data/table/AbstractTableDataContentPane.java @@ -139,4 +139,8 @@ public abstract class AbstractTableDataContentPane extends BasicBeanPane { dataDefinitionType.setSelectedIndex(MapDataPaneHelper.isFromBottomData(ob) ? 0 : 1); - MapMatchResult matchResult = ((VanChartMapPlot) ob.getSelectedChartProvider(Chart.class).getPlot()).getMatchResult(); ChartCollection bottomDataChartCollection = MapDataPaneHelper.getBottomDataDrillMapChartCollection(ob); - ((VanChartMapPlot)bottomDataChartCollection.getSelectedChartProvider(Chart.class).getPlot()).setMatchResult(matchResult); bottomDataDefinitionPane.populateBean(bottomDataChartCollection, ChartGEOJSONHelper.BOTTOM_LEVEL); eachLayerDataDefinitionPane.populateBean(ob); diff --git a/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/EachLayerDataDefinitionPane.java b/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/EachLayerDataDefinitionPane.java index 16d989829..37e7f823f 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/EachLayerDataDefinitionPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/data/comp/EachLayerDataDefinitionPane.java @@ -11,7 +11,6 @@ import com.fr.general.ComparatorUtils; import com.fr.plugin.chart.drillmap.DrillMapHelper; import com.fr.plugin.chart.drillmap.VanChartDrillMapPlot; import com.fr.plugin.chart.drillmap.data.DrillMapDefinition; -import com.fr.plugin.chart.map.MapMatchResult; import com.fr.plugin.chart.map.server.CompatibleGeoJSONTreeHelper; import com.fr.plugin.chart.type.MapType; import com.fr.van.chart.map.designer.data.MapDataPaneHelper; @@ -91,13 +90,11 @@ public class EachLayerDataDefinitionPane extends MultiTabPane { } private void populatePaneList(ChartCollection chartCollection) { - List matchResultList = ((VanChartDrillMapPlot) chartCollection.getSelectedChartProvider(Chart.class).getPlot()).getMatchResultList(); for (int i = 0, len = paneList.size(); i < len; i++) { BasicPane basicPane = paneList.get(i); MapType mapType = oldMapList.get(i); if (basicPane instanceof SingleLayerDataDefinitionPane) { ChartCollection clone = MapDataPaneHelper.getLayerChartCollection(chartCollection, i, mapType); - ((VanChartDrillMapPlot)clone.getSelectedChartProvider(Chart.class).getPlot()).setMatchResultList(matchResultList); ((SingleLayerDataDefinitionPane) basicPane).populateBean(clone, i); } } diff --git a/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/type/VanChartDrillMapPlotPane.java b/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/type/VanChartDrillMapPlotPane.java index 993b27758..c4a803134 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/type/VanChartDrillMapPlotPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/drillmap/designer/type/VanChartDrillMapPlotPane.java @@ -3,20 +3,17 @@ package com.fr.van.chart.drillmap.designer.type; import com.fr.chart.chartattr.Chart; import com.fr.chart.chartattr.Plot; import com.fr.chartx.data.ChartDataDefinitionProvider; -import com.fr.log.FineLoggerFactory; import com.fr.plugin.chart.attr.plot.VanChartPlot; import com.fr.plugin.chart.base.VanChartTools; import com.fr.plugin.chart.drillmap.DrillMapIndependentVanChart; import com.fr.plugin.chart.drillmap.VanChartDrillMapPlot; import com.fr.plugin.chart.drillmap.data.DrillMapDefinition; -import com.fr.plugin.chart.map.MapMatchResult; import com.fr.plugin.chart.type.MapType; import com.fr.plugin.chart.type.ZoomLevel; import com.fr.van.chart.map.designer.type.VanChartMapPlotPane; import com.fr.van.chart.map.designer.type.VanChartMapSourceChoosePane; import java.util.ArrayList; -import java.util.List; /** * Created by Mitisky on 16/6/20. @@ -52,27 +49,6 @@ public class VanChartDrillMapPlotPane extends VanChartMapPlotPane { return tools; } - /** - * 同一个钻取地图, 类型之间切换 - */ - @Override - protected void cloneOldPlot2New(Plot oldPlot, Plot newPlot) { - super.cloneOldPlot2New(oldPlot, newPlot); - - try { - List newMatchResultList = new ArrayList<>(); - List matchResultList = ((VanChartDrillMapPlot) oldPlot).getMatchResultList(); - if (matchResultList != null) { - for (MapMatchResult matchResult : matchResultList) { - newMatchResultList.add((MapMatchResult) matchResult.clone()); - } - } - ((VanChartDrillMapPlot) newPlot).setMatchResultList(newMatchResultList); - } catch (CloneNotSupportedException e) { - FineLoggerFactory.getLogger().error("Error in change plot"); - } - } - protected Chart[] getDefaultCharts() { return DrillMapIndependentVanChart.DrillMapVanCharts; } diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/VanChartMapDataPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/VanChartMapDataPane.java index e7a222bf9..87143268f 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/VanChartMapDataPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/VanChartMapDataPane.java @@ -65,26 +65,20 @@ public class VanChartMapDataPane extends ChartDataPane { switch (mapType) { case AREA: areaClone = MapDataPaneHelper.getAreaMapChartCollection(collection); - ((VanChartMapPlot)areaClone.getSelectedChartProvider(Chart.class).getPlot()).setMatchResult(matchResult); contentsPane.populate(areaClone); break; case POINT: pointClone = MapDataPaneHelper.getPointMapChartCollection(collection); - ((VanChartMapPlot)pointClone.getSelectedChartProvider(Chart.class).getPlot()).setMatchResult(matchResult); contentsPane.populate(pointClone); break; case LINE: lineClone = MapDataPaneHelper.getLineMapChartCollection(collection); - ((VanChartMapPlot)lineClone.getSelectedChartProvider(Chart.class).getPlot()).setMatchResult(matchResult); contentsPane.populate(lineClone); break; case CUSTOM: areaClone = MapDataPaneHelper.getAreaMapChartCollection(collection); pointClone = MapDataPaneHelper.getPointMapChartCollection(collection); lineClone = MapDataPaneHelper.getLineMapChartCollection(collection); - ((VanChartMapPlot)areaClone.getSelectedChartProvider(Chart.class).getPlot()).setMatchResult(matchResult); - ((VanChartMapPlot)pointClone.getSelectedChartProvider(Chart.class).getPlot()).setMatchResult(matchResult); - ((VanChartMapPlot)lineClone.getSelectedChartProvider(Chart.class).getPlot()).setMatchResult(matchResult); ((CustomMapChartDataContentsPane) contentsPane).populateAreaMap(areaClone); ((CustomMapChartDataContentsPane) contentsPane).populatePointMap(pointClone); ((CustomMapChartDataContentsPane) contentsPane).populateLineMap(lineClone); diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanAreaMapPlotTableDataContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanAreaMapPlotTableDataContentPane.java index 86bc0c6d0..bd7e9e45a 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanAreaMapPlotTableDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanAreaMapPlotTableDataContentPane.java @@ -31,6 +31,7 @@ public class VanAreaMapPlotTableDataContentPane extends VanMapTableDataContentPa protected SeriesTypeUseComboxPaneWithOutFilter seriesTypeUseComboxPane; public VanAreaMapPlotTableDataContentPane(ChartDataPane parent) { + super(parent); this.setLayout(new BorderLayout(0, 4)); initAreaNameCom(); @@ -139,6 +140,7 @@ public class VanAreaMapPlotTableDataContentPane extends VanMapTableDataContentPa TopDefinitionProvider topDefinitionProvider = collection.getSelectedChart().getFilterDefinition(); if (topDefinitionProvider instanceof VanMapTableDefinitionProvider) { VanMapTableDefinitionProvider mapTableDefinitionProvider = (VanMapTableDefinitionProvider) topDefinitionProvider; + mapTableDefinitionProvider.setMatchResult(this.getMatchResult()); updateDefinition(mapTableDefinitionProvider); } } @@ -156,6 +158,7 @@ public class VanAreaMapPlotTableDataContentPane extends VanMapTableDataContentPa TopDefinitionProvider topDefinitionProvider = collection.getSelectedChart().getFilterDefinition(); if (topDefinitionProvider instanceof VanMapTableDefinitionProvider) { VanMapTableDefinitionProvider mapTableDefinitionProvider = (VanMapTableDefinitionProvider) topDefinitionProvider; + this.setMatchResult(mapTableDefinitionProvider.getMatchResult()); populateDefinition(mapTableDefinitionProvider); } } diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanLineMapPlotTableDataContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanLineMapPlotTableDataContentPane.java index dd50492f2..141b2eb2e 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanLineMapPlotTableDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanLineMapPlotTableDataContentPane.java @@ -7,7 +7,6 @@ import com.fr.van.chart.map.designer.data.component.table.AbstractLongLatAreaPan import com.fr.van.chart.map.designer.data.component.table.AreaPane; import com.fr.van.chart.map.designer.data.component.table.LineMapAreaPane; import com.fr.van.chart.map.designer.data.component.table.LineMapLongLatAreaPane; -import com.fr.van.chart.map.designer.data.component.table.LongLatAreaPane; import java.awt.Component; @@ -48,34 +47,6 @@ public class VanLineMapPlotTableDataContentPane extends VanPointMapPlotTableData } protected AbstractLongLatAreaPane createLongLatAreaPane(LongLatAreaTableComboPane longLatAreaTableComboPane) { - return new LineMapLongLatAreaPane(longLatAreaTableComboPane){ - @Override - protected void initAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { - areaPane = new LongLatAreaPane(parentPane) { - @Override - protected Component[][] getComponent () { - return new Component[][]{ - new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Longitude")), longitudeCom}, - new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Latitude")), latitudeCom}, - new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Area_Name")), VanLineMapPlotTableDataContentPane.this.createAreaPanel(areaNameCom)} - }; - } - }; - } - - @Override - protected void initEndAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { - endAreaPane = new LongLatAreaPane(parentPane){ - @Override - protected Component[][] getComponent () { - return new Component[][]{ - new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Longitude")), longitudeCom}, - new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Latitude")), latitudeCom}, - new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_End_Area_Name")), VanLineMapPlotTableDataContentPane.this.createAreaPanel(areaNameCom)} - }; - } - }; - } - }; + return new LineMapLongLatAreaPane(longLatAreaTableComboPane); } } diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanMapTableDataContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanMapTableDataContentPane.java index a8cae03c9..d73b0b590 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanMapTableDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanMapTableDataContentPane.java @@ -8,6 +8,7 @@ import com.fr.design.dialog.BasicDialog; import com.fr.design.dialog.DialogActionListener; import com.fr.design.gui.ibutton.UIButton; import com.fr.design.gui.icombobox.UIComboBox; +import com.fr.design.mainframe.chart.gui.ChartDataPane; import com.fr.design.mainframe.chart.gui.data.table.AbstractTableDataContentPane; import com.fr.plugin.chart.map.MapMatchResult; import com.fr.plugin.chart.map.VanChartMapPlot; @@ -29,27 +30,36 @@ import java.awt.event.ActionListener; */ public abstract class VanMapTableDataContentPane extends AbstractTableDataContentPane { + private ChartDataPane parent; + private VanChartMapPlot plot; //钻取地图有层级,默认-1代表无层级关系 private int level = ChartGEOJSONHelper.DEFAULT_LEVEL; - public int getLevel() { - return level; + private MapMatchResult matchResult = new MapMatchResult(); + + + public VanMapTableDataContentPane(ChartDataPane parent){ + this.parent = parent; } public void setLevel(int level) { this.level = level; } - public VanChartMapPlot getPlot() { - return plot; - } - public void setPlot(VanChartMapPlot plot) { this.plot = plot; } + public MapMatchResult getMatchResult() { + return matchResult; + } + + public void setMatchResult(MapMatchResult matchResult) { + this.matchResult = matchResult; + } + public JPanel createAreaPanel(final UIComboBox areaBox) { JPanel areaPanel = new JPanel(new BorderLayout(4, 0)); areaBox.setPreferredSize(new Dimension(70, 20)); @@ -66,7 +76,6 @@ public abstract class VanMapTableDataContentPane extends AbstractTableDataConten final MapAreaMatchPane pane = new MapAreaMatchPane(treeNodeAndItems); String nameTable = getTableName(); - final MapMatchResult matchResult = plot.getMatchResult(level); pane.populateBean(matchResult, nameTable, Utils.objectToString(areaBox.getSelectedItem())); BasicDialog dialog = pane.showWindow(new JFrame()); @@ -74,6 +83,7 @@ public abstract class VanMapTableDataContentPane extends AbstractTableDataConten @Override public void doOk() { pane.updateBean(matchResult); + parent.attributeChanged(); } @Override @@ -87,4 +97,9 @@ public abstract class VanMapTableDataContentPane extends AbstractTableDataConten areaPanel.add(uiButton, BorderLayout.EAST); return areaPanel; } + + @Override + public void refreshLevel(int level) { + this.setLevel(level); + } } \ No newline at end of file diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanPointMapPlotTableDataContentPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanPointMapPlotTableDataContentPane.java index cbb418b8d..2e25e1bc2 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanPointMapPlotTableDataContentPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/designer/data/contentpane/table/VanPointMapPlotTableDataContentPane.java @@ -10,7 +10,6 @@ import com.fr.design.mainframe.chart.gui.ChartDataPane; import com.fr.plugin.chart.map.data.VanMapTableDefinitionProvider; import com.fr.van.chart.map.designer.data.component.table.AbstractLongLatAreaPane; import com.fr.van.chart.map.designer.data.component.table.AreaPane; -import com.fr.van.chart.map.designer.data.component.table.LongLatAreaPane; import com.fr.van.chart.map.designer.data.component.table.PointMapAreaPane; import com.fr.van.chart.map.designer.data.component.table.PointMapLongLatAreaPane; @@ -222,7 +221,7 @@ public class VanPointMapPlotTableDataContentPane extends VanAreaMapPlotTableData areaPane = new AreaPane(parentPane) { protected Component[][] getComponent () { return new Component[][]{ - new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Start_Area_Name")), VanPointMapPlotTableDataContentPane.this.createAreaPanel(areaNameCom)} + new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Area_Name")), VanPointMapPlotTableDataContentPane.this.createAreaPanel(areaNameCom)} }; } }; @@ -231,19 +230,7 @@ public class VanPointMapPlotTableDataContentPane extends VanAreaMapPlotTableData } protected AbstractLongLatAreaPane createLongLatAreaPane(LongLatAreaTableComboPane longLatAreaTableComboPane) { - return new PointMapLongLatAreaPane(longLatAreaTableComboPane) { - protected void initAreaPane(VanPointMapPlotTableDataContentPane.LongLatAreaTableComboPane parentPane) { - areaPane = new LongLatAreaPane(parentPane) { - protected Component[][] getComponent () { - return new Component[][]{ - new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Longitude")), longitudeCom}, - new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Latitude")), latitudeCom}, - new Component[]{new BoldFontTextLabel(com.fr.design.i18n.Toolkit.i18nText("Fine-Design_Chart_Area_Name")), VanPointMapPlotTableDataContentPane.this.createAreaPanel(areaNameCom)} - }; - } - }; - } - }; + return new PointMapLongLatAreaPane(longLatAreaTableComboPane); } } diff --git a/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/VanChartMapPlotPane.java b/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/VanChartMapPlotPane.java index b9cdaad46..004ac81b3 100644 --- a/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/VanChartMapPlotPane.java +++ b/designer-chart/src/main/java/com/fr/van/chart/map/designer/type/VanChartMapPlotPane.java @@ -10,7 +10,6 @@ import com.fr.log.FineLoggerFactory; import com.fr.plugin.chart.attr.plot.VanChartPlot; import com.fr.plugin.chart.base.VanChartTools; import com.fr.plugin.chart.map.MapIndependentVanChart; -import com.fr.plugin.chart.map.MapMatchResult; import com.fr.plugin.chart.map.VanChartMapPlot; import com.fr.plugin.chart.map.data.VanMapDefinition; import com.fr.plugin.chart.map.server.CompatibleGEOJSONHelper; @@ -90,22 +89,6 @@ public class VanChartMapPlotPane extends AbstractVanChartTypePane { } } } - - /** - * 同一个地图, 类型之间切换 - */ - @Override - protected void cloneOldPlot2New(Plot oldPlot, Plot newPlot) { - super.cloneOldPlot2New(oldPlot, newPlot); - try { - if (((VanChartMapPlot) oldPlot).getMatchResult() != null) { - ((VanChartMapPlot) newPlot).setMatchResult((MapMatchResult) ((VanChartMapPlot) oldPlot).getMatchResult().clone()); - } - } catch (CloneNotSupportedException e) { - FineLoggerFactory.getLogger().error("Error in change plot"); - } - } - /** * 不同地图类型的超链不需要复制 *