PLOT3-FB(1)

πŸ“¦
version 7.44.0 Β· 2 versions
, in nixpkgs unstable

πŸ’… PLOT3-FB β€” display a 3-D UNIX plot file on a framebuffer

okay so real talk, bestie β€” this is plot3-fb from the BRL-CAD manual, section 1 (that's the general commands section, iykyk). it's the little tool that takes your 3-D UNIX plot file and slaps it onto a framebuffer. let's get into it ✨


🌸 SYNOPSIS 🌸

plot3-fb [-d] [-o|-O] [-i] [-t thickness] [-F framebuffer] [-s|-S squaresize] [-w|-W width] [-n|-N height] [file.plot3]

that's the whole vibe. short, cute, does exactly what it says πŸŽ€


πŸ¦‹ DESCRIPTION πŸ¦‹

so plot3-fb rasterizes a BRL-CAD extended three-dimensional UNIX plot file and displays the result on a framebuffer. literally its whole job. and because 3-D UNIX plot is a superset of the standard UNIX plot format, plot3-fb can also display ordinary 2-D plot files too β€” see plot3(5). iconic behaviour, no notes πŸ’…

if file.plot3 is omitted, the plot commands are read from standard input. the framebuffer gets picked with the -F option or, if that's not a thing, the FB_FILE environment variable β€” otherwise the default device for your system is used (see brlcad(1)).

by default the display is treated as 512x512 pixels. the -S/-s, -W/-w, and -N/-n options set the screen size; the plotting space is scaled to fill those dimensions, and no attempt is made to preserve the aspect ratio (so yeah, your circles might get squished, that's just the deal πŸ™ˆ). strokes that fall outside the frame are limited (not clipped) to its edges β€” so like, they get dragged to the border, not cut off. pre-process with plot3rot(1) if you actually want true clipping or reorientation, k?


✨ OPTIONS ✨

  • -d β€” emit a verbose debugging stream to standard error, listing every UNIX plot command and the resulting framebuffer coordinates. repeating -d increases the verbosity. so -dd is more chatty, -ddd is even more. she's an icon πŸ‘‘
  • -o, -O β€” overlay mode. rasterize on top of the image already in the framebuffer instead of over a cleared background. perfect for when you don't wanna lose what's already there 🫢
  • -i β€” immediate mode. plot each rasterized pixel as soon as it's computed instead of buffering scanlines into bands. useful for quick feedback on small plots, but generally more expensive in CPU time. trade-off behaviour fr fr
  • -t thickness β€” thicken every line perpendicular to its length to thickness pixels (minimum 1). a line is never made wider than it is long. helpful when recording to video, where single-pixel lines are hard to resolve. yes bestie, thicken responsibly πŸ’–
  • -F framebuffer β€” use the named framebuffer device instead of the one in FB_FILE. simple as that.
  • -s squaresize, -S squaresize β€” set both the width and height of the display to squaresize pixels. square! symmetrical! balanced! πŸŽ€
  • -w width, -W width β€” set the display width to width pixels.
  • -n height, -N height β€” set the display height to height pixels.

πŸ”₯ EXAMPLES πŸ”₯

Example 1 β€” render a wireframe of a database object straight to the framebuffer

fbserv -S 1024 0 /dev/X &
FB_FILE=:0 rt -o /dev/plot3 -s 1024 model.g component.r | plot3-fb -s 1024

pipe the 3-D plot output of rt(1) for a region into plot3-fb, displaying the wireframe on a 1024x1024 framebuffer started with fbserv(1) β€” without writing an intermediate file. no middleman, we love to see it 😌

Example 2 β€” overlay thick annotation lines on an existing image

plot3-fb -o -t 3 -F /dev/X labels.plot3

draw the strokes from labels.plot3 three pixels thick on top of whatever image is already in the X framebuffer, leaving the background untouched. chef's kiss πŸ‘¨β€πŸ³πŸ’‹


🌈 SEE ALSO 🌈

brlcad(1), fbserv(1), rt(1), plot3rot(1), plot3stat(1), pix-fb(1), plot3(5)

go read them, they're all in the family 🫢


πŸ’œ AUTHOR πŸ’œ

BRL-CAD Team β€” legends, honestly.


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. found a bug? tell the devs, don't suffer in silence bestie 😭


πŸ’€ reminder: -d repeats for more verbosity, -t never goes below 1, and that aspect ratio is genuinely not preserved β€” that's documented behaviour, not a glitch.

and that's the page!! brought to you by BRL-CAD β€” plot3-fb(1), see you in the group chat πŸ’–βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from