Thread Links | Date Links | ||||
---|---|---|---|---|---|
Thread Prev | Thread Next | Thread Index | Date Prev | Date Next | Date Index |
George, Yes. It appears to me you understand correctly. In the modal interval linear interpolation L(U) = A + U * ( B - Dual(A) ) both A and B may be n-dimensional interval vectors representing the error tolerances of the endpoints of a parametric line segment. Most commonly in computer graphics and CAD both A and B are 3-dimensional interval vectors, as you suggest. Sometimes they are 4-dimensional (homogeneous) vectors, if one is dealing with rational Bezier or b-splines. The linear interpolation algorithms that define a Bezier or b-spline curve generalize trivially to parametric surfaces, parametric solids and higher-dimensional geometric shapes and are fundamental to many important algorithms in both computer graphics and CAD industry: - computing intersections of parametric lines and curves - computing intersections of parametric surfaces (e.g., in the automotive industry where portions of a rectangular Bezier or b-spline surface are trimmed away into some arbitrary non-rectangular shape) - computing intersections of parametric solids - motion blur and animation trajectoreis of rigid-body objects - inverse kinematics (also used in robotics and manufacturing) I suspect there may be more, but these are the ones I am familliar with or use on a daily basis. Computer graphics is often the proving-ground for HPC simply due to the millions and millions of compute-hours that go into rendering visual effects for movies. I don't know if anyone in this forum has ever visited a production studio, but typically they have large renderfarms with hundreds of computers and thousands of processors. Speed and efficiency means a lot to these people, since compute-time is by far the largest bottleneck in thier production pipelines. Nate----- Original Message ----- From: "Corliss, George" <george.corliss@xxxxxxxxxxxxx>
To: "Nate Hayes" <nh@xxxxxxxxxxxxxxxxx> Cc: "Corliss, George" <george.corliss@xxxxxxxxxxxxx>; "stds-1788" <stds-1788@xxxxxxxxxxxxxxxxx> Sent: Sunday, July 08, 2012 11:42 AM Subject: Re: Motion on interval flavors
Nate, Thank you. That is helpful.
Linear interpolation L(U) = A + U * ( B - A )
To be sure I understand, one setting might be: a is a point in R^3 b is a point in R^3 U is a scalar l(U) = a + U * (b - a) is a parametric form of a line in R^3 from point a (U = 0) to point b (U = 1). U in (-\infty, + \infty) describes the line determined by points a and b. This form arises in computer graphics applications ALL THE TIME. Now, l(U) = a + U * (b - a) is a vector equation. The components for x, y, and z coordinates has the scalar form L(U) = A + U * (B - A) you gave, where A, B, and L represent x, y, or z components of the vector equation. Then, your example is EXACTLY how one might determine where a line of interest intersects another object of interest, say a bounding box. Am I understanding/interpreting/applying your example correctly? Yes, your application to Bezier and b-spline bases for polynomials is a deeper application, but am I on the right track?That is EXACTLY the sort of example I was hoping to hear. We may justify research interests by "Because it is interesting/beautiful," but the effort to craft a standard MUST rest on "Because it is essential (not just useful) to some task someone pays for."
I HOPE we all accept computer graphics as a task for which people pay A LOT to get the last pixel right. I think I hear the same sentiment in your conclusion:
Again, I ask the question... if all the interval range enclosures are computed by complicated floating-point programs, why will any company waste the time and money to put classical interval operations into hardware. If no one will hardly use them? If P1788 is a standard aimed mainly at specifying the interval operations that will be implemented in hardware, then IMO it should really focus on Kaucher/modal operations; since in so many of the above examples it is clear that classical interval operations will simply not be used. Nate
Attachment:
signature.asc
Description: Binary data