[Proc Gen] BSP - Iteration (leaves, traverse) #204
Labels
No labels
Alpha Release Requirement
Bugfix
Demo Target
Documentation
Major Feature
Minor Feature
priority:tier1-active
priority:tier2-foundation
priority:tier3-future
priority:tier4-deferred
Refactoring & Cleanup
system:animation
system:documentation
system:grid
system:input
system:performance
system:procgen
system:python-binding
system:rendering
system:ui-hierarchy
Tiny Feature
workflow:blocked
workflow:needs-benchmark
workflow:needs-documentation
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Blocks
Depends on
#206 [Proc Gen] BSP.to_heightmap and BSPMap class
john/McRogueFace
#210 [Proc Gen] BSP.find_path - Room connectivity graph
john/McRogueFace
#202 [Proc Gen] BSP - Core class with splitting
john/McRogueFace
#203 [Proc Gen] BSPNode - Lightweight node reference
john/McRogueFace
Reference
john/McRogueFace#204
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Parent Issue: #192
Depends On: #202 (BSP core), #203 (BSPNode)
Overview
Add iteration methods to BSP for traversing the tree.
Specification
Iterate all leaf nodes (the actual rooms).
Iterate all nodes in the specified order.
Traversal Enum
Example
Implementation Notes
leaves()is equivalent totraverse()filtered tois_leafTCOD_bsp_traverse_*functions with callbackTraversalenum should be exposed at module level:mcrfpy.TraversalAcceptance Criteria
leaves()yields only leaf nodestraverse()yields nodes in correct order for each traversal typelist(bsp.leaves())