tmxlite 1.0.0
lightweight parse for Tiled maps
Public Types | Public Member Functions | List of all members
tmx::ObjectGroup Class Referencefinal

ObjectGroup layers contain a series of Objects which may be made up of shapes or images. More...

#include <ObjectGroup.hpp>

Inheritance diagram for tmx::ObjectGroup:
tmx::Layer

Public Types

enum class  DrawOrder { Index , TopDown }
 
- Public Types inherited from tmx::Layer
enum class  Type { Tile , Object , Image , Group }
 Layer type as returned by getType() Tile: this layer is a TileLayer type Object: This layer is an ObjectGroup type Image: This layer is an ImageLayer type Group: This layer is a LayerGroup type.
 
using Ptr = std::unique_ptr<Layer>
 

Public Member Functions

Type getType () const override
 Returns a Type value representing the concrete type. Use this when deciding which conrete layer type to use when calling the templated function getLayerAs<T>()
 
void parse (const pugi::xml_node &, Map *) override
 Attempts to parse the specific node layer type.
 
const ColourgetColour () const
 Returns the colour associated with this layer.
 
DrawOrder getDrawOrder () const
 Returns the DrawOrder for the objects in this group. Defaults to TopDown, where Objects are drawn sorted by Y position.
 
const std::vector< Property > & getProperties () const
 Returns a reference to the vector of properties for the ObjectGroup.
 
const std::vector< Object > & getObjects () const
 Returns a reference to the vector of Objects which belong to the group.
 
- Public Member Functions inherited from tmx::Layer
const std::string & getClass () const
 Returns the class of the Layer, as defined in the editor Tiled 1.9+.
 
template<typename T >
T & getLayerAs ()
 Use this to get a reference to the concrete layer type which this layer points to. Use getType() to return the type value of this layer and determine if the concrete type is TileLayer, ObjectGroup, ImageLayer, or LayerGroup.
 
template<typename T >
const T & getLayerAs () const
 
const std::string & getName () const
 Returns the name of the layer.
 
float getOpacity () const
 Returns the opacity value for the layer.
 
bool getVisible () const
 Returns whether this layer is visible or not.
 
const Vector2igetOffset () const
 Returns the offset from the top left corner of the layer, in pixels.
 
const Vector2fgetParallaxFactor () const
 Returns the parallax factor.
 
Colour getTintColour () const
 Returns the tint colour of the layer. Defaults to 0xFFFFFFFF - pure white.
 
const Vector2ugetSize () const
 Returns the size of the layer, in pixels. This will be the same as the map size for fixed size maps.
 
const std::vector< Property > & getProperties () const
 Returns the list of properties of this layer.
 
template<>
ImageLayergetLayerAs ()
 
template<>
const ImageLayergetLayerAs () const
 
template<>
LayerGroupgetLayerAs ()
 
template<>
const LayerGroupgetLayerAs () const
 
template<>
ObjectGroupgetLayerAs ()
 
template<>
const ObjectGroupgetLayerAs () const
 
template<>
TileLayergetLayerAs ()
 
template<>
const TileLayergetLayerAs () const
 

Additional Inherited Members

- Protected Member Functions inherited from tmx::Layer
void setName (const std::string &name)
 
void setClass (const std::string &cls)
 
void setOpacity (float opacity)
 
void setVisible (bool visible)
 
void setOffset (std::int32_t x, std::int32_t y)
 
void setParallaxFactor (float x, float y)
 
void setTintColour (Colour c)
 
void setSize (std::uint32_t width, std::uint32_t height)
 
void addProperty (const pugi::xml_node &node)
 

Detailed Description

ObjectGroup layers contain a series of Objects which may be made up of shapes or images.

Member Function Documentation

◆ getType()

Type tmx::ObjectGroup::getType ( ) const
inlineoverridevirtual

Returns a Type value representing the concrete type. Use this when deciding which conrete layer type to use when calling the templated function getLayerAs<T>()

Implements tmx::Layer.

◆ parse()

void tmx::ObjectGroup::parse ( const pugi::xml_node & ,
Map *  )
overridevirtual

Attempts to parse the specific node layer type.

Implements tmx::Layer.


The documentation for this class was generated from the following file: