4 #include "scene/3d/spatial.h" 5 #include "scene/3d/navigation_mesh.h" 21 bool operator<(
const Point& p_key)
const {
return key < p_key.key; }
30 bool operator<(
const EdgeKey& p_key)
const {
31 return (a.key==p_key.a.key)?(b.key<p_key.b.key):(a.key<p_key.a.key);
34 EdgeKey(
const Point& p_a=Point(),
const Point& p_b=Point()) {
47 struct ConnectionPending {
61 Edge() { C=NULL; C_edge=-1; P=NULL; }
86 Connection() { A=NULL; B=NULL; A_edge=-1; B_edge=-1;}
104 _FORCE_INLINE_ Point _get_point(
const Vector3& p_pos)
const {
106 int x = int(Math::floor(p_pos.x/cell_size));
107 int y = int(Math::floor(p_pos.y/cell_size));
108 int z = int(Math::floor(p_pos.z/cell_size));
119 _FORCE_INLINE_
Vector3 _get_vertex(
const Point& p_point)
const {
121 return Vector3(p_point.x,p_point.y,p_point.z)*cell_size;
126 void _navmesh_link(
int p_id);
127 void _navmesh_unlink(
int p_id);
138 static void _bind_methods();
142 void set_up_vector(
const Vector3& p_up);
147 void navmesh_set_transform(
int p_id,
const Transform& p_xform);
148 void navmesh_remove(
int p_id);
151 Vector3 get_closest_point_to_segment(
const Vector3& p_from,
const Vector3& p_to,
const bool& p_use_collision=
false);
159 #endif // NAVIGATION_H
Definition: navigation.h:56
Definition: navigation.h:7