Collect Areas in Specific Views

I’m trying to figure out a way to collect all areas that are in a specific area plan type. I got a good start using the archi-lab package to isolate views and sort those view based on their name (View type is not available apparently). But now I’m stuck with that list and can’t really use it to find anything else. Does anyone have a method for this? Thanks.

Hi Cody,
Are you looking to filter by them by area type?

It would be better if you can drop here screenshot of your work.

This method would definitely work in my case given the Area Type. Specifically, I was looking for a way to separate out Area View Types in the event that there were two lists of area plans that both utilized Gross Building, but are intended for different purposes. In this case I have separate view types, but I’m having trouble finding a way to access this data. I was hoping there was a way to do this with the default nodes without either having to use downloaded packages (like I show from archi-lab) or python script (which I do want to learn). Let me know if you have some advice on this. Thanks!

AreaPlans.dyn (6.1 KB)

Shown above is one possible way of filtering out views that are not Area Plans. Could explore other approaches too.
Basically ViewPlan is Area Plan (Gross and Rentable)

That’s also helpful. Ultimately, however, I would also like to obtain the area boundaries that exist in those views, which probably complicates this issue more.

I used spring nodes to get elements by view. It pays attention to the visibility state making selection sets and does a dang good job of it. Then you just prep your view, run Dynamo, and sit back and marvel at yourself.

That’s the thing - both spring nodes and archi-lab aren’t able to to capture area boundaries for some reason.

@Cody_Winchester If you required the area boundary geometry, you just needed to take your definition a little further, I think

Here is an example that extracts the boundary geometry and groups them by level
Polycurves are created here for boundary and openings, but this may not work in case there are circular opening.

AreaBoundaries.dyn (5.3 KB)

Group Curves Function…

def GrpCrvsLoop(crvs:var[]..[])
{
intx1=Flatten(crvs)<1>.DoesIntersect(Flatten(crvs)<2>);
indx1=List.AllIndicesOf(intx1<1>,true);
indx2=List.GetItemAtIndex(indx1<1>,1);
bool1=indx2==GetKeys(indx1);
indx3=List.AllIndicesOf(bool1,false);
indx4=Transpose(List.Chop(indx3,2));
crvs1=List.Slice(Flatten(crvs),indx4[0],indx4[1]+1,1);
return=PolyCurve.ByJoinedCurves(crvs1);
};

There are many ways to capture area boundaries. Here are some of them:

Thanks again for your replies. I can find the area boundaries…I just can’t parse them by the view that they appear in per the earlier part of this thread. For the other packages available the ids of the these boundaries cannot be obtained which would have solved this. While it’s helpful to see there is an additional package from blackbox that now does this (thanks Kulkul!), I’m still hoping that there is a solution within the OOTB nodes that could be as elegant as some of the solutions that you have offered?

Alright, I managed to get it to work the way I was hoping using the Get Workset node from Archi-lab, and then in the model, setting all the desired area boundaries to a specific workset to be filtered. I learned in this process too that worksets return numerical values rather than just their names, which was interesting. But in the end it is mostly an OOTB solution save the node from archi-lab. Thanks to everybody who helped me figure this out. Really appreciate the feedback. Cheers.