跳转至

GFPattern2D

API Reference / Standard / 类索引

  • 路径:addons/gf/standard/foundation/math/gf_pattern_2d.gd
  • 模块:Standard
  • 继承:Resource
  • API:public
  • 类别:资源定义 (resource_definition)
  • 首次版本:3.17.0

可复用的二维格子模式资源。 用 Array[Vector2i] 描述范围、形状、阵型或 tile pattern。它不规定格子语义, 只负责尺寸、去重、边界过滤和常用查询。

成员概览

类型 名称 签名
属性 pattern_dimensions var pattern_dimensions: Vector2i = Vector2i(7, 7):
属性 cells var cells: Array[Vector2i] = []:
方法 is_in_bounds func is_in_bounds(cell: Vector2i) -> bool:
方法 has_cell func has_cell(cell: Vector2i) -> bool:
方法 set_cell func set_cell(cell: Vector2i, enabled: bool) -> bool:
方法 add_cell func add_cell(cell: Vector2i) -> bool:
方法 remove_cell func remove_cell(cell: Vector2i) -> bool:
方法 clear_cells func clear_cells() -> void:
方法 get_cells func get_cells() -> Array[Vector2i]:
方法 normalize_cells func normalize_cells() -> void:
方法 duplicate_pattern func duplicate_pattern() -> GFPattern2D:

属性

pattern_dimensions

  • API:public
var pattern_dimensions: Vector2i = Vector2i(7, 7):

模式编辑尺寸。小于 1 的分量会被钳制到 1。

cells

  • API:public
var cells: Array[Vector2i] = []:

启用的格子坐标列表。

方法

is_in_bounds

  • API:public
func is_in_bounds(cell: Vector2i) -> bool:

检查格子是否在 pattern 尺寸内。

参数:

名称 说明
cell 格子坐标。

返回:在范围内返回 true。

has_cell

  • API:public
func has_cell(cell: Vector2i) -> bool:

检查格子是否启用。

参数:

名称 说明
cell 格子坐标。

返回:启用返回 true。

set_cell

  • API:public
func set_cell(cell: Vector2i, enabled: bool) -> bool:

设置格子是否启用。

参数:

名称 说明
cell 格子坐标。
enabled 是否启用。

返回:实际发生变化返回 true。

add_cell

  • API:public
func add_cell(cell: Vector2i) -> bool:

添加格子。

参数:

名称 说明
cell 格子坐标。

返回:实际添加返回 true。

remove_cell

  • API:public
func remove_cell(cell: Vector2i) -> bool:

移除格子。

参数:

名称 说明
cell 格子坐标。

返回:实际移除返回 true。

clear_cells

  • API:public
func clear_cells() -> void:

清空所有格子。

get_cells

  • API:public
func get_cells() -> Array[Vector2i]:

获取格子列表副本。

返回:格子列表副本。

normalize_cells

  • API:public
func normalize_cells() -> void:

归一化格子列表,去重、排序并移除越界格子。

duplicate_pattern

  • API:public
func duplicate_pattern() -> GFPattern2D:

创建深拷贝。

返回:新 pattern 资源。