diff --git a/RTX class/SegmentedAperture.m b/RTX class/SegmentedAperture.m
index 4e21c9d8c866a9845d1172c9c217fd56782845c3..aa1baca482869d9065be92a0b421396e12980054 100644
--- a/RTX class/SegmentedAperture.m	
+++ b/RTX class/SegmentedAperture.m	
@@ -3,6 +3,7 @@ classdef SegmentedAperture < Aperture
         segments SegmentArray;
         prevTrace = Trace(Inf, Ray([0 0],[0 0], 0), 0, [], 0); 
         prevCol;
+        isSegmented = false;
     end
     methods
         function obj = SegmentedAperture(center, size)
@@ -26,7 +27,10 @@ classdef SegmentedAperture < Aperture
         end
         
         function [histogram, xStart, xStop] = getCollisionHistogram(obj)
-            obj.segments = obj.segments.doTheThing2();
+            if ~obj.isSegmented
+                obj.segments = obj.segments.doTheThing2();
+                obj.isSegmented = true;
+            end
             histogram = [obj.segments.segs.powDens];
             xStart = [obj.segments.segs.posStart];
             xStop = [obj.segments.segs.posEnd];