Merge remote-tracking branch 'origin/main' into road
This commit is contained in:
@@ -128,7 +128,7 @@ class District:
|
|||||||
return road
|
return road
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def generate_roads(self, map_data, random_range=(20, 40)):
|
def generate_roads(self, map_data, random_range=(40, 50)):
|
||||||
width = {0: self.center_expend.x}
|
width = {0: self.center_expend.x}
|
||||||
height = {0: self.center_expend.y}
|
height = {0: self.center_expend.y}
|
||||||
self.roads_expend = [Road(self.center_expend, 0, 0)]
|
self.roads_expend = [Road(self.center_expend, 0, 0)]
|
||||||
|
|||||||
@@ -316,12 +316,15 @@ def skeleton_mountain_map(image: str | Image.Image = './world_maker/data/mountai
|
|||||||
return skeleton
|
return skeleton
|
||||||
|
|
||||||
|
|
||||||
def smooth_sobel_water() -> Image.Image:
|
def smooth_sobel_water(image: str | Image.Image = "./world_maker/data/sobelmap.png") -> Image.Image:
|
||||||
watermap = handle_import_image("./world_maker/data/watermap.png")
|
watermap = handle_import_image("./world_maker/data/watermap.png")
|
||||||
watermap = filter_negative(
|
watermap = filter_negative(
|
||||||
filter_remove_details(filter_negative(watermap), 5))
|
filter_remove_details(filter_negative(watermap), 5))
|
||||||
sobel = handle_import_image("./world_maker/data/sobelmap.png")
|
sobel = handle_import_image(image)
|
||||||
sobel = filter_remove_details(filter_smooth_theshold(sobel, 1), 2)
|
sobel = filter_remove_details(filter_smooth_theshold(sobel, 1), 5)
|
||||||
|
sobel_array = np.array(filter_negative(sobel))
|
||||||
|
sobel_array = ndimage.binary_dilation(sobel_array, iterations=3)
|
||||||
|
sobel = filter_negative(Image.fromarray(sobel_array))
|
||||||
group = group_map(watermap, sobel)
|
group = group_map(watermap, sobel)
|
||||||
group = filter_negative(group)
|
group = filter_negative(group)
|
||||||
group.save('./world_maker/data/smooth_sobel_watermap.png')
|
group.save('./world_maker/data/smooth_sobel_watermap.png')
|
||||||
|
|||||||
@@ -12,12 +12,16 @@ def world_maker():
|
|||||||
world = World()
|
world = World()
|
||||||
heightmap, watermap, treemap = get_data(world)
|
heightmap, watermap, treemap = get_data(world)
|
||||||
|
|
||||||
# heightmap, watermap, treemap = get_data_no_update()
|
heightmap_smooth = filter_smooth(heightmap, 4)
|
||||||
|
heightmap_smooth.save('./world_maker/data/heightmap_smooth.png')
|
||||||
|
|
||||||
filter_sobel(
|
filter_sobel(
|
||||||
"./world_maker/data/heightmap.png").save('./world_maker/data/sobelmap.png')
|
"./world_maker/data/heightmap.png").save('./world_maker/data/sobelmap.png')
|
||||||
|
filter_sobel(heightmap_smooth).save(
|
||||||
|
'./world_maker/data/sobelmap_from_smooth.png')
|
||||||
|
|
||||||
smooth_sobel_water_map = smooth_sobel_water()
|
smooth_sobel_water_map = smooth_sobel_water(
|
||||||
|
'./world_maker/data/sobelmap_from_smooth.png')
|
||||||
skeleton_highway = skeleton_highway_map(highway_map())
|
skeleton_highway = skeleton_highway_map(highway_map())
|
||||||
|
|
||||||
city = City()
|
city = City()
|
||||||
@@ -29,6 +33,7 @@ def world_maker():
|
|||||||
image_mountain_map = city.get_district_mountain_map()
|
image_mountain_map = city.get_district_mountain_map()
|
||||||
road = city.draw_roads(4)
|
road = city.draw_roads(4)
|
||||||
road.save('./world_maker/data/roadmap.png')
|
road.save('./world_maker/data/roadmap.png')
|
||||||
|
|
||||||
subtract_map(smooth_sobel_water_map, road).save(
|
subtract_map(smooth_sobel_water_map, road).save(
|
||||||
'./world_maker/data/city_map.png')
|
'./world_maker/data/city_map.png')
|
||||||
subtract_map('./world_maker/data/city_map.png',
|
subtract_map('./world_maker/data/city_map.png',
|
||||||
|
|||||||
Reference in New Issue
Block a user