SheetNode

class SheetNode

Bases: PandaNode

This class draws a visible representation of the NURBS surface stored in its NurbsSurfaceEvaluator. It automatically recomputes the surface every frame.

This is not related to NurbsSurface, CubicSurfaceseg or any of the ParametricSurface-derived objects in this module. It is a completely parallel implementation of NURBS surfaces, and will probably eventually replace the whole ParametricSurface class hierarchy.

Inheritance diagram

Inheritance diagram of SheetNode

explicit SheetNode(std::string const &name)
static TypeHandle get_class_type(void)
int get_num_u_subdiv(void) const

Returns the number of subdivisions per cubic segment to draw in the U direction. See set_num_u_subdiv().

int get_num_v_subdiv(void) const

Returns the number of subdivisions per cubic segment to draw in the V direction. See set_num_v_subdiv().

NurbsSurfaceEvaluator *get_surface(void) const

Returns the surface represented by the SheetNode.

bool get_use_vertex_color(void) const

Returns the “use vertex color” flag. See set_use_vertex_color().

void reset_bound(NodePath const &rel_to)

Recomputes the bounding volume. This is normally called automatically, but it must occasionally be called explicitly when the surface has changed properties outside of this node’s knowledge.

void set_num_u_subdiv(int num_u_subdiv)

Specifies the number of subdivisions per cubic segment (that is, per unique knot value) to draw in a fixed uniform tesselation of the surface in the U direction.

void set_num_v_subdiv(int num_v_subdiv)

Specifies the number of subdivisions per cubic segment (that is, per unique knot value) to draw in a fixed uniform tesselation of the surface in the V direction.

void set_surface(NurbsSurfaceEvaluator *surface)

Sets the particular surface represented by the SheetNode.

void set_use_vertex_color(bool flag)

Sets the “use vertex color” flag. When this is true, the R, G, B, A vertex color is assumed to be stored as the dimensions 0, 1, 2, 3, respectively, of the extended vertex values. Use NurbsCurveEvaluator::set_extended_vertex() to set these values.