Syntax
array set plpoint [ABMAXIS axid GET PLANPOINT sloc]
array set prpoint [ABMAXIS axid GET PROFPOINT sloc]
array set station [ABMAXIS axid GET SNORMAL sloc ax2id ratio]
Description
Query a plan plane point at a specific station
Query a profile point at a specific station
Argument |
unit |
Meaning |
axid |
OBJID |
Object ID of the axis |
GET |
KEYWORD |
Query data |
PLANPOINT |
KEYWORD |
Query a plan plane point |
PROFPOINT |
KEYWORD |
Query profile point |
sloc |
STATION |
Local station |
ax2id |
OBJID |
Object-ID of the axis on which the station is being searched for |
ratio |
DOUBLE |
Determining the search direction in [0,1]; 0...Normal in sloc to axis axid; 1...Normal in the searched station to axis ax2id |
Return field for [ABMAXIS ... PLANPOINT ... ]
Field argument |
unit |
Meaning |
error |
INT |
Error status |
info |
TEXT |
Error information |
s |
STATION |
Local station value |
east |
LSTRUCTD |
Coordinates |
north |
LSTRUCTD |
Coordinates |
a |
ANGLED |
Angle in plan |
b |
1/LSTRUCTD |
Curve |
r |
LSTRUCTD |
Radius (1/b) or "inf" |
Return field for [ABMAXIS ... PROFPOINT ... ]
Field argument |
unit |
Meaning |
error |
INT |
Error status |
info |
TEXT |
Error information |
l |
LSTRUCTD |
3D length |
s |
STATION |
Local station |
h |
LSTRUCTD |
Height |
a |
ANGLED |
Elevation angle |
b |
1/LSTRUCTD |
Curvature in elevation |
r |
LSTRUCTD |
Radius (1/b) or "inf" |
Return field for [ABMAXIS ... SNORMAL ... ]
Field argument |
unit |
Meaning |
error |
INT |
Error status |
info |
TEXT |
Error information |
s |
STATION |
Local station value on the axis axid |
s2 |
STATION |
Local station value on the axis ax2id |
ratio |
DOUBLE |
Confirmed argument ratio |
Scopes
All
Examples
# export some plan points
set format2 " %15.5f %15.4f %15.4f %15.8f %12.4f %12.4f"
set format3 " %15s %15s %15s %15s %12s %12s"
puts $outfile ""
puts $outfile "Plan points"
puts $outfile "-----------"
puts $outfile " Station East North Angle Bend Radius"
puts $outfile [format $format3 $us(symb) $ul(symb) $ul(symb) $ua(symb) $ub $ul(symb)]
puts $outfile "---------------------------------------------------------------------------------------------------"
array unset point
array set point [ABMAXIS $ID GET PLANPOINT 3.5]
puts $outfile [format $format2 $point(s) $point(east) $point(north) $point(a) $point(b) $point(r)]
It is assumed that an outfile text file is opened for writing to and the us, ul, ua and ub units symbols are set up in advance. Also compare examples via TCL Command ABMUNIT. The point data at station 3.5 is formatted and written to the text file.
# export some profile points
set format2 " %15.5f %15.4f %15.4f %15.8f %12.4f %12.4f"
set format3 " %15s %15s %15s %15s %12s %12s"
puts $outfile ""
puts $outfile "Profile points"
puts $outfile "--------------"
puts $outfile " Length Station Height Angle Bend Radius"
puts $outfile [format $format3 $ul(symb) $us(symb) $ul(symb) $ua(symb) $ub $ul(symb)]
puts $outfile "--------------------------------------------------------------------------------------------------"
array unset point
array set point [ABMAXIS $ID GET PROFPOINT 3.5]
puts $outfile [format $format2 $point(l) $point(s) $point(h) $point(a) $point(b) $point(r)]
It is assumed that an outfile text file is opened for writing to and the us, ul, ua and ub units symbols are set up in advance. Also compare examples via TCL Command ABMUNIT. The point data at station 3.5 is formatted and written to the text file.
# search reference station at 2nd axis
array set ul [ABMUNIT LSTRUCTD GET]
array set us [ABMUNIT STATION GET]
array set ua [ABMUNIT ANGLED GET]
# begin station
array set axis1 [ABMAXIS $axis1ID GET]
set sbeg1 $axis1(sbeg)
# begin station
array set axis2 [ABMAXIS $axis2ID GET]
set sbeg2 $axis2(sbeg)
# calculation and export
set format2 " %15.5f %15.5f %15.4f %15.4f %15.8f %12.4f"
set format3 " %15s %15s %15s %15s %15s %12s"
puts $outfile ""
puts $outfile "Data of axis '$axis2(name)' based on stationing of axis '$axis1(name)'"
puts $outfile "----------------------------------------------------------------------------------------"
puts $outfile [format $format3 s($axis1(name)) s($axis2(name)) East North Angle Height]
puts $outfile [format $format3 $us(symb) $us(symb) $ul(symb) $ul(symb) $ua(symb) $ul(symb)]
puts $outfile "--------------------------------------------------------------------------------------------------------"
array set stat2 [ABMAXIS $axis1ID GET SNORMAL $sloc1 $axis2ID 0.0]
if { $stat2(error) != 0 } {
puts $outfile $stat2(info)
} else {
# plan point at target axis at local station s2
array set point2 [ABMAXIS $axis2ID GET PLANPOINT $stat2(s2)]
# profile point at target axis at local station s2
array set pointH [ABMAXIS $axis2ID GET PROFPOINT $stat2(s2)]
# global stations
set sglo1 [expr {$sbeg1+$sloc1}]
set sglo2 [expr {$sbeg2+$point2(s)}]
puts $outfile [format $format2 $sglo1 $sglo2 $point2(east) $point2(north) $point2(a) $pointH(h)]
}
It is assumed that an outfile text file is opened for writing to. Also compare examples via TCL Command ABMUNIT. The model contains 2 axes and a search takes place for the station at axis 2, normal to the station $sloc1 at axis 1. The point data at the station found is formatted and written to the text file.
|
(C) ALLPLAN GmbH |
Privacy policy |