Does anyone know how to do this? The various mapcheck reports in Civil 3D report radial bearings, but not tangents. It's easy to calculate and label, but it's not easy to report.
Solved! Go to Solution.
Solved by Jeff_M. Go to Solution.
Interesting question? Just watching this one.
Rick Jackson
Survey CAD Technician VI
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
@Jeff_M ,Parcel Mapcheck report will work. Can you point me in the right direction? I searched the xsl files and there is one for Parcel Inverse, but not for Parcel Mapcheck.
Thanks, Jeff.
@tcorey , I had some time to work on this this morning. I don't check to see if a curve is non-tangent, so it shows the TangentIn & TangentOut for all curves. And it fails when the arc is exactly 180 degrees (for now, it's a work in progress).
I added 2 Public fields for the new In & Out values, and added the following to the end of the FillData of the SegmentCurve file:
''calculate the Tangent Directions Dim E As Double E = oSegmentCurve.Tangent * (Math.Tan(oSegmentCurve.Delta / 4.0)) Dim chordlength As Double chordlength = Math.Sqrt((oSegmentCurve.EndY - oSegmentCurve.StartY) ^ 2 + (oSegmentCurve.EndX - oSegmentCurve.StartX) ^ 2) Dim chorddirection As Double chorddirection = Math.PI / 2 - ReportUtilities.CalcDirRad(startNorth, startEast, endNorth, endEast) Dim MidChord_North As Double Dim MidChord_East As Double ParcelMapCheck_ExtractData.CalculateNextPoint(startNorth, startEast, MidChord_North, MidChord_East, chorddirection, chordlength / 2.0) Dim midangle As Double midangle = Math.PI / 2 - ReportUtilities.CalcDirRad(centerNorth, centerEast, MidChord_North, MidChord_East) Dim PI_North As Double Dim PI_East As Double ParcelMapCheck_ExtractData.CalculateNextPoint(centerNorth, centerEast, PI_North, PI_East, midangle, oSegmentCurve.Radius + E) If Delta < Math.PI Then TangentIn = ParcelMapCheck_ExtractData.RoundDirection_Parcel(startNorth, startEast, PI_North, PI_East) TangentOut = ParcelMapCheck_ExtractData.RoundDirection_Parcel(PI_North, PI_East, endNorth, endEast) Else TangentIn = ParcelMapCheck_ExtractData.RoundDirection_Parcel(PI_North, PI_East, startNorth, startEast) TangentOut = ParcelMapCheck_ExtractData.RoundDirection_Parcel(endNorth, endEast, PI_North, PI_East) End If
Then added this after the Course In & Course Out section of the ReportForm_ParcelMapCheck:
AppendOneRecordInTable(oHtmlWriter, "Tangent In: " + ParcelMapCheck_ExtractData.FormatDirSettings_Parcel(segCurve.TangentIn), "Tangent Out " + ParcelMapCheck_ExtractData.FormatDirSettings_Parcel(segCurve.TangentOut))
And sample output:
Segment# 2: Line | |
Course: N55° 55' 18"E | Length: 469.987' |
North: 15,983.2104' | East: 14,882.8781' |
Segment# 3: Curve | |
Length: 570.687' | Radius: 281.217' |
Delta: 116.2730 (d) | Tangent: 452.437' |
Chord: 477.680' | Course: S82° 04' 41"E |
Course In: S50° 12' 52"E | Course Out: N66° 03' 31"E |
Tangent In: N39° 47' 08"E | Tangent Out S23° 56' 29"E |
RP North: 15,803.2551' | East: 15,098.9779' |
End North: 15,917.3735' | East: 15,355.9993' |
Segment# 4: Curve | |
Length: 626.460' | Radius: 433.700' |
Delta: 82.7612 (d) | Tangent: 382.097' |
Chord: 573.402' | Course: S65° 19' 20"E |
Course In: N66° 03' 31"E | Course Out: S16° 42' 10"E |
Tangent In: S23° 56' 29"E | Tangent Out N73° 17' 50"E |
RP North: 16,093.3698' | East: 15,752.3842' |
End North: 15,677.9682' | East: 15,877.0326' |
This subject has come around again.
I have found the SegmentCurve.vb file for Civil 3D 2022.
@Jeff_M , I don't know where into the vb file to copy your code.
Thanks for any help...
Tim
Thanks, Jeff. To be clear, should this change the output from Analysis tab of Parcel Properties or within the report, Parcel Map Check Report?
Can't find what you're looking for? Ask the community or share your knowledge.