Updated to 4.4
This commit is contained in:
parent
eaa26d1361
commit
1aff15069a
151 changed files with 593 additions and 100 deletions
30
addons/PoissonDiscSampling/Demo/polygon_demo.gd
Normal file
30
addons/PoissonDiscSampling/Demo/polygon_demo.gd
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
extends Node2D
|
||||
|
||||
|
||||
@onready var polygon: Array = $Polygon2D.polygon
|
||||
@onready var n = polygon.size()
|
||||
|
||||
var p_radius: int = 20
|
||||
var k: int = 0
|
||||
var points := []
|
||||
|
||||
|
||||
func _draw() -> void:
|
||||
for i in n:
|
||||
draw_line(polygon[i], polygon[(i+1)%n], Color(1,1,0), 2, 1)
|
||||
|
||||
draw_circle(points[k], p_radius / 2, Color( 1, 0, 0, 1 ))
|
||||
draw_circle(points[k], 2, Color( 1, 1, 0, 1 ))
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
var start_time = Time.get_ticks_msec()
|
||||
points = PoissonDiscSampling.generate_points_for_polygon($Polygon2D.polygon, p_radius, 30)
|
||||
# points = PoissonDiscSampling.generate_points_for_circle(Vector2(300,300),200, p_radius, 30)
|
||||
print(points.size(), " points generated in ", Time.get_ticks_msec() - start_time, " miliseconds" )
|
||||
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
if k < points.size() - 1:
|
||||
queue_redraw()
|
||||
k += 1
|
||||
Loading…
Add table
Add a link
Reference in a new issue