SBCYLINDER(3iv)

πŸ’– SbCylinder β€” the manual page, but make it make sense πŸ’–

okay so bestie, welcome to the SbCylinder page from the 3IV manual. yes, 3IV. that's the manual section. we're in the Inventor-verse today and it's genuinely so cozy here. grab a strawberry πŸ“ and let's get into it.


🌈 NAME 🌈

SbCylinder</purpose> β€” a whole entire class for representing a cylinder πŸ₯«βœ¨

like. that's it. that's the job. a cylinder. and honestly? iconic.


🧬 INHERITS FROM 🧬

SbCylinder

yes bestie. it inherits from SbCylinder. it's giving self-made, self-inherited, main character energy πŸ‘‘. that's literally what the page says, so that's what I'm telling you. no notes. periodt.


πŸ“œ SYNOPSIS πŸ“œ

so you wanna use it? you gotta pull in the header first:

#include <Inventor/SbLinear.h>

then here's every single method hanging out in this class, in order, exactly as listed:

                    SbCylinder()
                    SbCylinder(const SbLine &a, float r)
void                setValue(const SbLine &a, float r)
void                setAxis(const SbLine &a)
void                setRadius(float r)
const SbLine &      getAxis() const
float               getRadius() const
SbBool              intersect(const SbLine &l, SbVec3f &intersection)
                         const
SbBool              intersect(const SbLine &l, SbVec3f &enter, SbVec3f
                         &exit) const

look at that little overloaded intersect duo. obsessed. πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

SbCylinder is a simple cylinder datatype. that's the whole vibe. it just... is a cylinder. it defines one. 🧚

and the way that the Inventor toolkit uses it?? for arguments and return values. yes bestie, it's a supporting character that carries the plot. we love a reliable sidekick 🫢


✨ METHODS ✨

the constructors πŸŽ€

  • SbCylinder()
  • SbCylinder(const SbLine &a, float r)

two constructors, bestie. and here's the thing β€” one takes an axis and radius. that's the one with the arguments. the other one just shows up with nothing and we respect that too πŸ’€

setValue 🌸

  • void setValue(const SbLine &a, float r) β€” change the axis and the radius. both of them. together. matching set energy πŸŽ€

setAxis / setRadius πŸ’œ

  • void setAxis(const SbLine &a)
  • void setRadius(float r)

set just the axis, or just the radius. pick one, queen, you don't have to do both.

getAxis / getRadius ⭐

  • const SbLine & getAxis() const
  • float getRadius() const

return the axis and the radius. the classic getter duo. no cap, they just hand you the info.

intersect πŸ”₯

  • SbBool intersect(const SbLine &l, SbVec3f &intersection) const
  • SbBool intersect(const SbLine &l, SbVec3f &enter, SbVec3f &exit) const

intersect a line and a cylinder, returning TRUE if there is an intersection. that's the whole deal β€” one overload gives you the single intersection, the other gives you enter and exit like a little arrival-and-departure moment πŸ¦‹βœ¨

not me being emotionally invested in a boolean return value. it's TRUE or it's nothing, bestie. high stakes.

πŸ‘€ SEE ALSO πŸ‘€

go read these next, they're all in the same friend group:

  • SbVec3f
  • SbLine
  • SbPlane
  • SbSphere
  • SoCylinder

that's the whole page, and yes, I read all of it. every option, every signature, every vibe. πŸ’–

so this has been the SbCylinder page, manual section 3IV, and the footer just says SbCylinder(3IV)() β€” no date, no version, nothing extra, she's mysterious like that πŸ™ˆ stay hydrated, go intersect something responsibly, mwah πŸ’…πŸŒˆβ­