QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

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

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

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

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

x
Autodesk Inventor 3D圖轉AutoCAD 每次都要一一改,層,顏色,線型# J6 W6 P5 f$ J; V, P( G
求助,自動轉換 層,顏色,線型 .LSP
8 N2 q! y* R/ D' L1 r" p. q$ n/ x如下圖 2 i" m0 u# R/ z
: x6 a* A. `8 O7 B! j0 q8 C
謝謝 顏色,層,線型.jpg
发表于 2009-12-10 19:32:52 | 显示全部楼层 来自: 中国浙江宁波
使用命令laytrans可以图层转换,只要你有一个含有标准图层设置的样本文件(dwt)就可以方便的映射转换了;
- @4 V  y( R4 D& f3 T! G, [1 ^* A" N# ?( E4 ]( 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
' r) T% `! _* K  k; I4 r9 F+ v感謝樓上回復,不知哪裡可下載
* k4 C5 A& {. i; f$ {
不用下载,这是CAD自带的一个功能。位置就在菜单“工具”——“CAD标准”——“图层转换器”或者输入命令LAYTRANS就可以了。
7 s2 X& i5 q+ | BZ.jpg

评分

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

查看全部评分

 楼主| 发表于 2009-12-11 19:27:33 | 显示全部楼层 来自: 中国台湾
謝謝指導!試過後不是個人所需,相同層只能同一顏色同一線型
2 I7 N: ?$ L+ ?) M. @所以需要寫程式
发表于 2009-12-11 21:17:15 | 显示全部楼层 来自: 中国
VBA代码,供参考
  1. # F. l% Y: S8 E0 {4 _$ h
  2. Sub A()9 [8 E6 ^% {1 c8 O4 u
  3.     Dim E As AcadEntity$ m7 F, e; f8 {7 ~3 V5 F$ z
  4.     ThisDrawing.Layers.Add "AA"( F/ B; C  w% x7 M
  5.     LoadLineType "HIDDEN"' g% @1 S4 o! i# q2 Y
  6.     LoadLineType "CENTER"  h# ^, w) ?4 s
  7.     For Each E In ThisDrawing.ModelSpace
    4 I0 x3 e& _# R( N3 h
  8.         Select Case E.Layer& d0 g. D: c' z$ C- d+ K
  9.             Case "可见(ISO)"
    1 m1 e$ y/ E; _; D* g
  10.                 E.color = 7
    ' U2 W8 K- ^4 D2 u1 U
  11.                 E.Linetype = "Continuous", r6 L- ~1 L4 m4 e, J7 p& j" m
  12.             Case "窄部可见(ISO)"( u/ z$ P# w7 C( o* J
  13.                 E.color = 55 K1 M2 A0 ^& ^0 K6 ~9 I2 t
  14.                 E.Linetype = "Continuous"
    $ y! h& ?8 o  ]4 b7 B
  15.             Case "隐藏(ISO)"2 d* g. O0 \& k" A. m; f0 x( K
  16.                 E.color = 4
    & p0 T( y5 C! P5 S% x) r8 e
  17.                 E.Linetype = "HIDDEN"" Q+ `! u* t5 F6 p, T! z
  18.             Case "中心线(ISO)", "中心标记(ISO)"
    # t+ I3 P6 l; Y! k
  19.                 E.color = 1
    3 O  l( K# U! N$ Q. n9 Z; p
  20.                 E.Linetype = "CENTER") C+ i7 h9 {. e8 {7 m% z
  21.         End Select  ~8 `$ R% ^! Z8 q2 }7 [
  22.         E.Layer = "AA"  X$ m# u3 ?% W, m
  23.     Next
    / m6 M- u3 x  `* Q
  24. End Sub5 A/ U6 {& [0 G+ z( G1 O
  25. ' M  t; J8 m' k; r( j$ H
  26. Private Sub LoadLineType(S As String)' @6 H1 Q' w1 R
  27.     Dim T As AcadLineType, B As Boolean" A7 U- ?& k- v9 p
  28.     For Each T In ThisDrawing.Linetypes, D/ C) J" r: N
  29.         If T.Name = S Then
    + h! w) B7 B9 o; C* h* m/ i- ~
  30.             B = True
    5 d. _1 x9 w1 f( I& k" Y$ X8 c! C' S
  31.             Exit For" x5 v9 V0 d6 P  ?5 k, |
  32.         End If. J; L+ {0 p' G
  33.     Next& _) Q. ?2 J3 M5 t/ F$ O; _& R
  34.     If Not B Then ThisDrawing.Linetypes.Load S, "acadiso.lin"5 i$ e1 a) p, e9 G
  35. End Sub
    $ t8 G3 J8 F4 B0 q1 f
复制代码

评分

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

查看全部评分

发表于 2010-1-2 17:55:56 | 显示全部楼层 来自: 中国广东汕头
用下面的程序:
6 e5 [' U) z) @. i0 ](if (not (tblsearch "layer" "xuxian"))
' F2 W- O( |. T8 G; }    (command "layer" "n" "xuxian" "l" "hidden" "xuxian" "c" "3" "xuxian" "")$ ?6 T6 o  v$ |
    )                                                 ;;;上面是你图上无xuxian层它自动去建立。
" K* u& E  h7 S' U( k3 o2 ^$ d                           ;;;你是在同一层上画了不同的线型* V9 S$ u  c; q! `
(defun c:chgla ()% I' _& N' ?4 J- S; s
  (setq en (ssget "all") n (sslength en) i 0)+ y& X/ j+ H; u3 w% D" S  w  s
  (repeat n
4 ~: I- l( T, D, ?  S% e5 H    (setq ee (ssname en i) en1 (entget ee) linee (cdr (assoc 6 en1)))    ;;;只有在同一层上画了不同的线型有6
( u, f, }+ W5 Z  i3 B8 G% F( Z; p) u    (if (= linee "HIDDEN")
3 P7 [* m7 I# I; n2 [+ O# b       (command "change" ee """p" "la" "xuxian" "")
) Q+ l2 C9 R! z  b      )
9 C+ {  c7 e6 J& z5 Y! Y& p$ P: N    (setq i (+ i 1)): g, H0 N' |) f
   ). P; U5 e* R& K
)! ?8 A, _( L( p6 B. T2 @
  
) S3 C, I' o" T2 [用上面的方法可去把不同的线型分出去。
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


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

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

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