Đến nội dung


Hình ảnh
- - - - -

Nhờ viết lisp xóa tất cả các đối tượng được chọn trừ số nguyên


  • Please log in to reply
7 replies to this topic

#1 boycdon160483

boycdon160483

    biết zoom

  • Members
  • Pip
  • 19 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 31 May 2012 - 10:58 AM

Nhờ các anh giúp em một vấn đề như sau: Em có file auto CAD gồn nhiều đối tựong trong cùng một bản vẽ, cùng một layer. Em muốn xóa tất cả các đối tượng do mình chọn trong vùng nhưng để lại một đối tựong là đối tựơng số nguyên (là số ký hiệu thửa đất). Mong các anh giúp, em xin chân thành cảm ơn. Đây là file CAD của em: http://www.cadviet.c...5_new_block.dwg
  • 0

#2 mathan

mathan

    biết vẽ rectang

  • Members
  • PipPip
  • 83 Bài viết
Điểm đánh giá: 57 (tàm tạm)

Đã gửi 31 May 2012 - 12:00 PM

Nhờ các anh giúp em một vấn đề như sau: Em có file auto CAD gồn nhiều đối tựong trong cùng một bản vẽ, cùng một layer. Em muốn xóa tất cả các đối tượng do mình chọn trong vùng nhưng để lại một đối tựong là đối tựơng số nguyên (là số ký hiệu thửa đất). Mong các anh giúp, em xin chân thành cảm ơn. Đây là file CAD của em: http://www.cadviet.c...5_new_block.dwg

Bạn có thể tham khảo bài của bác DOAN VAN HA ở http://www.cadviet.c...showtopic=63906
hoặc bạn dùng cái này nhé

;; Dua tren y tuong cua bac DOAN VAN HA
(defun C:LOC()
(command "-layer" "new" "TENTHUADAT" "")
(prompt "\nChon vung doi tuong muon tim loc: ")
(setq ss (ssget '((0 . "*TEXT") (1 . "~*[~0-9]*"))))
(command "CHANGE" "P" "" "PROPERTIES" "LAYER" "TENTHUADAT" "" )
)
Đã lọc được riêng đối tượng bạn cần, xóa hay làm gì khác là quyền ở bạn nhé
  • 2
-----------
Hình đã gửi Hãy chia sẻ để thấy có được nhiều hơn điều mình muốn!
Best regard,

#3 boycdon160483

boycdon160483

    biết zoom

  • Members
  • Pip
  • 19 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 31 May 2012 - 02:58 PM

Cảm ơn anh nhiều nhé! Chúc anh luôn khòe, vui và thành công trong cuộc sống.
  • 0

#4 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 6009 Bài viết
Điểm đánh giá: 3113 (tuyệt vời)

Đã gửi 31 May 2012 - 04:07 PM

Nhờ các anh giúp em một vấn đề như sau: Em có file auto CAD gồn nhiều đối tựong trong cùng một bản vẽ, cùng một layer. Em muốn xóa tất cả các đối tượng do mình chọn trong vùng nhưng để lại một đối tựong là đối tựơng số nguyên (là số ký hiệu thửa đất). Mong các anh giúp, em xin chân thành cảm ơn. Đây là file CAD của em: http://www.cadviet.c...5_new_block.dwg

Hề hề hề,
Bạn dùng thử cái này coi sao nhé.


(defun c:xoa ()
(vl-load-com)
(command "undo" "be")
(setq ssl (acet-ss-to-list (ssget)))
(foreach a ssl
(setq alst (entget a))
(if (/= (cdr (assoc 0 alst)) "TEXT")
(command "erase" a "")
(if (not (= (type (read (cdr (assoc 1 alst)))) 'INT))
(command "erase" a "")
)
)
)
(command "undo" "e")
(princ)
)
Hy vọng đúng ý bạn .
  • 2
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#5 boycdon160483

boycdon160483

    biết zoom

  • Members
  • Pip
  • 19 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 31 May 2012 - 04:53 PM

Ôi lại là anh Bình giúp em. Cảm ơn anh nhiều nhé. Dạo này em bận quá lên chưa có dịp mời anh đi cafe. hehe
  • 0

#6 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 31 May 2012 - 05:00 PM

Bận bồng em bé nên không đi uống cafe thì cũng được, nhưng đâu bận đến nỗi mà không tick được "Like This" cho 2 tác giả đã giúp bạn?
  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#7 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5682 Bài viết
Điểm đánh giá: 2605 (tuyệt vời)

Đã gửi 31 May 2012 - 09:43 PM

Ô lại là ... => Đã từng viết yêu cầu
Sai quy tắc đặt tên + Đã từng viết yêu cầu = Vi phạm => Move


(defun c:test()(command "erase" (ssget (list (cons -4 "<NOT") (cons 1 "~*[~0-9]*")(cons -4 "NOT>"))) ""))

  • 1

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#8 boycdon160483

boycdon160483

    biết zoom

  • Members
  • Pip
  • 19 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 31 May 2012 - 10:48 PM

Cảm ơn anh Hà và anh ketxu.
  • 0