SOINTERPOLATEFLOAT(3iv)
π NAME π
SoInterpolateFloat β bestie, this engine interpolates floating-point values. That's it. That's the whole vibe. β¨
And psst, the manual page itself is called SoInterpolateFloat(3IV) if you ever need to look it up, iykyk. π
πΈ INHERITS FROM πΈ
It's giving very much a lineage moment, okay:
SoBase > SoFieldContainer > SoEngine > SoInterpolate >
SoInterpolateFloat
So it's an SoInterpolate, which is an SoEngine, which is an SoFieldContainer, which is an SoBase. The whole family tree ate. π
β¨ SYNOPSIS β¨
First things first, you gotta include the header:
#include <Inventor/engines/SoInterpolate.h>
Inputs from class SoInterpolateFloat:
SoMFFloat input0
SoMFFloat input1
Inputs from class SoInterpolate:
SoSFFloat alpha
Outputs from class SoInterpolate:
(SoMFFloat) output
Methods from class SoInterpolateFloat:
SoInterpolateFloat()
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 picture this. This engine linearly interpolates between two floating-point values, and it does it based on the alpha input value. That's the whole plot. π
The alpha value should be between 0.0 and 1.0. No cap. π
Here's the fun part though β the input fields can have multiple values, which means the engine can interpolate several objects in parallel. Multitasking queen behavior. π
One of the inputs may have more values than the other. And in that case? The last value of the shorter input gets repeated as necessary. It's literally just stretching. No drama. π«Ά
π INPUTS π
SoMFFloatinput0SoMFFloatinput1
The engine linearly interpolates from input0 to input1. That's the journey. The character arc. From point A to point B. π
π METHODS π
SoInterpolateFloat()β Constructor. It's the birth. The origin story. β¨
β FILE FORMAT/DEFAULTS β
Here's what the defaults look like when they're just sitting there being all defaulty:
InterpolateFloat {
alpha 0
input0 0
input1 1
}
Notice alpha starts at 0, input0 starts at 0, and input1 starts at 1. So out of the box it's likeβ¦ already living its best interpolated life. π
π SEE ALSO π
Go be nosy, bestie, the whole friend group is here:
SoEngineOutputSoInterpolateRotationSoInterpolateVec2fSoInterpolateVec3fSoInterpolateVec4f
and that's the whole page!! π this lil doc lives under the title SoInterpolateFloat(3IV), and the footer tag on it is SoInterpolateFloat(3IV)() β so like, if you're out here citing your sources, that's the one. mwah. π no notes. periodt. π
β¨
π¦ where this page comes from
- debian bookworm: inventor-doc 2.1.5-10+dfsg-2 Β· LGPL-2.0-or-later
- debian trixie: inventor-doc 2.1.6+ds-2 Β· LGPL-2.0-or-later
- ubuntu jammy: inventor-doc 2.1.5-10-24
- ubuntu noble: inventor-doc 2.1.5-10+dfsg-2.1build2 Β· LGPL-2.0-or-later
- ubuntu questing: inventor-doc 2.1.6+ds-2
- ubuntu resolute: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- ubuntu stonking: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms