Author: Laurence D. Finston.

This copyright notice applies to the text and source code of this web site, and the graphics that appear on it. The software described in this text has its own copyright notice and license, which can be found in the distribution itself.

Copyright (C) 2005, 2006, 2007 The Free Software Foundation

Permission is granted to copy, distribute, and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of this license is included in the file COPYING.TXT

Last updated: April 29, 2006

Top | |

Introduction | |

Related_Cuboids | |

Classifying Points with Respect to an Ellipsoid | |

Intersections | |

Ellipsoid–Linear Path | |

Ellipsoid–Plane | |

Contact |

Back to top

Back to Quadric Surfaces page

Back to main page

2005.10.31.

I've now added the data type **ellipsoid** to the 3DLDF language.
It corresponds to the type **class Ellipsoid** in the C++ code.

Back to contents

Back to top

Back to Quadric Surfaces page

Back to main page

2005.12.07.

I've now added parser rules and functions for finding the
enclosing cuboid of an ellipsoid, i.e., the smallest
cuboid that contains the ellipsoid.
Finding the inscribed cuboid of an ellipsoid, i.e., the
*largest* cuboid that fits into an ellipsoid, is more
difficult. I don't yet know how to do this.

The 3DLDF code for generating the following four images is in elpsd_02.ldf.

Perspective Projection

Parallel Projection, X-Z Plane

Parallel Projection, X-Y Plane

Parallel Projection, Z-Y Plane

Back to contents

Back to top

Back to Quadric Surfaces page

Back to main page

`points`

can be classified according
to their position with respect to a
`ellipsoid`

by using the `location`

operator:

ellipsoid E; set E with_center origin with_axis_x 24 with_axis_y 16 with_axis_z 10 with_divisions_x 8 with_divisions_y 8 with_divisions_z 2 with_point_count 64; point p[]; p0 := (1, 2, 1); %% Inside. p1 := (4, 9, 0); %% Outside. ellipse e; e := get_ellipse 3 E; p2 := get_point 60 e; %% On the surface. message "p0 location E:"; show p0 location E; message "p1 location E:"; show p1 location E; message "p2 location E:"; show p2 location E;

`location`

returns one of the following numerical values:

0: | The `point`
lies on the surface of the `ellipsoid` .
| |

1: | The `point`
lies within the `ellipsoid` .
| |

-1: | The `point`
lies outside the `ellipsoid` .
| |

`INVALID_NUMERIC` :
| An error occurred. |

In the following image, **p _{0}** lies inside the

`ellipsoid`

,

Back to contents

Back to top

Back to Quadric Surfaces page

Back to main page

2005.12.09.

The following four images illustrate the intersections of an
`Ellipsoid`

and a linear
`Path`

.
The 3DLDF code for generating these images is in
elpsd_13.ldf.

Back to contents

Back to top

Back to Quadric Surfaces page

Back to main page

2005.12.15.

The routine for finding the **ellipse** that represents the
intersection of an **ellipsoid** and a **plane**.

The 3DLDF code for generating the following four images is in elpsd_17.ldf.

Parallel Projection, X-Z Plane

Parallel Projection, X-Y Plane

Parallel Projection, Z-Y Plane

Back to contents

Back to top

Back to Quadric Surfaces page

Back to main page