Example #1
0
    def __init__(self, **kwargs):
        if not (kwargs.get('socket_options', None) is None):
            self.Socket = GsSocketClient(**kwargs.get('socket_options'))
            self.ProgressQueue = queue.Queue()
        else:
            self.Socket = None
            self.ProgressQueue = None

        self.FeTree = FeaturesTree(**kwargs)
        self.Fsm = GeojsonFiniteStateMachine(progress_queue=self.ProgressQueue, structure=self.FeTree)

        self.geojson = None
        self.options = kwargs.get('geojson_options', {})

        self.__processes__()
Example #2
0
class GeoJSON:

    def __init__(self, **kwargs):
        if not (kwargs.get('socket_options', None) is None):
            self.Socket = GsSocketClient(**kwargs.get('socket_options'))
            self.ProgressQueue = queue.Queue()
        else:
            self.Socket = None
            self.ProgressQueue = None

        self.FeTree = FeaturesTree(**kwargs)
        self.Fsm = GeojsonFiniteStateMachine(progress_queue=self.ProgressQueue, structure=self.FeTree)

        self.geojson = None
        self.options = kwargs.get('geojson_options', {})

        self.__processes__()

    def __processes__(self):
        if self.Socket:
            self.SocketThread = threading.Thread(target=self.Socket.run, args=(self.ProgressQueue, self.__get_results__))
            self.SocketThread.start()

    def __start__(self, **kwargs):
        self.geojson = kwargs.get('geojson', None)
        self.__read_geojson__(**kwargs)

    def __get_results__(self, progress=None):
        # [print(x.keys, x.count) for x in self.FeTree.Optimum.RawData.models]
        # [print(x) for x in self.FeTree.Optimum.history]
        return self.FeTree.get_all_leafs_paths(progress=progress)

    def __read_geojson__(self, **kwargs):
        if self.options['mode'] == 'static':
            self.Fsm.run(data=self.geojson, **kwargs)
        elif self.options['mode'] == 'dynamic':
            pass