Как рандомизировать семя «шумовой» библиотеки - PullRequest
1 голос
/ 16 марта 2019

Я хочу создать 2D список поплавков с Perlin Noise. Я хотел бы, чтобы сгенерированные значения были разными при каждом запуске программы. Однако я не уверен, как предоставить рандомизированные начальные числа для библиотеки шума, которую я нашел на GitHub здесь .

Как заставить программу генерировать разные значения при каждом запуске?

Мой код:

from __future__ import division
import noise
import math
from singleton import ST


def create_map_list():
    """
    This creates a 2D list of floats using the noise library. It then assigns
    ST.map_list to the list created. The range of the floats inside the list
    is [0, 1].
    """

    # used to normalize noise to [0, 1]
    min_val = -math.sqrt(2) / 2
    max_val = abs(min_val)

    map_list = []

    for y in range(0, ST.MAP_HEIGHT):
        row = []

        for x in range(0, ST.MAP_WIDTH):
            nx = x / ST.MAP_WIDTH - 0.5
            ny = y / ST.MAP_HEIGHT - 0.5
            row.append((noise.pnoise2(nx, ny, 8) - min_val) / (max_val - min_val))

        map_list.append(row )

    ST.map_list = map_list

1 Ответ

1 голос
/ 18 апреля 2019

Библиотека шума не поддерживает начальное число.В текущем состоянии вы не можете иметь случайный вывод.

Но один запрос на извлечение был отправлен для исправления этой точки.

Для этого вам нужно будет восстановитьбиблиотека, как только вы получите модифицированный код.(python setup.py install)

...