An IconStyle describes how an icon should be painted. Using a IconStyle, the icon is visualized using the following steps:

  1. The icon is translated based on anchorX and anchorY.
  2. The icon is rotated based on this style's rotation property. If heading is a non-NaN Number, a rotation based on the heading is added to this rotation as well.
  3. A translation based on this style's offsetX and offsetY is applied.
  4. In 3D, an additional view displacement translation might be applied, to avoid icons sticking in terrain. This view displacement is calculated automatically, based on the combined size and anchors of all (non-draped) icons.

The icon can be either view-sized (pixels) or world-sized (meters, feet,...). A view-sized icon will always have the same size on the screen. A world-sized icon grows and shrinks as you zoom in and out. See GenericIconStyle.uom for more information on how to draw world-sized icons.