* @zh 添加导航多边形 * @en Add navigation polygon * * @returns @zh 多边形ID @en Polygon ID
(vertices: IPoint[], neighbors: number[] = [])
| 109 | * @returns @zh 多边形ID @en Polygon ID |
| 110 | */ |
| 111 | addPolygon(vertices: IPoint[], neighbors: number[] = []): number { |
| 112 | const id = this.nextId++; |
| 113 | const center = this.calculateCenter(vertices); |
| 114 | |
| 115 | const polygon: INavPolygon = { |
| 116 | id, |
| 117 | vertices, |
| 118 | center, |
| 119 | neighbors, |
| 120 | portals: new Map() |
| 121 | }; |
| 122 | |
| 123 | this.polygons.set(id, polygon); |
| 124 | this.nodes.set(id, new NavMeshNode(polygon)); |
| 125 | |
| 126 | return id; |
| 127 | } |
| 128 | |
| 129 | /** |
| 130 | * @zh 设置两个多边形之间的连接 |
nothing calls this directly
no test coverage detected