Basic geometry: from Tekla to Rhino/Grasshopper

I’ve seen in tutorials always they create basic geometry first in Rhino and then they translate it to Tekla. But I already have all my basic geometry in Tekla and I want to use it in Grasshopper. How can I do it?

In this tutorial he says that you can use ‘deconstruct’ tool but actually what it is doing is not what I look for.

So to clarify: I have basic model only in Tekla now. I do not have any geometry in Rhino or any scripts in Grasshopper. I want to translate geometry from TS to Rhino (or straight to Grasshopper, because I don’t need Rhino tool for anything in this case). In other words - basically I do not need Rhino. I only want to sketch basic geometry always in Tekla - not in Rhino. And then I want to do all those things with Grasshopper. Is such way even possible?

Hi Tekla user,

Currently I don’t think there are any tools that would allow you to do this, at least for a Tekla-GH workflow. Not sure if it’s been attempted for other softwares.

Creating a visual script from things you have modeled manually sounds like an extremely complex (although interesting) problem to solve, at least so that the process would offer any practical benefit.

Sure, for individual objects you could extract parameters like start point, end point, section curve etc and display them as inputs. But that only gets you so far. As soon as you have multiple objects interacting, say they should be spaced semi-regularly or be placed and offset relative to other objects or shared setout points, it would be very hard to know what the rules and components should be.

I think this could make for an compelling problem for someone to try and solve with machine learning/AI that would be trained on script-model pairs.

Cheers,

Sebastian

1 Like

Ok sir, I understand. I should also write why I need this anyway. The point is that I am structural engineer. I make engineering models of steel structures. Problem I have with Rhino is I do not feel like it’s good to create engineering model in a non-engineering program. And I feel Rhino is more like artists program than is for engineers. When we - Tekla Structures users create our models we need to operate strictly on engineering enviroment, we need to have the coordinate system and set our models in the correct specific place. We also need basic drawing tools known from CAD programs etc. In fact - very rarely we would have a necessity to actually create geometry in Rhino. Basically we only need Grasshopper, not Rhino itself. That is why I asked above question.
Best regards.

Can you better explain what you want to do with the geometry your getting from Tekla?

Hi All, Is there a way that I can import grid lines with grid labels from Tekla to Rhino using grasshopper. My Tekla model has all types of grids (straight grids, skewed grids and radial grids) I wanted to analyse the deviation between the Asbuilt grids and the Theoritical grids from Tekla model and give our feedback to our surveyor using the grasshopper scripts.

Hi, I don’t think there’s an API function for getting grid line geometry directly.

You’d need to use the Expand Object component on a grid, and then parse the CoordinateX and CoordinateY text outputs to get the coordinates. And move the points according to origin.

Here’s an example:

GetGridIntersectionPoints.gh (17.9 KB)

I didn’t look at radial grids, but they are presumably similar. You can of course use e.g. the Tekla object pipeline component to get all the grids at once, then just make sure the definition handles data trees correctly.

Cheers,

-b

1 Like

Thanks Sebastian, But I am not getting the output as what is required. Please let me know what further info should I get you to get this fixed. Can I give you a tekla model file with only the grids and label.

This should work with any grid, just reference the grid from Tekla into the first model object param.

What are the results you get? Which component is failing? Any messages on that component?

Cheers,

-b



Please see snaps

Tekla doesnot select gridlines when I try to select multiple objects using the Model object component. So I used Tekla pipeline. I dont know how to select multiple items in selection type filter in Tekla Pipeline hence used Panel

Do you have your grid selection switch turned on in Tekla?

1 Like

Is that the expected result for one grid? The example was for a rectangular grid, radial grids need to be handled in a separate stream. The coordinates for a radial grid will come out of the Expand Object component as well, they’ll just be called AngularCoordinates, RadialCoordinates and CoordinateZ instead. Getting the curves from that is a fun GH extercise :slight_smile:

I only switched on gridlines

Area selection of grid lines/planes doesn’t seem to be possible, it’s an API limitation. You can shift-click to select multiple grid lines though.

If you select the grids you can get the grid planes using the Get Children component.

Hi Sebastian, Thank you. I will check on this. I have a question on why base plates are not imported with holes into Rhino Model file when using TEKLA GH Livelink. I saw all the settings set correctly. If I import through IFC file from Tekla into Rhino, base plates are there with holes. Kindly advise.

Hi, this is an API limitation. Bolt hole options aren’t available in the Open API. Apparently the IFC export uses another solid engine but that doesn’t help here :disappointed:

One approach is to cut the part breps with the bolt breps in Grasshopper. Bring in the part, Get Children should return the bolt groups, filter the children if needed, then convert both the part and the bolts to breps or meshes and make a boolean cut in Grasshopper.

In practice this seems tricky to pull of. The solid that’s returned from a bolt array is a disjoint brep or mesh meaning that the nuts, the shafts etc are all different solid objects but stored as a single brep. Additionally one end of the shaft usually ends exactly at the boundary of the part geometry. E.g. the Solid Difference component doesn’t seem to like this at all.

If you use Convert To Mesh there’s the Disjoint Mesh component that can help you access the different sub-solids of the bolts. If you somehow select the shafts/holes from the output you can then make the cut with the Mesh Difference component. Use the “HIGH ACCURACY” option for the Convert to Mesh component.

I’m not confident enough in all this to post an example as there might be a much better way to do it, but it might give you something to go on.

Cheers,

Sebastian

1 Like

Thanks Sebastian! I will try this.

1 Like