Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions tests/biome_test.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
import unittest
import os

from worldengine.biome import Biome, Ocean, PolarDesert, SubpolarDryTundra, \
CoolTemperateMoistForest, biome_name_to_index, biome_index_to_name
from worldengine.simulations.biome import BiomeSimulation
from worldengine.world import World
import os
from worldengine.model.world import World


class TestBiome(unittest.TestCase):
Expand Down
3 changes: 2 additions & 1 deletion tests/blessed_images/generated_blessed_images.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@
"""

import os
from worldengine.world import *

from worldengine.model.world import *
from worldengine.draw import *
from worldengine.image_io import PNGWriter

Expand Down
12 changes: 5 additions & 7 deletions tests/draw_test.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
import unittest
import os
import numpy

from worldengine.draw import _biome_colors, draw_simple_elevation, elevation_color, \
draw_elevation, draw_riversmap, draw_grayscale_heightmap, draw_ocean, draw_precipitation, \
draw_elevation, draw_riversmap, draw_ocean, draw_precipitation, \
draw_world, draw_temperature_levels, draw_biome, draw_scatter_plot, draw_satellite
from worldengine.biome import Biome
from worldengine.world import World
from worldengine.model.world import World
from worldengine.image_io import PNGWriter, PNGReader


Expand Down Expand Up @@ -94,14 +95,12 @@ def test_draw_simple_elevation(self):

def test_draw_elevation_shadow(self):
w = World.open_protobuf("%s/seed_28070.world" % self.tests_data_dir)
data = w.elevation['data']
target = PNGWriter.rgba_from_dimensions(w.width, w.height)
draw_elevation(w, True, target)
self._assert_img_equal("elevation_28070_shadow", target)

def test_draw_elevation_no_shadow(self):
w = World.open_protobuf("%s/seed_28070.world" % self.tests_data_dir)
data = w.elevation['data']
target = PNGWriter.rgba_from_dimensions(w.width, w.height)
draw_elevation(w, False, target)
self._assert_img_equal("elevation_28070_no_shadow", target)
Expand All @@ -114,14 +113,13 @@ def test_draw_river_map(self):

def test_draw_grayscale_heightmap(self):
w = World.open_protobuf("%s/seed_28070.world" % self.tests_data_dir)
target = PNGWriter.grayscale_from_array(w.elevation['data'], scale_to_range=True)
#draw_grayscale_heightmap(w, target)
target = PNGWriter.grayscale_from_array(w.layers['elevation'].data, scale_to_range=True)
self._assert_img_equal("grayscale_heightmap_28070", target)

def test_draw_ocean(self):
w = World.open_protobuf("%s/seed_28070.world" % self.tests_data_dir)
target = PNGWriter.rgba_from_dimensions(w.width, w.height)
draw_ocean(w.ocean, target)
draw_ocean(w.layers['ocean'].data, target)
self._assert_img_equal("ocean_28070", target)

def test_draw_precipitation(self):
Expand Down
2 changes: 1 addition & 1 deletion tests/drawing_functions_test.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import unittest

from worldengine.drawing_functions import draw_ancientmap, gradient, draw_rivers_on_image
from worldengine.world import World
from worldengine.model.world import World
from worldengine.image_io import PNGWriter
from tests.draw_test import TestBase

Expand Down
4 changes: 2 additions & 2 deletions tests/generation_test.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import unittest
from worldengine.plates import Step, center_land, world_gen
from worldengine.world import World

from worldengine.plates import Step, center_land, world_gen
from worldengine.model.world import World
from tests.draw_test import TestBase


Expand Down
49 changes: 12 additions & 37 deletions tests/serialization_test.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
import unittest
from worldengine.plates import Step, world_gen
from worldengine.world import World
from worldengine.common import _equal
import tempfile
import os

from worldengine.plates import Step, world_gen
from worldengine.model.world import World
from worldengine.common import _equal
from worldengine.hdf5_serialization import save_world_to_hdf5, load_world_to_hdf5
from sets import Set


class TestSerialization(unittest.TestCase):
Expand All @@ -16,22 +18,10 @@ def test_protobuf_serialize_unserialize(self):
w = world_gen("Dummy", 32, 16, 1, step=Step.get_by_name("full"))
serialized = w.protobuf_serialize()
unserialized = World.protobuf_unserialize(serialized)
self.assertTrue(_equal(w.elevation['data'], unserialized.elevation['data']))
self.assertEqual(w.elevation['thresholds'], unserialized.elevation['thresholds'])
self.assertTrue(_equal(w.plates, unserialized.plates))
self.assertTrue(_equal(w.ocean, unserialized.ocean))
self.assertTrue(_equal(w.biome, unserialized.biome))
self.assertTrue(_equal(w.humidity, unserialized.humidity))
self.assertTrue(_equal(w.irrigation, unserialized.irrigation))
self.assertTrue(_equal(w.permeability, unserialized.permeability))
self.assertTrue(_equal(w.watermap, unserialized.watermap))
self.assertTrue(_equal(w.precipitation, unserialized.precipitation))
self.assertTrue(_equal(w.temperature, unserialized.temperature))
self.assertTrue(_equal(w.sea_depth, unserialized.sea_depth))
self.assertEqual(Set(w.layers.keys()), Set(unserialized.layers.keys()))
for l in w.layers.keys():
self.assertEqual(w.layers[l], unserialized.layers[l], "Comparing %s" % l)
self.assertTrue(_equal(w.ocean_level, unserialized.ocean_level))
self.assertTrue(_equal(w.lake_map, unserialized.lake_map))
self.assertTrue(_equal(w.river_map, unserialized.river_map))
self.assertTrue(_equal(w.icecap, unserialized.icecap))
self.assertEquals(w.seed, unserialized.seed)
self.assertEquals(w.n_plates, unserialized.n_plates)
self.assertEquals(w.step, unserialized.step)
Expand All @@ -47,26 +37,11 @@ def test_hdf5_serialize_unserialize(self):
filename = f.name
serialized = save_world_to_hdf5(w, filename)
unserialized = load_world_to_hdf5(filename)
self.assertTrue(_equal(w.elevation['data'], unserialized.elevation['data']))
self.assertEqual(w.elevation['thresholds'], unserialized.elevation['thresholds'])
self.assertTrue(_equal(w.plates, unserialized.plates))
self.assertTrue(_equal(w.ocean, unserialized.ocean))
self.assertTrue(_equal(w.biome, unserialized.biome))
self.assertTrue(_equal(w.humidity['quantiles'], unserialized.humidity['quantiles']))
self.assertTrue(_equal(w.humidity['data'], unserialized.humidity['data']))
self.assertTrue(_equal(w.humidity, unserialized.humidity))
self.assertTrue(_equal(w.irrigation, unserialized.irrigation))
self.assertTrue(_equal(w.permeability, unserialized.permeability))
self.assertTrue(_equal(w.watermap, unserialized.watermap))
self.assertTrue(_equal(w.precipitation['thresholds'], unserialized.precipitation['thresholds']))
self.assertTrue(_equal(w.precipitation['data'], unserialized.precipitation['data']))
self.assertTrue(_equal(w.precipitation, unserialized.precipitation))
self.assertTrue(_equal(w.temperature, unserialized.temperature))
self.assertTrue(_equal(w.sea_depth, unserialized.sea_depth))
self.assertEqual(Set(w.layers.keys()), Set(unserialized.layers.keys()))
self.assertEqual(w.layers['humidity'].quantiles, unserialized.layers['humidity'].quantiles)
for l in w.layers.keys():
self.assertEqual(w.layers[l], unserialized.layers[l], "Comparing %s" % l)
self.assertTrue(_equal(w.ocean_level, unserialized.ocean_level))
self.assertTrue(_equal(w.lake_map, unserialized.lake_map))
self.assertTrue(_equal(w.river_map, unserialized.river_map))
self.assertTrue(_equal(w.icecap, unserialized.icecap))
self.assertEquals(w.seed, unserialized.seed)
self.assertEquals(w.n_plates, unserialized.n_plates)
self.assertEquals(w.step, unserialized.step)
Expand Down
12 changes: 9 additions & 3 deletions worldengine/cli/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
from argparse import ArgumentParser
import os
import numpy

import worldengine.generation as geo
from worldengine.common import set_verbose, print_verbose
from worldengine.draw import draw_ancientmap_on_file, draw_biome_on_file, draw_ocean_on_file, \
Expand All @@ -11,8 +12,9 @@
from worldengine.plates import world_gen, generate_plates_simulation
from worldengine.imex import export
from worldengine.step import Step
from worldengine.world import World
from worldengine.model.world import World, Size, GenerationParameters
from worldengine.version import __version__

try:
from worldengine.hdf5_serialization import save_world_to_hdf5
HDF5_AVAILABLE = True
Expand Down Expand Up @@ -52,7 +54,7 @@ def generate_world(world_name, width, height, seed, num_plates, output_dir,

# Generate images
filename = '%s/%s_ocean.png' % (output_dir, world_name)
draw_ocean_on_file(w.ocean, filename)
draw_ocean_on_file(w.layers['ocean'].data, filename)
print("* ocean image generated in '%s'" % filename)

if step.include_precipitations:
Expand Down Expand Up @@ -84,18 +86,22 @@ def generate_rivers_map(world, filename):
draw_riversmap_on_file(world, filename)
print("+ rivers map generated in '%s'" % filename)


def draw_scatter_plot(world, filename):
draw_scatter_plot_on_file(world, filename)
print("+ scatter plot generated in '%s'" % filename)


def draw_satellite_map(world, filename):
draw_satellite_on_file(world, filename)
print("+ satellite map generated in '%s'" % filename)


def draw_icecaps_map(world, filename):
draw_icecaps_on_file(world, filename)
print("+ icecap map generated in '%s'" % filename)


def generate_plates(seed, world_name, output_dir, width, height,
num_plates=10):
"""
Expand All @@ -112,7 +118,7 @@ def generate_plates(seed, world_name, output_dir, width, height,
elevation, plates = generate_plates_simulation(seed, width, height,
num_plates=num_plates)

world = World(world_name, width, height, seed, num_plates, -1.0, "plates")
world = World(world_name, Size(width, height), seed, GenerationParameters(num_plates, -1.0, "plates"))
world.set_elevation(numpy.array(elevation).reshape(height, width), None)
world.set_plates(numpy.array(plates, dtype=numpy.uint16).reshape(height, width))

Expand Down
2 changes: 1 addition & 1 deletion worldengine/common.py
Original file line number Diff line number Diff line change
Expand Up @@ -117,4 +117,4 @@ def _equal(a, b):
return(False)
return(t)
else:#fallback
return(a == b)
return (a == b)
Loading