[ Module Hierarchy | Class Hierarchy ]

# Class Hierarchy

- unreachable._CData: XXX to be provided
  - _ctypes.Structure: Structure base class
    - cocos.audio.SDL.audio.SDL_AudioCVT: Set of audio conversion filters and buffers.
    - cocos.audio.SDL.audio.SDL_AudioSpec: Audio format structure.
    - cocos.audio.SDL.mixer.Mix_Chunk: Internal format for an audio chunk.
    - cocos.audio.SDL.rwops.SDL_RWops: Read/write operations structure.
    - cocos.audio.SDL.version.SDL_version: Version structure.
- cocos.actions.base_actions.Action: The most general action
  - cocos.actions.base_actions.IntervalAction: IntervalAction()
    - cocos.actions.base_actions.InstantAction: Instant actions are actions that promises to do nothing when the methods step, update, and stop are called.
      - cocos.actions.basegrid_actions.ReuseGrid: Will reuse the current grid for the next grid action.
      - cocos.actions.basegrid_actions.StopGrid: StopGrid disables the current grid.
      - cocos.actions.instant_actions.CallFunc: An action that will call a function.
        - cocos.actions.instant_actions.CallFuncS: An action that will call a funtion with the target as the first argument
      - cocos.actions.instant_actions.Hide: Hides the CocosNode object.
      - cocos.actions.instant_actions.Place: Place the CocosNode object in the position x,y.
      - cocos.actions.instant_actions.Show: Shows the CocosNode object.
      - cocos.actions.instant_actions.ToggleVisibility: Toggles the visible attribute of a CocosNode object
      - cocos.audio.actions.PlayAction
    - cocos.actions.base_actions._ReverseTime: Executes an action in reverse order, from time=duration to time=0
    - cocos.actions.basegrid_actions.AccelAmplitude: Increases the waves amplitude from 0 to self.amplitude
      - cocos.actions.basegrid_actions.DeccelAmplitude: Decreases the waves amplitude from self.amplitude to 0
    - cocos.actions.basegrid_actions.AccelDeccelAmplitude: Increases and Decreases the amplitude of Wave
    - cocos.actions.basegrid_actions.GridBaseAction: GridBaseAction is the base class of all Grid Actions.
      - cocos.actions.basegrid_actions.Grid3DAction: Action that does transformations to a 3D grid ( Grid3D )
        - cocos.actions.grid3d_actions.FlipX3D: FlipX3D flips the screen using the Y-axis as a pivot.
        - cocos.actions.grid3d_actions.FlipY3D: FlipY3D flips the screen using the X-axis as a pivot.
        - cocos.actions.grid3d_actions.Lens3D: Lens simulates a Lens / Magnifying glass effect.
        - cocos.actions.grid3d_actions.Liquid: Simulates a liquid effect using the math.sin() function modifying the x and y coordinates.
        - cocos.actions.grid3d_actions.Ripple3D: Simulates a ripple (radial wave) effect.
        - cocos.actions.grid3d_actions.Shaky3D: Shaky simulates an earthquake by modifying randomly the x, y and z coordinates of each vertex.
        - cocos.actions.grid3d_actions.Twirl: Simulates a twirl effect modifying the x and y coordinates.
        - cocos.actions.grid3d_actions.Waves: Simulates waves using the math.sin() function both in the vertical and horizontal axis.
        - cocos.actions.grid3d_actions.Waves3D: Simulates waves using the math.sin() function in the z-axis The x and y coordinates remains unmodified.
        - cocos.actions.quadmoveby_actions.QuadMoveBy: QuadMoveBy moves each vertex of the grid.
          - cocos.actions.quadmoveby_actions.CornerSwap: CornerSwap moves the upper-left corner to the bottom-right corner in vice-versa in duration time.
          - cocos.actions.quadmoveby_actions.Flip: Flip moves the upper-left corner to the bottom-left corner and vice-versa, and moves the upper-right corner to the bottom-left corner and vice-versa, flipping the window upside-down, and right-left.
          - cocos.actions.quadmoveby_actions.FlipX: FlipX flips the screen horizontally, moving the left corners to the right, and vice-versa.
          - cocos.actions.quadmoveby_actions.FlipY: FlipY flips the screen vertically, moving the upper corners to the bottom, and vice-versa.
          - cocos.actions.quadmoveby_actions.MoveCornerDown: MoveCornerDown moves the upper-left corner to the bottom-right corner in duration time
          - cocos.actions.quadmoveby_actions.MoveCornerUp: MoveCornerUp moves the bottom-right corner to the upper-left corner in duration time
          - cocos.actions.quadmoveby_actions.SkewHorizontal: SkewHorizontal skews the screen horizontally.
          - cocos.actions.quadmoveby_actions.SkewVertical: SkewVertical skews the screen vertically.
      - cocos.actions.basegrid_actions.TiledGrid3DAction: Action that does transformations to a grid composed of tiles ( TiledGrid3D ).
        - cocos.actions.tiledgrid_actions.FadeOutTRTiles: Fades out each tile following a diagonal Top-Right path until all the tiles are faded out.
          - cocos.actions.tiledgrid_actions.FadeOutBLTiles: Fades out each tile following an Bottom-Left path until all the tiles are faded out.
          - cocos.actions.tiledgrid_actions.FadeOutUpTiles: Fades out each tile following an upwards path until all the tiles are faded out.
            - cocos.actions.tiledgrid_actions.FadeOutDownTiles: Fades out each tile following an downwards path until all the tiles are faded out.
        - cocos.actions.tiledgrid_actions.JumpTiles3D: Odd tiles will perform a jump in the z-axis using the sine function, while the even tiles will perform a jump using sine+pi function
        - cocos.actions.tiledgrid_actions.ShakyTiles3D: Simulates a shaky floor composed of tiles
        - cocos.actions.tiledgrid_actions.ShatteredTiles3D: ShatterTiles shatters the tiles according to a random value.
        - cocos.actions.tiledgrid_actions.ShuffleTiles: ShuffleTiles moves the tiles randomly across the screen.
        - cocos.actions.tiledgrid_actions.SplitCols: Split the screen in a number of columns, and move these columns away from the screen.
        - cocos.actions.tiledgrid_actions.SplitRows: Split the screen in a number of rows, and move these rows away from the screen.
        - cocos.actions.tiledgrid_actions.TurnOffTiles: TurnOffTiles turns off each in random order
        - cocos.actions.tiledgrid_actions.WavesTiles3D: Simulates waves using the math.sin() function in the z-axis of each tile
    - cocos.actions.camera_actions.Camera3DAction
      - cocos.actions.camera_actions.OrbitCamera: Orbits the camera around the center of the screen using spherical coordinates
    - cocos.actions.interval_actions.AccelDeccel: Makes an action change the travel speed but retain near normal speed at the beginning and ending.
    - cocos.actions.interval_actions.Accelerate: Changes the acceleration of an action
    - cocos.actions.interval_actions.Bezier: Moves a CocosNode object through a bezier path by modifying it's position attribute.
    - cocos.actions.interval_actions.Blink: Blinks a CocosNode object by modifying it's visible attribute
    - cocos.actions.interval_actions.Delay: Delays the action a certain amount of seconds
      - cocos.actions.interval_actions.RandomDelay: Delays the actions between min and max seconds
    - cocos.actions.interval_actions.FadeOut: Fades out a CocosNode object by modifying it's opacity attribute.
      - cocos.actions.interval_actions.FadeIn: Fades in a CocosNode object by modifying it's opacity attribute.
    - cocos.actions.interval_actions.FadeTo: Fades a CocosNode object to a specific alpha value by modifying it's opacity attribute.
    - cocos.actions.interval_actions.Jump: Moves a CocosNode object simulating a jump movement by modifying it's position attribute.
    - cocos.actions.interval_actions.JumpBy: Moves a CocosNode object simulating a jump movement by modifying it's position attribute.
      - cocos.actions.interval_actions.JumpTo: Moves a CocosNode object to a position simulating a jump movement by modifying it's position attribute.
    - cocos.actions.interval_actions.Lerp: Interpolate between values for some specified attribute
    - cocos.actions.interval_actions.MoveTo: Moves a CocosNode object to the position x,y.
      - cocos.actions.interval_actions.MoveBy: Moves a CocosNode object x,y pixels by modifying it's position attribute.
    - cocos.actions.interval_actions.RotateBy: Rotates a CocosNode object clockwise a number of degrees by modiying it's rotation attribute.
    - cocos.actions.interval_actions.RotateTo: Rotates a CocosNode object to a certain angle by modifying it's rotation attribute.
    - cocos.actions.interval_actions.ScaleTo: Scales a CocosNode object to a zoom factor by modifying it's scale attribute.
      - cocos.actions.interval_actions.ScaleBy: Scales a CocosNode object a zoom factor by modifying it's scale attribute.
    - cocos.actions.interval_actions.Speed: Changes the speed of an action, making it take longer (speed>1) or less (speed<1)
    - cocos.skeleton.Animate
  - cocos.actions.base_actions.Repeat: Applied to InstantAction s means once per frame.
  - cocos.actions.move_actions.Driver: Drive a CocosNode object around like a car in x, y according to a direction and speed.
  - cocos.actions.move_actions.Move: Move the target based on parameters on the target.
    - cocos.actions.move_actions.BoundedMove: Move the target but limit position when it hits certain bounds.
    - cocos.actions.move_actions.WrappedMove: Move the target but wrap position when it hits certain bounds.
- cocos.audio.SDL.array.SDL_array
- cocos.audio.SDL.dll.SDL_DLL
- cocos.audio.effect.Effect: Effects are sounds effect loaded in memory
- cocos.audio.music.DummyMusicControl
- cocos.audio.music.MusicControl
- cocos.audio.pygame.MissingModule
- cocos.audio.pygame.mixer.Channel: The Channel object can be used to get fine control over the playback of Sounds.
- cocos.audio.pygame.mixer.Sound: The Sound object represents actual sound sample data.
- cocos.camera.Camera: Camera used in every CocosNode.
- cocos.cocosnode.CocosNode: Cocosnode is the main element.
  - cocos.batch.BatchNode
  - cocos.batch.BatchableNode
    - cocos.sprite.Sprite: A CocosNode that displays a rectangular image.
  - cocos.draw.Canvas
    - cocos.draw.Line
  - cocos.layer.base_layers.Layer: a CocosNode that automatically handles listening to director.window events
    - cocos.layer.base_layers.MultiplexLayer: A Composite layer that only enables one layer at the time.
    - cocos.layer.scrolling.ScrollableLayer: A Cocos Layer that is scrollable in a Scene.
      - cocos.tiles.MapLayer: Base class for Maps.
        - cocos.tiles.HexMapLayer: A renderable, scrollable hex map.
        - cocos.tiles.RectMapLayer: A renderable, scrollable rect map.
      - cocos.tiles.ScrollableLayer
    - cocos.layer.scrolling.ScrollingManager: Manages scrolling of Layers in a Cocos Scene.
      - cocos.tiles.ScrollingManager
    - cocos.layer.util_layers.ColorLayer: Creates a layer of a certain color.
      - cocos.layer.python_interpreter.PythonInterpreterLayer: Runs an interactive Python interpreter as a child Layer of the current Scene.
    - cocos.menu.Menu: Abstract base class for menu layers.
    - cocos.scenes.pause.PauseLayer: Layer that shows the text 'PAUSED'
  - cocos.menu.BaseMenuItem: An abstract menu item.
    - cocos.menu.ImageMenuItem: A menu item that shows a selectable Image
    - cocos.menu.MenuItem: A menu item that shows a label.
      - cocos.menu.ColorMenuItem: A menu item for selecting a color.
      - cocos.menu.EntryMenuItem: A menu item for entering a value.
      - cocos.menu.MultipleMenuItem: A menu item for switching between multiple values.
        - cocos.menu.ToggleMenuItem: A menu item for a boolean toggle option.
  - cocos.particle.ParticleSystem: Base class for many flawors of cocos particle systems
    - cocos.particle_systems.Explosion
    - cocos.particle_systems.Fire
    - cocos.particle_systems.Fireworks
    - cocos.particle_systems.Flower
    - cocos.particle_systems.Galaxy
    - cocos.particle_systems.Meteor
    - cocos.particle_systems.Smoke
    - cocos.particle_systems.Spiral
    - cocos.particle_systems.Sun
  - cocos.scene.Scene
    - cocos.scenes.pause.PauseScene: Pause Scene
    - cocos.scenes.transitions.TransitionScene: TransitionScene A Scene that takes two scenes and makes a transition between them.
      - cocos.scenes.transitions.CornerMoveTransition: Moves the bottom-right corner of the incoming scene to the top-left corner
      - cocos.scenes.transitions.EnvelopeTransition: moves the top-right corner to the center
      - cocos.scenes.transitions.FadeTRTransition: Fade the tiles of the outgoing scene from the left-bottom corner the to top-right corner.
        - cocos.scenes.transitions.FadeBLTransition: Fade the tiles of the outgoing scene from the top-right corner to the bottom-left corner.
        - cocos.scenes.transitions.FadeDownTransition: Fade the tiles of the outgoing scene from the top to the bottom.
        - cocos.scenes.transitions.FadeUpTransition: Fade the tiles of the outgoing scene from the bottom to the top.
      - cocos.scenes.transitions.FadeTransition: Fade out the outgoing scene and then fade in the incoming scene.
      - cocos.scenes.transitions.FlipAngular3DTransition: Flips the screen half horizontally and half vertically.
      - cocos.scenes.transitions.FlipX3DTransition: Flips the screen horizontally.
      - cocos.scenes.transitions.FlipY3DTransition: Flips the screen vertically.
      - cocos.scenes.transitions.JumpZoomTransition: Zoom out and jump the outgoing scene, and then jump and zoom in the incoming
      - cocos.scenes.transitions.MoveInLTransition: Move in from to the left the incoming scene.
        - cocos.scenes.transitions.MoveInBTransition: Move in from to the bottom the incoming scene.
        - cocos.scenes.transitions.MoveInRTransition: Move in from to the right the incoming scene.
        - cocos.scenes.transitions.MoveInTTransition: Move in from to the top the incoming scene.
      - cocos.scenes.transitions.RotoZoomTransition: Rotate and zoom out the outgoing scene, and then rotate and zoom in the incoming
      - cocos.scenes.transitions.ShrinkGrowTransition: Shrink the outgoing scene while grow the incoming scene
      - cocos.scenes.transitions.ShuffleTransition: Shuffle the outgoing scene, and then reorder the tiles with the incoming scene.
      - cocos.scenes.transitions.SlideInLTransition: Slide in the incoming scene from the left border.
        - cocos.scenes.transitions.SlideInBTransition: Slide in the incoming scene from the bottom border.
        - cocos.scenes.transitions.SlideInRTransition: Slide in the incoming scene from the right border.
        - cocos.scenes.transitions.SlideInTTransition: Slide in the incoming scene from the top border.
      - cocos.scenes.transitions.SplitColsTransition: Splits the screen in columns.
        - cocos.scenes.transitions.SplitRowsTransition: Splits the screen in rows.
      - cocos.scenes.transitions.TurnOffTilesTransition: Turn off the tiles of the outgoing scene in random order
      - cocos.scenes.transitions.ZoomTransition: Zoom and FadeOut the outgoing scene.
    - cocos.utils.SequenceScene: SequenceScene is used when you want to load more than one scene to the director.
  - cocos.skeleton.Skin
    - cocos.skeleton.BitmapSkin
    - cocos.skeleton.ColorSkin
  - cocos.text.TextElement: Base class for all cocos text
    - cocos.text.HTMLLabel: HTML formatted text label (supports a subset of HTML 4.01)
    - cocos.text.Label: Plain text support
    - cocos.text.RichLabel: displays pyglet attributed (rich) text
- cocos.collision_model.AARectShape: Implements the Cshape interface that uses rectangles with sides paralell to the coordinate axis as geometric shape.
- cocos.collision_model.CircleShape: Implements the Cshape interface that uses discs as geometric shape.
- cocos.collision_model.CollisionManager: Answers questions about proximity or collision with known objects.
- cocos.collision_model.CollisionManagerBruteForce: Implements the CollisionManager interface with with the simpler code possible.
- cocos.collision_model.CollisionManagerGrid: Implements the CollisionManager interface based on the scheme known as spatial hashing.
- cocos.collision_model.Cshape: Represents an abstract geometric shape in the 2D space, and can answer questions about proximity or intersection with other shapes.
- cocos.director.DefaultHandler
- cocos.draw.Context
- cocos.draw.Segment
- cocos.draw.Shader
  - cocos.draw.FragmentShader
  - cocos.draw.VertexShader
- cocos.euclid.Geometry
  - cocos.euclid.Circle
  - cocos.euclid.Line2
    - cocos.euclid.LineSegment2
    - cocos.euclid.Ray2
  - cocos.euclid.Point2
  - cocos.euclid.Point3
- cocos.euclid.Line3
  - cocos.euclid.LineSegment3
  - cocos.euclid.Ray3
- cocos.euclid.Matrix3
- cocos.euclid.Matrix4
- cocos.euclid.Plane
- cocos.euclid.Quaternion
- cocos.euclid.Sphere
- cocos.euclid.Vector2
  - cocos.euclid.Point2
- cocos.euclid.Vector3
  - cocos.euclid.Point3
- cocos.gl_framebuffer_object.FramebufferObject: Wrapper for framebuffer objects.
- cocos.grid.GridBase: A Scene that takes two scenes and makes a transition between them
  - cocos.grid.Grid3D: Grid3D is a 3D grid implementation.
  - cocos.grid.TiledGrid3D: TiledGrid3D is a 3D grid implementation.
- cocos.particle.Color
- cocos.path.Path
  - cocos.path.Bezier
- cocos.rect.Rect: Define a rectangular area.
  - cocos.tiles.RectCell: A rectangular cell from a MapLayer.
- cocos.scene.EventHandlerMixin
  - cocos.layer.base_layers.Layer: a CocosNode that automatically handles listening to director.window events
    - cocos.layer.base_layers.MultiplexLayer: A Composite layer that only enables one layer at the time.
    - cocos.layer.scrolling.ScrollableLayer: A Cocos Layer that is scrollable in a Scene.
      - cocos.tiles.MapLayer: Base class for Maps.
        - cocos.tiles.HexMapLayer: A renderable, scrollable hex map.
        - cocos.tiles.RectMapLayer: A renderable, scrollable rect map.
      - cocos.tiles.ScrollableLayer
    - cocos.layer.scrolling.ScrollingManager: Manages scrolling of Layers in a Cocos Scene.
      - cocos.tiles.ScrollingManager
    - cocos.layer.util_layers.ColorLayer: Creates a layer of a certain color.
      - cocos.layer.python_interpreter.PythonInterpreterLayer: Runs an interactive Python interpreter as a child Layer of the current Scene.
    - cocos.menu.Menu: Abstract base class for menu layers.
    - cocos.scenes.pause.PauseLayer: Layer that shows the text 'PAUSED'
  - cocos.scene.Scene
    - cocos.scenes.pause.PauseScene: Pause Scene
    - cocos.scenes.transitions.TransitionScene: TransitionScene A Scene that takes two scenes and makes a transition between them.
      - cocos.scenes.transitions.CornerMoveTransition: Moves the bottom-right corner of the incoming scene to the top-left corner
      - cocos.scenes.transitions.EnvelopeTransition: moves the top-right corner to the center
      - cocos.scenes.transitions.FadeTRTransition: Fade the tiles of the outgoing scene from the left-bottom corner the to top-right corner.
        - cocos.scenes.transitions.FadeBLTransition: Fade the tiles of the outgoing scene from the top-right corner to the bottom-left corner.
        - cocos.scenes.transitions.FadeDownTransition: Fade the tiles of the outgoing scene from the top to the bottom.
        - cocos.scenes.transitions.FadeUpTransition: Fade the tiles of the outgoing scene from the bottom to the top.
      - cocos.scenes.transitions.FadeTransition: Fade out the outgoing scene and then fade in the incoming scene.
      - cocos.scenes.transitions.FlipAngular3DTransition: Flips the screen half horizontally and half vertically.
      - cocos.scenes.transitions.FlipX3DTransition: Flips the screen horizontally.
      - cocos.scenes.transitions.FlipY3DTransition: Flips the screen vertically.
      - cocos.scenes.transitions.JumpZoomTransition: Zoom out and jump the outgoing scene, and then jump and zoom in the incoming
      - cocos.scenes.transitions.MoveInLTransition: Move in from to the left the incoming scene.
        - cocos.scenes.transitions.MoveInBTransition: Move in from to the bottom the incoming scene.
        - cocos.scenes.transitions.MoveInRTransition: Move in from to the right the incoming scene.
        - cocos.scenes.transitions.MoveInTTransition: Move in from to the top the incoming scene.
      - cocos.scenes.transitions.RotoZoomTransition: Rotate and zoom out the outgoing scene, and then rotate and zoom in the incoming
      - cocos.scenes.transitions.ShrinkGrowTransition: Shrink the outgoing scene while grow the incoming scene
      - cocos.scenes.transitions.ShuffleTransition: Shuffle the outgoing scene, and then reorder the tiles with the incoming scene.
      - cocos.scenes.transitions.SlideInLTransition: Slide in the incoming scene from the left border.
        - cocos.scenes.transitions.SlideInBTransition: Slide in the incoming scene from the bottom border.
        - cocos.scenes.transitions.SlideInRTransition: Slide in the incoming scene from the right border.
        - cocos.scenes.transitions.SlideInTTransition: Slide in the incoming scene from the top border.
      - cocos.scenes.transitions.SplitColsTransition: Splits the screen in columns.
        - cocos.scenes.transitions.SplitRowsTransition: Splits the screen in rows.
      - cocos.scenes.transitions.TurnOffTilesTransition: Turn off the tiles of the outgoing scene in random order
      - cocos.scenes.transitions.ZoomTransition: Zoom and FadeOut the outgoing scene.
    - cocos.utils.SequenceScene: SequenceScene is used when you want to load more than one scene to the director.
- cocos.shader.Shader
  - cocos.shader.FragmentShader
  - cocos.shader.VertexShader
- cocos.shader.ShaderProgram
- cocos.skeleton.Animation
- cocos.skeleton.Bone
- cocos.skeleton.Skeleton
- cocos.tiles.Cell: Base class for cells from rect and hex maps.
  - cocos.tiles.HexCell: A flat-top, regular hexagon cell from a HexMap.
  - cocos.tiles.RectCell: A rectangular cell from a MapLayer.
- cocos.tiles.RectMapCollider: This class implements collisions between a moving rect object and a tilemap.
- cocos.tiles.RegularTesselationMap: A regularly tesselated map that allows access to its cells by index (i, j).
  - cocos.tiles.HexMap: MapLayer with flat-top, regular hexagonal cells.
    - cocos.tiles.HexMapLayer: A renderable, scrollable hex map.
  - cocos.tiles.RectMap: Rectangular map.
    - cocos.tiles.RectMapLayer: A renderable, scrollable rect map.
- cocos.tiles.Resource: Load some tile mapping resources from an XML file.
- cocos.tiles.Tile: Tiles hold an image and some optional properties.
- ctypes.Structure
- ctypes.Structure
- ctypes.Structure
- ctypes.Structure
- dict: dict() -> new empty dictionary dict(mapping) -> new dictionary initialized from a mapping object's (key, value) pairs dict(iterable) -> new dictionary initialized as if via: d = {} for k, v in iterable: d[k] = v dict(**kwargs) -> new dictionary initialized with the name=value pairs in the keyword argument list.
  - cocos.tiles.TileSet: Contains a set of Tile objects referenced by some id.
- exceptions.BaseException: Common base class for all exceptions
  - exceptions.Exception: Common base class for all non-exit exceptions.
    - cocos.actions.basegrid_actions.GridException
    - cocos.actions.camera_actions.CameraException
    - cocos.audio.SDL.error.SDL_Exception: Exception raised for all SDL errors.
    - cocos.audio.exceptions.NoAudioError
    - cocos.particle.ExceptionNoEmptyParticle: particle system have no room for another particle
    - cocos.shader.GLSLException
    - cocos.tiles.ResourceError
    - cocos.tiles.TilesPropertyWithoutName
    - cocos.tiles.TilesPropertyWithoutValue
    - exceptions.StandardError: Base class for all standard Python exceptions that do not represent interpreter exiting.
      - exceptions.RuntimeError: Unspecified run-time error.
        - cocos.audio.pygame.base.error
        - exceptions.NotImplementedError: Method or function hasn't been implemented yet.
          - cocos.audio.SDL.error.SDL_NotImplementedError: Exception raised when the available SDL library predates the requested function.
- pyglet.event.EventDispatcher: Generic event dispatcher interface.
  - cocos.director.Director: Class that creates and handle the main Window and manages how and when to execute the Scenes
  - pyglet.sprite.Sprite: Instance of an on-screen image.
    - cocos.sprite.Sprite: A CocosNode that displays a rectangular image.
- pyglet.text.layout.TextLayout: Lay out and display documents.
  - pyglet.text.DocumentLabel: Base label class.
    - cocos.text.PygletRichLabel: This is not a CocosNode - let instantiation be handled by RichLabel
    - pyglet.text.HTMLLabel: HTML formatted text label.
    - pyglet.text.Label: Plain text label.
- type: type(object) -> the object's type type(name, bases, dict) -> a new type
  - cocos.euclid._EuclidMetaclass