Seems to be a difference between my family scale and my curve scale

Hi everyone, i hope you’re fine.

I’m trying to get a family on a curve (i know that this subject has been discussed a looot but pleeeaaase read me till the end).
I used an excel sheet to create points and curve from those points and i’ve placed my family on that curve.
It seems that my dynamo script worked… But my family is bigger than my curve so it’s like all my +200 elements are intersecting.

i tried to changed units, i even recreate a new family but it doesn’t work.
Please help me figure out what i have missed (i’m not a dynamo every day user).

PS : I left a link below where you can find my dynamo script, my family, screenshots of the problem and the excel file (since new users can make upload).

I hope that i’ve clearly described my problem and i thank you for your time y’all !

Check how far apart the placement points are in Dynamo as well as your project units. Dynamo is unitless so if your numbers are in metres from excel but your model is in mm for example Dynamo will not know this.

Hi Gavin ! Thank you for your reply.
I’ve changed the unit in my Excel file but the problem remains.

You said : “Check how far apart the placement point are in Dynamo”, how can i do that please ?

Thanks again for you time.

Take any two points in the list of dynamo points, then use geometry.distanceto node to check the distance in Dynamo. My guess is the units will be small and might indicate an error coming in during the process.

If there is any Python nodes involved they may not be converting the units correctly also, as usually Revit deals in feet by default internally.

Okay Gavin, i’ll try that and i’ll tell you what happend.

See… I didn’t get error.

What are your project units?
Looking at your screenshot than your units from the Excel is 2.46… in meters?

1 Like

Yep unless your in metres thats the issue. Despite your initial assessment i believe this is actually the issue.

Reinforcing that Dynamo is unitless. Always check drawn and specified units equally as well as outputted data.

At that time, my project units where in mm and my Excel in meters.

So that is the problem i guess.
2.46…m (Excel) became 2.46mm… in Revit.
Convert your Excel units to mm (2468.8…)
or change mm in Revit to m.

Finaly, i found a solution.

At the beginning of my project, i had a template but when i ran my script into it i got an error that says “Point lies outside the Revit design limits” cause i got real world point coordinates for Civil 3D, so i’ve tried to run my script in a new project1 file.

But, i’ve found a solution to resolve the Revit design limits error by a serie of nodes (i’ll share the screenshot); my Excel is in meter and my project units also in meter.
The script runs just great following my points and my curve. Now i just have to make my elements tangent to my curve.

Thanks y’all for your precious time !

PS : Can you help me figure out how to make my elements tangent to my curve ?

1 Like

Tangent to curve can be achieved using normal at parameter/point then rotate by 90 degrees. Might be some other methodw but I tend to use that.

1 Like

yeah or just tangent at parameter maybe :wink:

1 Like

Or Curve.CoordinateSystemAtParameter and pull the desired axis.

Likely as these are family instances the desired result will require rotating the family instance by the angle from the tangent vector to the family’s native facing direction you want tangent (i.e. the X axis or Y axis) about the Z axis.

1 Like

yea not sure, what is for, havent read the thread really…but the normal can give some trouble in older version with curved curves, where we have to calculate vector cross between tangent and normal…now we have option to choice side…so great :wink: :wink:

1 Like

Ah yeah my brain went into grasshopper mode where normals are rotated tangents.

Tangent at parameter is the way…

1 Like