Skip to content

Commit

Permalink
overall fix
Browse files Browse the repository at this point in the history
  • Loading branch information
ASLeonard committed Oct 10, 2017
1 parent ed04475 commit 3cf9165
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 9 deletions.
16 changes: 13 additions & 3 deletions polyominomodel/_polyomino_builder.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ def PolyominoBuilder(genotype,build_strategy='random'):

if build_strategy=='dfs' or build_strategy=='bfs':
possible_grid_order=[]
else:
build_strategy='random'

def placeTile(tType,position,orientation):
POLYOMINO_GRID[position]=(tType,orientation)
Expand All @@ -45,19 +47,27 @@ def identifyValidNeighbour(position,centerType,centerOrientation,checkPosition,i
if bindingEdge!=0 and cycleList(tile,cycNum)[oppositeBindingEdgeIndex]==InteractionMatrix(bindingEdge):
POSSIBLE_GRID[checkPosition].append((i,cycNum))
if build_strategy=='dfs' or build_strategy=='bfs':
possible_grid_order.append(checkPosition)
if checkPosition not in possible_grid_order:
possible_grid_order.append(checkPosition)
else:
if build_strategy=='dfs':
possible_grid_order.remove(checkPosition)
possible_grid_order.append(checkPosition)
else:
pass

placement=placeTile(0,(0,0),0)
identifyValidNeighbours((0,0))
yield placement,copy(POSSIBLE_GRID)
while len(POSSIBLE_GRID)>0:
if build_strategy=='random':
newPolyominoPosition,newPolyominoDetails=choice([(position, tileDetail) for position, tileDetails in POSSIBLE_GRID.iteritems() for tileDetail in tileDetails])
if build_strategy=='dfs':
elif build_strategy=='dfs':
newPolyominoPosition,newPolyominoDetails= (possible_grid_order[-1],POSSIBLE_GRID[possible_grid_order.pop()][-1])
if build_strategy=='bfs':
elif build_strategy=='bfs':
newPolyominoPosition,newPolyominoDetails= (possible_grid_order[0],POSSIBLE_GRID[possible_grid_order.pop(0)][0])


POSSIBLE_GRID.pop(newPolyominoPosition)
placement= placeTile(newPolyominoDetails[0],newPolyominoPosition,newPolyominoDetails[1])
identifyValidNeighbours(newPolyominoPosition)
Expand Down
2 changes: 1 addition & 1 deletion polyominomodel/_version.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = '0.4.5'
__version__ = '0.5.0'
9 changes: 4 additions & 5 deletions setup.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import sys
import os
from setuptools.command.test import test as TestCommand

from distutils.cmd import Command
from distutils.core import setup
from distutils.extension import Extension
from sys import platform
Expand All @@ -23,8 +24,7 @@
exec(open(os.path.join(here, 'polyominomodel/_version.py')).read())



class PyTest(TestCommand):
class PyTest(Command):
user_options = [('pytest-args=', 'a', "Arguments to pass to pytest")]

def initialize_options(self):
Expand All @@ -50,8 +50,7 @@ def run_tests(self):
description = 'Various polyomino methods',
long_description = open('README.md').read(),
license = 'LICENSE.txt',
platforms = ["posix"],
zip_safe = False,
platforms = ["linux","osx"],
url = "https://github.com/IcyHawaiian/SLAM",
ext_modules = [Extension("polyominomodel.CLAM",sources=['src/graph_methods.cpp','src/graph_analysis.cpp','src/polyomino_wrapper.cpp'],include_dirs = ['src/includes'],extra_compile_args=extra_compile_arguments,extra_link_args=extra_link_arguments,language='c++11')],
headers = ['src/includes/graph_analysis.hpp','src/includes/graph_methods.hpp','src/includes/xorshift.hpp']
Expand Down

0 comments on commit 3cf9165

Please sign in to comment.