PolygonPathFinder

Успадковує: Resource < RefCounted < Object

There is currently no description for this class. Please help us by contributing one!

Методи

PackedVector2Array

find_path(from: Vector2, to: Vector2)

Rect2

get_bounds() const

Vector2

get_closest_point(point: Vector2) const

PackedVector2Array

get_intersections(from: Vector2, to: Vector2) const

float

get_point_penalty(idx: int) const

bool

is_point_inside(point: Vector2) const

void

set_point_penalty(idx: int, penalty: float)

void

setup(points: PackedVector2Array, connections: PackedInt32Array)


Описи методів

PackedVector2Array find_path(from: Vector2, to: Vector2) 🔗

There is currently no description for this method. Please help us by contributing one!


Rect2 get_bounds() const 🔗

There is currently no description for this method. Please help us by contributing one!


Vector2 get_closest_point(point: Vector2) const 🔗

There is currently no description for this method. Please help us by contributing one!


PackedVector2Array get_intersections(from: Vector2, to: Vector2) const 🔗

There is currently no description for this method. Please help us by contributing one!


float get_point_penalty(idx: int) const 🔗

There is currently no description for this method. Please help us by contributing one!


bool is_point_inside(point: Vector2) const 🔗

Повертає true, якщо point потрапляє в область багатокутника.

var polygon_path_finder = PolygonPathFinder.new()
var point = [Vector2(0.0, 0.0), Vector2(1.0, 0.0), Вектор2(0.0, 1.0)]
var connections= [0, 1, 1, 2, 2, 0]
polygon_path_finder.setup(points, connections)
print(polygon_path_finder.is_point_inside(Vector2(0.2, 0.2))) # Виводить true
print(polygon_path_finder.is_point_inside(Vector2(1.0, 1.0))) # Виводить false

void set_point_penalty(idx: int, penalty: float) 🔗

There is currently no description for this method. Please help us by contributing one!


void setup(points: PackedVector2Array, connections: PackedInt32Array) 🔗

Встановлює PolygonPathFinder із масивом точок, які визначають вершини багатокутника, та масивом індексів, які визначають ребра багатокутника.

Довжина connections має бути парною, повертає помилку, якщо непарна.

var polygon_path_finder = PolygonPathFinder.new()
var point = [Vector2(0.0, 0.0), Vector2(1.0, 0.0), Vector2(0.0, 1.0)]
var connections= [0, 1, 1, 2, 2, 0]
polygon_path_finder.setup(points, connections)