QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
6天前
查看: 3463|回复: 10
收起左侧

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

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

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

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

x
各位高手:
2 i( J/ G5 n$ Y9 @帮忙写一个小程序,lisp就可以,
' o! O* L! g2 O2 t* k如图,实现现有所有标注样式的前导不消零,后续消零,因为我们有图纸是从SolidWorks转为AutoCAD的,有这个需求。AutoCAD版本是2008的。3 `* b3 m; y* H$ v( E
谢谢各位了!
9 p' S& N# z( M6 g5 C- o长期在线等!
1.png
发表于 2010-6-3 16:05:53 | 显示全部楼层 来自: 中国台湾
后续消零; y  m& q% n; n; O
DimZin ==> 8; x4 u6 _6 @+ u9 x7 t5 H8 F5 H( k# j
=================0 O4 Z" {  M) z5 b( ~
DIMZIN System Variable
" U1 S; _, [( a; k1 P...+ z% i* T4 T0 @- S. \7 b  p1 ]
8 Suppresses trailing zeros in decimal dimensions (for example, 12.5000 becomes 12.5) ( K/ s" |- H5 Y9 s: S
....# {8 T- e. ~' ^# G5 Q* p

  f3 w# p. w1 C/ r5 K# b9 SDIMZIN also affects real-to-string conversions performed by the AutoLISP rtos and angtos functions.
 楼主| 发表于 2010-6-3 16:40:40 | 显示全部楼层 来自: 中国广东佛山
2# SunVei 3 j8 F$ M* G* {0 R* J
3 Q# C  T( }- G. s8 K( h6 S
能不能详细一点,帮助上也是像你说的,但是不能用,能解释一下么?
7 L* a/ V9 U; s# t6 w最好可以有个小程序。) J- g0 h5 r2 r0 P/ s
还有前导不消零怎么实现?
发表于 2010-6-3 18:43:24 | 显示全部楼层 来自: 中国台湾
但是不能用!?$ M; x  b/ {2 a' o
挺纳闷底....# n$ ~2 Y. h; m: z3 B% d2 s. k

1 G  q1 X6 Y. k' Q9 l得就您的文件来比对系统变量值了 (Required *.Dwg)
 楼主| 发表于 2010-6-4 08:38:47 | 显示全部楼层 来自: 中国广东佛山
4# SunVei
, A! a5 x$ @3 c0 n还是谢谢了!
发表于 2010-6-4 09:04:20 | 显示全部楼层 来自: 中国台湾
Command: DimZin
, ?* \) n7 e3 [/ H: g; W; _. l# wEnter new value for DIMZIN <0>:
. K- E& S5 {4 \5 _7 q; f# Q- U4 ^
5 U( d  A$ Z) e7 L! @% E; _4 o0 Suppresses zero feet and precisely zero inches 8 I/ v% \& A% ~; m
1 Includes zero feet and precisely zero inches   W5 o6 r7 N% }4 M
2 Includes zero feet and suppresses zero inches
$ H8 O, e1 x5 ]# f. G5 h3 Includes zero inches and suppresses zero feet
, S7 s$ ~. U$ V1 b. }1 S* u: r4 Suppresses leading zeros in decimal dimensions (for example, 0.5000 becomes .5000) 9 z4 [, ~! B; N
8 Suppresses trailing zeros in decimal dimensions (for example, 12.5000 becomes 12.5) . j9 N- ?+ A% P$ N7 j
12 Suppresses both leading and trailing zeros (for example, 0.5000 becomes .5) & p) o# a$ ~. k' v
, L4 [9 P- I/ p6 w& @' P. h% l
==> 若为 4 前导消零

评分

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

查看全部评分

 楼主| 发表于 2010-6-5 11:22:04 | 显示全部楼层 来自: 中国广东佛山
6# SunVei 2 ?) V. F- Z3 V! t7 [! a5 L4 S9 Z
这个我以前就试过,对于现有的标注好像也没有效果!
发表于 2010-6-7 19:58:46 | 显示全部楼层 来自: 中国河北保定
用vba怎样做呢
发表于 2010-6-7 23:23:15 | 显示全部楼层 来自: 中国广东惠州
本帖最后由 woaishuijia 于 2010-6-8 07:31 编辑
0 c0 G; p4 z1 V% q
" d8 v- [1 ^$ ]: I  X# {以下是VBA6 ]3 q7 ?* z' X$ b9 @5 J+ E8 A
  1. 2 V% J0 L" a: Y. L( g
  2.     Dim DS1 As AcadDimStyle, DS2 As AcadDimStyle
    * ?* |% F2 C$ Q" P7 v
  3.     With ThisDrawing- {1 t$ i& f! p- v, A' A: f. T
  4.         Set DS1 = .ActiveDimStyle$ \* s6 K% ^, J# h& B
  5.         For Each DS2 In .DimStyles
    " p! P# r# F0 p
  6.             .ActiveDimStyle = DS23 x9 a  E" q. m
  7.             .SetVariable "dimzin", 86 v0 w9 {& N  z( t3 r8 X  ]
  8.             .SendCommand "-dimstyle s " & DS2.Name & vbCr & "y "- h' e  P4 t0 V# x
  9.         Next# Q7 F- q  n3 I+ C) W+ L' U5 i
  10.         .ActiveDimStyle = DS1$ |7 Z7 T) l: j, B6 f8 h
  11.     End With
    ( z8 }5 s0 c0 }, v
复制代码
, n0 m# B& n# m2 `+ R! [. l3 o
以下是LSP4 S5 I$ A# n! G+ p
  1. * @$ Y' y' {5 N! f
  2. (defun c:aaa(/ dimstylelist dimstylename)
    0 B+ r* N% }$ U8 M
  3.   (setq dimstylelist(tblnext "dimstyle" t))
    1 u4 |$ X* ?6 Q; L* b! P
  4.   (while dimstylelist
    % @- G3 {3 h  v! e+ [
  5.     (setq dimstylename(cdr (assoc 2 dimstylelist)))# e" C3 }8 f. b' b+ V; x/ c
  6.     (command "-dimstyle" "r" dimstylename)& }' E# s6 F9 [* v% f
  7.     (command "setvar" "dimzin" 8)- Q* E1 w: ]. F6 ?0 `
  8.     (command "-dimstyle" "s" dimstylename "y")      7 ?3 z4 ~! V- t& A& p, R
  9.     (setq dimstylelist(tblnext "dimstyle"))
    7 l7 F8 K# k' E: U5 S4 l
  10.     )  I# ]- h% @+ v8 Z6 R& p2 s
  11.   (princ)
    ( d7 j7 q4 ^5 u% J; ~
  12.   )
      [9 _- H" f) \, W, L
复制代码

评分

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

查看全部评分

 楼主| 发表于 2010-6-10 09:38:50 | 显示全部楼层 来自: 中国广东佛山
本帖最后由 bigbridge812 于 2010-6-10 10:03 编辑 9 u" x& Z6 g9 l# }! \6 [% V$ x! B
! D1 b( k" j4 {1 S- h
怎么评分啊?
( h& k- @8 w0 A: y感谢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 )

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