Subject Re: Solve Oblique Triangle
From Mervyn Bick <invalid@invalid.invald>
Date Mon, 8 Apr 2019 10:49:10 +0200
Newsgroups dbase.getting-started

On 2019-04-08 6:19 AM, Norman Snowden wrote:
> I realize this is not a normal subject and a Post should not be necessary. However, any comment would be appreciated. Thanks, Norman Snowden
>
> Solve Oblique Triangle. Clockwise start at A to C to B
>
> Without an actual picture please follow this description:
>
>  From A, extend a line due north for a distance of 20 feet to Point C
>  From C, extend a line at North 85.24 degrees West for an unknown distance toward point B
>  From A, extend a line at North 45 degrees West an unknown distance toward B to intercept the line from C to B.
>
> The angle at A is 45 degrees and the angle at point C is 94.76 degrees.
> The angle at point B is 180 – (45 + 9 4.76) = 40.23 degrees
>
> The distance B to C is a  which is opposite A
> The distance A to B is c which is opposite C
> The distance A to C is b which is opposite A and is known as 20 feet.
>
>  From the Law of Sines with b = 20
> 20/sinB = c/sinC = a/sinA
>
> c = (20 *sinB)/sin C       a = (20 *sinB)/sinA
> c = 12.96 feet  and  a = 18.27 feet

Here's the problem.

   c = (20/sinB)*sinC
   a = (20/sinB)*sinA


>  
> These values are wrong.  When the triangle is drawn to scale  c  = +- 35 feet and a = +- 25 feet.
>
> This could be solved using Slope Intercept Equations but that should not be necessary.
>
> The triangle meets the Law of Sines requirements and the solution should be simple.

The SIN() function in dBASE requires its argument to be in radians.  The
dBASE function DTOR() will convert degrees to radians.

*****
b = 20
aA = 45
aC = 180 - 85.24
aB = 180 - (aA + aC)

c = b/sin(dtor(aB))*sin(dtor(aC))
a  = b/sin(dtor(aB))*sin(dtor(aA))

?'aA = '+aA
?'aB = '+aB
?'aC = '+aC
?
? 'a = '+a
? 'b = '+b
? 'c = '+c
********

This gives the following output

aA = 45
aB = 40.24
aC = 94.76

a = 21.89
b = 20
c = 30.85


Mervyn.