CAB Posted September 9, 2009 Posted September 9, 2009 There is a problem at line 323, no time this am to address it so I commented it out. pid-CAB.LSP Quote
slimpickinz Posted September 9, 2009 Author Posted September 9, 2009 I see it now... (whrNAMESwhr) should be (whr NAMESwhr). Runs with no (code) errors. Need to work on layer assignment, then should be great! Thank you very much! SlimP- Quote
CAB Posted September 9, 2009 Posted September 9, 2009 Slim, Questions: 1. Do you want the DCL to remember previous settings? If yes, which variables need to be remembered? 2. Do you want real time error checking before the OK button will allow the user to proceed? I just got back so give me 30 minutes to clean up the lisp before you start with the layers if that's ok? Quote
slimpickinz Posted September 9, 2009 Author Posted September 9, 2009 Yes, remember all settings. Might as well add error checking (with alert?) I have rectified layering, but this is isolated from the rest of the code I believe. I mean - layering is easily adjusted to match your variable revisions if need be. Go ahead with your clean up... I am breaking for lunch. Quote
CAB Posted September 9, 2009 Posted September 9, 2009 This is the latest but I will update the DCL section again. The layer section has been reformatted. pid-CAB5.LSP Quote
slimpickinz Posted September 9, 2009 Author Posted September 9, 2009 Looks pretty good running with previous DCL, however getting a new error message... ; error: no function definition: nil Is there a way to debug in VLIDE? Quote
CAB Posted September 9, 2009 Posted September 9, 2009 Yes Open VLIDE, load the lisp into the editor Then load the lisp into ACAD Tools/Load lisp in editor Make sure menu Debug/Break on error is checked. Switch to ACAD & run lisp. Do not close VLIDE i.e. X out. See attached new file, major changes in the DCL handler code. Should remember settings in DCL while running in that drawing. Will loose settings when DWG is reopened. Default values are the the MasterList New DCL file attached ;; This is the Master List for DCL variables ;; VarName TileName DefVale TileType listAssoc (setq MasterList '( (compqty1 "compqty1" 1 0 NAMEScompqty) (compqty2 "compqty2" 0 0 NAMEScompqty) (subcool "subcool" 0 0 NAMESsubcool) (liqinj "liqinj" 0 0 NAMESliqinj) ..... )) ;; TileType 0 = PopUp_List ;; 1 = Toggle pid-CAB6.LSP pid06.dcl Quote
slimpickinz Posted September 10, 2009 Author Posted September 10, 2009 That looks really nice.Thank you very much. Still getting that error: no function definition: nil error. Will attempt to debug tomorrow. Buzzard, have you seen this? This is exactly what I need. Quote
The Buzzard Posted September 10, 2009 Posted September 10, 2009 That looks really nice.Thank you very much.Still getting that error: no function definition: nil error. Will attempt to debug tomorrow. Buzzard, have you seen this? This is exactly what I need. Yes, I am still keeping tabs on this. I just want to stay out of the way as not to confuse you with two different methods. You are in good hands with CAB. Looking foward to the completed product. Quote
CAB Posted September 10, 2009 Posted September 10, 2009 Working fine here, you will need VLIDE to tell you where the error is. Quote
slimpickinz Posted September 10, 2009 Author Posted September 10, 2009 Which drawing are you running it against? Quote
slimpickinz Posted September 10, 2009 Author Posted September 10, 2009 I am confused... several errors come up here. error: no function definition: nil Cannot figure out this debug thing. Will get back with you in a bit. Attached latest drawing.... I am running ACAD08. **Update** I believe I found a problem (too many parenthesis?) here in cond statement--> (cond ;;((= comp1hfan "Select One...") (SetLayer "off" "COMP-*-1")) ((or (= comp1hfan "None") [b][color=Red]([/color][/b](< compcnt1 1)) SetLayer "off" "COMP-HF-1")) ((= comp1hfan "Yes") (SetLayer "ON" "COMP-HF-1")) ) should be??... (cond ;;((= comp1hfan "Select One...") (SetLayer "off" "COMP-*-1")) ((or (= comp1hfan "None") (< compcnt1 1)) SetLayer "off" "COMP-HF-1")) ((= comp1hfan "Yes") (SetLayer "ON" "COMP-HF-1")) ) Removed the extra paren, ran it again & it highlights the rest of the whole code and says "too many arguments". PID.zip PID-2000.zip Quote
CAB Posted September 10, 2009 Posted September 10, 2009 Just returned. The correction is: (cond ;;((= comp1hfan "Select One...") (SetLayer "off" "COMP-*-1")) ((or (= comp1hfan "None") (< compcnt1 1)) [color="Red"]([/color]SetLayer "off" "COMP-HF-1")) ((= comp1hfan "Yes") (SetLayer "ON" "COMP-HF-1")) ) PS found another error, see new file attached: Need to check all combinations to see if there are any hidden syntax errors. I did a lot of cut & paste of the code! Running against the 2000 DWG it worked but only a few combinations tried. pid-CAB7.LSP Quote
CAB Posted September 10, 2009 Posted September 10, 2009 Need to clairfy the rules for the DCL & Layers When compqty1 is set turn comp?un comp?vfd comp?dig comp?hfan on for >= matching numbers. Also turn Loop on for >= matching numbers. When compqty2 is set turn comps?un comps?vfd comps?dig comps?hfan on for >= matching numbers. Also turn Loops on for >= matching numbers. Any other rules? Do you need to turn ALL layers on before the "Change Layers" portion runs? Quote
slimpickinz Posted September 10, 2009 Author Posted September 10, 2009 This is very nice. Well Done!! NO errors, just some layer adjustments on my part. I will post the finished application in a day or two. I will see what I can do with the following: The Loops do not need to be linked with number of compressors. Although it would never likely happen, a selection of two compressors and 3 loops is not available. Actually, I start the drawing with all layers on. I like to see everything that is available before starting. What I plan on next is running another routine against this finished drawing for production environment... line sizes, specific components etc. I would like to use preset attributes. Any thoughts on this guys? Buzzard, I have really missed your input lately, but appreciate drumming up others interest in this one, including yours truly!! I just hope I can get an even better understanding of the methods used here than I already had. Thanks guys. We ain't done yet! SlimP- Quote
CAB Posted September 10, 2009 Posted September 10, 2009 You're welcome. Add this to the beginning of the list to turn all layers on: (vl-cmdf "-layer" "On" "*" "") Quote
The Buzzard Posted September 10, 2009 Posted September 10, 2009 This is very nice. Well Done!!NO errors, just some layer adjustments on my part. I will post the finished application in a day or two. I will see what I can do with the following: The Loops do not need to be linked with number of compressors. Although it would never likely happen, a selection of two compressors and 3 loops is not available. Actually, I start the drawing with all layers on. I like to see everything that is available before starting. What I plan on next is running another routine against this finished drawing for production environment... line sizes, specific components etc. I would like to use preset attributes. Any thoughts on this guys? Buzzard, I have really missed your input lately, but appreciate drumming up others interest in this one, including yours truly!! I just hope I can get an even better understanding of the methods used here than I already had. Thanks guys. We ain't done yet! SlimP- slimpickinz, As I said before, No need to confuse you with two different methods. I have been staying out of the way so you could progress with this project. I can see your getting under wraps soon and hope it turns out the way you expect. I have lost track of which files belong to which, But hope you will post a final and I will wait till then. As far as my input at this point, You only got yourself to please and you got a great tutor to get you there. You have endured learning some difficult programming. Great work. BTW great work for your part CAB. Quote
slimpickinz Posted September 11, 2009 Author Posted September 11, 2009 Presented the CAB et al. version of the routine today, still need to adjust layers, but I must say everyone was impressed. I will post finished product this weekend for all to see. Quote
The Buzzard Posted September 12, 2009 Posted September 12, 2009 Presented the CAB et al. version of the routine today, still need to adjust layers, but I must say everyone was impressed. I will post finished product this weekend for all to see. Way to go Quote
slimpickinz Posted September 12, 2009 Author Posted September 12, 2009 Having another problem guys..... Compressor Layers are not responding to selections (compqty1 & compqty2). I have looked up and down on this, please take a peek and see what may be causing this not to work. Thanks. Please use the same drawing as before to test. pid.dcl PID.LSP 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.