()
| 153 | lines.append(0) |
| 154 | |
| 155 | def initial_calc(): |
| 156 | grid_w = int(1920 * 4) |
| 157 | grid_h = 1080 * 2 |
| 158 | grid_scale = 10 |
| 159 | noise_factor = 500 |
| 160 | grid_hs = int(grid_h/grid_scale) |
| 161 | grid_ws = int(grid_w/grid_scale) |
| 162 | crossfade_range = int(grid_ws/12.5) |
| 163 | |
| 164 | def grid_lines(): |
| 165 | lines = array("d") |
| 166 | grid_goal = 24 |
| 167 | grid_size_i = int(round((grid_ws - crossfade_range) / grid_goal)) |
| 168 | grid_actual = (grid_ws - crossfade_range) / grid_size_i |
| 169 | for i in range(0, grid_size_i): |
| 170 | x = i * grid_actual |
| 171 | append_p(lines, (x, 0), (x, grid_hs)) |
| 172 | for y in range(0, grid_hs, grid_goal): |
| 173 | append_p(lines, (0, y), (grid_ws-crossfade_range, y)) |
| 174 | return lines |
| 175 | |
| 176 | import perlin |
| 177 | spy_perlin = perlin.lib |
| 178 | spy_perlin.init() |
| 179 | spy_perlin.seed(44) |
| 180 | scale_lines(grid_ws - crossfade_range, grid_hs) |
| 181 | print("Computing the height map") |
| 182 | spy_perlin.make_height_map(grid_ws, grid_hs) |
| 183 | spy_perlin.update_height_map(grid_ws, grid_hs, grid_scale / noise_factor, 0) |
| 184 | print("Cross-fading the height map") |
| 185 | spy_perlin.crossfade_height_map(grid_ws, grid_hs, crossfade_range) |
| 186 | print("Drawing grid") |
| 187 | draw_lines(grid_lines(), 'grid') |
| 188 | print("Marching squares") |
| 189 | draw_lines(spy_perlin.marching_squares(grid_ws, grid_hs, 0), 'zero', spy=True) |
| 190 | draw_lines(spy_perlin.marching_squares(grid_ws, grid_hs, 0.3), 'positive', spy=True) |
| 191 | draw_lines(spy_perlin.marching_squares(grid_ws, grid_hs, -0.3), 'negative', spy=True) |
| 192 | draw_lines(spy_perlin.marching_squares(grid_ws, grid_hs, 0.45), 'positive', spy=True) |
| 193 | draw_lines(spy_perlin.marching_squares(grid_ws, grid_hs, -0.45), 'negative', spy=True) |
| 194 | draw_lines(spy_perlin.marching_squares(grid_ws, grid_hs, 0.6), 'positive', spy=True) |
| 195 | draw_lines(spy_perlin.marching_squares(grid_ws, grid_hs, -0.6), 'negative', spy=True) |
| 196 | draw_lines(spy_perlin.marching_squares(grid_ws, grid_hs, -0.8), 'negative', spy=True) |
| 197 | draw_lines(spy_perlin.marching_squares(grid_ws, grid_hs, 0.8), 'positive', spy=True) |
| 198 | drawing_done() |
| 199 | |
| 200 | drawing_event = asyncio.Event() |
| 201 | start_ts = time.time() |
no test coverage detected