Autolisp
Get your name in lights
Submitted by rkmcswain on Thu, 04/22/2010 - 12:37Ok, not exactly in lights, but in print! Seriously, do you have a time saving tip, technique, or code that you would like to share? Submit it to Cadalyst and have it published in Tips and Tools Weekly (subscribe here), or maybe in the monthly Hot Tip Harry feature.
Don't be shy, there are tips from reminders about commands to complex autolisp routines, and everything in between (yes, there is even some VBA code). If you are looking for a routine, you can also find almost 10 years of previously published code at http://cadtips.cadalyst.com. What if you are having problems with some existing code? Drop into the one of the many forums out there, including Augi, CadTutor, and of course the Hot Tip Harry forum at Cadalyst, and ask some of the pros.
Here is the Hot Tip Harry code for 2010: April 2010 | March 2010 | February 2010 | January 2010
Use the Bold link above to submit your tip/code or you can send it directly to harry@cadalyst.com Read more »
Afralisp 2.0
Submitted by rkmcswain on Fri, 04/16/2010 - 07:16If you have been around AutoCAD for a while and have done any Autolisp or VBA programming, you have probably run across a great Autolisp and VBA site with tutorials and code examples named AfraLisp. About 4 years ago, the Afralisp website, created by and formerly maintained by Kenny Ramage was taken over by David Watson, who also runs http://www.CadTutor.net.

David has just completed Afralisp v2.0, a total rework of the website. Everything has been reorganized, and the whole site has a fresh look. Stop by and take a look, and leave some feedback. Read more »
Getting a list of polyline vertices using LISP
Submitted by rkmcswain on Wed, 12/30/2009 - 10:27Here is one way to generate a list of polyline vertices using lisp. This function requires one argument, a polyline entity. The polyline can be the old style POLYLINE entity (2D or 3D), or it can be an LWPOLYLINE entity.
(defun getcoords (ent)
(vlax-safearray->list
(vlax-variant-value
(vlax-get-property
(vlax-ename->vla-object ent)
"Coordinates"
)
)
)
)
Read more »Accessing Civil 3D objects with autolisp
Submitted by rkmcswain on Thu, 12/17/2009 - 13:42I have been working with the Civil 3D 2010 API in visual lisp recently, and I thought I would share an example of working with an alignment object. This example has plenty of comments, but basically it shows you how to find a point near the alignment based on a station and offset. Then it does the opposite and shows you how to determine the station and offset, given a point. For clarity, I have left out most of the error checking. Read more »
Entmake HATCH entity - Part 2
Submitted by rkmcswain on Tue, 12/15/2009 - 12:29Regarding yesterday's post....what I failed to cover with any detail was the fact that the example code posted in the CADTutor forum post was strictly for a closed area defined by four lines. Of course that isn't the only area you may need to hatch. Today, I needed to adapt this code to hatch an area defined by an ellipse. Read more »
Entmake HATCH entity
Submitted by rkmcswain on Mon, 12/14/2009 - 13:22After working on some autolisp code where I needed to create several HATCH entities, I figured that using (entmake) to do the job would be much faster than pushing the command line version of the HATCH command.
I didn't have my own example of this, and after checking out the DXF reference, it looked a bit more complicated than other entities, so I set out in search of some sample code that worked.... which led me to a post by "CarlB" over in the CADTutor forums that he had posted a few years ago. This worked great until I added in the scale factor and changed the pattern from SOLID to ANSI31. After a few iterations of trial and error, I managed to make it do what I wanted.
When using a real pattern (as opposed to SOLID), you have to specify a few more parameters. Head over to this thread in the CADTutor forums for the example code.
As it turns out, using (entmake) is about 10 times faster than using the (command) function in this case.
EDIT: I failed to mention that the example posted at the link above is for hatching a simple boundary defined by four lines. If you have arcs or other entities involved, the code will be a bit different. Read more »
Decrypt FAS Files?
Submitted by rkmcswain on Mon, 10/10/2005 - 19:01I know this is a controversial topic, so let me clear the air right up front. This article is NOT a 'how-to' for decrypting or decompiling FAS files.
This topic seems to come up every now and then. Sometimes on the Autodesk newsgroups (where it's promptly deleted) or maybe on an unmoderated forum such as alt.cad.autocad. Either someone has "lost the .lsp file", and needs to decrypt the only thing left, the FAS file -or- someone is just openly looking for a way to get into someone else's protected FAS file. More reason to back up your source code, even print it out and store the hardcopy. Retyping is bad, but much better than the alternative. Read more »
All content is copyright © CAD Panacea 2008-2010 unless otherwise noted.
All content of CAD Panacea is solely my own personal thoughts and opinions and do not represent my employer or any others.
All comments posted to this blog are the sole responsibility of the person making the comment.
Google, as a third party vendor, uses cookies to serve ads on this site. Google's use of their cookies enables it to serve ads to users based on their visit to your sites and other sites on the Internet. You may opt out of the use of these cookies by visiting the Google ad and content network privacy policy.




Recent comments
1 week 1 day ago
2 weeks 20 hours ago
2 weeks 1 day ago
2 weeks 2 days ago
2 weeks 2 days ago
2 weeks 3 days ago
2 weeks 4 days ago
2 weeks 5 days ago
2 weeks 5 days ago
2 weeks 6 days ago