Angled dimension does not allow me to select a curve

I was unable to find anything in the forum search for “angle dimension” so I’m posting this.

It was two lines that share an endpoint and I want to know the angle between them. When I attempt to use the angle dimension function, Rhino will not allow be to select one of the lines. I click on it with the mouse and it just flashes yellow for a split second but nothing happens.

I even copied the two lines in question to a completely separate rhino file and tried them in isolation with the same bad results.

Can someone explain why this otherwise fundamental operation refuses to work properly?

AngleDim.3dm (28.0 KB)

Well actually neither of the objects in your file are in fact “lines” in the strict definition. One (the longer one) is a degree 1 NURBS curve with 2 control points, which Rhino does consider as a line-like object so that is OK. The other is a degree three NURBS curve with 4 control points which, despite its apparent linearity, is not considered as a line-like curve. So it fails. If you select both objects and run SimplifyCrv on them, they will get converted to lines and then it will work.

HTH,
–Mitch

Well, that didn’t work. I get a message that says “No curves were simplified”.

Also, I guess the next obvious question is how the heck did I get a degree three NURBS curve in the first place? This segment was generated in a couple of different manners, each producing the original symptoms I mentioned. The first method was joining four surfaces then using cap planar holes. (These two segments are actually surface edges.) The second method was to take the closed polysurface that I had and ran make2d on it. Barring hand drawing each and every line segment and point, I’m not sure how else to do this simply.

Hm… I call that a bug. Should work on lineara curves. I’ll see if we can get it tuned up.

-Pascal

Hi Dave- Simplifying worked here… what does the What command say about your curves?

-Pascal

Normally, I’d love the opportunity to wag my finger in your face and rant about how crappy this software is. Right now, though, I’d much prefer an answer like ‘click your heels together three times’.

I don’t like bugs; virtual or practical.

Which command?

ARGH!!! Now I cannot get it to happen again. (Note that I did close and reopen rhino since my last attempt.)

Since I attempted the simplifycrv command and it failed for me, I just manually redrew the line to get past this issue.

In response to your question, I went through the steps I followed in the first place to recreate the problem. I can still get Rhino to create a degree three (poker straight) curve, but now the simplifycrv command works on it now. (I’d still like to know why it’s creating a complicated curve instead of a simple one.)

I can say, though, that when I first attempted the simplifycrv command and it failed, I checked the object in question by opening the “details” menu under the object properties. I remember seeing values for “angle” and “radius” (I think) and a couple of others that I didn’t expect to see. Obviously, the segment I was originally dealing with was not what it appeared to be. But now, I cannot generate that condition again. Sorry about that.

The edge curve will reflect the surface it came from if it is an untrimmed edge- most likely then, the surface is degree 3 in that direction.

-Pascal

Yes, definitely. I was just trying to explain the theory behind why it didn’t… Maybe Rhino should have an option somewhere to automatically simplify simplify-able curves…

That’s probably what 95% of the users want - they don’t want to have to deal with the esoteric “why is my line not a line?” kind of questions - but expert users would probably not like Rhino making those kind of decisions on its own without saying anything and want to have it off…

There are also of course the tolerance issues that come into play here…

–Mitch

don’t forget about good ole CONVERT using output=lines. That’ll give you something to dimangle right quick!

I think the bigger issue is simply that rhino doesn’t bother to notify when making these types of decisions. I understand that in some instances the geometry of the model makes it ambiguous what the modeler is intended. So if Rhino needs to make a more complicated curve, that’s OK. Just tell me. That way I can then do the research myself on how to correct it. In this example, I had no idea how to even start the troubleshooting process.

Hi David- I disagree - if I understand you, and what happened with these curves - Rhino, if you have duped the edge of a degree 3 surface, is giving you exactly what it should- a degree 3 curve. The problem is in DimAngle - it should recognize linear curves as valid candidates.

-Pascal

Oh. I misunderstood your earlier comments, then. Or I was just confusing myself between the various comments on this thread.

Yes, I agree that a linear curve should be valid to DimAngle.

I completely understand (now) why DimAngle would freak-out when presented with actual curving curves instead of something linear. I was still just hung up on the part where the error message returned by rhino was too vague for me to use in troubleshooting.

(And I still don’t understand how the curve became degree 3… I’ll have to play with it a bit to see if I can reproduce the condition. But that’s not the issue here any longer.)

So - it is apparently more (or maybe less!) complicated- I just tested DimAngle on two lines that had their degree changed to 3 and it works fine. Looking at your original file, the short line-like curve does in fact have some curvature- slight but it is there (radius = 28482.469) . So it looks like DimAngle is doing the right thing, strictly speaking. Could it have some tolerance built in, or use a SimplifyCrv version of the input behind your back to return and angle… possibly, I can check with the developer, but for now it does look like it is behaving as expected.

-Pascal

Odd… I really need to try and replicate the process I followed to create the near-linear curve. I really don’t understand what happened because fundamentally all I did was trim a flat extrusion with a flat surface.

I’ll play with it and maybe I’ll figure it out.

Thanks for the effort!