Esempio n. 1
0
 def test_eng4(self):
     system = SystemFactory.from_serialized_geom(load_segs(),
                                                 sys=viper.System,
                                                 root=(-246, 45, 0))
     system = system.bake()
     root = viper.nx_to_nodes(system)
     print(root)
     rules = heursitics.EngineHeurFP()
     Eng = RuleEngine(term_rule=rules.root, mx=2500, debug=False, nlog=20)
     Kb = KB(rules.root)
     root = Eng.alg2(root, Kb)
     nxg = Eng.plot(root, rules.final_labels)
Esempio n. 2
0
def get_rendered():
    data = load_segs(fl='1535158393.0-revit-signal')
    system = SystemFactory.from_serialized_geom(data,
                                                sys=System,
                                                root=(-246, 45, 0))
    system = system.bake()
    rules = heursitics.EngineHeurFP()
    Eng = RuleEngine(term_rule=rules.root, mx=2500, debug=False, nlog=20)
    Kb = KB(rules.root)
    root = Eng.alg2(system.root, Kb)

    renderer = RenderNodeSystem()
    root = renderer.render(root)
    return root
Esempio n. 3
0
 def test_adapter_nodes(self):
     data = load_segs(fl='1535158393.0-revit-signal')
     system = SystemFactory.from_serialized_geom(data,
                                                 sys=System,
                                                 root=(-246, 45, 0))
     system = system.bake()
     rules = heursitics.EngineHeurFP()
     Eng = RuleEngine(term_rule=rules.root, mx=2500, debug=False, nlog=20)
     Kb = KB(rules.root)
     root = Eng.alg2(system.root, Kb)
     print('nodes ', len(root))
     renderer = RenderNodeSystem()
     root = renderer.render(root)
     self.vis.build(root)
Esempio n. 4
0
    def test_eng5(self):
        data = load_segs(fl='1535158393.0-revit-signal')
        system = SystemFactory.from_serialized_geom(
            data, sys=viper.System, root=(-246, 45, 0))
        system = system.bake()
        root = system.root
        print(root)
        rules = heursitics.EngineHeurFP()
        Eng = RuleEngine(term_rule=rules.root, mx=2500, debug=False, nlog=20)
        Kb = KB(rules.root)
        root = Eng.alg2(root, Kb)

        print('nodes ', len(root))

        renderer = RenderNodeSystem()
        meta = Eng.annotate_type(root, rules.final_labels)
        root = renderer.render(root)

        print('nodes ', len(root))
        visualize.plot3d(root, meta)
Esempio n. 5
0
    def process(self,
                data,
                points=[(-246, 45, 0)],
                system_type='FP',
                **kwargs):
        """

        :param data:
        :param points:
        :param system_type:
        :param kwargs: arguments to render the system
        :return:
        """
        self._log_inputs(data, points)

        # build graph,  bake attributes
        system = SystemFactory.from_serialized_geom(data,
                                                    sys=viper.SystemV3,
                                                    root=tuple(points[0]))
        system.bake()

        syst_meta = SystemRequest(type=system_type, **kwargs)

        heuristic = self.get_system(system_type)()
        rl_engine = RuleEngine(term_rule=heuristic.root, mx=1e6, debug=False)
        fact_base = KB(heuristic.root)
        root_node = rl_engine.alg2(system.root, fact_base)

        # based on labels, finallize graph (adding new info)
        sysrender = RenderNodeSystem()
        root_node = sysrender.render(root_node)
        meta_data = rl_engine.annotate_type(root_node, heuristic.final_labels)

        # create build instructions
        geom, inds, syms = self.finalize(root_node)
        return {'geom': geom, 'indicies': inds, 'symbols': syms}
Esempio n. 6
0
 def test_loadsyms(self):
     segs = load_segs()
     ds = [x for x in segs if x['children'] != []]
     system = SystemFactory.from_serialized_geom(ds, root=(-246, 45, 0))
Esempio n. 7
0
 def test_remover_lg(self):
     segs = load_segs()
     system = SystemFactory.from_serialized_geom(
         segs, sys=viper.System, root=(-246, 45, 0))
     system.bake()
     system.gplot(fwd=True, bkwd=False)