You can easily compute offset for 'y' by using Pythagorean theorem as you can make a right triangle from tangent line. The calculations are done as,
CGPoint panPoint = [gesture locationInView:self.superview];
CGPoint center = self.center;
pantPoint.x = triangleStartPointFromTop.x;
CGFloat per = fabsf(panPoint.y - triangleStartPointFromTop.y);
CGFloat base = fabsf(per * tanf(triangle.theta));
panPoint.x += base;
center = panPoint;