EggPolygon

from panda3d.egg import EggPolygon
class EggPolygon

Bases: EggPrimitive

A single polygon.

Inheritance diagram

Inheritance diagram of EggPolygon

__init__(*args, **kwargs)
assign()

C++ Interface: assign(const EggPolygon self, const EggPolygon copy)

/**

*/

calculateNormal()

C++ Interface: calculate_normal(EggPolygon self, LVector3d result, int cs)

/**
  • Calculates the true polygon normal–the vector pointing out of the front of

  • the polygon–based on the vertices. This does not return or change the

  • polygon’s normal as set via set_normal().

  • The return value is true if the normal is computed correctly, or false if

  • the polygon is degenerate and does not have at least three noncollinear

  • vertices.

*/

calculate_normal()

C++ Interface: calculate_normal(EggPolygon self, LVector3d result, int cs)

/**
  • Calculates the true polygon normal–the vector pointing out of the front of

  • the polygon–based on the vertices. This does not return or change the

  • polygon’s normal as set via set_normal().

  • The return value is true if the normal is computed correctly, or false if

  • the polygon is degenerate and does not have at least three noncollinear

  • vertices.

*/

getClassType()

C++ Interface: get_class_type()

get_class_type()

C++ Interface: get_class_type()

isPlanar()

C++ Interface: is_planar(EggPolygon self)

/**
  • Returns true if all of the polygon’s vertices lie within the same plane,

  • false otherwise.

*/

is_planar()

C++ Interface: is_planar(EggPolygon self)

/**
  • Returns true if all of the polygon’s vertices lie within the same plane,

  • false otherwise.

*/

recomputePolygonNormal()

C++ Interface: recompute_polygon_normal(const EggPolygon self, int cs)

/**
  • Recalculates the normal according to the order of the vertices, and sets

  • it. Returns true if the normal is computed correctly, or false if the

  • polygon is degenerate and does not have a normal.

*/

recompute_polygon_normal()

C++ Interface: recompute_polygon_normal(const EggPolygon self, int cs)

/**
  • Recalculates the normal according to the order of the vertices, and sets

  • it. Returns true if the normal is computed correctly, or false if the

  • polygon is degenerate and does not have a normal.

*/

triangulateInPlace()

C++ Interface: triangulate_in_place(const EggPolygon self, bool convex_also)

/**
  • Subdivides the polygon into triangles and adds those triangles to the

  • parent group node in place of the original polygon. Returns a pointer to

  • the original polygon, which is likely about to be destructed.

  • If convex_also is true, both concave and convex polygons will be subdivided

  • into triangles; otherwise, only concave polygons will be subdivided, and

  • convex polygons will be copied unchanged into the container.

*/

triangulateInto()

C++ Interface: triangulate_into(EggPolygon self, EggGroupNode container, bool convex_also)

/**
  • Subdivides the polygon into triangles and adds each one to the indicated

  • container. If the polygon is already a triangle, adds an exact copy of the

  • polygon to the container. Does not remove the polygon from its existing

  • parent or modify it in any way.

  • Returns true if the triangulation is successful, or false if there was some

  • error (in which case the container may contain some partial triangulation).

  • If convex_also is true, both concave and convex polygons will be subdivided

  • into triangles; otherwise, only concave polygons will be subdivided, and

  • convex polygons will be copied unchanged into the container.

*/

triangulate_in_place()

C++ Interface: triangulate_in_place(const EggPolygon self, bool convex_also)

/**
  • Subdivides the polygon into triangles and adds those triangles to the

  • parent group node in place of the original polygon. Returns a pointer to

  • the original polygon, which is likely about to be destructed.

  • If convex_also is true, both concave and convex polygons will be subdivided

  • into triangles; otherwise, only concave polygons will be subdivided, and

  • convex polygons will be copied unchanged into the container.

*/

triangulate_into()

C++ Interface: triangulate_into(EggPolygon self, EggGroupNode container, bool convex_also)

/**
  • Subdivides the polygon into triangles and adds each one to the indicated

  • container. If the polygon is already a triangle, adds an exact copy of the

  • polygon to the container. Does not remove the polygon from its existing

  • parent or modify it in any way.

  • Returns true if the triangulation is successful, or false if there was some

  • error (in which case the container may contain some partial triangulation).

  • If convex_also is true, both concave and convex polygons will be subdivided

  • into triangles; otherwise, only concave polygons will be subdivided, and

  • convex polygons will be copied unchanged into the container.

*/