EggBinMaker¶
-
class EggBinMaker¶
Bases:
EggObjectThis is a handy class for collecting related nodes together. It is an abstract class; to use it you must subclass off of it. See the somewhat lengthy comment above.
Inheritance diagram
digraph inheritance613b7276a2 { bgcolor=transparent; rankdir=BT; size="8.0, 12.0"; "DTOOL_SUPER_BASE" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style=""]; "EggBinMaker" [URL="acron.egg.EggBinMaker.html#acron.egg.EggBinMaker",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "EggObject" -> "EggBinMaker" [arrowsize=0.75,style=""]; "EggObject" [URL="acron.egg.EggObject.html#acron.egg.EggObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "TypedReferenceCount" -> "EggObject" [arrowsize=0.75,style=""]; "ReferenceCount" [URL="acron.core.ReferenceCount.html#acron.core.ReferenceCount",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "DTOOL_SUPER_BASE" -> "ReferenceCount" [arrowsize=0.75,style=""]; "TypedObject" [URL="acron.core.TypedObject.html#acron.core.TypedObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "DTOOL_SUPER_BASE" -> "TypedObject" [arrowsize=0.75,style=""]; "TypedReferenceCount" [URL="acron.core.TypedReferenceCount.html#acron.core.TypedReferenceCount",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="/**"]; "TypedObject" -> "TypedReferenceCount" [arrowsize=0.75,style=""]; "ReferenceCount" -> "TypedReferenceCount" [arrowsize=0.75,style=""]; }- EggBinMaker.collapse_group()¶
May be overridden in derived classes to specify whether a particular group node, apparently redundant, may be safely collapsed out.
- EggBinMaker.get_bin_name()¶
May be overridden in derived classes to define a name for each new bin, based on its bin number, and a sample child.
- EggBinMaker.get_bin_number()¶
- static EggBinMaker.get_class_type()¶
- EggBinMaker.make_bin()¶
May be overridden in derived classes to construct a new
EggBinobject (or some derived class, if needed), and preload some initial data into as required.child is an arbitrary child of the bin, and collapse_from is the group the bin is being collapsed with, if any (implying
collapse_group()returned true), or NULL if not.
- EggBinMaker.make_bins()¶
The main entry point to
EggBinMaker. Walks the egg scene graph beginning at the indicated root node, and moves all binnable nodes intoEggBinobjects. Returns the number ofEggBinscreated.
- EggBinMaker.prepare_node()¶
May be overridden in derived classes to perform some setup work as each node is encountered. This will be called once for each node in the egg hierarchy.
- EggBinMaker.sorts_less()¶
May be overridden in derived classes to create additional bins within a particular bin number, based on some arbitrary property of nodes. This function establishes an arbitrary but fixed ordering between nodes; if two nodes do not sort to the same position, different bins are created for each one (with the same bin number on each bin).