Đến nội dung


Hình ảnh
- - - - -

Bác nào giúp E cái lisp xoay nhiều text có Rotation từ 90 đến 270


  • Please log in to reply
10 replies to this topic

#1 tmt_tyt

tmt_tyt

    biết zoom

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

Đã gửi 06 May 2013 - 03:32 PM

Bản vẽ đây ạ:

http://www.cadviet.c...s/3/4608_bv.dwg

 

Cám ơn các bác đã nhiệt tình giúp đỡ!!


  • 0

#2 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 06 May 2013 - 03:49 PM

Xoay về kết quả như thế nào? Sao không chọn chúng rồi dùng lệnh CH để xoay?


  • 0

* 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.


#3 tmt_tyt

tmt_tyt

    biết zoom

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

Đã gửi 06 May 2013 - 04:23 PM

Mấy điểm kia là ví dụ thôi, chứ E làm bình đồ cả trăm text, ý E là quét cả vùng thì lọc được text có Rotation từ 90-270, sau đó quay theo tâm của chúng góc 180 độ. Bình đồ E làm bằng Topo. Bác nào cho E cái lọc cũng được, còn cái quay theo tâm của chúng thì E làm được rồi.


  • 0

#4 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 06 May 2013 - 04:31 PM

Dùng qselect đi bạn!


  • 0

* 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.


#5 tmt_tyt

tmt_tyt

    biết zoom

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

Đã gửi 06 May 2013 - 04:51 PM

Cũng là một phương án, nhưng dẫu sao thì lisp vẫn nhanh hơn, cơ bản bây giờ là lọc text có Rotation từ 90 ~ 270, Lisp E cũng không hiểu nhiều lắm, có bác nào chỉ bảo thì cám ơn nhiều.


  • 0

#6 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 06 May 2013 - 05:00 PM

1). Bạn nên post lại y/c cho đúng nội quy của box autolisp, kẻo không thì viết rồi cũng bị mod xóa mất công.

2). Sau khi mở topic mới đúng nội quy, hy vọng có người giúp cho bạn, vì vấn đề này không khó.


  • 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 tmt_tyt

tmt_tyt

    biết zoom

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

Đã gửi 08 May 2013 - 12:04 AM

Mãi mà không có bác nào giúp E à, đang cần gấp quá!!


  • 0

#8 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 08 May 2013 - 06:45 AM

Mãi mà không có bác nào giúp E à, đang cần gấp quá!!

Bạn có chịu đọc điều 1 ở trên không? Đó là giúp đấy. Chừng nào bạn làm như điều 1 thì 10' sau bạn sẽ có lisp.


  • 0

* 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.


#9 tmt_tyt

tmt_tyt

    biết zoom

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

Đã gửi 08 May 2013 - 08:44 AM

Hic, lần đầu post nên cũng không biết đươc, hic,"Viết lisp theo yêu cầu [phần 2]" đã bị khóa rồi, Nhờ Bác Hà chỉ bảo post ở đâu.


  • 0

#10 duy782006

duy782006

    PHẠM QUỐC DUY

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 2155 Bài viết
Điểm đánh giá: 1359 (rất tốt)

Đã gửi 08 May 2013 - 08:48 AM

Lập topic yêu cầu như sau:

-Tiêu đề topic. [yêu cầu] lisp...

-Nội dung: Mô tả bằng văn xuôi hoặc văn vần các thứ:

+Đầu vào có cái gì.

Đầu ra thành cái gì.

-Mô tả thêm bằng file cad trạng thái đầu và cuối. 

 

Đoán mò mà ra lisp sau. Lệnh qt.

 

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;Chuyen gia tri goc tu do sang radian
;;;Cu phap su dung (duy:s_do>radian giatri)
;;;giatri la goc tinh theo do, kq la goc tinh theo radian
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun duy:s_do>radian (gt / gt kq)
(setq kq (* (/ pi 180) gt))
kq)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;Tao list tu tap hop chon
;;;Cu phap su dung (duy:taolist<tapchon tapchon) 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun duy:taolist<tapchon (tapchon / tapchon listtc stt sdt chondt)
(setq stt 0)
(setq sdt (sslength tapchon))
(while (< stt sdt)
(setq chondt (ssname tapchon stt))
(setq listtc (cons chondt listtc))
(setq stt (+ stt 1))
)
listtc)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;Tao tap hop chon tu list  
;;;Cu phap su dung (duy:taotapchon<list listtc) 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun duy:taotapchon<list (listtc / tapchon dtc)
(setq tapchon (ssadd))
(foreach dtc listtc
(ssadd dtc tapchon)
)
tapchon)


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;Tao tap hop chon tu tap chon theo ma DXF can duoi va can tren
;;;Cu phap su dung (duy:taotapchon_dxf_duoi_tren<tapchon tapchongoc madxf canduoi cantren) 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun duy:taotapchon_dxf_duoi_tren<tapchon (tapchongoc madxf canduoi cantren / tapchongoc madxf canduoi cantren litgoc dtc tapchon)
(setq litgoc (duy:taolist<tapchon tapchongoc))
(setq tapchon (ssadd))
(foreach dtc litgoc

(cond
((and
(>= (cdr (assoc madxf (entget dtc))) canduoi)
(<= (cdr (assoc madxf (entget dtc))) cantren)
)

(ssadd dtc tapchon))
)

)
tapchon)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;Doc toa do tu text duoc chon
;;;Cu phap su dung (duy:d_text>td)
;;;ket qua tra ve la chuoi thong tin lan luot: noidung, style, dolon, diemchen, gocquay
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(Defun duy:d_text>td (dchon / dchon dtt hdt ddau xd yd dsau xs ys diemchen gocquay diemm diemh diemb diemg listkq)
(setq dtt (entget dchon))
(setq hdt (textbox dtt))
(setq ddau (car hdt))
(setq xd (car ddau))
(setq yd (cadr ddau))
(setq dsau (cadr hdt))
(setq xs (car dsau))
(setq ys (cadr dsau))
(setq diemchen (cdr (assoc 10 dtt)))
(setq gocquay (cdr (assoc 50 dtt)))
(setq diemm (polar diemchen gocquay xs))
(setq diemh (polar diemm (+ gocquay (/ pi 2)) ys))
(setq diemb (polar diemchen (+ gocquay (/ pi 2)) ys))
(setq diemg (polar diemchen (angle diemchen diemh) (/ (distance diemchen diemh) 2)))
(setq listkq (list diemchen diemm diemh diemb diemg))
listkq)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:qt (/ b i n)
(command "undo" "be")
(setq b (duy:taotapchon_dxf_duoi_tren<tapchon (ssget (list (cons 0 "TEXT"))) 50 (duy:s_do>radian 90) (duy:s_do>radian 270)))
(setq i 0)
(setq N (sslength b))
(while (< i N)
(command ".rotate" (ssname b i) "" "_non" (nth 4 (duy:d_text>td (ssname b i))) 180)
(setq i (1+ i))
)
(command "undo" "end")
(princ))

  • 0

Cứ ngỡ trần gian là cõi thật.Cho nên tất bật đến bây giờ.
Tạo hộp thoại bằng lisp My blog QUY ĐỊNH ĐẶT TÊN TOPIC TRONG CHUYÊN MỤC LISPD http://ktsduy.wordpress.com/
Để cám ơn chỉ cần nhấn rep_up.png
(Là nhấn vào nút đó phía bài viết của người ta í chứ đừng có nhè cái hình này mà nhấn miết đi nha :-D


#11 tmt_tyt

tmt_tyt

    biết zoom

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

Đã gửi 10 May 2013 - 11:11 AM

Đúng ý của E rồi, cám ơn Bác Duy nhé.


  • 0