---
name: "SoInterpolateFloat"
section: "3iv"
platform: "linux"
package: "inventor-doc"
version: "2.1.6+ds-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SoInterpolateFloat/3iv"
---

# SoInterpolateFloat(3iv)

interpolates floating-point values

## NAME

SoInterpolateFloat — interpolates floating-point values

## INHERITS FROM

SoBase \> SoFieldContainer \> SoEngine \> SoInterpolate \> SoInterpolateFloat

## SYNOPSIS

**#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

**This engine linearly interpolates between two floating-point values, based on the alpha** input value. The **alpha** value should be between 0.0 and 1.0.

The input fields can have multiple values, allowing the engine to interpolate several objects in parallel. One of the inputs may have more values than the other. In that case, the last value of the shorter input will be repeated as necessary.

## INPUTS

**SoMFFloat**	**input0**\
 **SoMFFloat**	**input1**\
 The engine linearly interpolates from **input0** to **input1**.

## METHODS

	**SoInterpolateFloat()**\
 Constructor.

## FILE FORMAT/DEFAULTS

```
InterpolateFloat {
alpha	0
input0	0
input1	1
}
```

## SEE ALSO

**SoEngineOutput, SoInterpolateRotation, SoInterpolateVec2f, SoInterpolateVec3f, SoInterpolateVec4f**
