Lines Matching defs:d1
203 void __gl_edgeIntersect( GLUvertex *o1, GLUvertex *d1,
206 /* Given edges (o1,d1) and (o2,d2), compute their point of intersection.
221 if( ! VertLeq( o1, d1 )) { Swap( o1, d1 ); }
223 if( ! VertLeq( o1, o2 )) { Swap( o1, o2 ); Swap( d1, d2 ); }
225 if( ! VertLeq( o2, d1 )) {
227 v->s = (o2->s + d1->s) / 2;
228 } else if( VertLeq( d1, d2 )) {
229 /* Interpolate between o2 and d1 */
230 z1 = EdgeEval( o1, o2, d1 );
231 z2 = EdgeEval( o2, d1, d2 );
233 v->s = Interpolate( z1, o2->s, z2, d1->s );
236 z1 = EdgeSign( o1, o2, d1 );
237 z2 = -EdgeSign( o1, d2, d1 );
244 if( ! TransLeq( o1, d1 )) { Swap( o1, d1 ); }
246 if( ! TransLeq( o1, o2 )) { Swap( o1, o2 ); Swap( d1, d2 ); }
248 if( ! TransLeq( o2, d1 )) {
250 v->t = (o2->t + d1->t) / 2;
251 } else if( TransLeq( d1, d2 )) {
252 /* Interpolate between o2 and d1 */
253 z1 = TransEval( o1, o2, d1 );
254 z2 = TransEval( o2, d1, d2 );
256 v->t = Interpolate( z1, o2->t, z2, d1->t );
259 z1 = TransSign( o1, o2, d1 );
260 z2 = -TransSign( o1, d2, d1 );