Moving Load LineLane
A nested class within MovingLoad used to create and manage traffic lanes for moving load analysis with country-specific standards.
Constructor
MovingLoad.LineLane(code, Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, IF=0, Span=0, id=None, width=0, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane with specified parameters.
Parameters
code
(str): Country code for traffic lane standardsLane_name
(str): A unique name for the laneEcc
(float): Lateral eccentricity of the lane's centerline from the reference element path (positive = +Y direction)Wheel_space
(float): Center-to-center distance between vehicle wheels (typically 1.8m or 6ft)Elment_start
(int): First element ID in the continuous path defining the laneElemnt_end
(int): Last element ID in the continuous path defining the laneIF
(float, optional): Impact Factor or Scale Factor as defined by design code. Default: 0Span
(float, optional): Span length for impact factor calculation. Default: 0id
(int, optional): Unique integer ID for the lane (auto-assigned if None). Default: Nonewidth
(float, optional): Width of the traffic lane. Default: 0opt_width
(float, optional): Allowable width for auto-positioning. Default: 0Group_Name
(str, optional): Group name for cross-beam load distribution. Default: ""Moving_Direction
(str, optional): Vehicle movement direction ("FORWARD", "BACKWARD", "BOTH"). Default: "BOTH"Skew_start
(float, optional): Bridge skew angle at lane start (degrees). Default: 0Skew_end
(float, optional): Bridge skew angle at lane end (degrees). Default: 0
Load Distribution Types
- LANE: Standard lane-based load distribution (default)
- CROSS: Cross-beam load distribution (when Group_Name is provided)
Movement Directions
- BOTH: Both directional traffic (default)
- FORWARD: Forward direction only
- BACKWARD: Backward direction only
Object Attributes
code
(str): The country code for the laneLane_name
(str): The unique name of the laneEcc
(float): Lateral eccentricity valueWheel_space
(float): Wheel spacing distanceElment_start
(int): Starting element IDElemnt_end
(int): Ending element IDIF
(float): Impact/scale factorSpan
(float): Span lengthid
(int): Lane IDwidth
(float): Lane widthopt_width
(float): Allowable widthGroup_Name
(str): Group name for load distributionMoving_Direction
(str): Movement directionSkew_start
(float): Start skew angleSkew_end
(float): End skew angle
Country-Specific Subclasses
India
MovingLoad.LineLane.India(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, IF=0, Span=0, id=None, width=0, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to Indian Road Congress (IRC) standards.
China
MovingLoad.LineLane.China(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, IF=0, Span=0, id=None, width=0, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to Chinese bridge design standards.
Korea
MovingLoad.LineLane.Korea(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, IF=0, id=None, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to Korean standards (fixed width = 3m).
Taiwan
MovingLoad.LineLane.Taiwan(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, IF=0, id=None, width=0, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to Taiwanese standards.
AASHTO Standard
MovingLoad.LineLane.AASHTOStandard(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, IF=0, id=None, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to AASHTO Standard (fixed width = 3m).
AASHTO LRFD
MovingLoad.LineLane.AASHTOLRFD(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, IF=0, id=None, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to AASHTO LRFD (fixed width = 3m, IF represents centrifugal force).
PENNDOT
MovingLoad.LineLane.PENNDOT(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, id=None, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to AASHTO LRFD (PENNDOT) (fixed width = 3m).
Canada
MovingLoad.LineLane.Canada(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, id=None, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to Canadian standards (fixed width = 3m).
BS
MovingLoad.LineLane.BS(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, id=None, width=0, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to British Standards (BS).
Eurocode
MovingLoad.LineLane.Eurocode(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, IF=0, id=None, width=0, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to European standards (IF represents vertical load eccentricity).
Australia
MovingLoad.LineLane.Australia(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, id=None, width=0, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to Australian standards.
Poland
MovingLoad.LineLane.Poland(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, id=None, width=0, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to Polish standards.
Russia
MovingLoad.LineLane.Russia(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, id=None, width=0, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to Russian standards.
South Africa
MovingLoad.LineLane.SouthAfrica(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, id=None, width=0, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to South African standards.
KSCE-LSD15
MovingLoad.LineLane.KSCELSD15(Lane_name, Ecc, Wheel_space, Elment_start, Elemnt_end, id=None, opt_width=0, Group_Name="", Moving_Direction="BOTH", Skew_start=0, Skew_end=0)
Creates a traffic lane according to KSCE-LSD15 (fixed width = 3m).
Class Methods
json
Returns JSON representation of all defined traffic lanes.
# Create some lanes
MovingLoad.LineLane.India("Lane1", -1.8, 1.8, 1, 10, Span=30)
MovingLoad.LineLane.India("Lane2", 1.8, 1.8, 1, 10, Span=30)
# Get JSON representation
lane_json = MovingLoad.LineLane.json()
print(lane_json)
create
Sends all defined traffic lanes to Civil NX.
MovingLoad.LineLane.create()
get
Retrieves all lane data from Civil NX.
lane_data = MovingLoad.LineLane.get()
print(lane_data)
sync
Synchronizes lane data from Civil NX to Python objects.
MovingLoad.LineLane.sync()
delete
Deletes all traffic lanes from both Python and Civil NX.
MovingLoad.LineLane.delete()
Examples
Creating Indian Standard Lanes
# Set Indian standards
MovingLoad.Code("INDIA")
# Create two lanes for a bridge
MovingLoad.LineLane.India(
Lane_name="LeftLane",
Ecc=-1.875, # 1.875m left of centerline
Wheel_space=1.8, # Standard wheel spacing
Elment_start=1,
Elemnt_end=20,
Span=30 # 30m span
)
MovingLoad.LineLane.India(
Lane_name="RightLane",
Ecc=1.875, # 1.875m right of centerline
Wheel_space=1.8,
Elment_start=1,
Elemnt_end=20,
Span=30
)
# Create lanes in Civil NX
MovingLoad.LineLane.create()
Creating AASHTO LRFD Lanes
# Set AASHTO LRFD standards
MovingLoad.Code("AASHTO LRFD")
# Create lane with centrifugal force consideration
MovingLoad.LineLane.AASHTOLRFD(
Lane_name="Highway_Lane_1",
Ecc=-1.8,
Wheel_space=1.83, # 6 feet
Elment_start=5,
Elemnt_end=25,
IF=0.15 # Centrifugal force factor
)
MovingLoad.LineLane.create()
Creating Eurocode Lanes
# Set European standards
MovingLoad.Code("EUROCODE")
# Create lane with load eccentricity
MovingLoad.LineLane.Eurocode(
Lane_name="Euro_Lane",
Ecc=0,
Wheel_space=2.0,
Elment_start=10,
Elemnt_end=30,
IF=0.6, # Vertical load eccentricity
width=3.0
)
MovingLoad.LineLane.create()
Creating Lanes with Cross-Beam Distribution
# Create lanes with cross-beam load distribution
MovingLoad.LineLane.India(
Lane_name="CrossBeam_Lane1",
Ecc=-2.0,
Wheel_space=1.8,
Elment_start=1,
Elemnt_end=15,
Group_Name="CrossBeamGroup1", # Enables cross-beam distribution
width=3.5
)
MovingLoad.LineLane.India(
Lane_name="CrossBeam_Lane2",
Ecc=2.0,
Wheel_space=1.8,
Elment_start=1,
Elemnt_end=15,
Group_Name="CrossBeamGroup1", # Same group for distribution
width=3.5
)
MovingLoad.LineLane.create()
Creating Skewed Bridge Lanes
# Create lanes for a skewed bridge
MovingLoad.LineLane.China(
Lane_name="Skewed_Lane",
Ecc=0,
Wheel_space=2.0,
Elment_start=1,
Elemnt_end=12,
Skew_start=15, # 15 degrees skew at start
Skew_end=20, # 20 degrees skew at end
IF=1.3 # Scale factor
)
MovingLoad.LineLane.create()
One-Way Traffic Lane
# Create a one-way traffic lane
MovingLoad.LineLane.Korea(
Lane_name="Oneway_Forward",
Ecc=-1.5,
Wheel_space=1.8,
Elment_start=5,
Elemnt_end=25,
Moving_Direction="FORWARD" # Only forward traffic
)
MovingLoad.LineLane.create()
Synchronizing Existing Lanes
# Sync lanes from Civil NX model
MovingLoad.LineLane.sync()
# Display synced lanes
for lane in MovingLoad.LineLane.lanes:
print(f"Lane: {lane.Lane_name}, Code: {lane.code}, Elements: {lane.Elment_start}-{lane.Elemnt_end}")