To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cad.devOpen lugnet.cad.dev in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / Development / 1000
999  |  1001
Subject: 
Re: Quad intersections
Newsgroups: 
lugnet.cad.dev
Date: 
Mon, 5 Apr 1999 13:57:12 GMT
Viewed: 
600 times
  
Dave,

Thank you very much!  This will help me on some parts-work I was avoiding,
just because I didn't want to figure out these intersections.

I'm planning on uploading a spreadsheet with some basic interpolation and
intersection templates.  Do you mind if I include your results in that
file?

Steve

On Mon, 5 Apr 1999 07:25:41 GMT, Dave Hylands <DHylands@creo.com> wrote:

Hi Steve,

I've been lurking for a while and thought your post was interesting enough
to figure it out. I brushed off my Calculus text book, and after a page and
a half of algebra, and remembering what determinants and cross products are
all about I believe that I have the answer.

The formula for a plane can be expressed as:

ax + by + cz = d, where a, b, c, and d are all constants.

Given 3 points (x0, y0, z0) (x1, y1, z1) (x2, y2, z2)

a =   y0*z1 - y0*z2 - y1*z0 + y1*z2 + y2*z0 - y2*z1
b = - x0*z1 + x0*z2 + x1*z0 - x1*z2 - x2*z0 + x2*z1
c =   x0*y1 - x0*y2 - x1*y0 + x1*y2 + x2*y0 - x2*y1
d = a*x0 + b*y0 + c*z0

Note for d you can substitue any of the 3 points (by definition they all
have to give the same answer).

Now that you know a, b, c, d and assuming that you're given x and z, then:

by = d - ax - cz

and

y = d/b - ax/b - cz/b

The fourth point on the quad is redundant, although you can check it by
plugging it into the formula for the plane and verifying that ax3 + by3 +
cz3 is within some small epsilon of d (the small epsilon is to account for
floating point round off errors).

Of course, now that you've found y, you probably need to verify that (x, y,
z) actually falls within the given quad (as they say in the textbooks, this
is an exercise left for the reader).

If anyone is interested in a more detailed derivation, I'd be happy to share
the gory details.

---
Dave Hylands               Email: DHylands@creo.com     3700 Gilmore Way
Principal Software Developer Tel: (604) 451-2700 x2329  Burnaby B.C.
Creo Products Inc.           Fax: (604) 437-9891        Canada V5G 4M1


-----Original Message-----
From: blisses@worldnet.att.net [mailto:blisses@worldnet.att.net]
Sent: Friday, April 02, 1999 7:16 PM
To: lugnet.cad.dev@lugnet.com
Subject: Quad intersections


Can anyone explain how to intersect a quad?  I'm sure I can figure it out
on my own, but if someone knows of some straightforward formulae, I'd be
very appreciative.

Since this is for LDraw, I've got the following situation:

Conditions:
- Four points to make a quad (or, to be simpler, 3 points to make a
triangle).
- Two components for another point (probably X and Z, but it doesn't really
matter which two).

Needed:
- Value for third component.

TIA for any help!
Steve




Message is in Reply To:
  RE: Quad intersections
 
Hi Steve, I've been lurking for a while and thought your post was interesting enough to figure it out. I brushed off my Calculus text book, and after a page and a half of algebra, and remembering what determinants and cross products are all about I (...) (25 years ago, 5-Apr-99, to lugnet.cad.dev)

5 Messages in This Thread:



Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR