# How do I create a Revolve from measurements

Hi All,

I’m trying to create a revolve by using “PolyCurve.ByPoints” as the Profile input for “Solid.ByRevolve”.
But I can’t get the Points input right! I’ve tryed sliders, numbers and points (pt1, pt2, …) in code blocks but they do not work. Still get a “Run completed with warnings” notification.

First of all I’m trying to get a simple revolve going. With 4 points.
The reason behind this is that I have to create round foundations with different height and diameters.
I want to create an excel sheet with the measurments and from that I want to calculate the points I need for the revolve profile. And for some foundations I need 4 points and for others I may need 6 or 8 points.
I want do those calculations in Dynamo… but first I need to know what the input needs to be for the “PolyCurve.ByPoints” And is that the best way to make a revolve and have it sent to Revit?
Can someone show me a small very simple example of how to make a revolve in Dynamo?

(I know that the “sweepAngle” should be 360 for a complete revolve. I’m just “playing” a bit to see how it works)

For Revolve: http://dictionary.dynamobim.com/#Geometry-Solid-Create..ByRevolve
and for points in code blocks: http://dynamobim.org/cbns-for-dummies/

CRAP!!! That’s true: The DICTIONARY is up and running! Thanks for the reminder!
I was on the right track though

1 Like

Hi @Yna_Db,

I’ve used the example from the dictionary and calculated the points, but the result is not what I need.
The NurbsCurve is…wel… curved! Hahahahaha (see picture). And I need straight lines from point to point.
Can that be done in this way Or do I need to construct it with the node “Surface.ByRevolve” and then somehow create a solid from the surface?

Hmmmm…okay. It’s not the “Solid.ByRevolve” that’s the problem. It’s the “NurbsCurve.ByPoints” that’s causing it.
Now I used “Polygon.ByPoints” and that gives me the profile I need but this creates an Sweep_Illegal_Surface.
What node can I use that would give me the correct profile form the sweep I need?

Do you have any illustration of the form you need? Also see the Dynamo samples files, you’ll find lots of good examples there (surfaces by loft, etc.)

I’ll look into those sample again to see if I missed anything.
But what I don’t get is why is it simple to create a complex curved form in Dynamo and by using points, while it’s so hard to use the same points and create straight lines and use that as a profile? I need a node “profile.ByPoints” instead of “NurbsCurve.ByPoints” to get my revolve.
Here’s the form/profile I need. But this one gives me an Illegal_Surface error.

are you trying to achieve something like this?

That’s close. But you are creating a “donut”. I need a solid and closed revolve from the centre outward.
Now I tried it with “Polygon.ByPoints” and “PolyCurve.Curves” And I atleast get the basic (hollow) shape I need.
Also my Axis origin is 0. You have an ofset of 10.
And Why do you have the input “ConnectLastToFirst” set to 1?
Isn’t a boolean a True or False?

Okay…I found the problem!
It is the AxisOrigin after all! The AxisOrigin is not allowed to be on the same line as the profile!
When I give it an offset of -1 my form works! But that means I have a hole in my structure! That’s not what I want.
Any thoughts on how to get a solid revolve with no offset?

Actually the issue it that a part of your profile is on the axis of revolution. Don’t close your profile curve :

here’s the result

and btw 0 = false and 1 = true it’s just faster this way …

1 Like

WHahahahaha…That’s it! I was thinking about the way it is done in Revit.
There a revolve must have a closed profile in order to work.
However…it still is hollow correct? Or is it because I haven’t put the revolve to 360 degress?
Or will this become a solid once I’ve placed it in Revit?

No you’re right it’s still hollow, even with a 360 revolve … I am super surprised!
anyway… here’s a workaround to “close” it …

or using SweepAsSolid and Arc.ByCenterPointRadiusAngle (takes the exact same inputs…)

1 Like

HOLY CR…!
Okay…give me some time to digg through this one!

Tryed both options and both stil not the one I need.
Your second option is the closest but it doesn’t allow a complete 360 degree.
Start and end are not allowed to be in the same place.

And your first option is overpalling forms…? If I see that correctly? Some part is still hollow and the other part is not.

I could take your second option and create 2 solids both at 180 degrees and join them, but If I can create a solid 360 degree revolve in Revit…then it must also be possible in Dynamo right?

Result option 1:

Result option 2:

Why not do a 180° revolve, mirror it, and union the geometry into one single solid ?

1 Like

That’s what I also was thinking (see my previous comments) but I want to use this form also to add rebar.
And I don’t want to mirror everything. Or will Dynamo see it as a single solid form once the 2 halves are joint?

But the point remains: Why is it hard to create this revolve that is easely done in Revit?
Hahahaha…and no…I don’t wanne do it in Revit because I still need to add 3D rebar to this model and my crosssection depends on the excel sheet. In my examples above I have 8 points but I have 3 versions (5pts, 7pts and 8pts). So This part is only somewere in the beginning of my script. I have to figure out something with If and els in front of this part above.
And my 3D rebar behind it. But first things firts: getting the form right.

Dynamo will see it as a single solid once the two are joined.

Done that (still have to cheat when creating one half: startangle=0 endangle=180.1) but when I klick on the “Solid>ByUnion” node the outline only one half lights up in blue. That doesn’t give me a good feeling.
But If you say it wil be interpreted as one solid I take your word for it!

360 works with option 2 :

in option 1 you’re missing this little part: