Color by axis & Small value rotation

I am not sure if I would call this a bug, but it is really annoying me. Perhaps someone can advise the better method.

#1. Edge Color by Axes

I have been trying to use “by Axes” option on Edge settings on styles to evaluate lines being aligned to the axes.
However, I have noticed that if the line is off by very little (I do not know by how much), it still shows as that axes color. This is quite confusing as I am trying to make the model orthogonal.

I have trusted “a line” since it shows as red (being aligned to red axis), but apparently it is slightly off, resulting no face being created due to the lines being non-co-planar.

#2. Small value rotation

if I rotate an edge by very small value (in GIF, I used 0.05. but any value less than that will work), instead of rotating, it will just array along the perpendicular axis.

I understand SketchUp struggles when small value is used, but producing incorrect geometry throws me off big time.
I only found this issue because I was trying to figure out what is the threshold for making the lines appear as “aligned with axis” when it is slightly off from the axes (the first issue)

Any Thoughts?

There are tolerance limits and I think you’re running into those with your very slightly off axis line.

As for the rotation, there is a + with the Rotate tool indicating that Rotate/Copy is active. Are you hitting Ctrl with the Rotate tool? When I try to rotate a line as you did but don’t hit Ctrl, I still only have the original line but now rotated 0.5°.

I just experimented with rotating the line in very small increments to see if I could determine the angle tolerance. The line remains red is the rotation angle is 0.057° or less.

Yeah, I think so. But I thought the “by axis” option will have 0 tolerance. Having “little bit” of tolerance is actually throwing me off. Because I was trying to evaluate and fix the model which is slightly off everywhere, and it is showing red and green everywhere.

Maybe I just have to start from scratch.

Yes, I was using “Ctrl” modifier key for the rotation. Perhaps it just doesn’t like small value rotation with copy.

Thanks for finding this out, :blush: I was trying to do that, but with array.

Anyways, even if it is 0.05 degrees off, it doesn’t create a face for me. I don’t blame SketchUp not having tolerance for creating surface when things are not co-planer. But I just don’t think it makes sense to have tolerance to some elements. Plus, this can make a big difference in big projects. In 1KM wide projects, it is nearly a meter off.

No. there is a precision tolerance.

I don’t have any problem with Rotate/Copy. Here I’ve got 0.05 degrees of rotation on the copy.

I don’t think that precision tolerance for axis is helpful, because we have 0 tolerance for face generation.

I wonder if this has to do with the unit and length of the line that I am working with. I am in “mm” and my lines are in length of 50mm to 1m. What is your unit and length of the line?

I just noticed, if I create 20mm line and do 0.05 degree copy, it doesn’t even create another line.

No. I don’t get a second edge on a 20mm long edge rotated 0.05°, either.

Actually, you don’t. Finite precision computer arithmetic affects everything SketchUp calculates and every value you enter. For example, .05 has no exact representation on the computer, and (1.0/3.0) is not exactly the real fraction 1/3. So SU must use a tolerance around all comparisons else virtually all of them would fail.

That said, though, I agree that the color by axis having a tolerance is a source of much confusion and frustration because users naturally employ it to seek slightly misaligned edges, and it simply is no good for that purpose.

4 Likes

Hi Joseph,

Like @DaveR says, accuracy of the ‘Color by Axis’ style setting is subject to certain tolerance.
Nothing new, it’s been discussed many times in past forum topics.

You’ll find the Query Tool indispensable for finding errors.
Just be sure to set Units Precision to maximum and disable Length Snapping.

Habitual use of Inference Locking via the Shift and Arrow keys makes modeling on-axis automatic.
Many experienced modelers map the arrow keys to buttons of a programmable mouse.
One example…

1 Like

That is perfectly according SketchUp’s limits in distance between endpoints.
The newly created edge has its opposit endpoint at less than 0.0254mm from an existing endpoint.

But I noticed following:
I couldn’t create a new edge with an input angle 0.057 degrees (edge length 1000mm or even 10,000mm (10m))
I could however create an input angle 0.058 degrees (again edge lengths 1000mm and 10m)

So I guess SketchUp’s input limit for angles is around 0.058 degrees (somewhere between 0.057 and 0.058 degrees)

You can however create smaller angles down to ~0.001 degrees, as long as both endpoints are >0.0254mm apart.

3 Likes

Thanks for confirming that Dave. :smiley:

That makes sense. Thanks for taking time to explain Steve.

Yep, that is my point! :stuck_out_tongue:

Thanks for this Geo! :smiley: I will give it a go.

That explains the small value rotation issue. Thanks for trying it out.

Thanks @Wo3Dan.