 HP Prime: Area of a Fan-Shaped Field (Baseball Field) - Printable Version +- HP Forums (https://www.hpmuseum.org/forum) +-- Forum: HP Software Libraries (/forum-10.html) +--- Forum: HP Prime Software Library (/forum-15.html) +--- Thread: HP Prime: Area of a Fan-Shaped Field (Baseball Field) (/thread-409.html) HP Prime: Area of a Fan-Shaped Field (Baseball Field) - Eddie W. Shore - 01-11-2014 11:04 PM Given, lines of various length from a single vertex. The angles between the lines are known. FANAREA(list of lengths, list of angles in degrees) The result is a list of two elements. First element: area of the field Second element: list: length of the connecting lines Example: AT&T Park Dimensions from Clem's Blog: http://www.andrewclem.com/Baseball/ATTPark.html Angles measured with a protractor. So, realistically, my estimate of area is rough. L1:={339,382,404,399,421,365,309} L2:={30,6,9,20,9,16} FANAREA(L1,L2) returns {109337.870804, {191.1175010192, 46.6352856001, 63.1995292625, 144.030366611, 83.1849883392, 108.96879942}} Area of the field: approximately 109,337.871 Note: CHAR(10) gives a line break in a string. Code: ```  // Declare Subs SUB1(); SUB2(); EXPORT FANAREA(L1,L2); BEGIN // 2014-01-11 EWS // Area of a field // lines from vertex w/angles LOCAL I,T:=0,L3:=L2; // Degree HAngle:=1; // Validate  IF SIZE(L1)≠SIZE(L2)+1 THEN MSGBOX("Error: Wrong"+CHAR(10) +"Size"+CHAR(10) +"L2≠L1+1"); KILL; END; // Calculation FOR I FROM 1 TO SIZE(L2) DO L3(I):=SUB1(L1(I),L1(I+1),L2(I)); T:=T+SUB2(L1(I),L1(I+1),L3(I)); END; MSGBOX("Area: "+T); RETURN {T, L3}; END; // Law of Cosines SUB1(A,B,C) BEGIN RETURN √(A^2+B^2-2*A*B*COS(C)); END; //Heron's Formula SUB2(A,B,C) BEGIN LOCAL S:=(A+B+C)/2; RETURN √(S*(S-A)*(S-B)*(S-C)); END;``` Blog Entry: http://edspi31415.blogspot.com/2014/01/hp-prime-area-of-fan-shaped-field.html