passage en octets

pull/4/head
Valentin Stark 3 years ago
parent 2d1ba7b5e3
commit e5b3e2f9ec
  1. 16
      Poisson.gd
  2. 10
      Previsualisation.gd

@ -11,13 +11,13 @@ var data = {
}
var poisson_disc_sampling: PoissonDiscSampling = PoissonDiscSampling.new()
var points = []
var points = PoolByteArray()
var poissons = []
signal new_poisson(points)
func _ready():
reset_options(default_width, default_height, default_spacing)
pass
func reset_options(width, height, spacing):
$HBoxContainer/Properties/width/width_edit.text = str(width)
@ -29,6 +29,10 @@ func set_data(width, height, spacing):
data.height = height
data.spacing = spacing
func init_points():
points.resize(data.width * data.height)
points.fill(0)
func _on_Button_pressed():
set_data(
int($HBoxContainer/Properties/width/width_edit.text),
@ -36,8 +40,14 @@ func _on_Button_pressed():
int($HBoxContainer/Properties/spacing/spacing_edit.text)
)
init_points()
var rect = Rect2(Vector2(0, 0), Vector2(data.width, data.height))
points = poisson_disc_sampling.generate_points(data.spacing, rect, 20)
poissons = poisson_disc_sampling.generate_points(data.spacing, rect, 20)
for poisson in poissons:
points.set(int(poisson.x) + int(poisson.y) * data.width, 1)
emit_signal("new_poisson", points)

@ -3,13 +3,15 @@ extends TextureRect
var image
func create_image(points):
var width = get_parent().get_parent().data.width
var height = get_parent().get_parent().data.height
image = Image.new()
image.create(get_parent().get_parent().data.width, get_parent().get_parent().data.height, false, Image.FORMAT_RGBA8)
image.create(width, height, false, Image.FORMAT_RGBA8)
image.fill(Color.white)
image.lock()
for point in points:
image.set_pixel(point.x, point.y, Color.black)
for i in width * height:
if(points[i]):
image.set_pixel(i % width, i / height, Color.black)
image.unlock()
func update_texture():

Loading…
Cancel
Save