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

# SoTextureCoordinatePlane(3iv)

node that specifies texture coordinates by projection from a plane

## NAME

SoTextureCoordinatePlane — node that specifies texture coordinates by projection from a plane

## INHERITS FROM

SoBase \> SoFieldContainer \> SoNode \> SoTextureCoordinateFunction \> SoTextureCoordinatePlane

## SYNOPSIS

**#include \<Inventor/nodes/SoTextureCoordinatePlane.h\>**

Fields from class SoTextureCoordinatePlane:

**SoSFVec3f**	**directionS**\
 **SoSFVec3f**	**directionT**

Methods from class SoTextureCoordinatePlane:

	**SoTextureCoordinatePlane()**\
 **static SoType**	**getClassTypeId()**

Methods from class SoNode:

**void**	**setOverride(SbBool state)**\
 **SbBool**	**isOverride() const**\
 **SoNode \***	**copy(SbBool copyConnections = FALSE) const**\
 **virtual SbBool**	**affectsState() const**\
 **static SoNode \***	**getByName(const SbName &name)**\
 **static int**	**getByName(const SbName &name, SoNodeList &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 node creates texture coordinates for points on an object's surface by projecting them onto a plane. The directionS** and **directionT** fields define the plane. The S coordinate is computed as the distance from the object-space origin along the vector specified in the **directionS** field. The T coordinate is computed similarly, using the **directionT** field.

The length of the direction vector is also taken into account. For example, assume **directionS** is (0.5, 0, 0) and **directionT** is (0, 1, 0). The square defined by the (x, y, z) vertices:

```
(-1, -1, 0) (1, -1, 0) (1, 1, 0) (-1, 1, 0)
```

will be assigned the (s, t) texture coordinates:

```
(-2, -1) (2, -1) (2, 1) (-2, 1)
```

## FIELDS

**SoSFVec3f**	**directionS**\
 **SoSFVec3f**	**directionT**\
 Directions of projection for S and T coordinates.

## METHODS

	**SoTextureCoordinatePlane()**\
 Creates a texture function node with default settings.

**static SoType**	**getClassTypeId()**\
 Returns type identifier for this class.

## ACTION BEHAVIOR

**SoGLRenderAction, SoCallbackAction, SoRayPickAction**\
 Sets the current texture function in the state.

## FILE FORMAT/DEFAULTS

```
TextureCoordinatePlane {
directionS	1 0 0
directionT	0 1 0
}
```

## SEE ALSO

**SoTexture2, SoTexture2Transform, SoTextureCoordinateDefault, SoTextureCoordinateEnvironment**
