SOINTERPOLATE(3iv)

πŸ’– SoInterpolate(3IV) πŸ’–

okay bestie, welcome to the SoInterpolate page, from the 3IV manual. it's giving classic Inventor energy, it's giving "I'm abstract so you can't even use me directly" β€” iconic behavior honestly. let's get into it πŸŽ€


✨ NAME ✨

SoInterpolate β€” the base class for all the interpolator engines. like, the mother of all of them. the blueprint. the blueprint that refuses to be built. πŸ’…


🌸 INHERITS FROM 🌸

SoBase > SoFieldContainer > SoEngine > SoInterpolate

so the family tree goes all the way down, and SoInterpolate sits at the bottom of it, looking up at all its ancestors like 😭


πŸ¦‹ SYNOPSIS πŸ¦‹

first things first, you gotta pull it in:

#include <Inventor/engines/SoInterpolate.h>

Inputs from class SoInterpolate πŸ’Œ

SoSFFloat           alpha

Outputs from class SoInterpolate πŸ’Œ

(SoMFFloat)         output

Methods from class SoEngine 🧚

static SoType       getClassTypeId()
virtual int         getOutputs(SoEngineOutputList &list) const
SoEngineOutput *    getOutput(const SbName &outputName) const
SbBool              getOutputName(const SoEngineOutput *output, SbName
                         &outputName) const
SoEngine *          copy() const
static SoEngine *   getByName(const SbName &name)
static int          getByName(const SbName &name, SoEngineList &list)

Methods from class SoFieldContainer 🧚

void                setToDefaults()
SbBool              hasDefaultValues() const
SbBool              fieldsAreEqual(const SoFieldContainer *fc) const
void                copyFieldValues(const SoFieldContainer *fc, SbBool
                         copyConnections = FALSE)
SbBool              set(const char *fieldDataString)
void                get(SbString &fieldDataString)
virtual int         getFields(SoFieldList &resultList) const
virtual SoField *   getField(const SbName &fieldName) const
SbBool              getFieldName(const SoField *field, SbName &fieldName)
                         const
SbBool              isNotifyEnabled() const
SbBool              enableNotify(SbBool flag)

Methods from class SoBase 🧚

void                ref()
void                unref() const
void                unrefNoDelete() const
void                touch()
virtual SoType      getTypeId() const
SbBool              isOfType(SoType type) const
virtual void        setName(const SbName &name)
virtual SbName      getName() const

yeah bestie, that's a whole lot of inherited methods and every single one of them is here. no skips, no cuts. πŸ‘‘


πŸ’œ DESCRIPTION πŸ’œ

okay so SoInterpolate is the abstract base class for all interpolator engines. abstract means you don't instantiate it directly, you let its children do the work β€” main character energy but behind the scenes. πŸ™ˆ

what an interpolator engine does: it linearly interpolates between two values, and it decides how much of each one to use based on the alpha input value.

and here's the vibe check on alpha: it should be between 0.0 and 1.0. periodt.

the interpolator engines that derive from this class are the ones that define the input fields that are actually going to be interpolated. so this class sets the whole structure up, and the derived classes fill in the actual values. slay. ✨


🌈 INPUTS 🌈

  • SoSFFloat alpha β€” the interpolation control value. this is the lil dial that says how far along you are between the two things. 🎚️

🌟 OUTPUTS 🌟

  • (SoMFFloat) output β€” the interpolated value. and here's the important bit: the type of the output value is the same as the type of the input values, and the input values are specified by the derived classes. so whatever your child class is interpolating, that's what you get back. no cap. πŸ’…

πŸ“ FILE FORMAT/DEFAULTS πŸ“

bestie this is an abstract class. there's nothing to format and nothing to default here. go read the reference page of a derived class for the format and default values. πŸ’€

πŸ‘‘ SEE ALSO πŸ‘‘

  • SoEngineOutput
  • SoInterpolateFloat
  • SoInterpolateRotation
  • SoInterpolateVec2f
  • SoInterpolateVec3f
  • SoInterpolateVec4f

go read those, they're the ones that actually do stuff. 🫢


okay that's the whole page bestie, we ate and left zero crumbs. this was the SoInterpolate(3IV) manual page β€” and the footer is literally SoInterpolate(3IV)() with the version/date slot sitting there completely empty, so like... no date, no version, just vibes πŸŽ€ byeee βœ¨πŸ’–