Need a lisp to place topo notes

Need a lisp to place topo notes

Anonymous
Not applicable
491 Views
4 Replies
Message 1 of 5

Need a lisp to place topo notes

Anonymous
Not applicable

Hi, Im looking for a lisp to help place the topo or side notes. People call them by different name but Im refering to the notes on roadway plans that discribe misc information left and right of the alignment "MH, 55+56.05, 25 LT" placed horiz on either side of the road. 

0 Likes
492 Views
4 Replies
Replies (4)
Message 2 of 5

redtransitconsultants
Collaborator
Collaborator

Are you using Civil 3D? There's already a way to do this in Civil 3D

Steve Hill,Civil Designer / .NET Developer / AutoCAD and AutoCAD Civil 3D Certified Professional
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.

EESignature

http://redtransitconsultants.com/
Autodesk Exchange Store
Twitter | LinkedIn | YouTube

0 Likes
Message 3 of 5

Anonymous
Not applicable

Sady no. Using Carlson. Not my first choice but I dont own the company lol

0 Likes
Message 4 of 5

redtransitconsultants
Collaborator
Collaborator

Here's something pretty rough. The basics are there but need some additional formatting and a function to determine the correct side of the line. If I have more time, I'll try and get it working a bit better.

 

;;Label Station Offset
;;Red Transit Consultants LLC - Steve Hill
;;2015-08-10
;;BETA Version 0.0.1

;;Items to be fixed
;;- Correctly determine which side of line selected point is on and output
;;- Prompts for other wording
;;- More control over text
;;- Format station values to station formatting


(vl-load-com)
(defun c:LabelStationOffset()
	(setq pt (getpoint "\nPoint: "))
	(setq pline (car (entsel "\nSelect centerline object: ")));can be any line, arc, pline, ellipse, spline

	;;Get Offset Distance
	(setq perpPt (vlax-curve-getclosestpointto pline pt))
	(setq lblPerpDist (distance perpPt pt))

	;;Get station length along line
	(setq lblStaDist (vlax-curve-getDistAtPoint pline perpPt))

	;;Determine which side of line
	(setq ang (angle '(0. 0. 0.) (vlax-curve-getFirstDeriv pline (vlax-curve-getParamAtPoint pline perpPt))))
	(setq perpAng (angle perpPt pt))
	(setq resAng (- perpAng ang))

	(if (> resAng 0)
		(progn
			(setq side " RT")
		);progn
		
		(setq side " LT")
	);if

	;;Format results
	(setq lblStaDist (rtos lblStaDist 2 2))
	(setq lblPerpDist (rtos lblPerpDist 2 2))

	;;Compose Label
	(setq text (strcat "MH, " lblStaDist ", " lblPerpDist side))

	;;Create Label
  	(command "_.mtext" pt pt text "")
(princ "")
);defun

Steve Hill,Civil Designer / .NET Developer / AutoCAD and AutoCAD Civil 3D Certified Professional
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.

EESignature

http://redtransitconsultants.com/
Autodesk Exchange Store
Twitter | LinkedIn | YouTube

0 Likes
Message 5 of 5

Anonymous
Not applicable
Where is the way to generate topo side notes in Civil 3D?
0 Likes