Overview of the geom3d Package
|
Calling Sequence
|
|
geom3d[command](arguments)
command(arguments)
|
|
Description
|
|
•
|
The commands in the geom3d package enable you to work in three-dimensional Euclidean geometry. Note that the package does not support the extended space, that is, it does not handle points at infinity and lines at infinity.
|
•
|
Each command in the geom3d package can be accessed by using either the long form or the short form of the command name in the command calling sequence.
|
•
|
The geometric objects supported in this package are: point, segment, directed segment, line, plane, triangle, sphere, and polyhedra. To create the basic geometric objects, use the following commands.
|
•
|
For basic geometric objects, the following commands are supported.
|
•
|
Segment/Directed Segment:
|
•
|
The study of polyhedra has been one of the most enduring, fascinating topics of geometry. The geom3d package supports various types of polyhedra.
|
•
|
Quasi-regular Polyhedra:
|
•
|
The two processes to construct new polyhedra from given polyhedra are also supported.
|
•
|
The geom3d[draw] command provides the graphical visualization of all objects supported in the package.
|
•
|
Other commands are also implemented.
|
•
|
When an object is defined using its algebraic representation (that is, an equation or a polynomial), you can use any name for the x-axis, the y-axis, and the z-axis. In general, the names of the axes must be included when you define an object. A simple way to set the names without being prompted is to set the environment variables _EnvXName, _EnvYName, and _EnvZName to the axis names (or _EnvTName for the case of line) that you prefer.
|
•
|
For commands in the package that create a geometric object, or a list of geometric objects, the calling sequence is of the form command_call(obj,...) where obj is either a name of the geometric object to be created, or a list of geometric objects to be created.
|
•
|
Note that you must make explicit assumptions for the symbolic names in an object (such as, real, positive, ...) when you want to apply a test (for example, AreOnObject) to an object. In this case, the power of the geom3d package is dependent on the power of the Maple assume command.
|
•
|
For commands where output is a boolean value (true, false, FAIL), the calling sequence is of the form command_call(..., cond), where cond is a an optional name. If the output is FAIL, and this optional argument is given, then the condition that makes the output true is assigned to cond.
|
•
|
The value of cond might be a Maple expression (use ), or of the form cond = &or(expr_1,...,expr_n) or cond = &and(expr_1,...,expr_n) (use assume(op(i,cond)) for the former case where i is from 1 to n; and assume(op(cond)) for the latter case.
|
|
|
Examples
|
|
>
|
|
>
|
|
| (1) |
>
|
|
| (2) |
Define the same sphere but without the names of the axes in the input; you will be prompted for them.
>
|
|
| (3) |
>
|
|
| (4) |
Define the same sphere where the names of the axes are assigned using the three environment variables.
>
|
|
| (5) |
>
|
|
| (6) |
In the above examples, c is assigned to a geometric object (sphere), c can also be assigned to a list of objects.
>
|
|
>
|
|
intersection: "two points of intersection"
| |
| (7) |
>
|
|
| (8) |
>
|
|
| (9) |
The following is an example with unknown parameters, which returns the message FAIL.
>
|
|
>
|
|
IsOnObject: "hint: unable to determine if 1+a^2 is zero"
| |
| (10) |
>
|
|
>
|
|
| (11) |
|
|