BREP_INFO(nged)

Report information about components of a specified BRep solid.

πŸ“… published 7.44.0, from nixpkgs unstable

🌸 BREP INFO(nged) β€” the brep info glow-up 🌸

okay bestie, so this is the brep info command from the nged manual, and it is literally the "tell me everything about my BRep solid" button. no cap, it's giving backstage-pass energy πŸ‘‘


✨ NAME ✨

brep info β€” reports info about the components of a specified BRep solid. that's it, that's the vibe. πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

brep {obj}info [C2|C3|E|F|L|SB|T|TB|V] [arguments]

πŸ¦‹ DESCRIPTION πŸ¦‹

so first thing's first: if obj is not a brep object, brep is gonna quit and tell you so. no drama, it just reports the fact and dips. πŸ’€

but if it is a brep object? then it prints a textual description of whatever info you asked for. and if you pass no arguments, you get a summary of the data present in the brep object β€” like a little vibe check of the whole thing. otherwise, you get the detailed tea about the specific components you named. πŸ«–

here's the full menu of what you can ask for β€” every single one of these returns info for one or more of the thing listed:

  • C2 β€” 2D parametric space geometric curves ✨
  • C3 β€” 3D geometric curves
  • E β€” topological 3D edges
  • F β€” topological faces
  • L β€” 2D parametric space topological trimming loops
  • SB β€” surfaces (and right beside it in the list: piecewise Bezier surfaces β€” that's the pair, iykyk)
  • T β€” 2D parametric space topological trims
  • TB β€” 2D piecewise Bezier trims
  • V β€” 3D vertices

that's the whole roster, no skips, no "you'll never need this one" energy. πŸ†


🌈 EXAMPLES 🌈

Example 1 β€” Object Summary πŸ‘‘

mged>brep Brep_1.s info

    Brep_1.s -- Valid: YES, Solid: YES, Plate mode: NO
    faces:     597
    surfaces:  597
    edges:     1475
    3d curve:  1475
    vertices:  976
    loops:     715
    trims:     3056
    2d curves: 3056

reports counts for the various object types, plus the object-level info about solidity, validity and plate mode status. so valid? YES. solid? YES. plate mode? NO. we love a clean bill of health πŸ’–

Example 2 β€” First Object Face πŸŽ€

mged>brep Brep_1.s info F 1

    face[ 1]: surface(1) reverse(0) loops(1)
            loop[ 1]: type(outer) 4 trims(4, 5, 6, 7)
                    trim[ 4]: edge( 1) v0( 2) v1( 1) tolerance(0.001, 0.001)
                            type(mated   -u iso) rev3d(0) 2d_curve(4)
                            domain(0, 1) start(1.62, 3.14159) end(1.62, 4.43206e-09)
                            surface points start(32.4121, 148.588, 55) end(20.4121, 148.588, 55)
                    trim[ 5]: edge( 3) v0( 1) v1( 3) tolerance(0.001, 0.001)
                            type(mated   -south side iso) rev3d(0) 2d_curve(5)
                            domain(0, 1) start(1.62, 4.43206e-09) end(16.62, 4.43206e-09)
                            surface points start(20.4121, 148.588, 55) end(20.4121, 148.588, 40)
                    trim[ 6]: edge( 4) v0( 3) v1( 4) tolerance(0.001, 0.001)
                            type(mated   -u iso) rev3d(1) 2d_curve(6)
                            domain(0, 1) start(16.62, 4.43206e-09) end(16.62, 3.14159)
                            surface points start(20.4121, 148.588, 40) end(32.4121, 148.588, 40)
                    trim[ 7]: edge( 5) v0( 4) v1( 2) tolerance(0.001, 0.001)
                            type(mated   -north side iso) rev3d(1) 2d_curve(7)
                            domain(0, 1) start(16.62, 3.14159) end(1.62, 3.14159)
                            surface points start(32.4121, 148.588, 40) end(32.4121, 148.588, 55)

reports information about the constituent components that make up the topological face. nested indentation goes hard here β€” face β†’ loop β†’ trim β†’ all the little details πŸͺ†

Example 3 β€” First Surface 🧚

mged>brep Brep_1.s info S 1

    surface[ 1]: ON_NurbsSurface u(0, 18.24) v(0, 3.14159)
    NURBS form of Surface:
    ON_NurbsSurface dim = 3 is_rat = 1
            order = 2 X 3 cv_count = 2 X 5
    Knot Vector 0 ( 2 knots )
    index                     value  mult       delta
        0                        0     1
        1       18.239999999999998     1       18.24
    Knot Vector 1 ( 6 knots )
    index                     value  mult       delta
        0                        0     2
        2       1.5707963267949001     2       1.571
        4         3.14159265358979     2       1.571
    Control Points  10 rational points
      index               value
      CV[ 0][ 0] [20.412069387140399, 148.58793061285999, 56.619999999999997, 1] = (20.412069387140399, 148.58793061285999, 56.619999999999997)
      CV[ 0][ 1] [14.433512681697321, 109.31017402594885, 40.036385950782346, 0.70710678118654802] = (20.412069387140399, 154.58793061285999, 56.619999999999997)
      CV[ 0][ 2] [26.412069387140399, 154.58793061285999, 56.619999999999997, 1] = (26.412069387140399, 154.58793061285999, 56.619999999999997)
      CV[ 0][ 3] [22.918794055935898, 109.31017402594885, 40.036385950782346, 0.70710678118654802] = (32.412069387140399, 154.58793061285999, 56.619999999999997)
      CV[ 0][ 4] [32.412069387140399, 148.58793061285999, 56.619999999999997, 1] = (32.412069387140399, 148.58793061285999, 56.619999999999997)

      CV[ 1][ 0] [20.412069387140399, 148.58793061285999, 38.380000000000003, 1] = (20.412069387140399, 148.58793061285999, 38.380000000000003)
      CV[ 1][ 1] [14.433512681697321, 109.31017402594885, 27.138758261939714, 0.70710678118654802] = (20.412069387140399, 154.58793061285999, 38.380000000000003)
      CV[ 1][ 2] [26.412069387140399, 154.58793061285999, 38.380000000000003, 1] = (26.412069387140399, 154.58793061285999, 38.380000000000003)
      CV[ 1][ 3] [22.918794055935898, 109.31017402594885, 27.138758261939714, 0.70710678118654802] = (32.412069387140399, 154.58793061285999, 38.380000000000003)
      CV[ 1][ 4] [32.412069387140399, 148.58793061285999, 38.380000000000003, 1] = (32.412069387140399, 148.58793061285999, 38.380000000000003)

detailed information on the geometric data defining the surface. knot vectors, control points, the whole unhinged spreadsheet β€” and yes, all those digits are supposed to look like that 😭

Example 4 β€” Multiple loops πŸŒ€

mged>brep Brep_1.s info L 1,5,12

    loop[1] on face 1 with 4 trims
    trims: 4,5,6,7

    loop[5] on face 5 with 4 trims
    trims: 20,21,22,23

    loop[12] on face 12 with 4 trims
    trims: 48,49,50,51

reports the trims making up multiple loops. comma-separated list in, tidy little loop-and-trims report out ✨


πŸ’œ AUTHOR πŸ’œ

BRLCAD-TEAM β€” the whole team, iconic, no further notes πŸ’…


πŸ“ BUG REPORTS πŸ“

if you find a bug or a problem, report it via electronic mail to devs@brlcad.org. bestie, please actually tell them β€” don't just sit there mad about it πŸ™ˆ


ngl, every flag up there is real, so don't come for me if you skip one and then wonder where your TB output went πŸ’€

and that's the page!! footer says BRL-CAD and this is the BREP INFO(nged) page β€” no date printed anywhere on it, so I'm not out here making one up 😌 slay, go get your brep tea 🫢πŸ”₯πŸ‘‘

πŸ“¦ where this page comes from