Eidolon
|
Classes | |
class | IsoplaneModifier |
class | PlaneSliceFilter |
class | SliceBox |
class | SliceBoxRepr |
class | SliceObject |
class | SlicePlane |
class | SlicePlaneRepr |
class | SlicePlugin |
class | SlicePropertyWidget |
class | SliceRepr |
Functions | |
def | sliceTriangle (slicevals, verts, indices, cols, startindex) |
def | planeSliceFilterRange (process, origtrans, planept, planenorm, nodes, nodeprops, nodecolors, indices, extinds, reprtype) |
Variables | |
string | sliceObjMatName = 'SliceObj' |
BoxModes = enum('Inside','Outside') | |
PlaneModes = enum('Below Plane','Above Plane','On Plane','Orthogonal Planes') | |
ParamNames = enum('planept','planenorm','planeright','planemode','v0','v1','v2','v3','v4','v7','boxmode') | |
def eidolon.plugins.SlicePlugin.planeSliceFilterRange | ( | process, | |
origtrans, | |||
planept, | |||
planenorm, | |||
nodes, | |||
nodeprops, | |||
nodecolors, | |||
indices, | |||
extinds, | |||
reprtype | |||
) |
Filter out elements in `indices' above the plane (planept,planenorm). For lines and triangles, generate new indices and nodes for the bisection of those elements sliced by the plane.
def eidolon.plugins.SlicePlugin.sliceTriangle | ( | slicevals, | |
verts, | |||
indices, | |||
cols, | |||
startindex | |||
) |
Given a triangle defined by the given 3 vertices (tuples of vec3 values, first being the coordinate) in list `verts' whose distances from the slice plane are given in list `slicevals', whose indices in a topology are `indices' and whose colours are `cols', this yields 2 new vertices followed by 2 new colours and finally a list of index triples defining new triangles. The indices start from `startindex' and go up, thus they can be added to a topology whose largest index is `startindex'-1.
BoxModes = enum('Inside','Outside') |
ParamNames = enum('planept','planenorm','planeright','planemode','v0','v1','v2','v3','v4','v7','boxmode') |
PlaneModes = enum('Below Plane','Above Plane','On Plane','Orthogonal Planes') |
string sliceObjMatName = 'SliceObj' |