surface¶
This Cython module defines base classes for surface objects and their acceleration structures in GIANT.
Description¶
In GIANT a surface is an object which is represented by small, tessellated geometry primitives (like triangles). It is
the most common way to represent an object in GIANT, since it can be used to represent arbitrary terrain, as well as
both small patches and full global shape models. In general a user won’t interact with this module, though, and instead
will used the predefined surfaces described in triangle
. This module is reserved primarily for those
developing new surface geometry primitives or acceleration structures.
For those developing new surface geometry primitives, consider the RawSurface
, Surface64
and
Surface32
classes below. For those developing a new acceleration structure consider the Surface
class below. For examples of how this is done refer to the triangle
and kdtree
modules.
Classes
This defines the basic interface expected of all surfaces in GIANT. |
|
This interface class serves as the backbone for surfaces in GIANT. |
|
This class serves as the backbone for surfaces in GIANT represented using single precision. |
|
This class serves as the backbone for surfaces in GIANT represented using double precision. |
|
This helper function determines the limb points for a surface (visible edge of the surface) that would be visible for an observer located at |