QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

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

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

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

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

x
各位高手:9 U, {/ S- R6 W& I
帮忙写一个小程序,lisp就可以,/ e; r, @+ o) L, E: v) `) `
如图,实现现有所有标注样式的前导不消零,后续消零,因为我们有图纸是从SolidWorks转为AutoCAD的,有这个需求。AutoCAD版本是2008的。
( E0 V0 y, q- t9 N谢谢各位了!
. u" ?6 B6 M( U8 B长期在线等!
1.png
发表于 2010-6-3 16:05:53 | 显示全部楼层 来自: 中国台湾
后续消零
9 F- y% m1 F) m/ y8 B. mDimZin ==> 8
% B; E2 p( ^; y) n' T# m=================$ u# ?) _/ [3 V" ^) N% [) \, ]% I
DIMZIN System Variable, v4 Z: M% A& ?' W
.../ X) F7 U/ u9 s% s5 G
8 Suppresses trailing zeros in decimal dimensions (for example, 12.5000 becomes 12.5) 8 O( ?8 R3 N; b! T- c, S1 O7 f
....' A( L: ^' O( k: J2 }2 I
6 h  e4 I9 n0 f4 W! H* K
DIMZIN also affects real-to-string conversions performed by the AutoLISP rtos and angtos functions.
 楼主| 发表于 2010-6-3 16:40:40 | 显示全部楼层 来自: 中国广东佛山
2# SunVei
9 |  U  d- L* n- L$ Q
4 p/ z) E1 ~  F9 C% T% l( f& h& B能不能详细一点,帮助上也是像你说的,但是不能用,能解释一下么?9 R& J' J8 h6 z3 Z
最好可以有个小程序。# W$ d/ Z& G  Z4 d1 l/ o- `
还有前导不消零怎么实现?
发表于 2010-6-3 18:43:24 | 显示全部楼层 来自: 中国台湾
但是不能用!?
- O; `8 P0 `6 V3 Q9 k, J5 X挺纳闷底....
0 D( d5 N5 g# `
7 ^$ A  M' {8 R) q* C3 W' u得就您的文件来比对系统变量值了 (Required *.Dwg)
 楼主| 发表于 2010-6-4 08:38:47 | 显示全部楼层 来自: 中国广东佛山
4# SunVei * h3 z) {/ q2 E  p
还是谢谢了!
发表于 2010-6-4 09:04:20 | 显示全部楼层 来自: 中国台湾
Command: DimZin
$ @7 k% I5 z- W0 j7 h7 gEnter new value for DIMZIN <0>:
, P7 d2 z( m3 P& M$ c" P: X8 ~4 f
$ L1 ]8 X2 R2 o" w6 \3 E( U0 Suppresses zero feet and precisely zero inches   K6 m2 P! T3 R5 ?. E
1 Includes zero feet and precisely zero inches " [0 D0 ^! K# _9 |. l
2 Includes zero feet and suppresses zero inches 9 Y" {) m2 z8 z  r
3 Includes zero inches and suppresses zero feet
0 Q/ @8 j8 I1 f4 Suppresses leading zeros in decimal dimensions (for example, 0.5000 becomes .5000) 0 H; Q2 j) U) g$ s
8 Suppresses trailing zeros in decimal dimensions (for example, 12.5000 becomes 12.5) ; R% l8 x% @5 j$ ?/ s
12 Suppresses both leading and trailing zeros (for example, 0.5000 becomes .5)
% G' A( X- x( f3 T/ b' u: f2 K- ^9 Y' n2 K' u
==> 若为 4 前导消零

评分

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

查看全部评分

 楼主| 发表于 2010-6-5 11:22:04 | 显示全部楼层 来自: 中国广东佛山
6# SunVei 4 i: s% J! E1 t* K
这个我以前就试过,对于现有的标注好像也没有效果!
发表于 2010-6-7 19:58:46 | 显示全部楼层 来自: 中国河北保定
用vba怎样做呢
发表于 2010-6-7 23:23:15 | 显示全部楼层 来自: 中国广东惠州
本帖最后由 woaishuijia 于 2010-6-8 07:31 编辑 ) C1 }5 r8 e3 ^( @: d

  f! |+ l- R9 k以下是VBA
: I/ o; W0 c( a4 |5 W- F6 Y! X

  1. 5 W* l9 j; k* `: H$ E
  2.     Dim DS1 As AcadDimStyle, DS2 As AcadDimStyle
    " c# C4 C( d- @
  3.     With ThisDrawing
    - n: j6 u8 c% q+ g7 O  s
  4.         Set DS1 = .ActiveDimStyle
    " b0 Q, f8 |7 D+ q* G
  5.         For Each DS2 In .DimStyles
    ' j1 B$ E0 \7 v+ z7 k
  6.             .ActiveDimStyle = DS2" L" t: q0 b" j. |8 A, I
  7.             .SetVariable "dimzin", 82 G" Z6 `) g3 Z$ R' E
  8.             .SendCommand "-dimstyle s " & DS2.Name & vbCr & "y "- q! @  N- d# C0 T: v! }. I
  9.         Next1 `* i; \3 [0 u; y' Q; a
  10.         .ActiveDimStyle = DS1
    ' F( V1 U" C* b- J- i. U: D& u2 c
  11.     End With
    5 W' g2 [" ?* X
复制代码
( D5 _" B' A- ]' N1 ?4 C
以下是LSP: ^' Z  k, \9 c- s3 R; J  ~

  1. % a- y6 E2 x4 d
  2. (defun c:aaa(/ dimstylelist dimstylename)
    4 t. w# i$ m/ R/ g& }# V& z
  3.   (setq dimstylelist(tblnext "dimstyle" t))
    $ T2 F! H, x0 L0 E# ~/ q
  4.   (while dimstylelist
    $ q+ d7 J0 ]# Y- N0 ?/ D
  5.     (setq dimstylename(cdr (assoc 2 dimstylelist)))
    ! {6 }- h( s' B* m# e) g- Z6 @
  6.     (command "-dimstyle" "r" dimstylename)
    3 V! `5 `$ D# l7 E' F4 B
  7.     (command "setvar" "dimzin" 8)9 s5 a9 B" A- W- G- V
  8.     (command "-dimstyle" "s" dimstylename "y")      
    : Q3 U7 {: ^0 S
  9.     (setq dimstylelist(tblnext "dimstyle"))' V! J8 H  Q6 E, g2 w. M
  10.     )
    " V3 W% ^3 ~0 j- }
  11.   (princ)
    8 M- l; Y6 G) N. t1 R- R0 j
  12.   )
    2 B! X& g  |, y2 z: U
复制代码

评分

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

查看全部评分

 楼主| 发表于 2010-6-10 09:38:50 | 显示全部楼层 来自: 中国广东佛山
本帖最后由 bigbridge812 于 2010-6-10 10:03 编辑 $ I/ E5 v/ W3 s- d; J+ s+ ^5 ]

3 l+ y$ ?! h$ p  V4 D5 G怎么评分啊?" ]3 Y2 [, c: _& C/ w; ~, x
感谢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 )

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