Wall by Face from mass generated in Rhino

Hi @eirannejad ,

I tried to use your components but this error appeared. I imported a DirectShape element to revit and selected it from Revit with the graphical element componen, chosen the right face I want. Do you know what is the possible cause?

Thank you in advance

1 Like

The error says that reference can not be used to create the wall. In Ehsan’s example he used a Mass, what does your direct shape look like? Not every surface can be made into a wall. Can you post that geometry?

https://www.rhino3d.com/inside/revit/1.0/guides/rir-grasshopper#tolerances

Thanks.

Thank you for your answer @Japhy

What I am trying to do is to use native revit elements to perform a curved retaining wall, so I thought the best option in this case would be to use the object faces to transform them to walls and floors. This is the geometry:

Retaining Wall.3dm (2.4 MB)

Regards!

Native Curved Revit Walls don’t allow profiles to be edited. DirectShapes in the wall category is a quick option. A native option is to create Voids or Attached to a Roof/Floor.

@Japhy

Indeed, the best option is to create DS geometries. I know that shapes cannot be done using walls and floors in Revit that is what I ask for an option to create walls and floors by mass faces. Would this option be a good solution to create this geometry as a native Revit elements?

I did not understand the option with voids you proposed, you mean to create and adaptative family through a curve and using voids to obtain the complex profile?

Regards and sorry for all the questions!

You would have to be particular with your faces and wall location, its a good solution but entirely project dependent. If you are going to have to clean up 100’s of wall faces to have geometry that works with your definition you might want to try alternatives.

1 Like

Really interesting method @Japhy thanks a lot, It may be used in a lot of cases!

I understand you can create the wall following a path, using straight lines, arc, ellipsoid and that’s it. In case of having a spline such as in the example I attached, is there another method? What happens if the foundation is not horizontal? You can attach the top part of a wall but not the bottom one since it is attached to a horizontal level.

Moreover, in case of having a foundation following a slope, how can I modify the offset of the floor? I mean by this that the floors, when created, always end with a vertical (red profile), however sometimes the perpendicular one is required (black profile), is there a way of doing that?

Regards and sorry to bother you…

No bother. This really depends on what you are trying to accomplish, as a whole. Drawing in Rhino and using DirectShapes is going to get the job done. What else do you need from the walls in Revit?

About Retaining Walls | Revit 2018 | Autodesk Knowledge Network.

Hi @Japhy

My goal is to achieve a constructive model using Revit. At an early stage, I read using DirectShape is okay, however, in later stages, such a detailed design of these objects is not preferable used, that is why I am trying to convert them to native objects. My goal is to reinforce the curved retaining wall, get some drawings from the model, get the bill of quantities of the structure as well as internalise in the geometry some important attributes for the construction. If a DS element can support all this I do not care about having a native Revit element in order to modify it since I am parametrizing the geometry in GH and any change can be made and reload the model again.

Regards

Hi All,
I liked Japhys clear explanation. For me it didnt work though. The mass i got into Revit didnt want to respond to anything. But i found a way in Youtube the guy did it so simply without any grasshopper stuff: Revit - Importing & Manipulating Rhino Geometry - YouTube
got my super complex surfaces into Revit and split into various surfaces for wall, glazing, roof and each of them i can do wall by face now.

1 Like

Some piece of roof did could not create wall by face i think i will split this part in rhino and bring in again. Mass floors worked and wall by face worked.

When using wall by face in this method, is it possible to modify the code to select the location line of the wall? I tried to modify the code here but didn’t work.

The DB.WallLocation isn’t formed right.

1 Like

@eirannejad
@Japhy

I have been using this python script with great success, revit 2023 etc.,

However, wondering if it is possible to include the ‘allow join’ option, which is available in wall by face:

1 Like

Hi @arcade.smith ! Are you using the Custom Component provided by @eirannejad to create walls by Planar Faces or you creating walls by Curved Surfaces?
I wonder because I’m trying to create Walls By Face(Planar) and recieving error that Planar Faces are not allowed which is strange to me because it should be simpler than curved Surfaces…

You’ll need to compute the references, per the original script. Removing ineligible faces prior to inputting will get you to your specific solution quicker.

1 Like

something like this…

4 Likes

Way I am doing it is by pushing the geometry into a family using rhino inside, getting the type name and then extract the faces from that family:

image

I also clean up and check the faces first by running it through this, also making sure that my edge poly-lines have only corner control points:

and each time I update the geo, just delete the type, and push it back in:

1 Like

Thanks for sharing the workflow! :pray: Good point with simplifying edges and checks! I have the simillar workflow right now, I’m Creating the Mass Family and getting the faces of that Family to host the walls. The Japhy’s solution with computing references got it to work for me.
The only thing I’m not sure atm is the binding. Because if we delete the existing type from the family and recreate the geometry inside Mass family it seems that all the created Walls by Face will loose their hosts since the new geometry for the mass was created as a new element(?)… Ideally I aim having walls updated to changing mass and not to be deleted and recreated using “Walls by Face” method again. :slightly_smiling_face:

Hey,

I just remake the walls in each case. I if you wanted to keep the guid of certain surfaces within the mass family, it may be possible, but I do not know how to do that.

I assume there will be a revit ID associated with the face, and the wall would host to that.

1 Like