GE Lua Documentation

Press F to search!

newQuadtree

Definition


-- @/lua/common/quadtree.lua:81

local function newQuadtree(numOfItems)
  return setmetatable({
    tree = {},
    children = {},
    itm_preld = table.new((numOfItems or 0) * 5, 0),
    itm_preldLen = 0,
    nodeCount = 0,
    maxDepth = 10,
    xmin = math.huge, xmax = -math.huge, ymin = math.huge, ymax = -math.huge,
    query_xmin = 0,
    query_ymin = 0,
    query_xmax = 0,
    query_ymax = 0,
    stack = table.new(100, 0),
    currentNode = 0,
    stackidx = 1,
    i = 1
  }, quadTree)
end

Callers

@/lua/common/quadtree.lua
  -- Initialize a new empty quadtree
  local q = tree.newQuadtree()
@/lua/ge/extensions/freeroam/bigMapMarkers.lua
  -- preload all elements into a qt for quick clustering
  local qt = quadtree.newQuadtree()
  local count = 0
@/lua/ge/extensions/editor/aiViz.lua
    if not qtNodes or updateQt then
      qtNodes = quadtree.newQuadtree()
      if mapNodes then
@/lua/ge/extensions/gameplay/markers/missionMarker.lua
  -- preload all elements into a qt for quick clustering
  local qt = quadtree.newQuadtree()
  local count = 0
@/lua/ge/extensions/editor/tech/roadArchitect/roads.lua
    if not tree then                                                                                -- If there is no tree yet, build one.
      tree = treeMgr.newQuadtree()
      local extents = { x = 5000, y = 5000 }
@/lua/ge/extensions/editor/slotTrafficEditor.lua
    if not qtNodes or updateQt then
      qtNodes = quadtree.newQuadtree()
      gp = graphpath.newGraphpath()
@/lua/ge/extensions/gameplay/missions/startTrigger.lua
    for level, locations in pairs(locationsByLevel) do
      local qt = quadtree.newQuadtree()
      table.sort(locations, idSort)
@/lua/ge/extensions/core/dynamicProps.lua
  forest = scenetree.findObject("theForest")
  self.forestQt = quadtree.newQuadtree()
  if forest then
@/lua/ge/extensions/gameplay/crawl/boundary.lua
  local quadtree = require('quadtree')
  boundaryQuadtree = quadtree.newQuadtree()