FENCE(1)
π FENCE(1) β the BRL-CAD manual page, bestie edition π
okay so you opened the fence page from BRL-CAD and I'm gonna walk you through it like we're texting at 1am. stay with me, it's actually so good.
β¨ NAME β¨
fence β generate a chain-link fence in a BRL-CAD geometry database π
π¦ SYNOPSIS π¦
fence [options] -o output.g
π DESCRIPTION π
bestie. fence literally builds you a chain-link fence model and writes it straight into a BRL-CAD .g geometry database. no cap. π«Ά
the fence is built from RCC poles spaced along its length, joined by a zig-zagging wire mesh. and the way that every single parameter is adjustable on the command line?? iconic. overall dimensions, pole radius and spacing, wire radius and twist angle, object names, and per-component material and color β all of it, yours to tweak. π
heads up: there are no positional arguments. the output destination is set with -o (defaulting to fence.g). with no dimensional options the program uses its built-in defaults, and those defaults are:
- a
3000mmlong,2000mmtall fence πΈ 3000mmpole spacing30mmpoles2mmwire at a45degree twist- units: millimeters
all dimensional values are interpreted in the units set with -u. π
now here's the fun structural bit β most options come in a lowercase/uppercase pair. the lowercase letter sets a value directly. the uppercase letter either toggles a mode relative to its default, or applies the value to all fence components at once (poles, mesh, and wire) rather than to the fence combination alone. iykyk. β¨
the resulting database can be visualized or further edited with mged(1) and rendered with rt(1). slay.
π OPTIONS π
-i,-Iβ enable (-i) or toggle (-I) interactive mode, prompting for parameters on standard input. π-v,-Vβ enable (-v) or toggle (-V) verbose mode. it's giving chatty.-d,-Dβ enable (-d) or toggle (-D) debug mode. π₯-o,-O filenameβ output geometry database file name (defaultfence.g). β-k,-K stringβ title/identification string stored in the database header. π-u,-U unitsβ units for the database and all dimensional values (e.g.mm,in); defaultmm. πΈ-n 'x y z',-N valβ fence height.-ntakes a vector;-Ntakes a single scalar applied along+Z. may not be zero. π¨-l 'x y z',-L valβ fence length (width).-ltakes a vector;-Ltakes a single scalar applied along+X. may not be zero. π¨-r radiusβ radius of the mesh wires. may not be zero. π-R radiusβ radius of the fence poles. may not be zero. π-a,-A angleβ primary angle, in degrees, of the wire zig-zag. may not be zero. π-j,-J distanceβ maximum spacing between poles. may not be zero. π-t material,-T materialβ shader/material name for the fence region (-t) or for every generated region (-T). π¨-b parameters,-B parametersβ shader parameter string for the fence region (-b) or for every generated region (-B).-c 'r g b',-C 'r g b'β RGB color (each value0-255) for the fence region (-c) or for every generated region (-C). π-f,-F fencenameβ base name of the fence object(s) in the database.-p,-P polenameβ base name of the pole object(s).-m,-M meshnameβ base name of the mesh object(s).-w,-W wirenameβ base name of the wire object(s).-s,-S segmentnameβ base name of the wire segment object(s).-e,-E fpmwβ select which components (fence,*p*ole,*m*esh*,*w*ire) are prompted for in interactive mode.-esets the listed components;-E` toggles them relative to their defaults. π-g,-G fpmβ select which components (fence,*p*ole*,mesh*) to generate.-ggenerates exactly the listed components;-Gtoggles them relative to their defaults. π οΈ-x,-Xβ print command-line usage examples and exit. π-z,-Zβ print the default settings and exit. βοΈ-h,-?β print a usage message and exit. π
quick vibe check: those "may not be zero" warnings are fr fr real β don't pass zero to height, length, wire radius, pole radius, angle, or pole spacing. the program is not gonna be chill about it. π ββοΈ
π EXAMPLES π
Example 1. Generate a custom fence and render it β¨
fence -o yard.g -N 1800 -L 6000 -j 2000 -R 25 -r 2 -a 60 -C '90 90 90'
rt -o yard.png yard.g fence.r
writes a 1.8m tall, 6m long fence to yard.g with poles spaced every 2m (25mm radius), 2mm mesh wire twisted at 60 degrees, and a gray color applied to all components. the second command renders the resulting fence.r region to an image with rt(1). ate and left no crumbs. π₯
Example 2. Generate only the poles into a database π¦
fence -o posts.g -g p -L 9000 -j 3000 -R 40
generates just the line of poles (no mesh) for a 9m run with 3m spacing and 40mm radius β useful when the mesh is modeled separately or omitted. sometimes less is more, bestie. π
πΈ SEE ALSO πΈ
brlcad(1), mged(1), rt(1), picket_fence(1)
π 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 π¬
okay that's the whole page!! this one's from BRL-CAD, and it's page FENCE(1) β mwah, go build a fence, you've got this π
β¨π«Ά
π¦ 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