G-EGG(1)
π G-EGG(1) β the BRL-CAD manual, bestie edition π
okay so bestie, welcome to G-EGG(1), a page from the BRL-CAD manual set π. This is the one that turns your BRL-CAD geometry into a Panda3D EGG file. Let's get into it β¨
πΈ NAME πΈ
g-egg β convert BRL-CAD geometry to a Panda3D EGG file π¦
β¨ SYNOPSIS β¨
g-egg [-v89] [-x rt_debug] [-X nmg_debug] [-a abs_tol] [-r rel_tol] [-n norm_tol] [-D dist_tol] [-P ncpu] [-o output.egg] database.g object [object ...]
π DESCRIPTION π
So g-egg takes the geometry object(s) you point at in a BRL-CAD database.g and converts them into a Panda3D EGG file. Iconic, honestly π
Here's the tea on how it works: every object gets tessellated into a triangulated NMG via the boolean evaluator, and then written out as an EGG <Group> that holds a vertex pool plus the resulting polygons. The output uses a Z-Up coordinate system. Noted, remembered, slay π
If you don't hand it an output file with -o, the EGG data just goes to standard output. And when it's done? It prints a count of the triangles it produced to standard error. That's your little "we did it" moment π«Ά
π OPTIONS π
-aabs_tol β absolute tessellation tolerance, in mm. Heads up: setting this disables the relative tolerance π₯-rrel_tol β relative tessellation tolerance, as a fraction of the bounding box. The default is0.01π«-nnorm_tol β surface normal tessellation tolerance, in degrees. Setting this disables the relative tolerance π-Ddist_tol β calculational distance tolerance, in mm, used when deciding whether vertices are coincident π-Pncpu β number of CPUs to use during tessellation. parallel bestie hours π-ooutput.egg β write output to the named file instead of standard output π-8β use the marching cubes algorithm for facetization π§-9β use the experimental "bottess" algorithm for facetization. experimental, so likeβ¦ be aware π-vβ verbose output (printed to standard error) π£οΈ-xrt_debug β set the librt debugging flags (a hexadecimal bit vector) π-Xnmg_debug β set the NMG debugging flags (a hexadecimal bit vector) π-h,-?β print the usage message and exit. classic π«‘
π EXAMPLES π
Example 1. Convert objects from a database to an EGG file
g-egg -r 0.005 -o havoc.egg havoc.g body wings
This tessellates the body and wings regions from havoc.g using a tighter relative tolerance of 0.005, and writes the combined Panda3D EGG model to havoc.egg β all ready to be loaded into a Panda3D scene π¬β¨
Example 2. Generate geometry on demand and pipe it onward
g-egg -a 0.5 moss.g all.g > moss.egg
Here it facetizes the all.g assembly from the moss.g sample database with a 0.5 mm absolute tolerance, and redirects the EGG output (which would otherwise go to standard output) into moss.egg. pipes? we love pipes π«Ά
π¦ SEE ALSO π¦
brlcad(1), g-obj(1), g-stl(1), gcv(1), mged(1) β go read those next, bestie, they're all in the family π
π AUTHOR π
BRL-CAD Team
β COPYRIGHT β
This software is Copyright (c) 1989-2026 by the United States Government as represented by U.S. Army Research Laboratory.
π BUG REPORTS π
Reports of bugs or problems should be submitted via electronic mail to devs@brlcad.org π§
not me telling you to email the devs, but likeβ¦ if it's broken, tell them fr fr π
okay that's the whole page, you ate that π
this was G-EGG(1) from the BRL-CAD manual set β no cap, go tessellate something ππ§
π¦ where this page comes from
- nixpkgs unstable: brlcad 7.44.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms