A tile layer contain a matrix of global tile id and a list of TileSet.
More...
#include <C_tilelayer.hpp>
|
class | Tile |
| A tile that contain drawing information and its global id. More...
|
|
enum class | Types { TILE_LAYER
, OBJECT_GROUP
} |
|
void | draw (fge::RenderTarget &target, fge::RenderStates const &states) const override |
Types | getType () const override |
void | clear () override |
fge::Matrix< Tile > const & | getTiles () const |
| Get the matrix of tiles.
|
void | setGid (fge::Vector2size position, std::span< std::shared_ptr< TileSet > > tileSets, GlobalTileId gid) |
| Shortcut to set a global tile id and a new tileset.
|
GlobalTileId | getGid (fge::Vector2size position) const |
std::optional< fge::Vector2size > | getGridPosition (fge::Vector2f position) const |
void | setGid (fge::Vector2size position, GlobalTileId gid) |
| Shortcut to set a global tile id.
|
void | setGridSize (fge::Vector2size size) |
| Set the tiles matrix size.
|
void | refreshTextures (std::span< std::shared_ptr< TileSet > > tileSets) |
| Refresh all tiles with a list of tilesets.
|
fge::RectFloat | getGlobalBounds () const |
fge::RectFloat | getLocalBounds () const |
void | save (nlohmann::json &jsonObject) override |
void | load (nlohmann::json const &jsonObject, std::filesystem::path const &filePath) override |
void | setId (GlobalTileId id) |
| Set the id of the layer (mostly for "Tiled" map editor compatibility)
|
GlobalTileId | getId () const |
| Get the id of the layer.
|
void | setName (std::string_view name) |
| Set the name of the layer.
|
std::string const & | getName () const |
| Get the name of the layer.
|
template<class T> |
constexpr T const * | as () const |
template<class T> |
constexpr T * | as () |
void | setPosition (Vector2f const &position) |
Vector2f const & | getPosition () const |
void | move (Vector2f const &offset) |
void | setRotation (float angle) |
float | getRotation () const |
void | rotate (float angle) |
void | setScale (Vector2f const &factors) |
void | setScale (float factor) |
Vector2f const & | getScale () const |
void | scale (Vector2f const &factor) |
void | scale (float factor) |
void | setOrigin (Vector2f const &origin) |
Vector2f const & | getOrigin () const |
glm::mat4 const & | getTransform () const |
glm::mat4 const & | getInverseTransform () const |
|
static std::shared_ptr< TileSet > | retrieveAssociatedTileSet (std::span< std::shared_ptr< TileSet > > tileSets, GlobalTileId gid) |
static std::shared_ptr< BaseLayer > | loadLayer (nlohmann::json const &jsonObject, std::filesystem::path const &filePath) |
A tile layer contain a matrix of global tile id and a list of TileSet.
This class is compatible with the "Tiled" map editor.
◆ clear()
void fge::TileLayer::clear |
( |
| ) |
|
|
overridevirtual |
◆ draw()
◆ getId()
GlobalTileId fge::BaseLayer::getId |
( |
| ) |
const |
|
nodiscardinherited |
Get the id of the layer.
- Returns
- The id of the layer
◆ getName()
std::string const & fge::BaseLayer::getName |
( |
| ) |
const |
|
nodiscardinherited |
Get the name of the layer.
- Returns
- The name of the layer
◆ getTiles()
Get the matrix of tiles.
- Returns
- The matrix of tiles
◆ getType()
Types fge::TileLayer::getType |
( |
| ) |
const |
|
nodiscardoverridevirtual |
◆ load()
void fge::TileLayer::load |
( |
nlohmann::json const & | jsonObject, |
|
|
std::filesystem::path const & | filePath ) |
|
overridevirtual |
◆ refreshTextures()
void fge::TileLayer::refreshTextures |
( |
std::span< std::shared_ptr< TileSet > > | tileSets | ) |
|
Refresh all tiles with a list of tilesets.
- Parameters
-
tileSets | The list of tilesets |
◆ save()
void fge::TileLayer::save |
( |
nlohmann::json & | jsonObject | ) |
|
|
overridevirtual |
◆ setGid() [1/2]
void fge::TileLayer::setGid |
( |
fge::Vector2size | position, |
|
|
GlobalTileId | gid ) |
Shortcut to set a global tile id.
- Parameters
-
position | The position of the tile |
gid | The global tile id |
◆ setGid() [2/2]
void fge::TileLayer::setGid |
( |
fge::Vector2size | position, |
|
|
std::span< std::shared_ptr< TileSet > > | tileSets, |
|
|
GlobalTileId | gid ) |
Shortcut to set a global tile id and a new tileset.
- Parameters
-
position | The position of the tile |
tileSets | The list of tilesets |
gid | The global tile id |
◆ setGridSize()
void fge::TileLayer::setGridSize |
( |
fge::Vector2size | size | ) |
|
Set the tiles matrix size.
- Parameters
-
size | The size of the matrix |
◆ setId()
void fge::BaseLayer::setId |
( |
GlobalTileId | id | ) |
|
|
inherited |
Set the id of the layer (mostly for "Tiled" map editor compatibility)
- Parameters
-
◆ setName()
void fge::BaseLayer::setName |
( |
std::string_view | name | ) |
|
|
inherited |
Set the name of the layer.
- Parameters
-
name | The name of the layer |
The documentation for this class was generated from the following file: