乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 159|回复: 9

求助,关于TRIM (command "trim" ent "" pt &quo

[复制链接]

4

主题

14

帖子

1

银币

初来乍到

Rank: 1

铜币
30
发表于 2003-12-2 10:26:00 | 显示全部楼层 |阅读模式
哪位高手帮帮我,在程序中我用到TRIM,如下
(command "trim" ent "" pt "")
PT是多义线上的端点坐标,因为多条线进行处理,不能直接选线,所以我选了多义线的端点,但这样就存在一个问题,当多义线很长,有拐弯的时候就截断不了
请大家帮我想想办法,谢谢
回复

使用道具 举报

63

主题

1203

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1455
发表于 2003-12-2 10:32:00 | 显示全部楼层
應該沒有問題(我試過),
例如:
(setq sa (car (entsel)))
(setq a (cdr (assoc 10 (entget(car (entsel))))))
(command "trim" sa "" a "")
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2003-12-2 10:36:00 | 显示全部楼层
不明白你的意思,给个图示意一下把。
关于TRIM命令最好使用双元表,即(对象名 . 坐标点),而不要仅使用对象或点,这样有很多不可确定性
回复

使用道具 举报

4

主题

14

帖子

1

银币

初来乍到

Rank: 1

铜币
30
发表于 2003-12-2 13:10:00 | 显示全部楼层
如上图
谢谢大家的帮助,是的用(对象名 . 坐标点)就可以TRIM了。谢谢
但还有一个问题,如我传的图片,我想两边的都截成中间的红色的线的样子
我用TRIM 如下
  (command "trim" ent01 ent02 "" ent1 p1s ent1 p1n "" )
   ent1   是要截的红色线  p1s  p1n 分别是该线的两个端点,这样执行有问题。
(command "trim" ent01 ent02 "" ent1 p1s  p1n "" )
  这样执行也有问题。
请帮忙,谢谢
回复

使用道具 举报

4

主题

14

帖子

1

银币

初来乍到

Rank: 1

铜币
30
发表于 2003-12-2 13:28:00 | 显示全部楼层
不好意思,刚才上传图片没传上去,图片在这,请指教
回复

使用道具 举报

4

主题

14

帖子

1

银币

初来乍到

Rank: 1

铜币
30
发表于 2003-12-2 13:32:00 | 显示全部楼层
如上图
谢谢大家的帮助,是的用(对象名 . 坐标点)就可以TRIM了。谢谢
但还有一个问题,如我传的图片,我想两边的都截成中间的红色的线的样子
我用TRIM 如下
  (command "trim" ent01 ent02 "" ent1 p1s ent1 p1n "" )
   ent1   是要截的红色线  p1s  p1n 分别是该线的两个端点,这样执行有问题。
(command "trim" ent01 ent02 "" ent1 p1s  p1n "" )
  这样执行也有问题。
请帮忙,谢谢
   

frfwxqoq4m5.jpg

frfwxqoq4m5.jpg

回复

使用道具 举报

63

主题

1203

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1455
发表于 2003-12-2 13:41:00 | 显示全部楼层
把ent1E從(command "trim" ent01 ent02 "" ent1 p1s  p1n "" )去掉

(command "trim" ent01 ent02 ""  p1s  p1n "" )
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2003-12-2 13:49:00 | 显示全部楼层
看下面的程序,最好自己能看懂。。。
剪切对象就是白线,被剪切对象就是红线,怎么选择没有关系,你可以一次选中所有的(某一种,红的和白的不能同时选,看提示)
一些图形的特殊情况未加判断,仅供学习
  1. (defun c:test( / ss ss2 i ent ents pts pte lst)
  2.   (prompt "选择剪切对象...")
  3.   (setq ss (ssget))
  4.   (prompt "选择被剪切对象...")
  5.   (setq ss2 (ssget))
  6.   (setq i 0)
  7.   (repeat (sslength ss2)
  8.     (setq ent (ssname ss2 i))
  9.     (setq ents (entget ent))
  10.     (setq pts (cdr (assoc 10 ents)))
  11.     (setq pte (cdr (assoc 10 (reverse ents))))
  12.     (setq lst (append lst (list (cons ent (list pts)) (cons ent (list pte)))))
  13.     (setq i (1+ i))
  14.   )
  15.   (command "_.trim" ss "")
  16.   (apply 'command lst)
  17.   (command "")
  18.   (princ)
  19. )
回复

使用道具 举报

4

主题

14

帖子

1

银币

初来乍到

Rank: 1

铜币
30
发表于 2003-12-3 17:32:00 | 显示全部楼层

x3lktlkjryg.jpg

x3lktlkjryg.jpg


谢谢大家的帮助,非常感谢,不过现在又遇到如下情况,希望大家帮忙
如图,想把红色的线截为白色的线的样子。
我用如下程序,但有问题,达不到我想要的效果,请高手帮忙。谢谢了
(repeat (sslength ss2)
    (setq ent (ssname ss2 i))
    (setq ents (entget ent))
    (setq pts (cdr (assoc 10 ents)))
    (setq pte (cdr (assoc 10 (reverse ents))))
    (setq lst (append lst (list (list ent pts) (list ent pte))))
    (setq i (1+ i))
  )
  (command "_.trim" entup entdown "")
  (apply 'command lst)
  (command "")
  (princ)
回复

使用道具 举报

26

主题

3072

帖子

10

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3177
发表于 2003-12-3 17:45:00 | 显示全部楼层
这个应该说比较不好办,就你这个图来说,可能比较容易办到,但是图形稍微变化一下,就可能出现意想不到的变化
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-7 09:44 , Processed in 1.197821 second(s), 76 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表