# 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.

#### Remarks

#### See Also

ICurve Interface | ILine Interface