PlaceNode* ClusterNode::getOrCreateLabel() { PlaceNode* node = 0; if (_labelPool.size() <= _nextLabel) { // set up a style to use for placemarks: Style placeStyle; placeStyle.getOrCreate<TextSymbol>()->declutter() = false; node = new PlaceNode("", placeStyle, _defaultImage.get()); node->setMapNode(_mapNode.get()); node->setDynamic(true); _labelPool.push_back(node); } else { node = _labelPool[_nextLabel].get(); } ++_nextLabel; return node; }