From 4b43f10eb92646705e5268f3f4dfe6f8e82132e6 Mon Sep 17 00:00:00 2001 From: Jack Twilley Date: Tue, 28 Feb 2012 15:11:54 -0800 Subject: [PATCH] Major code cleanup thanks to pyflakes. Ran pyflakes on the code, cleaned up a lot of fluff. --- BuildMaps.py | 2 +- BuildRegion.py | 11 +++-------- BuildTile.py | 1 - PrepRegion.py | 5 ----- bathy.py | 3 --- clidt.py | 42 +++++++++++++++++++----------------------- crust.py | 2 +- ore.py | 5 ++--- region.py | 11 +---------- terrain.py | 5 ----- tile.py | 11 ++--------- tree.py | 2 +- 12 files changed, 30 insertions(+), 70 deletions(-) diff --git a/BuildMaps.py b/BuildMaps.py index 5ba6f84..88f960e 100755 --- a/BuildMaps.py +++ b/BuildMaps.py @@ -6,7 +6,7 @@ import sys sys.path.append('..') from utils import cleanmkdir -from pymclevel import mclevel, box +from pymclevel import mclevel import argparse def center(name): diff --git a/BuildRegion.py b/BuildRegion.py index d0f693f..e3d8f51 100755 --- a/BuildRegion.py +++ b/BuildRegion.py @@ -2,24 +2,19 @@ import logging logging.basicConfig(level=logging.WARNING) -from region import Region from tile import Tile -from utils import setspawnandsave, materialNamed, names +from utils import setspawnandsave import sys import argparse import os import yaml -try: - from yaml import CLoader as Loader, CDumper as Dumper -except ImportError: - from yaml import Loader, Dumper from multiprocessing import Pool from itertools import product from tree import Tree, treeObjs -from ore import Ore, oreObjs, oreDQ +from ore import Ore, oreObjs sys.path.append('..') -from pymclevel import mclevel, box +from pymclevel import mclevel def main(argv): """Builds a region.""" diff --git a/BuildTile.py b/BuildTile.py index 97b36dc..9aa9575 100755 --- a/BuildTile.py +++ b/BuildTile.py @@ -4,7 +4,6 @@ import logging logging.basicConfig(level=logging.WARNING) -from region import Region from tile import Tile import sys diff --git a/PrepRegion.py b/PrepRegion.py index 7c40f20..79fe6f1 100755 --- a/PrepRegion.py +++ b/PrepRegion.py @@ -2,15 +2,10 @@ import logging logging.basicConfig(level=logging.WARNING) -from region import Region import sys import argparse import os import yaml -try: - from yaml import CLoader as Loader, CDumper as Dumper -except ImportError: - from yaml import Loader, Dumper def main(argv): """Rebuilds maps on broken regions.""" diff --git a/bathy.py b/bathy.py index 4c9bdda..48ba648 100644 --- a/bathy.py +++ b/bathy.py @@ -1,8 +1,5 @@ # bathy -from numpy import zeros, uint8 -from itertools import product -from math import hypot from osgeo import gdal def getBathy(deptharray, maxdepth, geotrans, projection): diff --git a/clidt.py b/clidt.py index 51ba922..f767340 100644 --- a/clidt.py +++ b/clidt.py @@ -1,14 +1,13 @@ # OpenCL/IDT module -import numpy as n +import numpy as np from itertools import product -from random import randint, uniform from invdisttree import Invdisttree -from multiprocessing import Pool try: import pyopencl as cl import pyopencl.array as cla + hasCL = True except ImportError: - pass + hasCL = False class CLIDT: """Use OpenCL or Invdisttree to solve the IDT problem.""" @@ -28,10 +27,10 @@ def genindices(self, arrayin): # need to split if it's too long! splitlist = tuple([x for x in xrange(CLIDT.indexmaxsize, arrayin.shape[0], CLIDT.indexmaxsize)]) indexinc = 0 - for chunk in n.vsplit(arrayin, splitlist): - chunkarr = cla.to_device(self.queue, n.asarray(chunk, dtype=n.int32)) + for chunk in np.vsplit(arrayin, splitlist): + chunkarr = cla.to_device(self.queue, np.asarray(chunk, dtype=np.int32)) template = cla.empty_like(chunkarr) - event = self.program.trim(self.queue, chunkarr.shape, None, chunkarr.data, template.data, n.int32(self.split)) + event = self.program.trim(self.queue, chunkarr.shape, None, chunkarr.data, template.data, np.int32(self.split)) event.wait() for index, elem in enumerate(template.get()): splitkey = tuple([x for x in elem],) @@ -44,23 +43,21 @@ def genindices(self, arrayin): return retval def __init__(self, coords, values, base, wantCL=True, split=None, nnear=None, majority=True): - self.coords = n.asarray(coords, dtype=n.int32) - self.values = n.asarray(values, dtype=n.int32) - self.base = n.asarray(base, dtype=n.int32) + self.coords = np.asarray(coords, dtype=np.int32) + self.values = np.asarray(values, dtype=np.int32) + self.base = np.asarray(base, dtype=np.int32) (lencoords, null) = self.coords.shape (lenvalues,) = self.values.shape (lenbase, null) = self.base.shape assert lencoords == lenvalues, "lencoords does not equal lenvalues" self.wantCL = wantCL - if self.wantCL == True: + if hasCL == True and self.wantCL == True: if split == None: self.split = CLIDT.OpenCLmaxsize else: self.split = split try: - import pyopencl as cl - import pyopencl.array as cla self.ctx = cl.create_some_context() self.queue = cl.CommandQueue(self.ctx) filestr = ''.join(open('idt.cl', 'r').readlines()) @@ -68,17 +65,16 @@ def __init__(self, coords, values, base, wantCL=True, split=None, nnear=None, ma self.coordindices = self.genindices(self.coords) self.baseindices = self.genindices(self.base) self.canCL = True - except ImportError: - # prolly should be specific here - print "warning: unable to import pyopencl, defaulting to Invdisttree" + except: + print "warning: unable to use pyopencl, defaulting to Invdisttree" self.canCL = False if nnear == None: - self.nnear = n.int32(CLIDT.nnear) + self.nnear = np.int32(CLIDT.nnear) else: - self.nnear = n.int32(nnear) + self.nnear = np.int32(nnear) - self.usemajority = n.int32(1 if majority else 0) + self.usemajority = np.int32(1 if majority else 0) def build(self, coords, values, base): (lenbase, null) = base.shape @@ -86,8 +82,8 @@ def build(self, coords, values, base): coords_array = cla.to_device(self.queue, coords) values_array = cla.to_device(self.queue, values) base_array = cla.to_device(self.queue, base) - template_array = cla.zeros(self.queue, (lenbase), dtype=n.int32) - event = self.program.nearest(self.queue, base.shape, None, coords_array.data, values_array.data, base_array.data, template_array.data, n.int32(lencoords), self.nnear, self.usemajority) + template_array = cla.zeros(self.queue, (lenbase), dtype=np.int32) + event = self.program.nearest(self.queue, base.shape, None, coords_array.data, values_array.data, base_array.data, template_array.data, np.int32(lencoords), self.nnear, self.usemajority) event.wait() return template_array.get() @@ -96,7 +92,7 @@ def __call__(self): # build output array if self.wantCL and self.canCL: (lenbase, null) = self.base.shape - retval = n.zeros((lenbase), dtype=n.int32) + retval = np.zeros((lenbase), dtype=np.int32) for key, value in self.baseindices.items(): (a, b) = key cindices = [] @@ -110,7 +106,7 @@ def __call__(self): retval[value] = self.build(coords, values, base) else: IDT = Invdisttree(self.coords, self.values) - retval = n.asarray(IDT(self.base, self.nnear, majority=(self.usemajority==1)), dtype=n.int32) + retval = np.asarray(IDT(self.base, self.nnear, majority=(self.usemajority==1)), dtype=np.int32) return retval def __del__(self): diff --git a/crust.py b/crust.py index c53debf..c9fcd9c 100644 --- a/crust.py +++ b/crust.py @@ -1,7 +1,7 @@ # crust module from itertools import product from random import randint, uniform -from newclidt import CLIDT +from clidt import CLIDT class Crust: """Smoothly irregular crust between the surface and the underlying stone.""" diff --git a/ore.py b/ore.py index ab3349c..e92786d 100644 --- a/ore.py +++ b/ore.py @@ -1,10 +1,10 @@ # ore module from __future__ import division from random import randint -from math import pi, ceil +from math import pi from scipy.special import cbrt from itertools import product -from utils import materialNamed, names +from utils import materialNamed # http://www.minecraftforum.net/topic/25886-elites-of-minecraft-the-miner-first-ore-loss-calculated/ (must be logged in) @@ -58,7 +58,6 @@ def placeoreintile(tile): oreobjs = dict([(ore.name, ore) for ore in oreObjs]) tile.ores = dict([(name, list()) for name in oreobjs]) - oreblocks = [] for ore in oreobjs: extent = cbrt(oreobjs[ore].size)*2 maxy = pow(2,oreobjs[ore].depth) diff --git a/region.py b/region.py index df9266f..9950dba 100755 --- a/region.py +++ b/region.py @@ -7,15 +7,9 @@ import os import urllib2 import yaml -try: - from yaml import CLoader as Loader, CDumper as Dumper -except ImportError: - from yaml import Loader, Dumper import logging logging.basicConfig(level=logging.INFO) -#logging.getLogger('suds.client').setLevel(logging.DEBUG) -from time import sleep, clock -from tempfile import NamedTemporaryFile +from time import sleep import zipfile import tarfile from utils import cleanmkdir @@ -29,8 +23,6 @@ from bathy import getBathy from crust import Crust import numpy -from itertools import product -from random import uniform, randint # from clidt import CLIDT @@ -413,7 +405,6 @@ def downloadfile(self, layerID, downloadURL): requestID = result[startPos:endPos] print " request ID is %s" % requestID - downloadDict = {'downloadID': requestID} sleep(5) while True: dsPage = urllib2.urlopen("http://extract.cr.usgs.gov/axis2/services/DownloadService/getDownloadStatus?downloadID=%s" % requestID) diff --git a/terrain.py b/terrain.py index 70403b4..b0aefca 100644 --- a/terrain.py +++ b/terrain.py @@ -1,11 +1,6 @@ from random import random, choice from utils import materialNamed, height from schematic import Schematic -import yaml -try: - from yaml import CLoader as Loader, CDumper as Dumper -except ImportError: - from yaml import Loader, Dumper class Terrain: """Base class for landcover definitions.""" diff --git a/tile.py b/tile.py index 6b141c5..ca683d9 100755 --- a/tile.py +++ b/tile.py @@ -4,27 +4,20 @@ from __future__ import division import yaml -try: - from yaml import CLoader as Loader, CDumper as Dumper -except ImportError: - from yaml import Loader, Dumper from region import Region import os from itertools import product -import numpy from utils import cleanmkdir, setspawnandsave -from random import randint from osgeo import gdal -from osgeo.gdalconst import GDT_Int16, GA_ReadOnly +from osgeo.gdalconst import GA_ReadOnly import sys sys.path.append('..') from pymclevel import mclevel, box from terrain import Terrain from tree import Tree, treeObjs -from ore import Ore, oreObjs, oreDQ -from scipy.special import cbrt +from ore import Ore class Tile: """Tiles are the base render object. or something.""" diff --git a/tree.py b/tree.py index 4fd64c8..3107191 100644 --- a/tree.py +++ b/tree.py @@ -91,7 +91,7 @@ def placetreeintile(tile, tree, mcx, mcy, mcz): tile.trees[tree].append(coords) else: # plant it now! - (blocks, datas) = treeobjs[tree](coords) + (blocks, datas) = treeObjs[tree](coords) [ tile.world.setBlockAt(x, y, z, materialNamed(block)) for (x, y, z, block) in blocks if block != 'Air' ] [ tile.world.setBlockDataAt(x, y, z, data) for (x, y, z, data) in datas if data != 0 ]