三角网三维多段线转三维面
(defun vxs (e / i v lst)(setq i 0)
(while
(setq v (vlax-curve-getpointatparam e (setq i (1+ i))))
(setq lst (cons v lst))
)
(reverse lst))
;;;;;;;;;;;;;;;
(setq ssa (ssget '((0 . "POLYLINE") (8 . "sjw"))))
(setq ii 0
no0
)
(repeat (sslength ssa)
(setq en (ssname ssa ii)
ptb (vxs en)
pzx (append pzx (list ptb))
ii(1+ ii) )
; (setq pzx (list (car pt) (cadr pt) (caddr pt)))
)
;(write-line (strcat pzx) fff)
; (close fff)
;(princ (strcat "\n坐标已存入\"" wjm "\"中"))
;(setvar "cmdecho" cm)
(princ)
(foreach n pzx
(entmake(list '(0 . "3dface") (cons 10 (nth 0 n))
(cons 11 (nth 1 n))
(cons 12 (nth 2 n))
(cons 13 (nth 0 n))
'(8 . "0")
'(62 . 3)
))
)
转后有何用途? yshf 发表于 2015-12-2 09:01 static/image/common/back.gif
转后有何用途?
可以三维动态观察 (defun c:3dface-polyline (/ pzx ii no ssa en ptb)
(defun vxs (e / i v lst)
(setq i (entget e))
(setq lst(append (list(cdr(assoc 10 i)))(list(cdr(assoc 11 i))) (list(cdr(assoc 12 i))) ))
)
;;;;;;;;;;;;;;;
(setq ssa (ssget '((0 . "3dface") (8 . "sjw"))))
(setq ii 0
no0
)
(repeat (sslength ssa)
(setq en (ssname ssa ii)
ptb (vxs en)
pzx (append pzx (list ptb))
ii(1+ ii) )
; (setq pzx (list (car pt) (cadr pt) (caddr pt)))
)
;(write-line (strcat pzx) fff)
; (close fff)
;(princ (strcat "\n坐标已存入\"" wjm "\"中"))
;(setvar "cmdecho" cm)
(princ)
(foreach n pzx
(command "3dpoly" (car n) (cadr n) (caddr n) "c")
)
)三角网三维面转POLYLINE
能不能来个cad文件例子,试试 给个动画图 命令: 3DFACE-POLYLINE
选择对象: 找到 0 个
选择对象: 找到 0 个,总计 0 个
选择对象: 指定对角点: 找到 0 个,总计 0 个
选择对象:; 错误: 参数类型错误: lselsetp nil freehand8008 发表于 2015-12-8 12:53
命令: 3DFACE-POLYLINE
选择对象: 找到 0 个
选择对象: 找到 0 个,总计 0 个
我测试的也是 yyds yysd yyds 顶一个,支持一下
页:
[1]