Example #1
0
 public MinisegCreator(VertexAllocator vertexAllocator, SegmentAllocator segmentAllocator,
                       JunctionClassifier junctionClassifier)
 {
     VertexAllocator    = vertexAllocator;
     SegmentAllocator   = segmentAllocator;
     JunctionClassifier = junctionClassifier;
 }
Example #2
0
        public BspBuilder(BspConfig config, MapData map)
        {
            BspConfig = config;
            CollinearTracker   collinearTracker   = new CollinearTracker(config.VertexWeldingEpsilon);
            JunctionClassifier junctionClassifier = new JunctionClassifier();

            VertexAllocator  = new VertexAllocator(config.VertexWeldingEpsilon);
            SegmentAllocator = new SegmentAllocator(VertexAllocator, collinearTracker);
            ConvexChecker    = new ConvexChecker();
            SplitCalculator  = new SplitCalculator(config, collinearTracker);
            Partitioner      = new Partitioner(config, SegmentAllocator, junctionClassifier);
            MinisegCreator   = new MinisegCreator(VertexAllocator, SegmentAllocator, junctionClassifier);

            List <BspSegment> segments = ProcessMapLines(map);

            junctionClassifier.Add(segments);
            CreateInitialWorkItem(segments);
        }