This document is archived and information here might be outdated.  Recommended version.

ICurve.QueryNormal Method (ArcObjects .NET 10.7 SDK)
 ArcObjects Help for .NET developers > ArcObjects Help for .NET developers > ArcObjects namespaces > Geometry > ESRI.ArcGIS.Geometry > Interfaces > IC > ICurve Interface > ICurve.QueryNormal Method
 ArcGIS Developer Help

# ICurve.QueryNormal Method

Constructs a line normal to a curve from a point at a specified distance along the curve.

```[Visual Basic .NET]
Public Sub QueryNormal ( _
ByVal extension As esriSegmentExtension, _
ByVal DistanceAlongCurve As Double, _
ByVal asRatio As Boolean, _
ByVal Length As Double, _
ByVal normal As ILine _
)
```
```[C#]
public void QueryNormal (
esriSegmentExtension extension,
double DistanceAlongCurve,
bool asRatio,
double Length,
ILine normal
);
```
```[C++]
HRESULT QueryNormal(
esriSegmentExtension extension,
double DistanceAlongCurve,
VARIANT_BOOL asRatio,
double Length,
ILine* normal
);
```
```[C++]
Parameters
extension
extension is a parameter of type esriSegmentExtension
DistanceAlongCurve
DistanceAlongCurve is a parameter of type double
asRatio
asRatio is a parameter of type bool
Length
Length is a parameter of type double
normal
normal is a parameter of type ILine*
```

#### Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

#### Description

Given a distance along the curve specified either as a ratio of the Length or as a specific fixed distance, QueryNormal returns the Line normal to the Point.  The length and method of tangential extension of the normal line are given by the user.  The method of tangential extension determines the direction of the normal line as though it were being extended at a From point or a To point.