ScissorEffect
from panda3d.core import ScissorEffect
- class ScissorEffect
Bases:
Bases:
RenderEffectThis provides a higher-level wrapper around
ScissorAttrib. It allows for the scissor region to be defined via points relative to the current node, and also performs culling based on the scissor region.Inheritance diagram
- addPoint(point: LPoint3, node: NodePath) RenderEffect
Returns a new
ScissorEffectwith the indicated point added. It is only valid to call this on a “node” typeScissorEffect. The full set of points, projected into screen space, defines the bounding volume of the rectangular scissor region.Each point may be relative to a different node, if desired.
- static getClassType() TypeHandle
- getClip() bool
Returns true if this
ScissorEffectactually enables scissoring, or false if it culls only.
- getFrame() LVecBase4
If
isScreen()returns true, this method may be called to query the screen- based scissor frame. This is a series of left, right, bottom, top, representing the scissor frame relative to the currentDisplayRegion. SeeScissorAttrib.
- getNode(n: int) NodePath
Returns the node to which the nth point is relative, or empty
NodePathto indicate the current node.
- getNumPoints() int
Returns the number of node-based scissor points. See
getPoint().
- getPoint(n: int) LPoint3
If
isScreen()returns false, thengetNumPoints()andgetPoint()may be called to query the node-based scissor frame. These return n points (at least two), which are understood to be in the space of this node, and which define any opposite corners of the scissor frame.
- isScreen() bool
Returns true if the
ScissorEffectis a screen-based effect, meaninggetFrame()has a meaningful value, but get_a() and get_b() do not.
- static makeNode(a: LPoint3, b: LPoint3, c: LPoint3, d: LPoint3, node: NodePath) RenderEffect
Constructs a new node-relative
ScissorEffect. The four points are understood to be relative to the indicated node, or the current node if the indicatedNodePathis empty, and determine four points surrounding the scissor region.
- static makeNode(a: LPoint3, b: LPoint3, node: NodePath) RenderEffect
Constructs a new node-relative
ScissorEffect. The two points are understood to be relative to the indicated node, or the current node if theNodePathis empty, and determine the diagonally opposite corners of the scissor region.
- static makeNode(clip: bool) RenderEffect
Constructs a new node-relative
ScissorEffect, with no points. This emptyScissorEffectdoes nothing. You must then calladdPoint()a number of times to add the points you require.
- static makeScreen(frame: LVecBase4, clip: bool) RenderEffect
Constructs a new screen-relative
ScissorEffect. The frame defines a left, right, bottom, top region, relative to theDisplayRegion. SeeScissorAttrib.
