Jump to content

Recommended Posts

Posted

Upgrading to verson 2010 today and I am having a problem with a lisp routines.

What are the Differences between 2010 lisp and 2009 lisp?

 

Thank you,

  • Replies 24
  • Created
  • Last Reply

Top Posters In This Topic

  • muck

    12

  • Lee Mac

    6

  • alanjt

    4

  • chelsea1307

    1

Top Posters In This Topic

Posted Images

Posted

Might be helpful to post the lisp (if you can) or at least what it does to have an idea what was used and what it could be now

Posted

if it utilized (command "function", then it might have a problem. i know some of the functions got some new options, thus changing the syntax.

 

post and we'll give them a look.

Posted
Upgrading to verson 2010 today and I am having a problem with a lisp routines.

What are the Differences between 2010 lisp and 2009 lisp?

 

Thank you,

 

The default routines are, for the most part, the same except for some old ones that were dropped that i have never heard of anyways. but, if you have your own lisp routines, depending on how there were wrote, you may have to re-write a portion of it to work with 2010. for example, my own routines work fine in 2010 but when i first switched over, my companies directory of routines had to be revised to work with 2010. works great now tho.

Posted

I haven't had a problem with LISP upgrading to 2010 from 2004 - but then there are very few of my LISPs that use "(command..." and so they won't be affected (too much).

 

You can get around the prompt problem by using:

 

(initcommandversion [version])

Posted

the best practice to follow (when forced to use command) is to spell everything out.

instead of: (command "_.fillet" "_r")

try: (command "_.fillet" "_radius")

Posted

For some reason 2010 will not load this routine and 2009 will load it.

 

;CALL UP HELP MENU AND

;TEXT DIALOG BOX FOR ED.

(defun showalert (/ dcl_id)

(setq dcl_id (load_dialog "hello.dcl"))

(if (not (new_dialog "hello" dcl_id))

(exit))

 

(action_tile

"accept"

"(done_dialog 0)" )

 

(start_dialog)

(unload_dialog dcl_id)

)

(defun c:showtext (/ dcl_id)

(showtext)

)

(defun showtext (/ dcl_id)

;(setq scpt (list 0 0));working on screen point

(setq dcl_id (load_dialog "acad.dcl"))

;(setq dcl_loc (list 2 380));put box at lower left position

;(if (not (new_dialog "acad_txtedit" dcl_id))

;(IF (NOT edredia) (LOAD "Edredia"));dialog positioning 05/05/99, look here

(setq dcl_loc nil)

;***

;READ TO OUTPUT TO FILE

(setq pathfile "c:/PGCAD/EDDIALOG.txt");file to read names form

(setq flistack nil)

(if (/= pathfile nil)

;(setq b nil fabsnt nil)

(setq b (open pathfile "r"))

;(if (= b nil)(setq fabsnt "true"))

)

;***

(if (/= b nil)(edredia))

 

(if (= b nil)

(setq dcl_loc (list 2 100));put box at lower left position

(setq dcl_loc (list xpostion ypostion));put box at lower left position

);end if

;(setq fabsnt nil)

 

(if (/= b nil)

(progn

(close b)

(setq b nil)

))

;(setq dcl_loc (list 2 450));put box at lower left position

 

(if (not (new_dialog "acad_txtedit" dcl_id "" dcl_loc))

(exit))

;(setq text "kelly")

(set_tile "text_edit" text)

;(m3)

(action_tile

"text_edit" "(setq text $value)")

 

(start_dialog)

 

(unload_dialog dcl_id)

;(setq txt text)(setq text nil)

)

 

 

;(defun set_action_titles ()

; (action_title "true" "(setq text $value)" )

;(action_title "accept" "(done_dialog)" )

; (action_title "cancel" "(done_dialog)" )

;)

 

(defun c:para (/ dcl_id)

(setq dcl_id (load_dialog "paragh.dcl"))

(if (not (new_dialog "paragraph" dcl_id))

(exit))

;(setq text "kelly")

(set_tile "text_edit" text)

;(m3)

(action_tile

"text_part" "(setq text $value)")

 

(start_dialog)

(unload_dialog dcl_id)

;(setq txt text)(setq text nil)

)

 

;filiread.lsp 01/98

;reads a file and prints the lines as strings

;must type in full file name with path.

;command filiread

;make flistack for other programs

;****

;filiread.lsp 01/98

;reads a file and prints the lines as strings

;must type in full file name with path.

;command filiread

;make flistack for other programs

 

(DEFUN C:EDREDIA ()

;(setq pathfile (getstring " Type in filename including path, example c:/file.txt etc: "))

(EDREDIA)

;(setq pathfile nil)

)

 

(DEFUN EDREDIA ()

 

(setq lineinfo (read-line b))

(setq flistack (append flistack (list lineinfo)))

;(print line)

;finds the position of the first space character " "

;the result is the charpost variable.

;variable txtstrg is the test variable.

;4/99, by drh

;***

(setq txtst_g lineinfo)

(setq totalchr (strlen txtst_g))

(setq charpos 1)

(setq t_f "true")

 

(while t_f

(if (= charpos totalchr)(setq t_f nil))

(setq ch_r (substr txtst_g charpos 1))

(if (= ch_r ",")

(progn

(setq charpost charpos)

(setq t_f nil)

))

(setq charpos (+ charpos 1))

);end while

;***

;(close b)

(print lineinfo)

(print charpost)

(setq xpostion nil ypostion nil)

(setq xpostion (substr lineinfo 1 (- charpost 1)))

(setq ypostion (substr lineinfo (+ charpost 1)))

(print xpostion)

(print ypostion)

(setq xpostion (atoi xpostion))

(setq ypostion (atoi ypostion))

 

);END

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

;****

Posted

I have to take that back AutoCAD 2010 will load that routine but my dcl text box

will not come up in my routine. If you see anything in the above code that might

give a problem, please let me know. My lisp is rusty.

thank you,

Posted

Try this at the command line:

 

(findfile "paragh.dcl")

 

If it returns nil, then make sure you have the file in your support path and retry the LISP. :)

Posted

I will try that tomarrow sometime. I know the lisp routine works good on a stand alone

version but it has problems on a network version of 2010. The network verson has a lot

of junk on it making it slow. You know, Thing such as ribbons, etc.

I would give the complete routine but I can't remember which files goes together

to make the routine complete. I just make a support access directory to cover all

my routines. I think the above routine is a problem because the dcl is not coming

up. It puzzles me that it works on the stand alone version.

Posted

Why not just vlx the file with the lisp & dcl.

That way you never have to worrie about it, unless you delete the originals

Posted

Yes it is finding file (findfile "paragh.dcl")

at "C:\\PgCAD\\paragh.dcl" in a support path.

Posted

Is it possable that I might have variable interference because of a previous routine

being loaded in the network version? If so how can I tell what is being loaded to

cause a problem? In the old days I looked in Acad.lsp but now things have change.

Thank you,

Posted

First I want to figure out the problem.

What is "vlx the file with the lisp & dcl". Never heard of that. Must be something

new that I need to consider. Is it just combining them.

Posted

You can compile the LISP and DCL into one VLX file using the compiler in the Visual LISP Editor in AutoCAD.

 

Go to FILE > MAKE APPLICATION.

 

Lee

Posted
First I want to figure out the problem.

What is "vlx the file with the lisp & dcl". Never heard of that. Must be something

new that I need to consider. Is it just combining them.

it's a way of compiling for distribution (no one can read/alter code). however, as long as you have everything stored in a folder that's a support path, you should be golden.

 

post the additional dcl files required and we might be able to figure this out.

Posted

Ok, The stand alone version of 2010 my programs works.

The network version it does not. Something must be different.

 

1. Could it be program speed?

2. Possable variable interferance with somthing preloaded on the network vers.

3. It also works on a network version on 2009 on the same computer but not on

the network version of 2010?

 

 

Any suggestions?

Thank you,

Posted

It there a way to make the dcl open on it own to see if it works.

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...