77 if (args.length () != 5)
80 const double eps = 1.0e-12;
84 const Matrix elem (args(2).matrix_value ());
105 double x0 = 0.0, y0 = 0.0;
106 double a11 = 0.0, a12 = 0.0, a21 = 0.0, a22 = 0.0, det = 0.0;
107 double xt = 0.0, yt = 0.0;
108 double dx1 = 0.0, dx2 = 0.0, c1 = 0.0, c2 = 0.0;
125 c1 = (a22 * dx1 - a21 * dx2) / det;
126 c2 = (-a12 * dx1 + a11 * dx2) / det;
127 if (c1 >= -
eps && c2 >= -
eps && (c1 + c2) <= 1 +
eps)
135 for (k = 0; k < nelem; k++)
137 if (xt >= minx(k) && xt <= maxx(k) && yt >= miny(k) && yt <= maxy(k))
143 a11 =
REF (
x, k, 1) - x0;
144 a12 =
REF (y, k, 1) - y0;
145 a21 =
REF (
x, k, 2) - x0;
146 a22 =
REF (y, k, 2) - y0;
147 det = a11 * a22 - a21 * a12;
152 c1 = (a22 * dx1 - a21 * dx2) / det;
153 c2 = (-a12 * dx1 + a11 * dx2) / det;
154 if (c1 >= -
eps && c2 >= -
eps && (c1 + c2) <= 1 +
eps)
#define DEFUN(name, args_name, nargout_name, doc)
Macro to define a builtin function.