newRPL: Angles revisited
04-01-2016, 11:15 PM
Post: #19
 Claudio L. Senior Member Posts: 1,666 Joined: Dec 2013
RE: newRPL: Angles revisited
(04-01-2016 07:01 PM)emece67 Wrote:  I agree on this. On my view:
[list]
[*]angle +/- scalar = scalar +/- angle = angle, with scalar meaning an angle in the same units as the other operand (30D + 1 = 31D, no matter the current angle mode)
[*]angle * scalar = scalar * angle = angle, in the same units as the angular argument
[*]angle / scalar = angle, in the same units as the angular operand
So far so good, scalar +/- angle breaks consistency but could be done.
(04-01-2016 07:01 PM)emece67 Wrote:  [*]scalar / angle = scalar, the result is scalar/(angle converted to radians), 2 / 90D = 4/pi
[*]angle * angle = scalar, the result being the product of the 2 angles converted to radians (90D * 100G = pi^2/4)
This could be a problem. For example an expression:
'ASIN(A)*ASIN(A)/ASIN(A)'. The user has the settings in DEG, and thinks ASIN will return DEG, so you would expect the result to be let's say 45 or ∡45°.
If the operator associates the right side first:
ASIN(A)*(ASIN(A)/ASIN(A)) = ASIN(A)*1 = ∡45°
but if it associates from the left:
(ASIN(A)*ASIN(A))/ASIN(A) = (pi/4)^2/∡45° = pi/4 (correct, but in radians!)

With the "angle is a number" approach:
ASIN(A)*(ASIN(A)/ASIN(A)) = ASIN(A)*1 = ∡45°
(ASIN(A)*ASIN(A))/ASIN(A) = 45^2 / ∡45° = 45 (not an angle, but at least the same number as expected)

On the other hand, the "angle is a number" can also give bad results in expressions with mixed systems:

'∡50g*2/∡90°'

If associated from the left:
(∡50g*2)/∡90° = ∡100g/∡90° = 1
versus:
∡50g*(2/∡90°)= ∡50g*(1/45)= ∡1.11111111111111g

This can seriously drive a user crazy. What could be a solution for this?
 « Next Oldest | Next Newest »

 Messages In This Thread newRPL: Angles revisited - Claudio L. - 03-31-2016, 06:13 PM RE: newRPL: Angles revisited - Han - 03-31-2016, 06:49 PM RE: newRPL: Angles revisited - Claudio L. - 04-01-2016, 12:50 AM RE: newRPL: Angles revisited - Helix - 04-01-2016, 05:33 PM RE: newRPL: Angles revisited - Han - 04-01-2016, 05:48 PM RE: newRPL: Angles revisited - Claudio L. - 04-01-2016, 06:22 PM RE: newRPL: Angles revisited - Nigel (UK) - 04-01-2016, 06:27 PM RE: newRPL: Angles revisited - emece67 - 04-01-2016, 07:01 PM RE: newRPL: Angles revisited - Claudio L. - 04-01-2016 11:15 PM RE: newRPL: Angles revisited - emece67 - 04-01-2016, 11:46 PM RE: newRPL: Angles revisited - Nigel (UK) - 04-03-2016, 11:05 AM RE: newRPL: Angles revisited - Claudio L. - 04-04-2016, 12:04 AM RE: newRPL: Angles revisited - rprosperi - 03-31-2016, 06:54 PM RE: newRPL: Angles revisited - Claudio L. - 04-01-2016, 12:55 AM RE: newRPL: Angles revisited - rprosperi - 04-01-2016, 02:10 AM RE: newRPL: Angles revisited - Claudio L. - 04-01-2016, 03:47 PM RE: newRPL: Angles revisited - Guenter Schink - 04-01-2016, 09:58 PM RE: newRPL: Angles revisited - Nigel (UK) - 03-31-2016, 08:40 PM RE: newRPL: Angles revisited - Claudio L. - 04-01-2016, 01:12 AM RE: newRPL: Angles revisited - Nigel (UK) - 04-01-2016, 06:20 PM RE: newRPL: Angles revisited - Claudio L. - 04-01-2016, 06:43 PM RE: newRPL: Angles revisited - Claudio L. - 04-01-2016, 07:11 PM RE: newRPL: Angles revisited - SlideRule - 04-03-2016, 04:27 PM RE: newRPL: Angles revisited - Vtile - 04-03-2016, 08:12 PM RE: newRPL: Angles revisited - Claudio L. - 04-03-2016, 11:58 PM RE: newRPL: Angles revisited - Claudio L. - 04-04-2016, 11:52 AM RE: newRPL: Angles revisited - Claudio L. - 04-06-2016, 01:58 PM RE: newRPL: Angles revisited - Nigel (UK) - 04-07-2016, 01:55 PM RE: newRPL: Angles revisited - Claudio L. - 04-07-2016, 05:51 PM RE: newRPL: Angles revisited - Helix - 04-07-2016, 01:04 PM RE: newRPL: Angles revisited - Claudio L. - 04-07-2016, 01:35 PM RE: newRPL: Angles revisited - Francois Lanciault - 05-10-2016, 04:48 AM RE: newRPL: Angles revisited - Claudio L. - 05-10-2016, 02:52 PM

User(s) browsing this thread: 1 Guest(s)