跳到主要内容

NavigationPolygon

继承

Resource

简要描述

具有绘制轮廓或使用顶点索引来创建导航多边形的方法的节点。

描述

有两种创建多边形的方法。可以使用add_outline方法,也可以使用add_polygon方法。

使用add_outline

var polygon = NavigationPolygon.new()
var outline = PoolVector2Array([0),])
polygon.add_outline(outline)
polygon.make_polygons_from_outlines()
$NavigationPolygonInstance.navpoly = polygon

Using add_polygon and indices of the vertices array.

var polygon = NavigationPolygon.new()
var vertices = PoolVector2Array([0),])
polygon.set_vertices(vertices)
var indices = PoolIntArray(0, 3, 1)
polygon.add_polygon(indices)
$NavigationPolygonInstance.navpoly = polygon

方法

返回值类型方法名称
voidadd_outline(outline: PoolVector2Array)
voidadd_outline_at_index(outline: PoolVector2Array, index: int)
voidadd_polygon(polygon: PoolIntArray)
voidclear_outlines()
voidclear_polygons()
PoolVector2Arrayget_outline(idx: int) const
intget_outline_count() const
PoolIntArrayget_polygon(idx: int)
intget_polygon_count() const
PoolVector2Arrayget_vertices() const
voidmake_polygons_from_outlines()
voidremove_outline(idx: int)
voidset_outline(idx: int, outline: PoolVector2Array)
voidset_vertices(vertices: PoolVector2Array)

方法说明

  • add_outline add_outline(outline: PoolVector2Array)

将包含轮廓的顶点的PoolVector2Array附加到包含所有轮廓的内部数组中。


  • add_outline_at_index add_outline_at_index(outline: PoolVector2Array, index: int)

将包含轮廓顶点的PoolVector2Array添加到内部数组中,该数组包含位于固定位置的所有轮廓。


  • add_polygon add_polygon(polygon: PoolIntArray)

使用调用get_vertices时获得的顶点索引添加多边形。


  • clear_outlines clear_outlines()

清除轮廓的数组,但不清除由顶点创建的顶点和多边形。


  • clear_polygons clear_polygons()

清除多边形数组,但不清除轮廓和顶点数组。


  • get_outline get_outline(idx: int) const

返回一个PoolVector2Array,其中包含在编辑器或脚本中创建的轮廓的顶点。


  • get_outline_count get_outline_count() const

返回在编辑器或脚本中创建的轮廓数。


  • get_polygon get_polygon(idx: int)

返回一个PoolIntArray,其中包含创建的多边形的顶点索引。


  • get_polygon_count get_polygon_count() const

返回所有多边形的计数。


  • get_vertices get_vertices() const

返回一个PoolVector2Array,其中包含用于创建多边形的所有顶点。


  • make_polygons_from_outlines make_polygons_from_outlines()

根据在编辑器或脚本中添加的轮廓创建多边形。


  • remove_outline remove_outline(idx: int)

删除在编辑器或脚本中创建的轮廓。


  • set_outline set_outline(idx: int, outline: PoolVector2Array)

更改在编辑器或脚本中创建的轮廓。


  • set_vertices set_vertices(vertices: PoolVector2Array)

设置顶点,然后可以使用add_polygon方法对这些顶点进行索引以创建多边形。