HUMAN(1)

πŸ“¦ version 7.44.0, in nixpkgs unstable

πŸ’– NAME πŸ’–

okay bestie, meet human(1) from BRL-CAD β€” the tool that generates BRL-CAD human body models. literally a whole parametric vibe for your geometry files. πŸ’…

✨ SYNOPSIS ✨

human [options] [top_level_object_name]

πŸ¦‹ DESCRIPTION πŸ¦‹

So human creates a BRL-CAD database named human.g, and inside it are one or more articulated human body models. These models are built from primitive shapes for the head, neck, torso, arms, and legs β€” iconic body-part LEGO situation. 🧚

By default it writes a single model standing at the origin with a height of 68 inches (5 feet 8 inches) under the top-level combination Body.c. The model height, stance, body dimensions, and the number of models (arranged in a square grid) can all be controlled from the options below or supplied interactively. main character energy, but make it parametric. ✨

The last argument on the command line, if present, is used as the top-level object name in place of the default Body.c. When more than one model is generated (see -N), this name is instead used as a prefix for the individual models, which are grouped under a top-level combination named Crowd.c. The resulting geometry can be viewed and edited with mged(1) or rendered with rt(1). no cap, that's the whole flow. 🫢

πŸŽ€ OPTIONS πŸŽ€

  • -A β€” AutoMake defaults; generate a standard 50th-percentile human model.
  • -m β€” Manual sizing mode; prompt interactively for the dimensions of every body part, in inches.
  • -H # β€” Set the overall height of the model, in inches. Values below 1 are rejected and the default height of 68 inches is used instead.
  • -L, -l β€” Prompt interactively for the X, Y, and Z coordinates (in inches) of the model's center point, measured at the feet. The default location is the origin.
  • -b β€” Generate bounding boxes for each body part of the model.
  • -n name β€” Set the bounding region (top-level object) name. The default is Body.c. A name given as the final positional argument overrides this.
  • -N # β€” Set the number of models to generate. The value is squared, producing an N by N grid of human models. Values of 1 or less default to a 4x4 (16-model) formation. In this multi-model mode the individual models are named using the top-level name as a prefix (e.g. Body.c0, Body.c1, ...) and are all gathered under a top-level combination named Crowd.c.
  • -s # β€” Set the model's stance. Supported values are:
    • 0 β€” Stand
    • 1 β€” Sit
    • 2 β€” Drive
    • 3 β€” Arms out
    • 4 β€” Letterman
    • 5 β€” Captain
    • 999 β€” Custom (prompts interactively for limb angles)
  • -p # β€” Set the percentile of the model, clamped to the range 1-99. This option is parsed but not yet implemented and currently has no effect on the generated dimensions.
  • -t β€” Write bounding-box dimensions (height, width, depth) of the model to a file named stats.txt.
  • -T β€” Read bounding-box dimensions from a file named stats.txt to override the computed values.
  • -v β€” Write a verbose record of every measurement and setting used to build the model to a file named verbose.txt.
  • -V β€” Read all model dimensions from a file named verbose.txt.
  • -h, -? β€” Print a usage message and exit.

Also, human accepts a set of single-character "wizard" options β€” the digits 0-9 and the symbols =, +, _, *, ^, %, $, #, @, !, ~, Q, Z, Y, W β€” each taking a numeric argument that sets one individual body measurement in inches. These are intended for use by automated front ends and are not meant to be supplied directly. πŸ™ˆ

🌸 EXAMPLES 🌸

Example 1. Generate a default human model

human

Creates human.g containing a single 68-inch standing human model under the top-level combination Body.c. periodt. πŸ’–

Example 2. Build a squad and render it

human -N 4 squad.c
rt -o squad.png human.g Crowd.c

Generates a 4x4 grid (16 models) of humans, each model named with the prefix squad.c (so squad.c0 through squad.c15) and all gathered under a top-level combination named Crowd.c, then renders the scene to a PNG image with rt(1). In multi-model mode the top-level grouping object is always named Crowd.c regardless of any name given on the command line. that part is lowkey important, bestie. πŸ‘‘

Example 3. Create a seated model of a specific height

human -H 72 -s 1 seated.c
mged human.g 'draw seated.c; e seated.c'

Builds a 72-inch model in a seated pose named seated.c and opens it in mged(1) for inspection. slay. ✨

πŸ‘‘ SEE ALSO πŸ‘‘

brlcad(1), mged(1), rt(1)

πŸ’… AUTHOR πŸ’…

BRL-CAD Team

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

πŸ’– source/version: BRL-CAD β€’ page: human(1) β€’ date: not listed in this footer, so no cap, just vibes πŸ’–

πŸ“¦ where this page comes from