SOINTERPOLATEVEC2F(3iv)

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

okay bestie, welcome to the SoInterpolateVec2f(3IV) page β€” yes that's the manual name, she's from the 3IV set, and she is literally the girl who knows how to blend two 2D vectors together. no cap. let's go πŸ¦‹


✨ NAME ✨

SoInterpolateVec2f β€” interpolates 2D floating-point vectors πŸ’«


🌸 INHERITS FROM 🌸

the family tree is giving legacy royalty, periodt:

SoBase > SoFieldContainer > SoEngine > SoInterpolate >
SoInterpolateVec2f

✨ SYNOPSIS ✨

include her like this, bestie:

#include <Inventor/engines/SoInterpolate.h>

πŸŽ€ Inputs from class SoInterpolateVec2f

SoMFVec2f           input0
SoMFVec2f           input1

πŸŽ€ Inputs from class SoInterpolate

SoSFFloat           alpha

πŸŽ€ Outputs from class SoInterpolate

(SoMFVec2f)         output

πŸŽ€ Methods from class SoInterpolateVec2f

                     SoInterpolateVec2f()

πŸŽ€ 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

πŸ’œ DESCRIPTION πŸ’œ

okay so here's the tea β˜• β€” this engine linearly interpolates between two 2D vectors, and it does it based on the alpha input value. and the alpha value should be between 0.0 and 1.0. that's the range, bestie, respect the range πŸ’…

now the fun part: the input fields can have multiple vectors, which means the engine can interpolate several objects in parallel. multitasking queen πŸ‘‘

and here's a lil detail that matters: one of the inputs may have more values than the other. when that happens? the last value of the shorter input gets repeated as necessary. she's just gonna keep recycling that last one until everyone's caught up. iconic behaviour honestly 🫢


🌈 INPUTS 🌈

  • SoMFVec2f input0
  • SoMFVec2f input1

the engine linearly interpolates from input0 to input1. that's the whole journey, start to finish, no detours πŸš—βœ¨


🧚 METHODS 🧚

  • SoInterpolateVec2f() β€” constructor. she's born. that's it, that's the method πŸ’–

πŸŽ€ FILE FORMAT/DEFAULTS πŸŽ€

here's exactly what she looks like written out, verbatim, don't touch:

InterpolateVec2f {
    alpha   0
    input0  0 0
    input1  0 0
}

⭐ SEE ALSO ⭐

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

  • SoEngineOutput
  • SoInterpolateFloat
  • SoInterpolateRotation
  • SoInterpolateVec3f
  • SoInterpolateVec4f

and that's the whole page bestie, no notes πŸ’… this was the SoInterpolateVec2f(3IV)() manual, straight from the 3IV source/version tag β€” so if you see SoInterpolateVec2f(3IV)() floating around anywhere, that's her signature, that's the stamp, that's the vibe check passed βœ… mwah, go interpolate something πŸ¦‹πŸ’–