Đến nội dung


Hình ảnh
- - - - -

Lấy đường dẫn của đối tượng Xref bằng Lisp


  • Please log in to reply
24 replies to this topic

#21 LoveLisp

LoveLisp

    biết lệnh extend

  • Members
  • PipPipPip
  • 195 Bài viết
Điểm đánh giá: 20 (tàm tạm)

Đã gửi 14 March 2013 - 04:48 PM

Nó đây, bạn xem giúp mình nhé!

http://www.mediafire...iottw1todzcteuw


  • 0

#22 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 14 March 2013 - 05:10 PM

Nó đây, bạn xem giúp mình nhé!

http://www.mediafire...iottw1todzcteuw

 

Sửa lại code, bạn test thử nhé :

 

 
(defun get-xref-foundpath ( / foundpath i n)
  (setq xrefname (strcat
           (vl-filename-base
              (vla-get-path
               (vla-item (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)))
                 (cdr (assoc 2 (entget (car (entsel "\nPick vao ban ve Xref :")))))))
            ) ".dwg"
         )
  )
(setq ss (vla-get-filedependencies (vla-get-activedocument (vlax-get-acad-object))))
(setq n (vlax-get ss 'Count) i 1)
(while (<= i n)
(if (null (vl-catch-all-error-p (vl-catch-all-apply '(lambda(x) (vla-item x i)) (list ss))))
(progn
(setq xr (vla-item ss i) )
(and (= "Acad:XRef" (vla-get-feature xr))
(= xrefname (vla-get-filename xr))
(setq foundpath (vla-get-foundpath xr))
(setq i (1+ n)))))
  (setq i (1+ i)))
foundpath)

  • 1

#23 LoveLisp

LoveLisp

    biết lệnh extend

  • Members
  • PipPipPip
  • 195 Bài viết
Điểm đánh giá: 20 (tàm tạm)

Đã gửi 15 March 2013 - 08:06 AM

Cám ơn bạn, code làm việc rất tốt!

Nhân tiện, bạn có thể hướng dẫn mình tìm tài liệu để học các hàm (vla- được không?

 

Bình thường trong VLisp, khi bôi đen lệnh và nhấn Ctrl+F1 thì mình sẽ nhận được trợ giúp về hàm đó. Nhưng với các hàm (vla- thì trợ giúp này mình không thể hiểu và áp dụng được!

99835_vlahelp.png


  • 1

#24 LoveLisp

LoveLisp

    biết lệnh extend

  • Members
  • PipPipPip
  • 195 Bài viết
Điểm đánh giá: 20 (tàm tạm)

Đã gửi 16 March 2013 - 03:04 PM

Ồ, chưa có phản hồi nào, lẽ nào học các hàm (vla- lại khó đến vậy sao? Mình đã ngồi Google 2 ngày mà không tìm được điều gì đáng kể, haizzz!


  • 0

#25 ThuyLinh313

ThuyLinh313

    biết lệnh mtext

  • Members
  • PipPipPipPip
  • 288 Bài viết
Điểm đánh giá: 142 (tàm tạm)

Đã gửi 16 March 2013 - 05:18 PM

Không có tài lieu nào cụ thể bang help developer đâu bạn ạ. Quy tắc viết tên hàm từ các method VBA ghi trong help thì chắc bạn biết rồi. Còn đối số của chúng thì ngoài kinh nghiệm (cần được tích luỹ dần) thì nhanh nhất là tra google. Ngoài ra thì việc phân tích cấu trúc dữ lieu của mỗi loại vla-object cũng sẽ giúp bạn nhanh chóng nắm được phương pháp sử dụng.

Mình đã tham khảo 1 số tài liệu về visual lisp và nhận thấy rang, viết để người đọc hiểu cách sử dung thì không khó, nhưng viết từ đâu, viết như thế nào để người đọc tiếp cận từ từ đến hết mới khó. tất cả tài liệu mình đọc đều có cảm giác người ta dạy mình từ ngọn vậy, và họ viết cũng hời hợt.


  • 1