--- id: aliases: [] title: Breakdown Objects tags: - authorship/original - destiny/permanent - status/incomplete - topic/automation - topic/estimating - topic/software - type/idea --- # Breakdown Objects return child breakdowns from a parent for use in takeoff ``` Buildings["Building A"].GetEveryNthLevel(2) Buildings["Building A"].GetTaggedLevel("Roof") ``` ``` Buildings["Building A"].GetHeight() ``` ``` Buildings["Building A"].GetLevels()[0] Buildings["Building A"].Levels[0] ``` For jobs with only one building: ``` Building = Buildings["Main Building"] Building.Levels[0] ``` ## Pathfinding Define equipment locations stochastically ``` in Building A, every odd level has 20 receptacles fed from a panel on that level and every even level has 20 receptacles fed from a panel on the floor below ``` equipment of the same type is assumed to be evenly spaced. ## Location vs. Scope %%TODO:%% ![[location-vs-scope.excalidraw]] MDPB is physically _located_ in Building A, but serves only loads in Building B. ``` location = Buildings["Building A"] scope = Buildings["Building B"] ``` Were Building B removed from the contract scope, it can be expected that MDPB would be as well.