Modell from CAD Layers


hello all :slight_smile:
i am creating a script to develop a modell from cad layers. the grayed walls are placed from polycurves with not more than 4 subcurves. Other walls with more than 4 curves should be projectfamilies (extruded curves). FamilyType.ByGeometry and familyinstance.bypoint are giving me the right geometry. The same material was applied, but somehow its transparent and not selectable.
any ideas?

greetings kev

Hi @KevSch ,

Geometry created in Dynamo is in itsā€™ own modelling space. If you want to create a Revit Wall youā€™ll have to create a FamilyInstance by Curve, not by a Point.

yes, the grey walls are created by FamilyInstance.ByCurve. But it should be possible to generate through dynamo a projectfamily as i would do it by myselfā€¦
i thought that FamilyType.ByGeometry is similar to this operation and it is giving me the result - but its not editable furthermoreā€¦

image
image

Hi @KevSch ,

What exactly are you trying to create in Revit? In your last screenshot youā€™re talking about a ā€˜Model In-Placeā€™ which loses all the smart functionality of walls. Placing regular Revit walls by a curve would be a lot better, especially when having to work with the Revit model afterwards.

PS: The node FamilyType.ByGeometry creates a new FamilyType, this does not actually create new FamilyInstances.



Hey Daan :slight_smile:
i want to translate floorplans (drawn in autocad architecture) into revit modell elements. As you mentioned the better way to do so is to create regular walls. I did that - but just on polycurves with 4 subcurves. I used surface.by patch and isoline to get the middlelines of them, and translated the distance between the longest curves of the 4 subcurves to place or create new walltypes with the associated wallthickness.

things become more complicated when it comes to walls which are not perfectly shaped or drawn in a chain, as shown in the image. By this i thought of ā€œmodel in placeā€ elements - but yes you are right, thats not really the sense of drawing in Revit :smiley:

I see, as far as Iā€™m aware In-Place Models are not accessible through the API and are as such not create-able through Dynamo. Iā€™m not 100% sure though, perhaps someone else could verify that :slight_smile:

Perhaps a DirectShape would also work:


image

directshape is working on this - but then i canā€™t place elements like windows or doors on them :')
so i think i have to look after some divison algorithm for subsurfaces or so :smiley:

Only standard Revit walls can host windows/doors. Any type of element built by import - be it direct shape or family editor - will not be able to host. I suggest going back to the ACAD data set and drawing your wall centerlines, with a crossing line showing the wall thickness. Those two can be exported directly to get the correct shape. Short of that, most objects are not going to translate well to Revit if you want to keep them as workable data types.

Case in point, the second polycurve isolated image shows the wall stopping at the window; which looks great in AutoCAD, but doesnā€™t work in Revit as thatā€™s a single wall in which the window sits.

Soā€¦
i worked a little bit on this for a while and i reduced the walls to simple geometries of 1Polyline (4Sublines) == 1 Wallā€¦ so there is no problem in translationā€¦ it works surprisingly good :smiley:
i only have trouble in placeing windows at the time,ā€¦ it isnā€™t really the creation of the familytyp, itā€™s about the setting onto the middlecurve of a wall, and the cutting of the walls faceā€¦
i keep you guys updated on this :smiley:

greetings kev

1 Like