明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: magicheno

[提问] 绘制多段线如何设置线段的线型比例

[复制链接]
 楼主| 发表于 2020-8-10 14:40:54 | 显示全部楼层
start4444 发表于 2020-8-10 12:58
你的代码没有对新画线修改48码,在修改8码那里加上去就对了

大侠再请教下,如果我想绘制出来的是无缝断开的线段的话,该如何结合呢,下面是上次你帮忙写的,想两者结合一下,目的是我绘制出来的多段线是一段一段的
(defun c:tt5 (/ entname w)
(setvar "PEDITACCEPT" 1)
(setq entname (car (entsel "\n请选择对象:")) w (cdr (assoc 40 (entget entname))))         
(command "EXPLODE" entname "" "pedit" "m" "p" "" "w" w "")
(setvar "PEDITACCEPT" 0)
(princ)
)
发表于 2020-8-10 16:49:12 | 显示全部楼层
magicheno 发表于 2020-8-10 14:40
大侠再请教下,如果我想绘制出来的是无缝断开的线段的话,该如何结合呢,下面是上次你帮忙写的,想两者结 ...

在你代码最后一个括号前面加下面一段:

(wufengduankai (cdr (assoc -1 ss)))

(defun wufengduankai (entname / w)
(setvar "PEDITACCEPT" 1)
(setq w (cdr (assoc 40 (entget entname))))         
(command "EXPLODE" entname "" "pedit" "m" "p" "" "w" w "")
(setvar "PEDITACCEPT" 0)
(princ)
)
 楼主| 发表于 2020-8-10 17:11:31 | 显示全部楼层
start4444 发表于 2020-8-10 16:49
在你代码最后一个括号前面加下面一段:

(wufengduankai (cdr (assoc -1 ss)))

是这样么,好像不行呢
  (command "pline" pause "w" "100" "100" pause)
  (setq ss (entget (entlast)))
  (setq oldlayer (assoc 8 ss))
  (setq newlayer (cons 8 "WP_YY_CHG" ))
  (setq newlayer (cons 48 0.6))
  (setq ss (subst newlayer oldlayer ss))
(entmod ss)

(wufengduankai (cdr (assoc -1 ss)))

(defun wufengduankai (entname / w)
(setvar "EDITACCEPT" 1)
(setq w (cdr (assoc 40 (entget entname))))         
(command "EXPLODE" entname "" "pedit" "m" "p" "" "w" w "")
(setvar "EDITACCEPT" 0)
(princ)
)
  (princ)
)

点评

发完整的码上来  发表于 2020-8-10 17:40
 楼主| 发表于 2020-8-10 17:51:23 | 显示全部楼层
magicheno 发表于 2020-8-10 17:11
是这样么,好像不行呢
  (command "pline" pause "w" "100" "100" pause)
  (setq ss (entget ( ...

(defun c:tt5 (/ ss oldlayer newlayer)
;;;创建图层
(command "layer" "m" "WP_YY_CHG" "c" "6" "" "")
  (if (= (tblobjname "layer" "WP_YY_CHG") nil)
    (entmake
      (list
        '(0 . "LAYER")
        '(100 . "AcDbSymbolTableRecord")
        '(100 . "AcDbLayerTableRecord")
        '(70 . 0)
         (cons 2 "WP_YY_CHG")
         (cons 62 6)
         (cons 6 "PHANTOM2")


      )
    )
  )



;;;绘制多段线并设置属性
  (command "pline" pause "w" "100" "100" pause)
  (setq ss (entget (entlast)))
  (setq oldlayer (assoc 8 ss))
  (setq newlayer (cons 8 "WP_YY_CHG" ))
  (setq newlayer (cons 48 0.6))
  (setq ss (subst newlayer oldlayer ss))
(entmod ss)

(wufengduankai (cdr (assoc -1 ss)))

(defun wufengduankai (entname / w)
(setvar "PEDITACCEPT" 1)
(setq w (cdr (assoc 40 (entget entname))))         
(command "EXPLODE" entname "" "pedit" "m" "p" "" "w" w "")
(setvar "PEDITACCEPT" 0)
(princ)
)
  (princ)
)

点评

(defun c:tt5 (/ entname newlayer newline oldlayer oldline ss w) ;;;创建图层 (if (= (tblobjname "layer" "WP_YY_CHG") nil) (entmake (list '(0 . "LAYER")   发表于 2020-8-10 19:51
发表于 2020-8-10 19:54:31 | 显示全部楼层
magicheno 发表于 2020-8-10 17:51
(defun c:tt5 (/ ss oldlayer newlayer)
;;;创建图层
(command "layer" "m" "WP_YY_CHG" "c" "6" "" "" ...

看看行不···

本帖子中包含更多资源

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

x

评分

参与人数 1明经币 +1 收起 理由
magicheno + 1 很给力!

查看全部评分

 楼主| 发表于 2020-8-10 20:13:29 | 显示全部楼层

可以的感谢大侠相助
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-14 17:17 , Processed in 0.147839 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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