Jump to content

Run lisp in my drawing without opening them


siyadaliek

Recommended Posts

I'd recommend using a script to print all your drawings by using a Windows .bat file or use the Scriptpro program from AutoDesk. BTW...it's "lisp" not lips.

Link to comment
Share on other sites

For simple printing while in a drawing, a simple lisp tailored to each plotting process needed could be efficient. However, for batch printing from a drive/folder, I recommend lees Script Writer, I use it quite often. Very handy and user friendly! Thanks again Lee!

Link to comment
Share on other sites

However, for batch printing from a drive/folder, I recommend lees Script Writer, I use it quite often. Very handy and user friendly! Thanks again Lee!

 

I'm delighted to hear that you find it so useful!

Link to comment
Share on other sites

I had 128 dwg's some with multiple layouts produced 148 pdf's took around 4 secs to do each one using a script that opened the dwg, loaded plot lisp then closes. Yes they were very simple dwgs. Like others Lee helped me with a very simple fix to my script.

Link to comment
Share on other sites

  • 4 years later...

Are you able to post your solution please? I want an alternative to PUBLISH as I need to be able to plot a lot of drawings to PDF without having to deal with the inefficiencies of PUBLISH.

 

My problem is that the only solution I've found thus far is a simple plot script that targets individually named layouts - which doesn't work when you have:

  1. Multiple drawings with unique layout names.
  2. Multiple layouts within each drawing.

It has so far been a bit difficult to find a script / LISP solution, more-so to find a solution that doesn't involve opening drawings!

I have a company based application that allows for Scripts to run without opening drawings, but nothing for LISP routines - provided the solution I may end up finding is LISP based!

Edited by vorno
Link to comment
Share on other sites

Ok you need to look at Aeccoreconsole it will run without opening drawings.

 

The attached code is for plotting a range of layouts in a dwg so would suit your needs, it would need to be changed slightly to accept the layout range from a script etc. Edit the following.

(defun AH:pltlays (numlay numend / lay)
(SETVAR "PDMODE" 0)

(setvar "fillmode" 1)
(setvar "textfill" 1)

(setq alllays (vla-get-Layouts (vla-get-activedocument (vlax-get-acad-object))))
(setq count (vla-get-count alllays))
;(if (not AH:getvalsm)(load "Multi Getvals.lsp"))
;(setq vals (AH:getvalsm  (list "Enter plot range" "Enter start tab number" 6 4 "1" "Enter end tab number" 6 4 (RTOS COUNT 2 0))))

;(setq numlay (atoi (nth 0 vals)))
;(setq numend (atoi (nth 1 vals)))

Ok so a typical Aeccoreconsole is ran from a batch file 

 

:: Path to AutoCAD core console
set accoreexe="C:\Program Files\Autodesk\AutoCAD 2020\accoreconsole.exe"

:: Path to the script to run
set script="C:\Users\[USERNAME]\Desktop\TESTER\tester2.scr"

%accoreexe% /i C:\Users\[USERNAME]\Desktop\IPAD\TESTER\TEST1.dwg /s %script%
%accoreexe% /i C:\Users\[USERNAME]\Desktop\IPAD\TESTER\TEST2.dwg /s %script%
%accoreexe% /i C:\Users\[USERNAME]\Desktop\IPAD\TESTER\TEST3.dwg /s %script%
%accoreexe% /i C:\Users\[USERNAME]\Desktop\IPAD\TESTER\TEST4.dwg /s %script%
%accoreexe% /i C:\Users\[USERNAME]\Desktop\IPAD\TESTER\TEST5.dwg /s %script%

The script file would be

(load "plotpdfrange")
(AH:pltlays  1 100)

 

plotA3Pdfrange.lsp

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

Thanks - I will have to experiment with this and see what I can get to work! So far I seem to need admin permissions to even open Aeccoreconsole - so will see what my work IT can do to accommodate me!

Link to comment
Share on other sites

BIGAL, I don't think that will work with AcCoreConsole. You have vlax commands in the LISP you are trying to call. As far as I know, most ActiveX commands won't work in Core Console unless they are outside of Acad environment, like file system commands (vl-file-delete, etc).

 

For Core Console, you have to use pure AutoCAD commands or LISP commands. Might be able to import them though? I've not tried it. https://www.cadtutor.net/forum/topic/32196-pasting-code/?tab=comments#comment-262036

Link to comment
Share on other sites

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...