I found that the VASA package can convert Revit 3D models into voxels.
What are the advantages of voxelizing 3D models?
Voxelization allows anlysis of the abstracted model at a speed which is orders of magnitude faster than what you can do with geometry, as all of the data becomes bytes.
Say you want to know the overlapping area of two shapes: a circle with a radius of 1 at the origin, and a 0.5 x 0.5 rectangle who’s centroid is on 0.5,0.
Think about what you would have to do to perform the calculation by hand, lots going on there, right? And most of our shapes in architecture are orders of magnitude more complex. And our analysis are also orders of magnitude - so a think instead about calculating the shortest path from the nurses station to each the patient bed…
Now let’s say you don’t need exact values, but that relative one’s would work just as well. When voxalizing the model you first define how many cells you have per row, and how many per slice, and then how many slices you need (the size and height inputs in the voxel model creation nodes).
The model is then analyzed (the one slow operation) to assign each Voxel into a solid or void based on the amount of geometry in it. You can think of a solid as a True, and a void as a False. And because we know how many slices, and how many rows per slice. And how many voxels per row we don’t need to keep the structure in the cpu. And since our voxels are true/false we can store them as a bit - the data type which computers have to convert everything to, so faster to move into memory and do calculations on.
In our circle and rectangle analogy, you can think of the voxelization step as placing a sheet of translucent graph paper on top of the circle, and filling in any cells which are more than 50% filled by the circle with red, and doing the same with a new sheet of translucent graph paper and filling occupied cells of the square blue. Now lay the two sheets of graph paper on top of each other, and count the number of cells which appear purple, and you have a relative value for the overlapping area.
Now this graph overlay for overlapping area is a toy problem, but what of that path of travel problem - how would you calculate that efficiently using the geometry volumes? With voxelization it’s a counting exercise on our digital graph paper…
VASA package in Dynamo is what I took this question to mean. See around the 37 minute mark of this video for a quick demo: Packages of Note: Dynamo #43 - Community Conversations - YouTube