Пример #1
0
    def drawSequences(self, sequences):
        fitness = hm.completeFitness(sequences)

        #finding out the ids of the triangles
        _raw = [s for seq in sequences for s in seq]
        tris = list(self.triangles)
        ids = [self.triangles.index(r) + 1 for r in _raw]
        self.ids = ids

        peak = hm.sequenceToEdges(sequences)
        edges = []
        #moved together
        _edges = hm.moveTogether(peak[0])

        if _edges[1] < 0:
            fitness += _edges[1]
            edges = _edges[0]
        else:
            edges = []
            for a in peak[0]:
                for b in a:
                    edges.append(b)

        tris = [edges[i * 3:i * 3 + 3] for i in range(int(len(edges) / 3))]
        self.coordinates = [
            set([tuple(point) for edge in t for point in edge]) for t in tris
        ]

        self.distance = fitness
        hm.save(edges, fitness, "peak.txt")

        hm.draw(edges, 0.9, self.filename.replace("txt", "svg"))
Пример #2
0
    def run(self, triangles, pop_size, sec, head, tail):
        add = hm.completeFitness(
            [head, tail])  #hm.sequenceToEdges([self.head, self.tail])[1]
        print(add, "here")
        sequences = ga.optimization(triangles, pop_size, 700.0, sec, add)

        for s in sequences:
            s = self.sortSequence(s)

        sequences.insert(0, head)
        sequences.append(tail)

        return sequences