# Editor.MapDoc.MapEntity

MapEntity in Hammer is a type of [Editor.MapDoc.MapNode](/api/Editor.MapDoc.MapNode) that has a set of key/value pairs.
The keyvalues represent the authoritative state of the entity. 

Entities may have helpers that enhance the presentation and sometimes modification of those keyvalues.
The helpers may come and go; it should always be possible to recreate the helpers from
the parent entity's keyvalues.

Entities may also have zero or more [Editor.MapDoc.MapMesh](/api/Editor.MapDoc.MapMesh) children.

- Kind: class
- Namespace: `Editor.MapDoc`
- Assembly: `Sandbox.Tools`
- Inherits: [Editor.MapDoc.MapNode](/api/Editor.MapDoc.MapNode)
- Modifiers: sealed

## Constructors

- [`MapEntity`](/api/Editor.MapDoc.MapEntity/.ctor)

## Properties

- [`ClassName`](/api/Editor.MapDoc.MapEntity/ClassName): Entity class name like prop_physics
- [`MapClass`](/api/Editor.MapDoc.MapEntity/MapClass)
- [`SerializedObject`](/api/Editor.MapDoc.MapEntity/SerializedObject)
- [`TypeDescription`](/api/Editor.MapDoc.MapEntity/TypeDescription)

## Methods

- [`GetKeyValue`](/api/Editor.MapDoc.MapEntity/GetKeyValue): Gets the value for the key, e.g "model" could return "models/props_c17/oildrum001_explosive.mdl"
- [`SetDefaultBounds`](/api/Editor.MapDoc.MapEntity/SetDefaultBounds): Sets the default bounds of the entity if it doesn't have a model. By default this is 16x16x16.
- [`SetKeyValue`](/api/Editor.MapDoc.MapEntity/SetKeyValue): Sets the value for the key, e.g "model" could be set to "models/props_c17/oildrum001_explosive.mdl"
