diff --git a/src/edu/nps/moves/dis7/utilities/stream/X3dSlidingWindowCompression.java b/src/edu/nps/moves/dis7/utilities/stream/X3dSlidingWindowCompression.java index 4536ce7a3a60e54b3b6f4dce4badff4a8f231c5f..856f3342617574a882ca81863696bb9901554ff4 100644 --- a/src/edu/nps/moves/dis7/utilities/stream/X3dSlidingWindowCompression.java +++ b/src/edu/nps/moves/dis7/utilities/stream/X3dSlidingWindowCompression.java @@ -17,7 +17,7 @@ public class X3dSlidingWindowCompression { private Map<Double, X3dCoordinates> localMap; - public X3dSlidingWindowCompression(LinkedHashMap<Double, X3dCoordinates> localHashMap) { + public X3dSlidingWindowCompression(Map<Double, X3dCoordinates> localHashMap) { this.localMap = new LinkedHashMap<>(); Set<Double> keys = localHashMap.keySet(); @@ -53,8 +53,11 @@ public class X3dSlidingWindowCompression { List<Double> psiList = new ArrayList<>(); /** List of angle theta in radians*/ List<Double> thetaList = new ArrayList<>(); + double key; + while (streamMap.size() > 0) { - slidingWindow.put(streamMap.firstEntry().getKey(), streamMap.get(streamMap.firstEntry().getKey())); + key = streamMap.firstEntry().getKey(); + slidingWindow.put(key, streamMap.get(key)); streamMap.pollFirstEntry(); //Calculate the mean and SD