QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 3538|回复: 10
收起左侧

[已答复] 求助:帮忙开发一个AutoCAD小程序

[复制链接]
发表于 2010-6-3 14:58:03 | 显示全部楼层 |阅读模式 来自: 中国广东佛山

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

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

x
各位高手:5 s/ b( ]7 H9 V" A: ~1 v
帮忙写一个小程序,lisp就可以,( z5 O4 J; n( X/ l: E: r, ~
如图,实现现有所有标注样式的前导不消零,后续消零,因为我们有图纸是从SolidWorks转为AutoCAD的,有这个需求。AutoCAD版本是2008的。" N7 S* c3 ], n9 g  T" j% s' Y
谢谢各位了!! ^5 K; P1 j  ^
长期在线等!
1.png
发表于 2010-6-3 16:05:53 | 显示全部楼层 来自: 中国台湾
后续消零
! q, e& |; F- [% FDimZin ==> 8) v2 m, ]9 E" p. c
=================
  E! R5 u. s. o( o; n& Q- qDIMZIN System Variable
2 S+ y( _  W4 d9 C8 {...
) T( ]/ H% y# c7 i$ K, L8 |8 Suppresses trailing zeros in decimal dimensions (for example, 12.5000 becomes 12.5) 0 c0 z7 O+ Z. p
....1 x7 C, d7 y4 P+ E

6 R# [8 g6 m, f9 B9 q3 B( zDIMZIN also affects real-to-string conversions performed by the AutoLISP rtos and angtos functions.
 楼主| 发表于 2010-6-3 16:40:40 | 显示全部楼层 来自: 中国广东佛山
2# SunVei ' {, @. Q( O) }: ^$ C

3 w2 v8 Y' ^8 h  ~8 J9 u- w# p( L能不能详细一点,帮助上也是像你说的,但是不能用,能解释一下么?
) Y( J5 W! I) u, w) F0 C最好可以有个小程序。, r  E1 k# j) ]/ V2 m  t$ Y) H
还有前导不消零怎么实现?
发表于 2010-6-3 18:43:24 | 显示全部楼层 来自: 中国台湾
但是不能用!?
, {& v0 o8 [8 b( o; U7 n挺纳闷底....
8 @  B. m6 E6 U- C1 k
# y1 w& k8 V/ Q( L! W) U- p* V得就您的文件来比对系统变量值了 (Required *.Dwg)
 楼主| 发表于 2010-6-4 08:38:47 | 显示全部楼层 来自: 中国广东佛山
4# SunVei   ~, f, K: y0 F/ _+ M; d- k5 ?
还是谢谢了!
发表于 2010-6-4 09:04:20 | 显示全部楼层 来自: 中国台湾
Command: DimZin
+ B  I7 L+ r. zEnter new value for DIMZIN <0>:7 }1 i# V7 Z. ?( s! w7 B8 @
. M3 p" {! x7 u# O
0 Suppresses zero feet and precisely zero inches ) T2 e' Q5 K! w0 Z7 G& x! o
1 Includes zero feet and precisely zero inches 5 F9 I  M$ n' w" B
2 Includes zero feet and suppresses zero inches
" L8 N- t: @  Y* Y- X% ~/ N% Z3 Includes zero inches and suppresses zero feet
. d6 l( V1 ^$ \4 Suppresses leading zeros in decimal dimensions (for example, 0.5000 becomes .5000)
/ B; X2 W' J8 U: ^" ^8 d/ ^8 Suppresses trailing zeros in decimal dimensions (for example, 12.5000 becomes 12.5) $ v( U2 j' {& s1 _
12 Suppresses both leading and trailing zeros (for example, 0.5000 becomes .5) ! B% M- A  r% X7 E- h9 s0 J7 n2 a
1 W! b4 d" U4 f5 p
==> 若为 4 前导消零

评分

参与人数 1三维币 +5 收起 理由
唐昕晨 + 5 技术讨论

查看全部评分

 楼主| 发表于 2010-6-5 11:22:04 | 显示全部楼层 来自: 中国广东佛山
6# SunVei 8 n3 R4 o, ?1 i$ J2 ?
这个我以前就试过,对于现有的标注好像也没有效果!
发表于 2010-6-7 19:58:46 | 显示全部楼层 来自: 中国河北保定
用vba怎样做呢
发表于 2010-6-7 23:23:15 | 显示全部楼层 来自: 中国广东惠州
本帖最后由 woaishuijia 于 2010-6-8 07:31 编辑 5 p, p1 Z2 E# T. N* y, H, R
# \3 f! p0 d: ?7 v( F& k
以下是VBA6 w7 G- M/ P" J3 K6 m' M% z

  1. ) @( j* V9 X* O+ v
  2.     Dim DS1 As AcadDimStyle, DS2 As AcadDimStyle1 p8 s! K' ?0 H* c. M& R! x$ G0 [
  3.     With ThisDrawing
    . s$ K: |7 O5 F6 }
  4.         Set DS1 = .ActiveDimStyle6 p7 K2 ]; l- P6 W0 o
  5.         For Each DS2 In .DimStyles
    ' p6 e5 i5 Z! J
  6.             .ActiveDimStyle = DS27 p' B' G+ P" h2 [" }
  7.             .SetVariable "dimzin", 8- A1 i( H  j+ V2 [' L
  8.             .SendCommand "-dimstyle s " & DS2.Name & vbCr & "y ") d. f& R, i9 r
  9.         Next
    ! J' E0 B9 p2 b7 h! A
  10.         .ActiveDimStyle = DS1
    6 s. m# j* {9 k$ O- v# K: V
  11.     End With/ L. s+ G' T$ r
复制代码

# h7 h, ~7 M3 z7 `以下是LSP, k4 a# ]% L' `% y
  1. ' W# y$ r, F- o* [6 }: _5 d  l
  2. (defun c:aaa(/ dimstylelist dimstylename)6 o1 h5 e) V: O$ ~3 B& o: u5 ^6 H
  3.   (setq dimstylelist(tblnext "dimstyle" t))) F/ j/ o4 x+ }6 ^
  4.   (while dimstylelist" W; Z0 i$ x, |+ ^. A( v
  5.     (setq dimstylename(cdr (assoc 2 dimstylelist)))
    ! G7 D* P8 w! ~
  6.     (command "-dimstyle" "r" dimstylename)
    # s5 R2 m" k  P3 k9 x+ i" M  A1 y
  7.     (command "setvar" "dimzin" 8)
    ( P( q. k" {. t2 C3 P
  8.     (command "-dimstyle" "s" dimstylename "y")      7 D8 f/ I- \( X" V& L7 v
  9.     (setq dimstylelist(tblnext "dimstyle"))* e9 B0 ?+ ]+ Y* ?7 T
  10.     )
    $ ~3 i3 a. a: ^/ `! `! c" E
  11.   (princ)
    * T% _7 n$ b9 x
  12.   )' T* b; d! P3 b( ]7 A
复制代码

评分

参与人数 1三维币 +5 收起 理由
唐昕晨 + 5 应助

查看全部评分

 楼主| 发表于 2010-6-10 09:38:50 | 显示全部楼层 来自: 中国广东佛山
本帖最后由 bigbridge812 于 2010-6-10 10:03 编辑
1 n) }8 h0 ^$ Q" s' z3 k$ p
. H% \6 O: U5 N7 R! J4 J6 B* E% l怎么评分啊?
) {* B7 K: N* ?( |2 @. g感谢9楼!谢谢了
 楼主| 发表于 2010-6-10 10:06:26 | 显示全部楼层 来自: 中国广东佛山
利用9楼的程序框架还可以进行各种设置,非常感谢!
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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