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 / 1005
1004  |  1006
Subject: 
RE: Quad intersections
Newsgroups: 
lugnet.cad.dev
Date: 
Mon, 5 Apr 1999 21:47:42 GMT
Viewed: 
758 times
  
By all means. I can't really claim that it's original since most of the
material I used to derive the results came from my Calculus Text, which, if
anybody cares was:

Calculus with Analytical Geometry, 3rd edition
by Howard E. Campbell and Paul F. Dierker (from the University of Idaho)

I used the sections titled: "The Cross Product", and "Equations of Lines and
Planes".

---
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
To: lugnet.cad.dev@lugnet.com
Sent: 4/5/99 6:57 AM
Subject: Re: Quad intersections

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




1 Message 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