ArcGIS Enterprise SDK

IRay Interface

Provides access to 3D Ray properties and methods. A ray has one endpoint (its origin) and continues infinitely in one direction.

A Ray is a one-dimensional object defined by an Origin point and a directional Vector. A Ray extends to infinity from the Origin point in the direction of the Vector.

Name |
Description | |
---|---|---|

Dimension | The topological dimension of this geometry. | |

Envelope | Creates a copy of this geometry's envelope and returns it. | |

GeometryType | The type of this geometry. | |

GeoNormalize | Shifts longitudes, if need be, into a continuous range of 360 degrees. | |

GeoNormalizeFromLongitude | Normalizes longitudes into a continuous range containing the longitude. This method is obsolete. | |

GetEnumIntersect | Not implemented at this release. | |

GetPointAtDistance | Constructs a point at a distance along the ray. | |

Intersect | Returns a point collection containing all points of intersection, in order along the ray. | |

Intersects | Indicates if the ray intersects the target geometry. | |

IsEmpty | Indicates whether this geometry contains any points. | |

Origin | The origin point of the ray. | |

Project | Projects this geometry into a new spatial reference. | |

QueryEnvelope | Copies this geometry's envelope properties into the specified envelope. | |

QueryFirstIntersection | Returns the first point of intersection between the ray and the target geometry. The point is set empty if there is no intersection. | |

QueryOrigin | Sets a point equal to the ray's origin. | |

QueryPointAtDistance | Queries a point at a distance along the ray. | |

QueryVector | Sets a vector equal to a unit vector with the same direction as the ray. | |

SetEmpty | Removes all points from this geometry. | |

SnapToSpatialReference | Moves points of this geometry so that they can be represented in the precision of the geometry's associated spatial reference system. | |

SpatialReference | The spatial reference associated with this geometry. | |

Vector | The direction vector of the ray. |

Interfaces | Description |
---|---|

IGeometry | Provides access to members that describe properties and behavior of all geometric objects. |

Classes | Description |
---|---|

Ray | A 3D ray that begins at a point and extends infinitely along a line in one direction only. |

A fixed tolerance value is currently used for the three intersection methods: Intersects(), Intersect(), and QueryFirstIntersection().

[C#]

public IRay CreateRay(IPoint point, IVector3D vector)

{

IRay ray = new RayClass();

//If the input point.Z is NAN (Not A Number = value not set) set the z to 0

if (point.Z.Equals(Double.NaN))

{

point.Z = 0;

}

ray.Origin = point;

ray.Vector = vector;

return ray;

}