PointOffsetTowardsPoint3DOptions:FunctionReturnType:PointParametersPointA=NoPoint<Point>PointB=NoPoint<Point>Distance=0.0<Real>GrammarText:PointOffsetTowardsPoint3D(PointA,PointB,Distance)HintText:(None)CustomScriptCodeLocalVariablesL.Point=NoPoint<Point>L.A=0.0<Real>L.L=0.0<Real>L.Q=0.0<Real>L.X=0.0<Real>L.Y=0.0<Real>L.Z=0.0<Real>Actions-------youneedaandqangels.lis2ddistance.ais2dangle,andqistheanglebetweenvector(fromsourcetotarget)andthesurface-------a=atan2(dx,dy)-------l=sqrt(dx^2,dy^2)-------q=atan2(l,dz)-------togetdx,dy,anddzback,youusethese:-------x=r*cos(q)*cos(a)-------y=r*cos(q)*sin(a)-------z=r*sin(q)-------r=128foryou-------or(ifyoumeantl=128),r=128*cos(q)-------ThisfunctionisfromtheGAx3modwhichsubtractsonepointformother.Variable-SetL.Point=(PointA-PointB)Variable-SetL.A=(Atan2((XofL.Point),(YofL.Point)))-------TheSquarerootfunctioncouldn't take two number (like in your instructions) but I had to guess what to do. Variable - Set L.L = (Square root((((X of L.Point) ^ 2.0) + ((Y of L.Point) ^ 2.0)))) Variable - Set L.Q = (Atan2(L.L, (Height of L.Point))) Variable - Set L.X = (* (Distance, (Cos(L.Q)), (Cos(L.A)))) Variable - Set L.Y = (* (Distance, (Cos(L.Q)), (Sin(L.A)))) Variable - Set L.Z = (* (Distance, (Sin(L.Q)))) General - Return (Point(L.X, L.Y, L.Z))
Solved.