:github_url: hide .. _class_TileMapPattern: TileMapPattern ============== **继承:** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` 存放 :ref:`TileMap` 的图案,用于复制粘贴。 .. rst-class:: classref-introduction-group 描述 ---- 这个资源存放的是一组单元格,能够帮助进行 :ref:`TileMap` 的批量操作。 图案始终从 ``(0, 0)`` 坐标开始,不能存在负数坐标的单元格。 .. rst-class:: classref-reftable-group 方法 ---- .. table:: :widths: auto +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_cell_alternative_tile`\ (\ coords\: :ref:`Vector2i`\ ) |const| | +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2i` | :ref:`get_cell_atlas_coords`\ (\ coords\: :ref:`Vector2i`\ ) |const| | +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_cell_source_id`\ (\ coords\: :ref:`Vector2i`\ ) |const| | +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2i` | :ref:`get_size`\ (\ ) |const| | +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`Vector2i`\] | :ref:`get_used_cells`\ (\ ) |const| | +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_cell`\ (\ coords\: :ref:`Vector2i`\ ) |const| | +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_empty`\ (\ ) |const| | +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`remove_cell`\ (\ coords\: :ref:`Vector2i`, update_size\: :ref:`bool`\ ) | +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_cell`\ (\ coords\: :ref:`Vector2i`, source_id\: :ref:`int` = -1, atlas_coords\: :ref:`Vector2i` = Vector2i(-1, -1), alternative_tile\: :ref:`int` = -1\ ) | +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`set_size`\ (\ size\: :ref:`Vector2i`\ ) | +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group 方法说明 -------- .. _class_TileMapPattern_method_get_cell_alternative_tile: .. rst-class:: classref-method :ref:`int` **get_cell_alternative_tile**\ (\ coords\: :ref:`Vector2i`\ ) |const| :ref:`🔗` 返回位于 ``coords`` 的单元格的备选图块 ID。 .. rst-class:: classref-item-separator ---- .. _class_TileMapPattern_method_get_cell_atlas_coords: .. rst-class:: classref-method :ref:`Vector2i` **get_cell_atlas_coords**\ (\ coords\: :ref:`Vector2i`\ ) |const| :ref:`🔗` 返回位于 ``coords`` 的单元格的图块图集坐标 ID。 .. rst-class:: classref-item-separator ---- .. _class_TileMapPattern_method_get_cell_source_id: .. rst-class:: classref-method :ref:`int` **get_cell_source_id**\ (\ coords\: :ref:`Vector2i`\ ) |const| :ref:`🔗` 返回位于 ``coords`` 的单元格的图块源 ID。 .. rst-class:: classref-item-separator ---- .. _class_TileMapPattern_method_get_size: .. rst-class:: classref-method :ref:`Vector2i` **get_size**\ (\ ) |const| :ref:`🔗` 返回该图案的大小(单位为单元格)。 .. rst-class:: classref-item-separator ---- .. _class_TileMapPattern_method_get_used_cells: .. rst-class:: classref-method :ref:`Array`\[:ref:`Vector2i`\] **get_used_cells**\ (\ ) |const| :ref:`🔗` 返回该图案中使用的单元格坐标列表。 .. rst-class:: classref-item-separator ---- .. _class_TileMapPattern_method_has_cell: .. rst-class:: classref-method :ref:`bool` **has_cell**\ (\ coords\: :ref:`Vector2i`\ ) |const| :ref:`🔗` 返回该图案是否在给定坐标处有图块。 .. rst-class:: classref-item-separator ---- .. _class_TileMapPattern_method_is_empty: .. rst-class:: classref-method :ref:`bool` **is_empty**\ (\ ) |const| :ref:`🔗` 返回该图案是否为空。 .. rst-class:: classref-item-separator ---- .. _class_TileMapPattern_method_remove_cell: .. rst-class:: classref-method |void| **remove_cell**\ (\ coords\: :ref:`Vector2i`, update_size\: :ref:`bool`\ ) :ref:`🔗` 移除给定坐标的单元格。 .. rst-class:: classref-item-separator ---- .. _class_TileMapPattern_method_set_cell: .. rst-class:: classref-method |void| **set_cell**\ (\ coords\: :ref:`Vector2i`, source_id\: :ref:`int` = -1, atlas_coords\: :ref:`Vector2i` = Vector2i(-1, -1), alternative_tile\: :ref:`int` = -1\ ) :ref:`🔗` 设置位于 ``coords`` 的单元格的图块标识符。见 :ref:`TileMap.set_cell()`\ 。 .. rst-class:: classref-item-separator ---- .. _class_TileMapPattern_method_set_size: .. rst-class:: classref-method |void| **set_size**\ (\ size\: :ref:`Vector2i`\ ) :ref:`🔗` 设置图案的大小。 .. |virtual| replace:: :abbr:`virtual (本方法通常需要用户覆盖才能生效。)` .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)` .. |const| replace:: :abbr:`const (本方法无副作用,不会修改该实例的任何成员变量。)` .. |vararg| replace:: :abbr:`vararg (本方法除了能接受在此处描述的参数外,还能够继续接受任意数量的参数。)` .. |constructor| replace:: :abbr:`constructor (本方法用于构造某个类型。)` .. |static| replace:: :abbr:`static (调用本方法无需实例,可直接使用类名进行调用。)` .. |operator| replace:: :abbr:`operator (本方法描述的是使用本类型作为左操作数的有效运算符。)` .. |bitfield| replace:: :abbr:`BitField (这个值是由下列位标志构成位掩码的整数。)` .. |void| replace:: :abbr:`void (无返回值。)`