明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: artken

[源码] AUTOLISP转成VLISP代码

  [复制链接]
 楼主| 发表于 2008-8-19 20:32 | 显示全部楼层
本帖最后由 作者 于 2008-8-19 20:43:22 编辑

水平差真是麻煩啊。剛去檢查圖紙,

"!YUQIANG_TK_A2"的blockref是不等比圖塊----我還以為是指"!YUQIANG_TK_A2"這個圖塊X比例跟Y比例不同,所以叫不等比圖塊。

原來是我根本不知什麼是blockref、blockdef。網上搜了一下,也沒理解到究竟是什麼。也不知為什麼這東西會出現不等比,該怎麼避免或處理。不知有沒程序可以將所有不等比的blockref處理成等比的。

唉。。。。。。。。。。。再search........

另:我將!YUQIANG_TK_A2刪除後分解,有些文字性的屬性塊分解後圖層和顏色不能固定屬性(比較分解後圖層變成是0層,顏色也不是黃色,變成白色了),ET自帶的BURST分解就不會,不知什麼原因。也許只是這個文件有問題了,我再仔細試試其它文件........

 楼主| 发表于 2008-8-19 20:42 | 显示全部楼层

對了,只要能避免我剛所講的問題,不分解也行,

我不是要將圖面弄亂啊。之所以要進行處理是因為:
1、多重引線:只有2008有,別人用2004打開的話,經常就會看不到這個多重引線的東西,以為是我圖紙沒標材料。分解後就不存在這問題了。
2、屬性塊、動態塊:因為有屬性,別人打開我的圖後,經常會自己莫名其妙(或不小心)用"X"炸有些圖塊。用"X"炸屬性塊就完蛋了,屬性都回複到最原始的狀態,顯然是不對的。所以要保留屬性分解。

用它的方法,比如:讓2004一定能看到多重引線,打開我的圖,就自動能設置成"顯示代理圖元"好像就能避免多重引線問題。屬性塊和動態塊變成不可以修改,這樣對方就不會不小心用"X"去炸到屬性塊了。

這問題我相信應該很人會遇到的啊。怎麼沒什麼人提這個問題啊。是大家不用CAD2008,還是大家已經有解決方法了、、、

发表于 2008-8-19 21:55 | 显示全部楼层

现在用2004的用户应该是比较多的,本人认为像做设计的没有必要追求高版本的CAD,你应该为更多的客户考虑下,例如我们用2008做得图形发给供应商而对方又没有该版本的CAD就造成图档无法,因为大家都知道CAD软件不能向上兼容。至于你上述提到的问题本人不知道有何实用之处。

 楼主| 发表于 2008-8-20 01:59 | 显示全部楼层
本帖最后由 作者 于 2008-8-20 2:15:10 编辑

嗯。。。

只能說,如果使用了2008之後並發現新增加的東西確實是自己想要的。你就會使用它了。

沒使用過,或者它所新增的功能並不是對自己有多大幫助,就確實是沒必要追求高版本。

高版本對電腦硬件的要求太高了,比如CAD2008的註釋性比例(針對填充、圖塊、尺寸、多重引線標註等..)是本人非常非常非常想使用的功能,對我而言可以帶來非常大的便利,可以說有一點點改變作圖習慣,我覺得是個革命性的東西,太有用了。但是在一個項目中使用過後,就沒用再用了,因為用了它之後操作會很慢,電腦配置根不上,所以只能忍痛拋棄,如果哪天辦公寫的電腦全都頂級配置了,會樂壞了.......但多重引線對我而言卻是個好東西且不會對硬件要求高。

就比如CAD2006開始增加了動態塊,如果覺得動態塊對自己沒太多幫助,那就沒必要升級,但如果覺得動態塊正是自己所要的東西,那就會拋棄2004。2008新加了註釋性比例和多重引線,是兩大驚喜。2009相對2008而言就沒什麼大的進步但對內存的要求可不是上升一點點,所以不會升級到2009。

正如你想說,CAD不能向上兼容。所以現在的解決方案就是:在2008裡做圖,做好後用程序處理一下,使得2004能識別且不出問題。這會有點麻煩,但這是值得的。

发表于 2008-8-23 15:33 | 显示全部楼层

1.正如你說的只要在2004設置成"顯示代理圖元"好像就能避免多重引線問題
2.屬性塊和動態塊本來就不應炸開。

只提供VLX版供測試,沒有詳細測試程序

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2008-8-23 16:39 | 显示全部楼层
Thanks....
 楼主| 发表于 2008-8-26 14:08 | 显示全部楼层
龙龙仔,以下兩個地方能否改一下編譯。
1、將 (wcmatch (vla-get-name OBJ) "*_DIM.ARCHTICK") 改為  (wcmatch (vla-get-name OBJ) "*") ,就是讓多重引線的箭頭塊適用性更強一點。
2、增加對ACAD_PROXY_ENTITY的處理,以下是代碼,但是一樣不能跨空間處理。看你有沒辦法解決(類似MULTILEADER的處理?),如果沒辦法解決就只處理模型空間吧。
  1. (setvar "qaflags" 1)
  2. (if (/= (ssget "X" '((0 . "ACAD_PROXY_ENTITY"))) NIL)
  3.   (command "._explode"
  4.     (ssget "X" '((0 . "ACAD_PROXY_ENTITY")))
  5.     ""
  6.   )
  7.   (princ "ACAD_PROXY_ENTITY選擇集為空。")
  8. )
  9. (setvar "qaflags" 0)
  10. (command ".-PURGE" "A" "" "N")
謝謝啊。
另:程序用了下基本沒問題,只是有些情況下會出現箭頭顏色和屬性文字顏色無法固定,變成隨層了。小問題,不常見,冇所謂。
发表于 2008-8-27 08:05 | 显示全部楼层

1.多重引線的箭頭塊要有確實的名稱。

2.對ACAD_PROXY_ENTITY的沒辦法解決。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-21 06:30 , Processed in 0.286318 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表