find the angles of a triangle given double coordinates
3 views (last 30 days)
Show older comments
Lev Mihailov
on 11 Apr 2022
Answered: Star Strider
on 11 Apr 2022
I am given 3 double coordinates, using them I need to find the angle (cosine and sine) of the triangle
a1=1.49895;
a2=2.62186;
b1=1.49747;
b2=2.62186;
c1=1.49747;
c2=2.62471;
Thanks in advance
1 Comment
Dyuman Joshi
on 11 Apr 2022
FIrst of all, this question doesn't have anything to do with MATLAB. It's a simple mathematics problemand looks like a homework question/assignment.
Second, even doing a quick google search would have helped you.
Accepted Answer
Star Strider
on 11 Apr 2022
One approach, based on code I wrote for a different Answer —
a1=1.49895;
a2=2.62186;
b1=1.49747;
b2=2.62186;
c1=1.49747;
c2=2.62471;
X_Val = [a1; b1; c1];
Y_Val = [a2; b2; c2];
polygon = polyshape(X_Val, Y_Val);
V = [X_Val Y_Val];
V = [V(end,:); V; V(1,:)];
for k = 2:size(V,1)-1
anglr(:,k-1) = [(atan2(V(k-1,2)-V(k,2), V(k-1,1)-V(k,1))); (atan2(V(k+1,2)-V(k,2), V(k+1,1)-V(k,1)))]; % Calculate Radian Angles
angld(:,k-1) = rad2deg(anglr(:,k-1)); % Convert To Degrees
anglrinc(k-1) = mod(diff(anglr(:,k-1))-pi,pi); % Reduce Radian Angles
angldinc(k-1) = mod(diff(angld(:,k-1))-180,180); % Reduce Degree Angles
end
figure
plot(polygon)
hold on
% plot(X_Val, Y_Val, 'p')
hold off
grid
axis('equal')
text(X_Val, Y_Val, compose('\\angle%d = %.1f°',[1:size(X_Val,1); angldinc].'))
Check = sum(angldinc)
.
0 Comments
More Answers (1)
Walter Roberson
on 11 Apr 2022
The second output of the boundary() function is the area of the enclosed polygon.
0 Comments
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!