QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

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

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

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

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

x
Autodesk Inventor 3D圖轉AutoCAD 每次都要一一改,層,顏色,線型
% E/ ^7 }( n. Q- T) J7 g, p求助,自動轉換 層,顏色,線型 .LSP
' O! v  [/ a, W7 Z$ d; [3 a如下圖 . h8 w# r7 F# d0 N; L

- `' J% U+ o2 g( Z+ m謝謝 顏色,層,線型.jpg
发表于 2009-12-10 19:32:52 | 显示全部楼层 来自: 中国浙江宁波
使用命令laytrans可以图层转换,只要你有一个含有标准图层设置的样本文件(dwt)就可以方便的映射转换了;6 G. `* V9 e& O  V" }& Q+ G/ p0 ^
" ^- z6 Z+ x" V( }8 G8 C
[ 本帖最后由 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- @7 L' B. {7 V
感謝樓上回復,不知哪裡可下載

# J* u5 j$ G' I' n3 G9 w4 l' K不用下载,这是CAD自带的一个功能。位置就在菜单“工具”——“CAD标准”——“图层转换器”或者输入命令LAYTRANS就可以了。
' E( U- x# }( n9 o2 a BZ.jpg

评分

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

查看全部评分

 楼主| 发表于 2009-12-11 19:27:33 | 显示全部楼层 来自: 中国台湾
謝謝指導!試過後不是個人所需,相同層只能同一顏色同一線型
  a1 k5 b/ Y4 o所以需要寫程式
发表于 2009-12-11 21:17:15 | 显示全部楼层 来自: 中国
VBA代码,供参考
  1. : x; w% c7 [7 N0 _( ^
  2. Sub A()
    ) u$ [# V! j7 T
  3.     Dim E As AcadEntity
    ! A( Z/ W) n; k/ \$ N2 Z
  4.     ThisDrawing.Layers.Add "AA", ~+ a, L# q  D% x; C3 T
  5.     LoadLineType "HIDDEN"
    4 j! d9 ^% m% y+ v# O& H
  6.     LoadLineType "CENTER"$ j# V+ _5 N+ T3 `- Q5 F: ~  t
  7.     For Each E In ThisDrawing.ModelSpace- g% g% c1 F, W3 S2 r( K
  8.         Select Case E.Layer
    ( ]! O) I( k( s" b! j- M  V" B% E
  9.             Case "可见(ISO)"9 ^( t8 q0 Q. \+ X2 [
  10.                 E.color = 79 G0 q/ ]  Q2 `3 Z+ a
  11.                 E.Linetype = "Continuous"
    5 c+ W& P2 Z/ E; z3 {% t
  12.             Case "窄部可见(ISO)"
    9 B, w! F! B, c. Q
  13.                 E.color = 5
    ! \9 _- t: D1 O) ?" D6 J  S
  14.                 E.Linetype = "Continuous"# p9 n& {1 E" s2 P4 R/ b5 M
  15.             Case "隐藏(ISO)"
    : }! r* I3 j0 {! r! c
  16.                 E.color = 4
    " q- j6 V% w) [' E' J. ]
  17.                 E.Linetype = "HIDDEN"
    5 @3 N; D; f0 K! b
  18.             Case "中心线(ISO)", "中心标记(ISO)"1 E& t1 Q  r* s$ U8 v
  19.                 E.color = 1' s7 `) x) i% N: }4 v( ?& R
  20.                 E.Linetype = "CENTER"3 ^; L( K- [5 ]8 v9 F" C4 z
  21.         End Select
    " q( S% X7 t" u0 g
  22.         E.Layer = "AA"2 s0 \% E- z0 G) V
  23.     Next" w0 L6 m$ I) n
  24. End Sub
    4 ?& h7 g) F# P. r! \$ r; a
  25. 5 |$ F! X& \; s$ ^: P8 B
  26. Private Sub LoadLineType(S As String)5 m+ ?3 B  g: B0 @
  27.     Dim T As AcadLineType, B As Boolean
    0 \  f2 m# T7 p1 `! R& a+ Y' o
  28.     For Each T In ThisDrawing.Linetypes
    4 U+ [/ F8 d# I" x6 _0 |/ [# U
  29.         If T.Name = S Then
    9 H0 z2 g( @6 e+ s' S
  30.             B = True, b- {1 u1 M  ^! i. |- `1 I  D3 B" {
  31.             Exit For
    ) w! ?. ?% e' \0 c& D
  32.         End If
    ' A8 i, K0 K' V
  33.     Next
    ' z* P4 }4 C& Y+ i
  34.     If Not B Then ThisDrawing.Linetypes.Load S, "acadiso.lin"* v7 u# R, j  ~
  35. End Sub  c* a6 A3 a# i% v$ R( C9 w( Q. N
复制代码

评分

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

查看全部评分

发表于 2010-1-2 17:55:56 | 显示全部楼层 来自: 中国广东汕头
用下面的程序:- D8 S+ x; z2 }$ A. _* G
(if (not (tblsearch "layer" "xuxian"))
  k  R: g& H% t$ U% d- L7 F9 Y    (command "layer" "n" "xuxian" "l" "hidden" "xuxian" "c" "3" "xuxian" "")
. S5 `  T2 ], E8 H    )                                                 ;;;上面是你图上无xuxian层它自动去建立。
" t1 d0 H# Q  @7 t6 W                           ;;;你是在同一层上画了不同的线型6 A( E3 h4 e( O+ E2 T! q
(defun c:chgla (); A5 |- g. n9 m+ }* c8 A
  (setq en (ssget "all") n (sslength en) i 0)( k$ z3 G# O8 h- F! n1 }7 l
  (repeat n
: p% _& \1 H5 r5 `6 G' f    (setq ee (ssname en i) en1 (entget ee) linee (cdr (assoc 6 en1)))    ;;;只有在同一层上画了不同的线型有6
9 H% D5 }5 k% f3 h    (if (= linee "HIDDEN")+ T5 w" a5 r1 n* t0 ^5 U2 b6 W
       (command "change" ee """p" "la" "xuxian" "")3 A$ L$ Z/ {! w7 V' [9 q# {( F# `* y
      ). Z& e/ c0 k0 B/ i7 _8 a2 X
    (setq i (+ i 1))5 h/ x& G  }! B4 g$ [8 f" }! Z. _
   )
4 B' s5 x8 g) t. M. N)
+ o2 X: h2 @: b# ?  " b' _2 A; X. l% s' B! w* k: d
用上面的方法可去把不同的线型分出去。
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


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

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

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