OpenRoads Designer CONNECT Edition SDK Help

LinearElement Class

Defines a LinearElement

Definition

Namespace: Bentley.CifNET.LinearGeometry Assembly: Bentley.CifNET.LinearGeometry.4.0 (in Bentley.CifNET.LinearGeometry.4.0.dll) Version: 1.0.0.0 (99.99.99.99)

C#

public abstractclass LinearElement : IDisposable

Constructors

LinearElement() Initializes a new instance of the LinearElement class
LinearElement(IBcLinearEl*) Initializes a new instance of the LinearElement class

Properties

EndPoint Gets the end point of the element.
IsClosed Gets wehether the element is Closed.
Length Gets 2D length of linear element.
ParameterDifference Gets the difference between start and end parameter.
Range Gets the range of the element.
StartPoint Gets the start point of the element.
TagInComplex Gets the unique tag in complex associated to the element.
TraceID  
UserData Gets/Sets the UserData of linear element

Methods

_IsClosed Indicates whether a LinearElement is closed.
Accept Accepts and call the visitor methods
BackProjectPointOnPerpendicular  
CalculateAllProjectionPointsRange2d(DPoint3d, Nullable(Double), Nullable(Double), Boolean, Nullable(Double)) Calcuklates all projection of point within a range.
CalculateAllProjectionPointsRange2d(DPoint3d, Nullable(Double), Nullable(Double), Boolean, Boolean, Nullable(Double)) Calcuklates nearst projection of point within a range.
CalculateAllSkewPoints2d Calcuklates all skew points
CalculateAllTangentPoints2d Calcuklates all tangennt points
CalculateNearestProjection2d Calcuklates nearst projection of point.
CalculateNearestProjectionRange2d(DPoint3d, Nullable(Double), Nullable(Double), Boolean, Nullable(Double)) Calcuklates nearest projection of point within a range.
CalculateNearestProjectionRange2d(DPoint3d, Nullable(Double), Nullable(Double), Boolean, Boolean, Boolean, Nullable(Double)) Calcuklates nearest projection of point within a range.
Clip Clips the LinearElement and returns the result.
Clone  
CloneInternal Clones a LinearElement. All the class that derive from LinearElement should implment this method and so return a copy of an instance of themselve. The CloneInternal methods should follow the pattern as below: return gcnew DerivedClass (GetUnmanagedClone()->getDerivedClassUnmangedInteface()); Note: this call generates 2 references to the unmanaged element and LinearElement takes care of releasing one of them
CollectAllLoops Builds a larger closed areas from a set of closed, possibly adjacent areas.
CollectOuterLoops Builds a larger closed areas from a set of closed, possibly adjacent areas.
ComputeClosestIntersWithInfiniteLine Computes intersection with an infinite line which is closest to the origin.
CreateFromCurveVector Creates a LinearElement from a CurveVector.
CreateManagedGeometry Creates a LinearElement from an unmangaed IBcLinearEl
Dispose() Releases all resources used by the LinearElement
Dispose(Boolean) Releases the unmanaged resources used by the LinearElement and optionally releases the managed resources
DropLineStrings  
Dump() Dumps the element information.
Dump(StringWriter) Dumps the geometry for debug purpose.
Equals(Object) Indicates whether otherObject is a LinearElement and is identical to this LinearElement. (Overrides )
Equals(Object, Double) Indicates whether otherObject is a LinearElement and is nearly identical to this LinearElement. This is to use in unit tests only to compare with baselines stored in XML for example. Never use this method in application code.
ExtendBeginByLineOrTrim(Double) Returns extended by line or trimmed element from its start point
ExtendBeginByLineOrTrim(Double, Double) Returns extended by line or trimmed element from its start point
ExtendElement Extend element by a line (for splines and spirals) or by continuing the element
ExtendEndByLineOrTrim(Double) Returns extended by line or trimmed element from its end point
ExtendEndByLineOrTrim(Double, Double) Returns extended by line or trimmed element from its end point
ExtendOrTrimBegin(Double) Returns extended or trimmed element from its start point
ExtendOrTrimBegin(Double, Double) Returns extended or trimmed element from its start point
ExtendOrTrimBeginByParameter Returns extended or trimmed element from its start point
ExtendOrTrimBeginByPoint(DPoint3d) Returns extended or trimmed element by its start point.
ExtendOrTrimBeginByPoint(DPoint3d, Double) Returns extended or trimmed element by its start point.
ExtendOrTrimEnd(Double) Returns extended or trimmed element from its end point
ExtendOrTrimEnd(Double, Double) Returns extended or trimmed element from its end point
ExtendOrTrimEndByParameter Returns extended or trimmed element from its end point
ExtendOrTrimEndByPoint(DPoint3d) Returns extended or trimmed element by its end point.
ExtendOrTrimEndByPoint(DPoint3d, Double) Returns extended or trimmed element by its end point.
Finalize (Overrides )
GetAsProfiledElement Get the linear element as a profiled element
getBcLinearEl  
GetCentroid Get the centroid of a linear element;
GetChordDistanceFromDistanceAlong(Double) Gets Chord distance that corresponds to a given distance along the element
GetChordDistanceFromDistanceAlong(Double, Double) Gets Chord distance that corresponds to a given distance along the element
GetChordDistanceFromParameter(Double) Gets chord distance that corresponds to a given parameter along the element
GetChordDistanceFromParameter(Double, Double) Gets chord distance that corresponds to a given parameter along the element
GetCurvatureAtParameter Gets curvature at a given parameter on linear element.
GetCurveVector  
GetDistanceAlongFromChordDistance(Double) Gets distance along that corresponds to a given chord distance along the element
GetDistanceAlongFromChordDistance(Double, Double) Gets distance along that corresponds to a given chord distance along the element
GetDistanceAlongMatches Gets the correspondances between distance along on this element and the other element.
GetDistanceFromParameter Gets distance that corresponds to a given parameter along the element.
GetExtendedElement Get the element extended with lines of the given length.
GetFirstDerivativeAtParameter Gets the first derivate at a given parameter on linear element.
GetHorizontalControlPoints(HorizontalControlPointTypes) Get horizontal control points from this linearelement. The resulting collection contains the control points merged with points of the linearPoints arguments.
GetHorizontalControlPoints(HorizontalControlPointTypes, LinearPointCollection) Get horizontal control points from this linearelement. The resulting collection contains the the control points merged with points of the linearPoints arguments.
GetLength Gets 2D length of linear element
GetLinearPointCollectionBySelection Ported from Bentley.CifNET.GeometryModel (src.cs)
GetLinearPointCollectionFromLineString Ported from Bentley.CifNET.GeometryModel (src.cs)
GetNativeElement Gets the native element embedded into the managed LinearElement.
GetOffsetElement(Double) Returns offset element
GetOffsetElement(Double, Double) Returns offset element
GetOffsetPoint Gets a point at parameter offset.
GetPartialByDistances(Double, Double) Returns a partial element from start distance to end distance
GetPartialByDistances(Double, Double, Boolean) Returns a partial element from start distance to end distance
GetPartialByDistances(Double, Double, Double) Returns a partial element from start distance to end distance
GetPartialByParameters Returns a partial element from start parameter to end parameter
GetPartialByPoints Gets partial between two points. Points can be null, meaning that it starts on beginning or end.
GetPointAtDistanceOffset(Double, Double) Gets point at given distance/offset from linear element.
GetPointAtDistanceOffset(Double, Double, Double) Gets point at given distance/offset from linear element.
GetPointAtParameterOffset Gets point at given parameter and offset on linear element.
GetPositionMatches Gets the correspondances between psition on this element and the other element.
GetSecondDerivativeAtParameter Gets the second derivate at a given parameter on linear element.
GetThirdDerivativeAtParameter Gets the third derivate at a given parameter on linear element.
GetVariableOffsetElement(Double, Double) Returns offset element with variable offset
GetVariableOffsetElement(Double, Double, Double) Returns offset element with variable offset
GetVariableOffsetElement(Double, Double, Double, Double) Returns offset element with variable offset
GetVerticalControlPoints(VerticalControlPointTypes) Get vertical control points from this linearelement. The resulting collection contains the control points merged with points of the linearPoints arguments.
GetVerticalControlPoints(VerticalControlPointTypes, LinearPointCollection) Get vertical control points from this linearelement. The resulting collection contains the the control points merged with points of the linearPoints arguments.
Intersect(LinearElement) Gets collection of intersections with another linear element.
Intersect(DPoint3d, DVector3d) Gets collection of intersections with an infinite vector starting at origin.
Intersect(LinearElement, Double) Gets collection of intersections with another linear element
Intersect(DPoint3d, DVector3d, Double) Gets collection of intersections with an infinite vector starting at origin.
IsProfiledElement Tells if LinearElement is a Profiled Element.
MirroxX Mirrors the element on X axis.
ProjectPointOnPerpendicular(DPoint3d) Projects a point onto an element perpendicularly. Gets the closest projection.
ProjectPointOnPerpendicular(DPoint3d, Double) Projects a point onto an element perpendicularly. Gets the closest projection.
ProjectPointOnPerpendicularAll(DPoint3d) Projects a point onto an element perpendicularly. Gets all the projections.
ProjectPointOnPerpendicularAll(DPoint3d, Double) Projects a point onto an element perpendicularly. Gets all the projections.
ProjectPointOnSkew(DPoint3d, Double, Double) Projects a point onto an element with a skewed angle. Gets the closest projection only.
ProjectPointOnSkew(DPoint3d, Double, Double, Double) Projects a point onto an element with a skewed angle. Gets the closest projection only.
ProjectPointOnSkewAll(DPoint3d, Double, Double) Projects a point onto an element with a skewed angle. Gets all the projection.
ProjectPointOnSkewAll(DPoint3d, Double, Double, Double) Projects a point onto an element with a skewed angle. Gets all the projection.
ProjectPointOnTangent(DPoint3d) Projects a point onto an element tangentially. Gets only the closest projection.
ProjectPointOnTangent(DPoint3d, Double) Projects a point onto an element tangentially. Gets only the closest projection.
ProjectPointOnTangentAll(DPoint3d) Projects a point onto an element tangentially. Gets all the projections.
ProjectPointOnTangentAll(DPoint3d, Double) Projects a point onto an element tangentially. Gets all the projections.
RotateToDirection Rotates the element around the center by a given angle.
RotateToThruPoint Rotates the element around the center and so that it passes thru the point.
SetBcLinearEl(IBcLinearEl*)  
SetBcLinearEl(IBcLinearEl*)  
SetDefaultCircleChordReferenceLength  
ShallowCopy Used to create a Shalow copy of this element.
StrokeByChord(Double) Strokes element by chord
StrokeByChord(Double, LinearPointCollection) Strokes element by chord.
StrokeByChord(Double, Double) Strokes element by chord
StrokeByConnectionPoints(ConnectionPointTypes) Strokes the complex element by its control points. The resulting collection contains the connection points merged with points of the linearPoints arguments.
StrokeByConnectionPoints(ConnectionPointTypes, LinearPointCollection) Strokes the complex element by its control points. The resulting collection contains the the connection points merged with points of the linearPoints arguments.
StrokeByDistances(Double[]) Strokes the linear element by distance.
StrokeByDistances(Double[], LinearPointCollection) Strokes the linear element by distance.
StrokeByDistances(Double[], Double) Strokes the linear element by distance.
StrokeByDivisor(Int32) Strokes linear element by divisor.
StrokeByDivisor(Int32, Double) Strokes linear element by divisor.
StrokeByEndPoints() Strokes element by end points.
StrokeByEndPoints(Double) Strokes element by end points.
StrokeByEndPoints(LinearPointCollection) Strokes element by end points.
StrokeByStep(Double, StrokingByStepMethod) Strokes linear element by step.
StrokeByStep(Double, StrokingByStepMethod, LinearPointCollection) Strokes linear element by step.
StrokeByStep(Double, StrokingByStepMethod, Double) Strokes linear element by step.
Transform Transforms an element and return the transformed element.
TranslateToThruPoint Transalets the element on a given direction so that it passes thru a point.

Fields

IsOwned Used for debug purpose. Owner of LinearElement can set this value.

See Also