Name
Boolean operations -- set operations between surfaces: union, intersection, difference.
Description
The three-dimensional curve intersection of two surfaces is described by a GtsSurfaceInter object. This object contains additional information which allows to compute all the set operations between the two surfaces.
Details
GTS_SURFACE_INTER()
#define GTS_SURFACE_INTER(obj) |
Casts obj to GtsSurfaceInter.
GTS_IS_SURFACE_INTER()
#define GTS_IS_SURFACE_INTER(obj) |
Evaluates to TRUE if obj is a GtsSurfaceInter, FALSE otherwise.
struct GtsSurfaceInterClass
struct GtsSurfaceInterClass {
GtsObjectClass parent_class;
}; |
The surface intersection class.
struct GtsSurfaceInter
struct GtsSurfaceInter {
GtsObject object;
GtsSurface * s1, * s2;
GSList * edges;
}; |
The surface intersection object. The edges list contains all the edges defining the 3D curve intersection of the two surfaces. The two surfaces s1 and s2 contain a local triangulation of the intersecting faces of the two surfaces.
gts_surface_inter_class ()
gts_surface_inter_check ()
enum GtsBooleanOperation
typedef enum { GTS_1_OUT_2,
GTS_1_IN_2,
GTS_2_OUT_1,
GTS_2_IN_1 } GtsBooleanOperation; |
GTS_1_OUT_2 identifies the part of the first surface which lies outside the second surface.
GTS_1_IN_2 identifies the part of the first surface which lies inside the second surface.
GTS_2_OUT_1 identifies the part of the second surface which lies outside the first surface.
GTS_2_IN_1 identifies the part of the second surface which lies inside the first surface.
gts_surface_inter_boolean ()
Adds to surface the part of the surface described by si and op.