MoI discussion forum
MoI discussion forum

Full Version: how to determine angle between 2 planes

From: Dan (LICHENROCK)
4 Nov   [#1]
I've been using MoI 3d for years now to design and build projects for woodworking. It makes the math so much easier! My question to the forum has to do with determining compound angles. I know that if I can figure out the angle between two planes, I can then figure at what angle to set the mitre and bevel of the saw I am using. Would anyone have a simple method to determine the angle between to planes when neither plane lies on the orthographic planes?
From: Michael Gibson
4 Nov   [#2] In reply to [#1]
Hi Dan, can you please post an example file?

- Michael
From: pressure (PEER)
4 Nov   [#3] In reply to [#1]
Hi Dan,

Is this the kind of thing you want to measure?



I got the 2 components of the compound angle by aligning the orthographic planes first with one of the object planes and then the other object plane. I constructed a helper line (yellow) at the intersection between the 2 planes using Construct > Curve > Isect. Then I did View > CPlane and in the 3D view snapped to the helper line and one of the planes and adjusted the orientation picker in the 2D views. I added a measurement using Dim > Angle. Then View > CPlane again for the other plane.

- Peer
From: Dan (LICHENROCK)
5 Nov   [#4]
Thank Michael and Peer.
Michael, I will construct an example file to post. It may take a bit of time, but well worth the time if your attention to the challenge can bring the intuitive ease of MoI 3d to a classic and very daunting task of cutting compound angles. This is usually faced in cutting crown moldings. Rhetorical Question: If the walls are square to the ceiling and to each other, why can't you just set the mitre to 45 and the bevel to 45 and cut a perfectly square crown moulding mitre?
Peer, I appreciate your explanation of how to construct a helper line at the intersection of the two planes. I would be looking for an angle measurement (or a pair of complimentary angles adding up to 180). Is it possible to snap a line segment starting at and perpendicular to a point on the helper line and ending at another point on the surface of one plane, then beginning at the same point on the helper line, snap a line segment also perpendicular to the helper line to another point on the surface of the second plane? I think that the two lines would be coplanar (a third plane) and the angle between the two lines would be the angle of the 1st and 2nd planes relative to each other.
Also is it possible to use DIM angle command to derive the measurement of this angle?
Thank you,
Dan

From: Frenchy Pilou (PILOU)
5 Nov   [#5]
The CD Plane into a neutral 3D space is the only one function who has not the big easy use of the other!
And so between 2 any surfaces with any orientation in the Space!

I have a method without C PLane :)

Make a triangle between the 2 Surfaces Plane
Then Orient / Line Line" / None this triangle on any axe
Then Flat the Triangle on this axe with the Edit Frame
You can now use The Angle Dimension! :)


From: pressure (PEER)
5 Nov   [#6] In reply to [#4]
Hi Dan,

Re:
> Is it possible to snap a line segment starting at and perpendicular to a
> point on the helper line and ending at another point on the surface of
> one plane, then beginning at the same point on the helper line, snap a
> line segment also perpendicular to the helper line to another point on
> the surface of the second plane?

That will work if the planes are joined along an edge. Then you can snap perpendicular to the edge. Both Straight Snap and Object Snap need to be turned on. Doesn't work for 2 disconnected planes and an intersection line though.



Re:
> Also is it possible to use DIM angle command to derive the measurement
> of this angle?

No the Dim Angle won't end up on the correct plane. You'll need to align the construction plane coordinate system with the edge and one of the object planes using Cplane. Depending on the situation you might need to draw a helper line perpendicular to the edge to have something to snap the Cplane orientation picker to.

http://moi3d.com/4.0/docs/moi_command_reference11.htm#orientationpicker

Starting out with neither plane aligned with world coordinates:



Activate the Cplane command:



Align the orientation picker to the edge and one of the planes:



Now the Dim angle tool can be used in one of the ortho views:



- Peer

Image Attachments:
picker 1st point.png 


From: bemfarmer
5 Nov   [#7]
The angle between two planes is determined by the angle between the normals of the two planes.

https://www.cuemath.com/algebra/angle-between-two-planes/

https://byjus.com/maths/angle-between-two-planes/

I do not know which MoI commands would yield the surface normal of a plane.
Some clues here:
https://moi3d.com/forum/messages.php?webtag=MOI&msg=9581.321&highlight=yes

- Brian
From: Michael Gibson
5 Nov   [#8] In reply to [#7]
Here's a script that can be pasted into a shortcut key, preselect 2 planar faces before running it. It will report the angle between the plane normals.

code:
script: var faces = moi.geometryDatabase.getSelectedObjects().getFaces();
if ( faces.length == 2 && faces.item(0).isPlanar && faces.item(1).isPlanar )
{
	var A = faces.item(0);
	var B = faces.item(1);
	nA = A.planarFrame.zaxis;
	nB = B.planarFrame.zaxis;

	var dot = (nA.x * nB.x) + (nA.y * nB.y) + (nA.z * nB.z);
	var angle_radians = Math.acos( dot );
	var angle_degrees = angle_radians * 180.0 / Math.PI;

	moi.ui.alert( moi.ui.formatNumber(angle_degrees) );
}
else
{
	moi.ui.alert( 'error - 2 planes not selected' );
}


- Michael
From: Frenchy Pilou (PILOU)
5 Nov   [#9]
Cool....

"Confirmation of my method "Line Line" :)

Plan A Plan B
Select All
Line Line from Plan A at the origine (2 Line Line)
A Triangle (with 2 rectangles 3 pts) "Line Line" to an axe
Rotation to Plane
You have the Angle!