QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 2204|回复: 6
收起左侧

[求助] 自動轉換 層,顏色,線型

[复制链接]
发表于 2009-12-9 23:02:17 | 显示全部楼层 |阅读模式 来自: 中国台湾

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

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

x
Autodesk Inventor 3D圖轉AutoCAD 每次都要一一改,層,顏色,線型' p, Y3 J1 O' B) X# r) c
求助,自動轉換 層,顏色,線型 .LSP
, l6 z1 B! a) K; v' E2 h如下圖 ) [5 ^, s1 H' r
) ~. M! K: a+ E% z, }: N/ P
謝謝 顏色,層,線型.jpg
发表于 2009-12-10 19:32:52 | 显示全部楼层 来自: 中国浙江宁波
使用命令laytrans可以图层转换,只要你有一个含有标准图层设置的样本文件(dwt)就可以方便的映射转换了;) ]6 b" P, k- A! H
* p# k7 \3 B/ |2 V0 n
[ 本帖最后由 sealive_leafage 于 2009-12-10 19:34 编辑 ]
未命名.JPG

评分

参与人数 1三维币 +5 收起 理由
2005llnn + 5 应助

查看全部评分

 楼主| 发表于 2009-12-10 20:47:41 | 显示全部楼层 来自: 中国台湾
感謝樓上回復,不知哪裡可下載
发表于 2009-12-10 21:51:37 | 显示全部楼层 来自: 中国江苏无锡
原帖由 BILL.PU 于 2009-12-10 20:47 发表 http://www.3dportal.cn/discuz/images/common/back.gif; J& x# ^" f. W" K9 M+ Q
感謝樓上回復,不知哪裡可下載

4 A. n' A% ^5 _/ Y" T不用下载,这是CAD自带的一个功能。位置就在菜单“工具”——“CAD标准”——“图层转换器”或者输入命令LAYTRANS就可以了。6 I; ^7 }+ L: c6 L7 w' F5 [7 W
BZ.jpg

评分

参与人数 1三维币 +3 收起 理由
2005llnn + 3 应助

查看全部评分

 楼主| 发表于 2009-12-11 19:27:33 | 显示全部楼层 来自: 中国台湾
謝謝指導!試過後不是個人所需,相同層只能同一顏色同一線型# D( j/ s+ j5 V4 I% b- N
所以需要寫程式
发表于 2009-12-11 21:17:15 | 显示全部楼层 来自: 中国
VBA代码,供参考
  1. 3 \5 |1 I% {! L: X- s) |' I
  2. Sub A()# \- u) w4 L* f: Q. X) R) @9 _
  3.     Dim E As AcadEntity
    # V4 J# U1 L* Q) U* h) K, _
  4.     ThisDrawing.Layers.Add "AA"
    $ r0 H2 D2 }7 w5 o5 `( L# w' }
  5.     LoadLineType "HIDDEN"
    $ [, e" ^3 q  q; H& ]' c; ?
  6.     LoadLineType "CENTER"& C4 w+ C" e* f2 M* W2 b
  7.     For Each E In ThisDrawing.ModelSpace
    ' n- T& I6 F/ r7 T2 k* Q+ r
  8.         Select Case E.Layer3 v) E% a. y* k' ?
  9.             Case "可见(ISO)"
    2 o& c# E) `- n# u& C
  10.                 E.color = 7* m7 r$ R3 c- S' q) T2 ]7 o
  11.                 E.Linetype = "Continuous"
    : w+ s- i" n& H% z3 Q( i
  12.             Case "窄部可见(ISO)"( j- a; I7 w# _9 g
  13.                 E.color = 5. f* q4 N2 x5 N% h/ O; f
  14.                 E.Linetype = "Continuous"1 J  X2 @5 u  K: E
  15.             Case "隐藏(ISO)"2 M  k. A; R5 S" s+ Q: g: t
  16.                 E.color = 4
    ' K4 d5 c3 l. Z4 e
  17.                 E.Linetype = "HIDDEN"" S0 G4 E5 `+ k- a# x5 q
  18.             Case "中心线(ISO)", "中心标记(ISO)"7 e# L1 _; p5 R
  19.                 E.color = 1& j* K+ b* U7 I  [" z
  20.                 E.Linetype = "CENTER"
    , m! f/ o2 X( W' I0 k
  21.         End Select2 {  ^$ H7 t6 n* g0 _
  22.         E.Layer = "AA"
    - ?, i7 R( O9 P* n/ Y/ Y
  23.     Next
    - G. A9 p  F" P4 P& ]
  24. End Sub3 ?+ y  M; @, c" l) I' z
  25. # k9 Z6 v( ~4 [$ {: L* _; T
  26. Private Sub LoadLineType(S As String)5 U9 r9 T' [4 G6 a* M4 x
  27.     Dim T As AcadLineType, B As Boolean2 R' Z6 m$ m, e& U9 s) U
  28.     For Each T In ThisDrawing.Linetypes
    $ C2 x3 C1 F0 g; w8 ?5 C" P
  29.         If T.Name = S Then
    # j* Q; a6 L1 g4 {, R) b, N3 e
  30.             B = True
    1 ]3 y& o% T) p, W* @6 b' O
  31.             Exit For
    1 h" |8 |3 j# E" b( Z
  32.         End If% X, x) M! C/ z8 z3 ^
  33.     Next
    . }" A3 ]% m/ g* b% x
  34.     If Not B Then ThisDrawing.Linetypes.Load S, "acadiso.lin"
    ; b. H/ B2 g6 d
  35. End Sub( `$ b9 B$ g  _2 h7 |
复制代码

评分

参与人数 1三维币 +5 收起 理由
2005llnn + 5 应助

查看全部评分

发表于 2010-1-2 17:55:56 | 显示全部楼层 来自: 中国广东汕头
用下面的程序:
3 D5 @& U# P2 n0 Z(if (not (tblsearch "layer" "xuxian"))
0 F  Q: {7 e! \/ Y' _    (command "layer" "n" "xuxian" "l" "hidden" "xuxian" "c" "3" "xuxian" "")
; D/ O' u# i; ?* W5 Y: \8 R& F    )                                                 ;;;上面是你图上无xuxian层它自动去建立。
4 I2 S4 P$ K; q9 }6 g% Y                           ;;;你是在同一层上画了不同的线型! \/ J, j. }5 x; O
(defun c:chgla ()& ], s8 e, y! i, Q
  (setq en (ssget "all") n (sslength en) i 0)) y1 P6 b* B/ e) H8 q
  (repeat n4 m9 `7 }% _, ~) c: R$ F- U  C
    (setq ee (ssname en i) en1 (entget ee) linee (cdr (assoc 6 en1)))    ;;;只有在同一层上画了不同的线型有6
3 F6 h0 f! h2 v- n; K    (if (= linee "HIDDEN")
! ~) S( n, u, R* q       (command "change" ee """p" "la" "xuxian" "")8 ~* U, n' D5 y5 |& B
      )$ n1 t9 n: S" R+ w- l9 h
    (setq i (+ i 1))
6 t. o% {( O) j0 l* a, `# K, Y   ): X3 o3 V- f% U7 w* {5 O7 Y9 _
)( h) C9 }6 F- a2 w/ ~" Q) e7 N
  3 W2 g$ m, `6 Y/ Y- i
用上面的方法可去把不同的线型分出去。
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

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