Professional Documents
Culture Documents
no) "Line1" and "Line 2" are ranges listing the XY coordinates for the two lines If the ranges for Line1 or Line2 have more than 2 columns, the data in that range is assumed to be arrang "Coordinate" specifies the ordinate required, 1 = X, 2 = Y "Point No" specifies which intersection point is required If "Point No" is not provided IP returns an n x 2 array, where n is the number of intersection points. If "Coordinate" is not provided IP returns a 1 x 2 array if "Point no" is provided, or an n x 2 array if not. If "Line2" is a single point IP returns intersection points for a line through this point and parallel to the X ax =IP_4(Line1X, Line1Y, Line2X, Line2Y, Optional Coordinate, Optional Point no) For IP_4 the X and Y ranges for both lines are entered separately, allowing non-adjacent ranges to be use If the ranges for Line1 or Line2 have more than 1 column, the data in that range is assumed to be arrange
Line1 x 13 12.510565163 11.090169944 8.8778525229 3 3 -0.090169944 -2.877852523 -5.090169944 -6.510565163 -7 -6.510565163 -5.090169944 -2.877852523 -0.090169944 3 6.0901699437 8.8778525229 11.090169944 12.510565163 13 y 5 8.0901699437 10.877852523 13.090169944 17 15 14.510565163 13.090169944 10.877852523 8.0901699437 5 1.9098300563 -0.877852523 -3.090169944 -4.510565163 -5 -4 -3.090169944 -0.877852523 1.9098300563 5
20
15
10
Y-Axis
0 -10 -5
-5
Line2 (range name LineB) 13 6 -4 -5 -4 6 -7 16 5 16 Point No 1 2 X #VALUE! #VALUE! Y #VALUE! #VALUE! IP in Segment No. Line1 Line2 #VALUE! #VALUE! #VALUE! #VALUE!
-10
3 4 5 6 1 2 3 4 5 6
#VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE!
#VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE!
INSIDE Finds if a specified point is inside a closed polyline =INSIDE(Polyline, Point) #VALUE! #VALUE!
IPLC Finds the intersection points of a 2D line and a circle =IPLC(Line, CircleXY ,Radius) X Y Line 4 3 100 6 Circle centre Radius dx,dy 3 8 96 8 m 3 0.03125 c 2.875
Y #VALUE! #VALUE!
Check distance from circle centre and line parameters Dist m c IP1 #VALUE! #VALUE! #VALUE! IP2 #VALUE! #VALUE! #VALUE!
IPCC Finds the intersection points of two circles =IPCC(Circle1XY, Radius1, Circle2XY, Radius2) X Y Radius Circle 1 3 8 Circle 2 5 7
5 3
Y #VALUE! #VALUE!
Check distance from circle centre and line parameters Circ1 Circ2 IP1 #VALUE! #VALUE! IP2 #VALUE! #VALUE!
IPSSS, IPSS IPSSS finds the 3D intersection points of three spheres IPSS finds the location and radius of the intersection circle of two spheres, and the polar coordinate angles of the line connecting the two cenrtres
R 5 6 7
#VALUE! #VALUE!
#VALUE! #VALUE!
#VALUE! #VALUE!
Check distance from IP's to circle centres Sphere1 IP1 IP2 Sphere2 Sphere3
#VALUE! #VALUE!
#VALUE! #VALUE!
#VALUE! #VALUE!
=IPSS(Sphere1XYZR, Sphere2XYZR)
Distance from centre sphere1 to centre intersection circle, radius intersection circle, and angle of line connecting sphere centres in XY plane and perpendicular plane (radians) Dist; Theta1 Length Angle #VALUE! #VALUE! Radius; Theta2 #VALUE! #VALUE!
Check distance from circle to sphere centres Sphere1 #VALUE! Sphere2 #VALUE!
Theta1
#VALUE!
Theta2
#VALUE!
ArcCenT2IP finds the centre and radius of an arc specified by 2 tangent points and the intersection
If the tangent points are not equidistant from the intersection point the further point is moved along the tange together with the point number (1 or 2) of the adjusted point. ArcCenP3 finds the centre and radius of an arc specified by any 3 points on the arc Point 2 must lie between Points 1 and 3 For both functions points are specified as a single row range with 2 or 3 columns
If either of the tangent points are adjusted the revised 3D coordinates are returned in the second row of the a
If Point 1 is specified with 2 coordiantes the problem is treated as 2D, and any Z values specified for the other
Adjusted pt
Y #VALUE! #VALUE!
Check distance from tangent points to circle centre Point 1 Point 2 Adjusted Pt
#VALUE!
Z 1 2 3 Z #VALUE! R #VALUE!
X #VALUE!
Y #VALUE!
Z #VALUE!
R #VALUE!
tersection points. an n x 2 array if not. nt and parallel to the X axis if XY = 1, or the Y axis if XY = 2
20
15
10
Column C
Column C Column C
0 -5 0 5 10 15
-5
-10
X-Axis
nts and the intersection point of the tangents is moved along the tangent line.
the arc
Point 2
2.0000 0.5858 #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! Y #VALUE!
mn C
mn C
mn C
int 2
2.0000 1.0000 #VALUE! #VALUE! #VALUE! 1.4142 2.8284 #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! Z #VALUE! R #VALUE!
Point 3
1.0000 -0.4142 #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! 3.0000 2.0000 #VALUE! #VALUE! #VALUE! #VALUE!
PDIST Finds the perpendicular distance to the closest segment of a polyline =PDist(Line,Points) "Line" is a range listing the XY coordinates for the polyline "Points" is a range listing the XY coordinates for one or more points PDist returns an n x 3 array where n is the number of rows in the "points" range: Col1 = perpendicular distance from the point to the line. Cols 2 and 3 = X and Y components of the perpendicular distance. Enter as an array formula to return the whole array 15 Line x 13 12.510565 11.09017 8.8778525 3 3 -0.09017 -2.877853 -5.09017 -6.510565 -7 -6.510565 -5.09017 -2.877853 -0.09017 3 6 8.8778525 11.09017 12.510565 13 Points 4.8 4.5 -8 5 9 15 15 10 2 4 y 5 8.0901699 10.877853 12.9 13 14 14.510565 13.09017 10.877853 8.0901699 5 1.9098301 -0.877853 -3.09017 -4.510565 -3 0 -3.09017 -0.877853 1.9098301 5
10
Y-Axis
0 -10 -5 0 5
-5
-10
X-Axis
15
Perpendicular Lines 1 4.8 15 #VALUE! #VALUE! 2 4.5 15 #VALUE! #VALUE! -8 10 #VALUE! #VALUE! 5 2 #VALUE! #VALUE! 9 4 #VALUE! #VALUE!
10
4
5
0 0 5 10 15
-5
-10
X-Axis
ular Lines
RtoP, PtoR Converts rectangular to polar coordinates and polar to rectangular =RtoP(Rectangular Coordinate range, Origin, Coordinate number) =PtoR(Polar Coordinate range, Origin, Coordinate number) Coordinate number 1 2 3 Rectangular X Y Z Polar R Theta1 Theta2 Theta1 = angle in XY plane Theta2 = angle in perpendicular plane Where an origin is given the origin is moved to the coordinates specified X 13 12.510565 11.09017 8.8778525 3 3 -0.09017 -2.877853 -5.09017 -6.510565 -7 -6.510565 -5.09017 -2.877853 -0.09017 3 6.0901699 8.8778525 11.09017 12.510565 13 Y 5 8.0901699 10.877853 13.09017 17 15 14.510565 13.09017 10.877853 8.0901699 5 1.9098301 -0.877853 -3.09017 -4.510565 -5 -4 -3.09017 -0.877853 1.9098301 5 R #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! theta1 #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! X #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE!
Rotate Rotates 2D or 3D rectangular axes about any axis Rotate(Rectangular Coordinate range, Rotation in radians, Axis, Optional Coordinate Number) Axis or Coordinate number 1 2 3 X Y Z Rotate coordinates in XY plane about Z axis: Rotation 0.7853981634 Axis 3 X Y X Y 1.000 1.000 #VALUE! #VALUE! -1.000 1.000 #VALUE! #VALUE! -1.000 -1.000 #VALUE! #VALUE!
1.000
-1.000
#VALUE!
#VALUE!
#VALUE!
Rotate 3D coordinates about 3 axes: Rotation 0.5235987756 Axis 1 X 1.000 -1.000 -1.000 1.000 1.000 -1.000 -1.000 1.000 Y 1.000 1.000 -1.000 -1.000 1.000 1.000 -1.000 -1.000 Z 1.000 1.000 1.000 1.000 -1.000 -1.000 -1.000 -1.000 X #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! Y
30
0.3490659 2 Z X #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE!
Y #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE!
dist #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE!
slope #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE!
oordinate Number)
#VALUE!
20
0.5235988 3 Z X #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! Y
30
-0.523599 3 Z X #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! Y #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! Z #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE!
-0.349066 2 X #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! Y #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! Z #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE!
-0.523599 1 X #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! Y #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! Z #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE! #VALUE!
=interp(tablerange, value, column no) =interp2(tablerange, row value, column val) =loginterp(tablerange, value, column no) =loginterp2(tablerange, row value, column val) =quadinterp(tablerange, value, column no)
Linear interpolation 2 way linear interpolation Log interpolation 2 way log interpolation Quadratic interpolation
K1 Shrinkage Arid 100 200 0.09 0.03 0.13 0.05 0.24 0.08 0.48 0.19 0.73 0.38 0.91 0.59 1.05 0.75 1.1 0.83 1.1 0.86
100 X-Axis1000
10000
100000
500 1 100
Disclaimer This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. A copy of the GNU General Public License may be obtained from: The Free Software Foundation, Inc. 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
dougjenkins@interactiveds.com.au www.interactiveds.com.au
Copyright 2009 Interactive Design Services Pty Ltd. all rights reserved
Revision History Current Version Rev 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 1.11 1.12 1.13 Date 1-Jun-05 14-Dec-05 23-Dec-06 18-Jul-07 25-Aug-07 16-Sep-07 10-Aug-08 6-Jan-09 14-Feb-09 24-Feb-09 4/7/2009 7/16/2009 7/18/2009 7/19/2009 By DAJ DAJ DAJ DAJ DAJ DAJ DAJ DAJ DAJ DAJ DAJ DAJ DAJ DAJ 1.14 19-Jul-09 Description First release Interp modified for X values in descending order IP modified to use arrays in place of ranges IP modified to allow array output Quadinterp added IPLC, IPCC, IPSS, IPSSS added. INSIDE added, IPax separated from IP Sign of rotation about Y axis corrected in Rotate. PDist added PDist modified for duplicate points IP_4 function added IPSSS corrected for revised Rotate ArcCenT2IP and ArcCenP3 added Minor changes to code, no change to results
1.14
7/19/2009 DAJ
ArcCenP3_2 added