Vector Normal? From Orgin?

Hi Fourm,

I was investigating how to Display the Vector normals of a surface. Attached is my clustered Vector Display for a brep, but I had another thought as I was thinking about vectors - how might you retrieve the normal direction of the points from a circle?

Best regards,

Vector Normal Help.gh (9.6 KB)

It will the the tangent vectors + or - 90 degrees. Or you can use perp frames and extract the x or y vector of each plane.

1 Like

Hi Michael,

I have the Frames perpendicular to the curve, do you have any idea how I could rotate the frames to face outward?

No need. Deconstruct the plane, then plug the x vector result into a reverse vector component. This will be your normals.

1 Like

The Reverse Vector Component Doesn’t output any new frames. If for example, I wanted my Frames to point away from the Crv, rather than perpendicular to it, is there a way to rotate them accordingly?

Best regards!

You just need a vector. Why do you need the frame if the goal is to make a normal vector? If you want to rotate the frame then there are many rotation components. If you want to flip the plane there is a flip plane component. But again, if you just need a vector then you just need to get the planes x vectors and reverse them.

You can use Derivatives and you Get 4 vectors

2 Likes

Why don’t you just use the “curvature”-component? It gives you the curvature vector at a specific point on a curve.
Just be aware that it doesn’t work on linear curves :slight_smile:

2 Likes

Curvature tends to flip along the curve based on curve direction (concave / convex), for a circle it is fine.

Derivatives works in the case of a circle but not a free form curve for normal, in this case it works.

See here some comparison where:
Perp Frames (Green) will go all inward or all outward because they are zero-twisting).
Curvature (Blue) is sometimes in the other direction based on curvature concavity or convexity.
Derivatives (Red with labels) won’t find this normal.


Compare.gh (12.4 KB)

Anyway, they all work for pure circles, just some info to be aware of.

3 Likes

I create this python component to find perpendicular lines (and other vectors) with flip direction option on different curves, it will appear in Curve >> Division

New Divide.ghpy (32.5 KB)

3 Likes

Thank you @anon39580149 @Michael_Pryor @buergerlucas

I suppose this exercise helped me do this in 3D on a surface, this was something I tried (kind of works). I’m sure there is a better way to do this - or control object’s rotation based on it’s normals vs. the normals from the points.

I used perp frames to orient objects from the normals.OrientObjectbyNormal.gh (211.4 KB)