Ignore:
Timestamp:
2015-11-09T15:16:40+01:00 (9 years ago)
Author:
malcolmh
Message:

[seachart] bug fix

Location:
applications/editors/josm/plugins/seachart/src/s57
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/seachart/src/s57/S57enc.java

    r31735 r31737  
    255255                                ArrayList<ArrayList<Fparams>> objects = new ArrayList<ArrayList<Fparams>>();
    256256                                ArrayList<Long> slaves = new ArrayList<Long>();
    257                                 long slaveid = feature.id & 0x01ffffffffffffffl;
     257                                long slaveid = feature.id + 0x0100000000000000l;
    258258                                for (Entry<Obj, ObjTab> objs : feature.objs.entrySet()) {
    259259                                        Obj objobj = objs.getKey();
     
    267267                                                Object[] attf = new Object[0];
    268268                                                Object[] natf = new Object[0];
    269                                                 for (Entry<Att, AttVal<?>> att : object.getValue().entrySet()) {
     269                                                AttMap atts = map.new AttMap();
     270                                                atts.putAll(object.getValue());
     271                                                if (master) {
     272                                                        atts.putAll(feature.atts);
     273                                                }
     274                                                for (Entry<Att, AttVal<?>> att : atts.entrySet()) {
    270275                                                        if (!((obj == Obj.SOUNDG) && (att.getKey() == Att.VALSOU))) {
    271276                                                                long attl = S57att.encodeAttribute(att.getKey());
  • applications/editors/josm/plugins/seachart/src/s57/S57map.java

    r31735 r31737  
    4040                ISOL,   // Node not part of Edge
    4141                CONN,   // Edge first and last nodes
     42                TRNK, // Edge truncated polygon nodes
    4243                DPTH    // Sounding nodes
    4344        }
  • applications/editors/josm/plugins/seachart/src/s57/S57osm.java

    r31735 r31737  
    1818import s57.S57val.*;
    1919
    20 public class S57osm { // OSM to S57 Object/Attribute conversions
     20public class S57osm { // OSM to S57 Object/Attribute and Object/Primitive conversions
     21       
     22        enum Prims { P, L, A, PA, PL, LA, PLA }
     23        private static final EnumMap<Obj, Prims> S57prims = new EnumMap<Obj, Prims>(Obj.class);
     24        static {
     25                S57prims.put(Obj.UNKOBJ, Prims.PLA);
     26        }
    2127
    2228        static class KeyVal<V> {
Note: See TracChangeset for help on using the changeset viewer.