明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3776|回复: 12

[LISP群(1)] 2013-11-14 明经 AutoLISP 编程(102918348) 群聊记录:大家好

 关闭 [复制链接]
发表于 2013-11-14 07:13:30 | 显示全部楼层 |阅读模式
诸葛四郎 07:13:30
大家好
 楼主| 发表于 2013-11-14 11:47:36 | 显示全部楼层
[xieling888] 11:47:36
把每一层上所有的圆孔颜色变为红色如何写
 楼主| 发表于 2013-11-14 11:58:12 | 显示全部楼层
[【KAIXIN】] [【KAIXIN】]炫翔 11:58:12
[qqimg]201311/{0D31B013-7336-03E4-3BFE-91B66B130971}.jpg[/qqimg]这个数度太慢
[hawnn]hawnn 11:58:35
我喜欢这样
不喜欢改组表,这个简单直接
[【KAIXIN】] [【KAIXIN】]炫翔 11:58:40
还要判断随层颜色
[hawnn]hawnn 11:59:05
下班
吃饭
[【KAIXIN】] [【KAIXIN】]炫翔 11:59:13
(vla-get-activeselectionset (vla-get-activedocument (vlax-get-acad-object)))

用这个vlax-for 遍历
[【KAIXIN】] [【KAIXIN】]炫翔 12:00:02
(setq ss(ssget))
 (setq vss (vla-get-activeselectionset (vla-get-activedocument (vlax-get-acad-object))))
 (vlax-for x vss
  (vla-put-Color x 1)
 )
 楼主| 发表于 2013-11-14 12:13:37 | 显示全部楼层
[BB建筑师][R-BB勇] 12:13:37
有个奇怪的现象请教一下,对于多行文字,查看时非常卡,影响了制图效率,可是我打开别人一个文件,基本不卡,然后用别人的块替换到自己图里很卡,自己替换到别人图里,不卡。有人知道是什么命令管字体刷新的么
[NJZX05]剑无锋 12:14:09
你是怎么替换的
恐怕不是块的问题,是注释比例的问题吧
[BB建筑师][R-BB勇] 12:14:34
块直接复制,不同文件名.
哪里设置?
[NJZX05]剑无锋 12:15:39
你打开格式-缩放比例列表;看看缩放比例的数量有什么变化
[NJZX05]剑无锋 12:16:09
08版及以前支持注释比例的都有这个问题
删除无用的注释比例就行了
[BB建筑师][R-BB勇] 12:16:37
2012版喔.
[NJZX05]剑无锋 12:16:45
我是直接加载在自启动里的
2012版没装
不过你看一下,是不是那个问题
[yyyyyyy234][yyyyyyy234]neo 12:17:16
请教一个问题,(action_tile key action-expression),其中action-expression可以为自己定义的函数不
谢谢前辈们
[NJZX05]剑无锋 12:18:45
可以,看函数说明里有例子
[NJZX05]剑无锋 12:19:27
[qqimg]201311/{D632F942-4B92-AD19-9705-8A349EA7C68E}.jpg[/qqimg]
[yyyyyyy234][yyyyyyy234]neo 12:20:01
[qqimg]201311/{5531C842-0FF3-3B8C-612C-063C143B1B08}.jpg[/qqimg]
我是这样定义的,可是在运行的时候,提示hhhh未定义
也不知道是什么原因
[NJZX05]剑无锋 12:20:42
(C:HHHH)
[yyyyyyy234][yyyyyyy234]neo 12:21:05
[qqimg]201311/{77E0B871-43DC-31AC-672A-1B7D0B9E9581}.jpg[/qqimg]
[NJZX05]剑无锋 12:21:19
[yyyyyyy234][yyyyyyy234]neo 12:21:33
好的,谢谢,明白了的
[NJZX05]剑无锋 12:26:47
-32755整数越界了吧
[NJZX05]剑无锋 12:30:54
说错了,负整数边界是-32768
[pzweng][pzweng]路人 12:34:40
这是什么工具呀
[野狼谷]笨鸟 12:37:46
Lisplink.exe
 楼主| 发表于 2013-11-14 15:01:34 | 显示全部楼层
[xzz007][xzz007]lisp编程 15:01:34
同一个LISP程序在2012下能正常运行,而在2014下却不能运行,有人知道是啥原因不?
(defun c:wzsty( / obj)
   (vlax-for obj (vla-get-textstyles (vla-get-ActiveDocument (vlax-get-acad-object)) )
     (if (= (pd_sty_shx (vla-get-name obj)) 1)
       (progn
         (vla-put-fontfile obj "simplex.shx")
         (vla-put-bigfontfile obj "hztxt.shx")
         (vla-put-Height obj 0)
         (vla-put-width obj 0.8)
       )
     )
   )
)
 楼主| 发表于 2013-11-14 15:15:23 | 显示全部楼层
[野狼谷]笨鸟 15:15:23
啰嗦的程序
  (command "style" "s0"    "仿宋_GB2312" "2" "0.75" "0" "n" "n" "n" "") ;_ End_command
;;公司名称
  (command "style" "s1" "" "" "" "" "" "" "")
  (setq point_txt (Get_point_add p4 -155 -21))
  (command "text" "j" "mc" point_txt 0 CompanyName "" "")
先拿这个用吧,
看到vlisp那长长的代码就晕菜
[pzweng][pzweng]路人 15:16:39
(if (= (pd_sty_shx (vla-get-name obj)) :vlax-true
[xzz007][xzz007]lisp编程 15:17:17
我这个是查找图中的定义的字型,如果我的机子上没有这个字型,则替换字型
[xzz007][xzz007]lisp编程 15:18:05
(vlax-for obj (vla-get-textstyles (vla-get-ActiveDocument (vlax-get-acad-object)) )
这句在2014下运行就有问题,
在2012下正常运行
[pzweng][pzweng]路人 15:19:31
你监视变量试试
[xzz007][xzz007]lisp编程 15:21:06
奇怪的是在2012下正常运行
[pzweng][pzweng]路人 15:21:47
监视变量
[xzz007][xzz007]lisp编程 15:23:53
obj 为空
奇怪
[xzz007][xzz007]lisp编程 15:26:44
(defun c:wzsty( / obj)
   (vlax-for obj (vla-get-textstyles (vla-get-ActiveDocument (vlax-get-acad-object)) )
     (if (= (pd_sty_shx (vla-get-name obj)) 1)
       (progn
         (vla-put-fontfile obj "simplex.shx")
         (vla-put-bigfontfile obj "hztxt.shx")
         (vla-put-Height obj 0)
         (vla-put-width obj 0.8)
       )
     )
   )
)
(defun pd_sty_shx(dimsty / aa bigshx mm shx txt1 txt2)
  (setq aa(tblsearch "style" dimsty))
  (setq shx(cdr(assoc 3 aa)) bigshx (cdr(assoc 4 aa)))
  (if (and (/= shx "")(/= bigshx ""))
   (progn
    (if (null (wcmatch shx "*.shx"))(setq shx (strcat shx ".shx")))
    (if (null (wcmatch bigshx "*.shx"))(setq bigshx (strcat bigshx ".shx")))
    (if (null (findfile shx))(setq txt1 "simplex.shx" mm 1)(setq txt1 shx))
    (if (null (findfile bigshx))(setq txt2 "hztxt.shx" mm 1)(setq txt2 bigshx))
   )
  )
  (if (= mm 1)(princ (strcat " 已将" dimsty "字型的原有字体文件(" shx "," bigshx ")替换成了(" txt1 "," txt2 ")。")))
  mm
)
这是完整的程序
[xzz007][xzz007]lisp编程 15:31:59
难道是vlax-for这个函数的原因?
Alber 15:39:05
感谢。
[野狼谷]笨鸟 15:40:10
欢迎共享代码
蔡 15:40:14
谢谢
[alber]alber 15:40:39
这里可以讨论 vb或者易语言的cad问题吗?
[野狼谷]笨鸟 15:44:42
建议 [xzz007]lisp编程 把字体替换改为封装结构,
调用一个表
(list  ("被替换字体1” “替换字体1”)("被替换字体2” “替换字体2”)("被替换字体3” “替换字体3”))
[pzweng][pzweng]路人 15:44:48
群昵称修改为“[论坛用户名]网名”格式,如果你未加入明经CAD社区,请先到http://bbs.mjtd.com注册用户。
[xzz007][xzz007]lisp编程 15:45:51
(vlax-for obj (vla-get-textstyles (vla-get-ActiveDocument (vlax-get-acad-object)) )
关键的是这一句就运行部下去了
在2014下
[野狼谷]笨鸟 15:46:50
如何用qq登陆mjtd论坛,避免qq广播把你登陆情况向所有qq好友进行广播,最近我都不敢上mjtd论坛发言了,因为所有同事都能看见:***在mjtd论坛恢复了***的帖子。
[mccad][MCCAD] 15:48:11
设置->QQ绑定->绑定设置中可以取消
[qqimg]201311/{4451735E-4D37-4D3F-40F2-BAFB41C3051B}.jpg[/qqimg]
[野狼谷]笨鸟 15:48:53
设置了,好像不好使
[mccad][MCCAD] 15:49:33
我查查,这确实是个比较讨厌的事情
[野狼谷]笨鸟 15:50:18
[野狼谷]笨鸟 15:51:30
明经论坛和社区不是一个服务器吧?好像社区速度快一点
[LC100]建筑设计 15:53:52
明显不是一个服务器的。
论坛不挂点广怎么维持生活呢。
[野狼谷]笨鸟 15:54:29
是啊, 我也很关心这个问题呢
[mccad][MCCAD] 15:54:42
论坛就是社区吧
[xiaomm250][lisp_](car (entsel)) 15:54:51
如何把字符串"aa23a5a"中的所有"a"换成"b"呢?
[mccad][MCCAD] 15:54:52
主站是www.mjtd.com
都是一个服务器
[qqimg]201311/{5851DA27-2BDB-2168-A727-FB08C207DF3F}.jpg[/qqimg]
[xiaomm250][lisp_](car (entsel)) 15:55:29
vl-string-subst只能替换第一个,如何把字符串"aa23a5a"中的所有"a"换成"b"呢?
[mccad][MCCAD] 15:56:02
运行多几次不就行了
[fsxm]飞诗 15:56:21
[qqimg]201311/{753748D1-CDF3-5149-69C1-7A01F0E7409E}.jpg[/qqimg]收藏后,去哪里了哈
[mccad][MCCAD] 15:56:57
快速导航里有收藏
[qqimg]201311/{960A131B-B76A-4F22-6116-75D4571A8684}.jpg[/qqimg]
[xiaomm250][lisp_](car (entsel)) 15:57:10
vl-string-subst只能替换第一个,如何把字符串"aa23a5a"中的所有"a"换成"bbb"呢?
[fsxm]飞诗 15:57:58
谢谢~
[fsxm]飞诗 15:58:38
一直在个人空间和资料里找,没看快速导航
[alber]alber 15:59:01
咨询下 lisp返回的函数能调用到vb里面吗?
[328302216][328302216]小莫 16:05:39
我的程序[qqimg]201311/{2B133253-FDF7-7256-395C-D81D85F77DAA}.jpg[/qqimg]执行到这里
变量mj-lmdykbl-3都有值了aa1却没值,不知道是不是撞鬼了...
[328302216][328302216]小莫 16:07:19
[qqimg]201311/{0C4CCA4D-D5A0-F55E-56E9-1A7B431B9BB3}.jpg[/qqimg]
[xzz007][xzz007]lisp编程 16:16:30
谢谢各位了,找到原因了
[328302216][328302216]小莫 16:19:20
伤不起居然写成了((setq ……))多了一层括号[qqimg]201311/{B1AC14ED-DEF1-9DCA-5AC3-621B35A2B499}.gif[/qqimg]
[野狼谷]笨鸟 16:19:29
不怪你,怪系统不提示你
[328302216][328302216]小莫 16:20:23
弄得我以为是撞鬼了
 楼主| 发表于 2013-11-14 18:01:48 | 显示全部楼层
[why1025][7299969]人生 18:01:48
(DEFUN SSPLIT
           (N LI / RETURN A LEN)
  (WHILE LI
;;;WHILE语句
    (PROGN                ;147
      (setq A nil)
      (setq LEN (LENGTH LI))
      (REPEAT (IF (
[why1025][7299969]人生 18:03:25
(SSPLIT 2 ll)ZH这么调用,没有反应
[why1025][7299969]人生 18:08:01
((1 2) (3 4) (5 6))返回这么一个表
[why1025][7299969]人生 18:10:53
谢谢
[328302216][328302216]小莫 18:15:21
  收下了
[why1025][7299969]人生 18:15:35
[328302216][328302216]小莫 18:18:47
注释的数字表示的什么?
[why1025][7299969]人生 18:18:57
没用
,删掉
[llsheng_73]■■■ 18:19:18
注释的什么 东东都不会起作用
[328302216][328302216]小莫 18:21:40
我知道对程序的执行没用,但是应该也有它的意思吧,难道是随便乱标的
[llsheng_73]■■■ 18:22:18
也许是程序人员当时记下的银行密码。。。
[why1025][7299969]人生 18:22:30
不我也不知道
[llsheng_73]■■■ 18:23:33
始终对递归调用晕菜。。。
[llsheng_73]■■■ 18:24:42
还有APPLY,MAPCAR等也是一头雾水。。。
[328302216][328302216]小莫 18:26:14
我也是,那几个函数真难搞
[llsheng_73]■■■ 18:28:59
vl-string-subst只能替换第一个,如何把字符串"aa23a5a"中的所有"a"换成"b"呢?
(setq a"aa23a5a")
(while (vl-string-search "a" a)(setq a(vl-string-subst "a" "b" a))
[pzweng][pzweng]路人 18:30:02
循环就是了
[llsheng_73]■■■ 18:31:03
如果只是一对一的替换不用这样麻烦
(vl-string-translate "a" "b" "aa23a5a")
[pzweng][pzweng]路人 18:32:15
(setq a"aa23a5a")
(while (vl-string-search "a" a)
  (setq a (vl-string-subst "b" "a" a))
)
[llsheng_73]■■■ 18:32:17
[qqimg]201311/{46DD91AA-76DE-8CE7-FCC7-6D0F64D44D81}.jpg[/qqimg]
这是电脑在COPY还是它找了个小工在用手抄写?
[pzweng][pzweng]路人 18:33:10
是你的U盘问题
[llsheng_73]■■■ 18:34:05
路总什么时候给我们菜鸟讲下APPLY,MAPCAR这几个难搞的函数
[pzweng][pzweng]路人 18:34:29
仔细看一下函数说明
[llsheng_73]■■■ 18:35:10
看说明好象都能看懂,看高手们把它们一组合起来用就雾水了
[llsheng_73]■■■ 18:36:30
先下班了,改天再慢慢研究它,不下班也没人加工资
 楼主| 发表于 2013-11-14 20:26:05 | 显示全部楼层
[野狼谷]笨鸟 20:26:05
找几个案例先照葫芦画瓢,这样快一点,然后慢慢理解
[taohuaxiao][taohuaxiao]瑟瑟 20:33:04
有搞arcadmaplisp的没
 楼主| 发表于 2013-11-14 20:44:17 | 显示全部楼层
张勇 20:44:17
[qqimg]201311/{D0D71CFF-8D71-3DB3-41C6-0F9F61704BAC}.jpg[/qqimg]
哪位大俠做個程式 , 可以點選(圖 1)一下,讓圖 1變成圖 2的效果 ! 急求助 !
 楼主| 发表于 2013-11-14 21:31:34 | 显示全部楼层
[冷面修罗][冷面修罗] 21:31:34
谁有高版本的CAD,把我这两幅图帮忙另存成2000格式的
[野狼谷]笨鸟 21:32:06
自己下载一个版本转换吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-12-23 07:54 , Processed in 0.219628 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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