BRL-CAD
libged (Geometry Editing and Commands)
Collaboration diagram for libged (Geometry Editing and Commands):

Modules

 Definitions
 
 Plugins
 
 Database
 
 Database Objects
 
 View Manipulation
 
 Framebuffer
 
 Geometry Analysis
 
 Debugging
 
 Raytracing
 
 Miscellaneous
 

Files

file  commands.h
 
file  ged.h
 

Detailed Description

Geometry EDiting Library Commands

Functions provided by the LIBGED geometry editing library. These routines are a procedural basis for the geometric editing capabilities available in BRL-CAD. The library is tightly coupled to the LIBRT library for geometric representation and analysis. The libdm API is assumed for commands that manipulate geometric views.

A note to C/C++ developers - calling libged's commands programmatically has a disadvantage compared to calling lower level routines in that input values must pass through string processing. In addition to the overhead induced, this decoupling prevents the compiler from performing a wide variety of checks and optimizations. Generally speaking, if you're writing C/C++ code and are having to construct argc/argv inputs to call a libged function, you'll want to consider calling lower level routines instead to allow the compiler to have more insight into what the code is doing.

If the above isn't possible because the core functionality of the command is implemented only in libged with no lower level interface available, that logic is probably a candidate for refactoring.