Overview - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Overview of the geom3d Package

 

Calling Sequence

Description

Examples

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.

dsegment

line

plane

point

segment

sphere

triangle

 

• 

For basic geometric objects, the following commands are supported.

• 

Point:

AreCollinear

AreConjugate

AreCoplanar

centroid

coordinates

distance

HarmonicConjugate

IsOnObject

midpoint

OnSegment

randpoint

xcoord

ycoord

zcoord

 

 

• 

Segment/Directed Segment:

AreParallel

ArePerpendicular

DefinedAs

midpoint

• 

Line:

AreConcurrent

AreCoplanar

AreParallel

ArePerpendicular

AreSkewLines

distance

Equation

FindAngle

intersection

parallel

tname

 

• 

Plane:

AreParallel

ArePerpendicular

distance

Equation

FindAngle

intersection

IsTangent

parallel

• 

Triangle:

altitude

area

centroid

DefinedAs

FindAngle

IsEquilateral

IsRightTriangle

sides

• 

Sphere:

area

AreConjugate

ArePerpendicular

center

Equation

FindAngle

intersection

IsTangent

polar

pole

powerps

RadicalCenter

RadicalLine

RadicalPlane

radius

TangentPlane

volume

 

 

 

• 

The study of polyhedra has been one of the most enduring, fascinating topics of geometry. The geom3d package supports various types of polyhedra.

• 

Regular Polyhedra:

area

center

cube

dodecahedron

faces

GreatDodecahedron

GreatIcosahedron

GreatStellatedDodecahedron

hexahedron

icosahedron

incident

InRadius

IsRegular

MidRadius

octahedron

radius

RegularPolyhedron

schlafli

sides

SmallStellatedDodecahedron

tetrahedron

vertices

volume

 

• 

Quasi-regular Polyhedra:

cuboctahedron

icosidodecahedron

IsQuasi

schlafli

sides

vertices

 

 

• 

General Polyhedra:

gtetrahedron

parallelepiped

 

 

• 

Archimedean Solids:

Archimedean

center

cuboctahedron

faces

GreatRhombicuboctahedron

GreatRhombiicosidodecahedron

icosidodecahedron

incident

IsArchimedean

radius

schlafli

sides

SmallRhombicuboctahedron

SmallRhombiicosidodecahedron

SnubCube

SnubDodecahedron

TruncatedCuboctahedron

TruncatedDodecahedron

TruncatedHexahedron

TruncatedIcosahedron

TruncatedIcosidodecahedron

TruncatedOctahedron

TruncatedTetrahedron

vertices

• 

Duality:

center

duality

faces

HexakisIcosahedron

HexakisOctahedron

PentagonalHexacontahedron

PentagonalIcositetrahedron

PentakisDodecahedron

radius

RhombicDodecahedron

RhombicTriacontahedron

schlafli

TetrakisHexahedron

TrapezoidalHexecontahedron

TrapezoidalIcositetrahedron

TriakisIcosahedron

TriakisOctahedron

TriakisTetrahedron

vertices

 

• 

The two processes to construct new polyhedra from given polyhedra are also supported.

center

faces

facet

IsFacetted

IsStellated

schlafli

stellate

vertices

• 

Various types of geom3d[transformation] are supported.

GlideReflection

homology

homothety

inverse

inversion

projection

reflection

rotation

RotatoryReflection

ScrewDisplacement

StereographicProjection

transform

translation

transprod

 

 

• 

The geom3d[draw] command provides the graphical visualization of all objects supported in the package.

• 

Other commands are also implemented.

AreDistinct

detail

form

xname

yname

zname

 

 

• 

To display the help page for a particular geom3d command, see Getting Help with a Function in a Package.

• 

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 assumecond), 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

withgeom3d:

spheres,x2+y2+z2=1,x,y,z,centername=o

s

(1)

details

name of the objectsform of the objectsphere3dname of the centerocoordinates of the center0,0,0radius of the sphere1surface area of the sphere4πvolume of the sphere4π3equation of the spherex2+y2+z21=0

(2)

Define the same sphere but without the names of the axes in the input; you will be prompted for them.

spherec,m2+n2+p2=1

c

(3)

detailc

name of the objectcform of the objectsphere3dname of the centercenter_c_1coordinates of the center0,0,0radius of the sphere1surface area of the sphere4πvolume of the sphere4π3equation of the spherem2+n2+p21=0

(4)

Define the same sphere where the names of the axes are assigned using the three environment variables.

_EnvXNamem:_EnvYNamen:_EnvZNamep:

spherec,pointoo,0,0,0,1

c

(5)

Equationc

m2+n2+p21=0

(6)

In the above examples, c is assigned to a geometric object (sphere), c can also be assigned to a list of objects.

linel2,pointA,0,0,0,pointB,1,0,0,spherec,x2+y2+z2=1,x,y,z:

intersectionH,l2,c

intersection:   "two points of intersection"

H

(7)

H

l2_intersect1_c,l2_intersect2_c

(8)

detailH

name of the objectl2_intersect1_cform of the objectpoint3dcoordinates of the point1,0,0,name of the objectl2_intersect2_cform of the objectpoint3dcoordinates of the point−1,0,0

(9)

The following is an example with unknown parameters, which returns the message FAIL.

spheres,pointo,0,0,0,1:

IsOnObjectpointB,1,1,a,s,cond

IsOnObject:   "hint: unable to determine if a^2+1 is zero"

FAIL

(10)

assumecond

IsOnObjectpointB,1,1,a,s

true

(11)

See Also

assume

geom3d/objects

geom3d/transformation

geom3d[draw]

UsingPackages