# Point4D.Offset(Double, Double, Double, Double) Method

## Definition

Translates the Point4D structure by the specified amounts.

``````public:
void Offset(double deltaX, double deltaY, double deltaZ, double deltaW);``````
``public void Offset (double deltaX, double deltaY, double deltaZ, double deltaW);``
``member this.Offset : double * double * double * double -> unit``
``Public Sub Offset (deltaX As Double, deltaY As Double, deltaZ As Double, deltaW As Double)``

#### Parameters

deltaX
Double

The amount to offset the X coordinate of this Point4D structure.

deltaY
Double

The amount to offset the Y coordinate of this Point4D structure.

deltaZ
Double

The amount to offset the Z coordinate of this Point4D structure.

deltaW
Double

The amount to offset the W coordinate of this Point4D structure.

## Examples

The following example shows how to offset a Point4D structure.

``````// Offsets the X, Y, Z, and W values of a Point4D.

Point4D point1 = new Point4D(10, 5, 1, 4);

point1.Offset(20, 30, 40, 50);
// point1 is equal to (30, 35, 41, 54)

// Displaying Results
syntaxString = "point1.Offset(20, 30, 41, 54);";
resultType = "Point4D";
operationString = "Offsetting a Point4D";
ShowResults(point1.ToString(), syntaxString, resultType, operationString);
``````
``````' Offsets the X, Y, Z, and W values of a Point4D.

Dim point1 As New Point4D(10, 5, 1, 4)

point1.Offset(20, 30, 40, 50)
' point1 is equal to (30, 35, 41, 54)

' Displaying Results
syntaxString = "point1.Offset(20, 30, 41, 54)"
resultType = "Point4D"
operationString = "Offsetting a Point4D"
ShowResults(point1.ToString(), syntaxString, resultType, operationString)
``````

## Remarks

Note that calling the Offset method will only have an effect if you can change the W, X, Y, and Z properties directly. Because Point4D is a value type, if you reference a Point4D object by using a property or indexer, you get a copy of the object, not a reference to the object. If you attempt to change W, X, Y, or Z on a property or indexer reference, a compiler error occurs. Similarly, calling Offset on the property or indexer will not change the underlying object. If you want to change the value of a Point4D that is referenced as a property or indexer, create a new Point4D, modify its fields, and then assign the Point4D back to the property or indexer.