ArcGIS Pro 3.1 API Reference Guide
ArcGIS.Core.Geometry Namespace / Coordinate3D Structure / Subtraction Operator
Example

In This Topic
    Subtraction Operator (Coordinate3D)
    In This Topic
    Constructs a new Coordinate3D by subtracting two Coordinate3D objects.
    Syntax
    public Coordinate3D operator -( 
       Coordinate3D a,
       Coordinate3D b
    )
    Public Operator -( _
       ByVal a As Coordinate3D, _
       ByVal b As Coordinate3D _
    ) As Coordinate3D

    Parameters

    a
    b

    Return Value

    A newly constructed Coordinate3D by subtracting the components of the two Coordinate3D objects from each other.
    Example
    Vector Operations
    // Easy 3D vectors
    Coordinate3D v = new Coordinate3D(0, 1, 0);
    // v.Magnitude = 1
    
    Coordinate3D other = new Coordinate3D(-1, 0, 0);
    // other.Magnitude = -1
    
    double dotProduct = v.DotProduct(other);      // dotProduct = 0
    
    Coordinate3D crossProduct = v.CrossProduct(other);
    // crossProduct.X = 0
    // crossProduct.Y = 0
    // crossProduct.Z = 1
    
    Coordinate3D addVector = v.AddCoordinate3D(other);
    // addVector.X = -1
    // addVector.Y = 1
    // addVector.Z = 0
    
    // Rotate around x-axis
    Coordinate3D w = v;
    w.Rotate(Math.PI, other);
    // w.X = 0
    // w.Y = -1
    // w.Z = 0
    
    w.Scale(0.5);
    // w.X = 0
    // w.Y = -0.5
    // w.Z = 0
    
    w.Scale(-4);
    // w.X = 0
    // ww.Y = 2
    // w.Z = 0
    // w.Magnitude = 2
    
    w.Move(3, 2, 0);
    // w.X = 3
    // w.Y = 4
    // w.Z = 0
    // w.Magnitude = 5
    
    
    Coordinate3D emptyVector = new Coordinate3D();
    // emptyVector = (0, 0, 0)
    emptyVector.SetEmpty();
    // emptyVector = (Nan, Nan, Nan)
    
    Coordinate3D c1 = new Coordinate3D(2, 3, 4);
    Coordinate3D c2 = new Coordinate3D(9, -1, 3);
    
    var result_add = c1 + c2;
    // result_add = (11, 2, 7)
    var result_sub = c1 - c2;
    // result_sub = (-7, 4, 1)
    
    var b = result_sub != result_add;
    // b = true
    
    result_add = emptyVector + c1;
    // result_add = (Nan, Nan, Nan)
    
    b = result_add == emptyVector;
    // b = true
    
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3.0 or higher.
    See Also