rikiki Posted August 3, 2015 Posted August 3, 2015 Hi All, I'm hoping to get some help in editing a LISP routine please. I have a LISP created by Charles Darling http://www.gilesdarling.me.uk/lisproutines.shtml which i'm hoping to get some assistance editing slightly to suit my needs better. I have a cable route which I am trying to create KP (Kilometer Post) flags along. the chainage lisp allows me to do this, but is limited to a point. The current lisp creates markers at a user specified distance, but only plots the units as meters 700.000. Ideally i'd like to turn the markers into kilometers i.e. 4.5etc. please see attached image for example of desired outcome. Hope this makes sense and someone is able to help here. Thanks. chainage.lsp Quote
SLW210 Posted August 3, 2015 Posted August 3, 2015 I moved your thread to the AutoLISP, Visual LISP & DCL Forum, please post your questions in the appropriate forum. Did you try contacting the creator of the LISP (Scroll to bottom of the page you linked)? Quote
rikiki Posted August 3, 2015 Author Posted August 3, 2015 Thanks for shifting to the correct place. Yes I have previously tried to contact the creator with no success. Quote
BIGAL Posted August 4, 2015 Posted August 4, 2015 Good time to learn lisp you will need to look through the code and find the variable for the chainage and divide by 1000 the program is well commented i have found a couple of possible start points particuarly cd_v1 but where its converted to cd_t4 ; Internal Variables: ; =================== ; cd_l1 = list of groups of coordinates (x,y), chainage(s), offset(s) and level(s) ; cd_z1 = value of DIMZIN at start of function ; cd_h1 = current text height ; cd_c1 = count through cd_l1 ; cd_l2 = copy of list cd_l1 but with chainages and offsets rounded to 3 decimal places ; cd_i1 = item in list cd_l1 or cd_l2 [color="red"]; cd_v1 = item's chainage[/color] ; cd_v2 = item's offset ; cd_m1 = minimum chainage at start of comparison ; cd_m2 = minimum offset at start of comparison ; cd_m3 = maximum chainage ; cd_m4 = maximum offset ; cd_t1, cd_t2, cd_t3, [color="red"]cd_t4[/color], cd_t5 = text for each MTEXT object ; cd_n1 = next comparison chainage ; cd_n2 = next comparison offset ; cd_p1 = point at which to draw MTEXT objects ; cd_x1 = horizontal offset between each MTEXT object ; Internal Variables: ; =================== ; ck_l1 = source polyline parsed list ; ck_n1 = chainage at start of polyline ; [color="red"]ck_n2 = chainage where chainage mark is to be drawn[/color] ; ck_b1 = chainage mark number style (nil for CHXSECT and CHXSECTS) ; ck_s1 = chainage mark line length (bigger for CHXSECT and CHXSECTS) ; ck_c1 = count through ck_l1 ; ck_n3 = chainage at start of segment ; ck_z1 = initial value of DIMZIN ; ck_h1 = current text height ; ck_i1 = item in ck_l1 ; ck_n4 = length of segment ; ck_p1 = mid-point of chainage mark, then start point for text ; ck_a1 = angle along line or arc, then angle for chainage mark ; ck_t1 = text output ; ck_b2 = flag: T if text output is negative, nil if positive Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.