Ignore:
Timestamp:
2013-01-10T17:31:17+01:00 (12 years ago)
Author:
malcolmh
Message:

save

File:
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/smed2/src/seamap/Rules.java

    r29185 r29186  
    1616import s57.S57obj.*;
    1717
     18import seamap.SeaMap.AttItem;
    1819import seamap.SeaMap.*;
    19 import symbols.Beacons;
    20 import symbols.Buoys;
    21 import symbols.Harbours;
    22 import symbols.Landmarks;
    23 import symbols.Symbols.Instr;
     20import symbols.*;
     21import symbols.Symbols.*;
    2422
    2523public class Rules {
     
    119117                for (Feature feature : features) {
    120118                        ArrayList<CatLMK> cats = (ArrayList<CatLMK>) Renderer.getAttVal(feature, feature.type, 0, Att.CATLMK);
    121                         ArrayList<Instr> catSym = Landmarks.Shapes.get(cats.get(0));
     119                        Symbol catSym = Landmarks.Shapes.get(cats.get(0));
    122120                        ArrayList<FncFNC> fncs = (ArrayList<FncFNC>) Renderer.getAttVal(feature, feature.type, 0, Att.FUNCTN);
    123                         ArrayList<Instr> fncSym = Landmarks.Funcs.get(fncs.get(0));
     121                        Symbol fncSym = Landmarks.Funcs.get(fncs.get(0));
    124122                        if ((fncs.get(0) == FncFNC.FNC_CHCH) && (cats.get(0) == CatLMK.LMK_TOWR)) catSym = Landmarks.ChurchTower;
    125123                        if ((cats.get(0) == CatLMK.LMK_UNKN) && (fncs.get(0) == FncFNC.FNC_UNKN) && (feature.objs.get(Obj.LIGHTS) != null)) catSym = Beacons.LightMajor;
    126124                        if (cats.get(0) == CatLMK.LMK_RADR) fncSym = Landmarks.RadioTV;
    127                         Renderer.symbol(feature, catSym, feature.type);
    128                         Renderer.symbol(feature, fncSym, feature.type);
     125                        Renderer.symbol(feature, catSym, feature.type, null);
     126                        Renderer.symbol(feature, fncSym, feature.type, null);
    129127                }
    130128        }
     
    134132                        switch (cat) {
    135133                        case MOR_DLPN:
    136                                 Renderer.symbol(feature, Harbours.Dolphin, feature.type);
     134                                Renderer.symbol(feature, Harbours.Dolphin, feature.type, null);
    137135                                break;
    138136                        case MOR_DDPN:
    139                                 Renderer.symbol(feature, Harbours.DeviationDolphin, feature.type);
     137                                Renderer.symbol(feature, Harbours.DeviationDolphin, feature.type, null);
    140138                                break;
    141139                        case MOR_BLRD:
    142140                        case MOR_POST:
    143                                 Renderer.symbol(feature, Harbours.Bollard, feature.type);
     141                                Renderer.symbol(feature, Harbours.Bollard, feature.type, null);
    144142                                break;
    145143                        case MOR_BUOY:
    146144                                BoySHP shape = (BoySHP) Renderer.getAttVal(feature, feature.type, 0, Att.BOYSHP);
    147145                                if (shape == BoySHP.BOY_UNKN) shape = BoySHP.BOY_SPHR;
    148                                 Renderer.symbol(feature, Buoys.Shapes.get(shape), feature.type);
     146                                Renderer.symbol(feature, Buoys.Shapes.get(shape), feature.type, null);
    149147                                break;
    150148                        }
     
    160158                        switch (feature.type) {
    161159                        case LITMAJ:
    162                                 Renderer.symbol(feature, Beacons.LightMajor, feature.type);
     160                                Renderer.symbol(feature, Beacons.LightMajor, feature.type, null);
    163161                                break;
    164162                        case LITMIN:
    165163                        case LIGHTS:
    166                                 Renderer.symbol(feature, Beacons.LightMinor, feature.type);
     164                                Renderer.symbol(feature, Beacons.LightMinor, feature.type, null);
    167165                                break;
    168166                        }
     
    174172                        case SISTAT:
    175173                        case SISTAW:
    176                                 Renderer.symbol(feature, Harbours.SignalStation, feature.type);
     174                                Renderer.symbol(feature, Harbours.SignalStation, feature.type, null);
    177175                                break;
    178176                        case RDOSTA:
    179                                 Renderer.symbol(feature, Harbours.SignalStation, feature.type);
     177                                Renderer.symbol(feature, Harbours.SignalStation, feature.type, null);
    180178                                break;
    181179                        case RADSTA:
    182                                 Renderer.symbol(feature, Harbours.SignalStation, feature.type);
     180                                Renderer.symbol(feature, Harbours.SignalStation, feature.type, null);
    183181                                break;
    184182                        case PILBOP:
    185                                 Renderer.symbol(feature, Harbours.SignalStation, feature.type);
     183                                Renderer.symbol(feature, Harbours.SignalStation, feature.type, null);
    186184                                break;
    187185                        case CGUSTA:
    188 //                      Renderer.symbol(feature, Harbours.CGuardStation, feature.type);
     186//                      Renderer.symbol(feature, Harbours.CGuardStation, feature.type, null);
    189187                        break;
    190188                        case RSCSTA:
    191 //                              Renderer.symbol(feature, Harbours.RescueStation, feature.type);
     189//                              Renderer.symbol(feature, Harbours.RescueStation, feature.type, null);
    192190                                break;
    193191                        }
     
    198196                        switch (feature.type) {
    199197                        case LITVES:
    200                                 Renderer.symbol(feature, Buoys.Super, feature.type);
     198                                Renderer.symbol(feature, Buoys.Super, feature.type, null);
    201199                                break;
    202200                        case LITFLT:
    203                                 Renderer.symbol(feature, Buoys.Float, feature.type);
     201                                Renderer.symbol(feature, Buoys.Float, feature.type, null);
    204202                                break;
    205203                        case BOYINB:
    206                                 Renderer.symbol(feature, Buoys.Storage, feature.type);
    207                                 break;
    208                         }
     204                                Renderer.symbol(feature, Buoys.Storage, feature.type, null);
     205                                break;
     206                        }
     207                        if (feature.objs.get(Obj.TOPMAR) != null)
     208                                Renderer.symbol(feature, Topmarks.Shapes.get(feature.objs.get(Obj.TOPMAR).get(0).get(Att.TOPSHP).val), Obj.TOPMAR, Topmarks.Floats);
    209209                }
    210210        }
    211211        private static void platforms(ArrayList<Feature> features) {
    212212                for (Feature feature : features) {
    213                         Renderer.symbol(feature, Landmarks.Platform, feature.type);
     213                        Renderer.symbol(feature, Landmarks.Platform, feature.type, null);
    214214                }
    215215        }
     
    217217                for (Feature feature : features) {
    218218                        BoySHP shape = (BoySHP) Renderer.getAttVal(feature, feature.type, 0, Att.BOYSHP);
    219                         Renderer.symbol(feature, Buoys.Shapes.get(shape), feature.type);
     219                        Renderer.symbol(feature, Buoys.Shapes.get(shape), feature.type, null);
     220                        if (feature.objs.get(Obj.TOPMAR) != null) {
     221                                Renderer.symbol(feature, Topmarks.Shapes.get(feature.objs.get(Obj.TOPMAR).get(0).get(Att.TOPSHP).val), Obj.TOPMAR, Topmarks.Buoys.get(shape));
     222                        }
    220223                }
    221224        }
     
    228231                                case LAM_PORT:
    229232                                        if (shape == BcnSHP.BCN_PRCH)
    230                                                 Renderer.symbol(feature, Beacons.PerchPort, feature.type);
     233                                                Renderer.symbol(feature, Beacons.PerchPort, feature.type, null);
    231234                                        else
    232                                                 Renderer.symbol(feature, Beacons.WithyPort, feature.type);
     235                                                Renderer.symbol(feature, Beacons.WithyPort, feature.type, null);
    233236                                        break;
    234237                                case LAM_STBD:
    235238                                        if (shape == BcnSHP.BCN_PRCH)
    236                                                 Renderer.symbol(feature, Beacons.PerchStarboard, feature.type);
     239                                                Renderer.symbol(feature, Beacons.PerchStarboard, feature.type, null);
    237240                                        else
    238                                                 Renderer.symbol(feature, Beacons.WithyStarboard, feature.type);
     241                                                Renderer.symbol(feature, Beacons.WithyStarboard, feature.type, null);
    239242                                        break;
    240243                                default:
    241                                         Renderer.symbol(feature, Beacons.Stake, feature.type);
     244                                        Renderer.symbol(feature, Beacons.Stake, feature.type, null);
    242245                                }
    243246                        } else {
    244                                 Renderer.symbol(feature, Beacons.Shapes.get(shape), feature.type);
     247                                Renderer.symbol(feature, Beacons.Shapes.get(shape), feature.type, null);
     248                                if (feature.objs.get(Obj.TOPMAR) != null)
     249                                        Renderer.symbol(feature, Topmarks.Shapes.get(feature.objs.get(Obj.TOPMAR).get(0).get(Att.TOPSHP).val), Obj.TOPMAR, Topmarks.Beacons);
    245250                        }
    246251                }
Note: See TracChangeset for help on using the changeset viewer.