2007年4月3日星期二

19. Jimmy Bergmark的一些Vlisp函数功能简介

19. Jimmy Bergmark的一些Vlisp函数功能简介

AutoLisp和Vlisp的资料现在越来越多了,不像10年前一样只有可怜巴巴的几本书,互联网也不发达的时候了。慢慢的上网会发现很多自己的想法早就有高手解决了,这里面有国外的Bill Krammer, Tony Tanzillo, Evgeniy,Menzi,John Uhden等等,也有国内的xdsoft,eachy,aeo,狂刀,Lucas等等高手。Lisp是一个很有趣的语言, 有时候同一个函数有着7,8种不同的写法,有时候却几乎一模一样。高手们的程序一般而言都很有特色。有时候看到了一个好程序,就很喜欢google一下,去看看他们还有一些什么作品,感受一下他们的风格。

Jimmy Bergmark创建的www.jtbworld.com网站很早的时候就存在互联网了,他现在的博客地址是http://jtbworld.blogspot.com/,在网上也很有名,经常会发布一些Autocad和Lisp相关的新闻,技巧和代码。下面翻译的是他主页上的一些公开的源代码的简单解释。有简单有复杂,:)可以看出高手也是一步步走过来的呀。不好意思,还没有一个个测试,假如其功能翻译有误,请告知。也希望能对其中几个进行抓图演示。

acaddoc.lsp

------

accdist.lsp

积累求总距离

AecExportToAutoCAD.lsp

ADT 2004相关程序

AECObjectsExplodeOptions.lsp

ADT 2004相关程序

AreaM.lsp

选择物体求总面积

areaOfObject.lsp

选择物体的面积

axBlock.LSP

不少关于块的程序

axCreateVP.LSP

用Lisp创建Viewport 视窗

axInsert.lsp

用ActiveX法在模型空间建块

backgroundchanger.lsp

改变背景颜色

BlockToXref.lsp

把块变成Xref

BOMLenghts.lsp

线求总长

CAO_Link_Templates.lsp

用CAO的方法在autocad 2002中创建和删除链接

ChangeNoPlottableLayers.LSP

把不能打印的层移到defpoints层

dimlinechange.lsp

选dim标注中的线改动到其他图层,可以是其他线形

DisplayColorProperties.lsp

多个显示颜色特性的子程序

DisplayProperties.lsp

一些关于显示特性的子程序

GetPlotDevices.lsp

获取打印设备

getvpscale.lsp

获取视窗的显示比例

Hatch_Move.lsp

移动hatch的起始点位置

HATCHB.LSP

hatch边界线重建

HatchBase.lsp

改变一个或多个hatch的基准点

historylines.lsp

改变命令行的高度

insrot.lsp

两个用ActiveX方法插入块

JTB_TitleBar.lsp

改变Autocad的标题栏,注意,需要下载一个vb的dvb文件

layer-list.LSP

把图层的名称和状态存到某文件中

layer-lw-list.LSP

图形的图层和线宽列表

layers-erase.LSP

删除所有冻结和关闭图层上的所有物体

layer-state.LSP

按照给定的状态对图层进行列表(是否冻结,关闭,可打印)

layer-toggle-freeze.lsp

切换图层的freezen冻结状态,并只对这些图层regen

LayoutsToDwgs.lsp

把某个布局layout存为dwg,对存r14及以下版本有用

lenghtOfObject.lsp

选择物体的周长

linetype.LSP

几个关于线形的程序

mpt.lsp

两点的中点,三分点和四分点,三点的中点

pagesetup.lsp

一些关于页面设置(page setup)的子程序

PersonalMtextSymbols.lsp

在Mtext的右键菜单中添加一些个人的Mtext符号

pljoinfuzz.lsp

通过误差连接直线、弧和多义线

PlotDevicesFunctions.lsp

一些关于打印设置的子程序

plotdialog.lsp

打印

profiles.lsp

一些关于配置Profile的子程序

ProjectPaths.lsp

保存图形文件的配置路径,以便在其他机子上使用

Purge-Point.lsp

一个purge 点的程序,Autocad与POINT 5交流时用

purger.lsp

purge相关程序,避免出现命令行讨厌的提示

remicons.lsp

通过配置注册表,移除icons Buzzsaw, RedSpark, Point A and FTP 等不大必要的选项的显示

SOpen.lsp

把一个文件打开,激活,并设为只读

supportPaths.lsp

把支持路径保存到一个文件中,或从一个文件中加载

TextFunctions.lsp

把所有物体中的Text或Mtext改变为指定文字style

txtRot.lsp

把所有Text旋转到指定路径

viewportcenter.LSP

得到视窗中心

viewsIO.LSP

输出或导入View视图

VPlayers.lsp

保存、导入或者恢复Viewport中的图层

vp-outline.LSP

在模型空间中创建一个包含选择视窗的外轮廓线

vpsel.lsp

选择Viewport视窗中所有可见物体

zoome.lsp

所有Viewport视窗最大化