Add curve widening to a corridor
The corridors point's such as EOP_L,EOP_R, CL_L, CL_R, EOP_LM, EOP_RM etc. which are defined in corridor template. Curve widening can be applied to these points of corridor.
public bool CurveWideningToCorridor()
{
Bentley.CifNET.SDK.Edit.ConsensusConnectionEdit con = Bentley.CifNET.SDK.Edit.ConsensusConnectionEdit.GetActive();
GeometricModel geomModel = con.GetActiveGeometricModel();
if (geomModel == null) return false ;
//Add Curve widening to first corridor from list
foreach (Corridor corridor in geomModel.Corridors)
{
//create parameters for curve widening
double startDistance = corridor.StartDistance;
double endDistance = corridor.EndDistance;
string pointName = "EOP_R";
Bentley.CifNET.GeometryModel.SDK.CurveWideningParameter curveWideningParameter = new Bentley.CifNET.GeometryModel.SDK.CurveWideningParameter(pointName, startDistance, endDistance);
curveWideningParameter.Description = "Sample CW on EOP_R";
curveWideningParameter.Enabled = false;
curveWideningParameter.Overlap = CurveWideningOverlap.ShiftMaxWideningPointsOntoCurves;
curveWideningParameter.Priority = 1;
curveWideningParameter.UseSpiralLengthForTransition = false;
curveWideningParameter.WideningTableFileName = "C:\\ProgramData\\Bentley\\OpenRoads Designer CE 10.11\\Configuration\\Organization-Civil\\_Civil Default Standards - Imperial\\Widening\\curve_widening_imperial_no_spirals.wid";
//create curve widening for corridor
Bentley.CifNET.GeometryModel.SDK.CurveWidening curveWidening = corridor.AddCurveWidening(curveWideningParameter);
if (curveWidening == null) return false;
break;
}
return true;
}
Corridor.AddCurveWidening() is used here to add curve widening to a corridor.