Đến nội dung


Hình ảnh

hoi lien ket DCL-AutoLisp.......


  • Please log in to reply
29 replies to this topic

#1 DesignAutoLisp

DesignAutoLisp

    biết vẽ line

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

Đã gửi 22 July 2014 - 04:50 AM

http://www.cadviet.c...733_example.lsp

 

http://www.cadviet.c...3_example_1.txt

 

em đang hoc DCL trong autolisp nên còn nhiều vấn đề chưa hiểu và viết còn sai nhiều chỗ chạy không có được và e có post file dcl và lsp... các bác pro nào chỉ  giùm em với:

yêu cầu của e là:

 

- khi chọn layer, color thi tạo layer mới với tên layer vừa chọn trong edit_box, và màu chọn trong popup_list

- khi thực DrPoint thì vẽ point được nhập vào từ edit_box2, và lúc đó edit_box1, edit_box3 ở chế độ không làm việc, tương tự như thực hiện DrTExt, DrPLine......

 

cao thủ nào xem giùm e và chỉ cho e những lỗi mà e trong file lsp mà em viết

thks cả nhà.....


  • 0

#2 Tot77

Tot77

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 990 Bài viết
Điểm đánh giá: 498 (tốt)

Đã gửi 22 July 2014 - 09:23 AM

File lsp không down được, bạn "gói" nó vào file rar rồi up lại.


  • 0

#3 DesignAutoLisp

DesignAutoLisp

    biết vẽ line

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

Đã gửi 23 July 2014 - 03:58 AM

File lisp e viet con nhieu sai xot lam, moi nguoi ai ranh co the viet gium m lisp theo yeu cau m hoi duoc k de m hieu them ve dcl, cam on ca nha nhieu a...chuc mng mot ngay lv
hieu qua thanh cong..
  • 0

#4 Tot77

Tot77

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 990 Bài viết
Điểm đánh giá: 498 (tốt)

Đã gửi 23 July 2014 - 07:59 AM

Bạn không đưa lsp thì biết sai chỗ nào mà sửa.


  • 1

#5 phamthe

phamthe

    biết vẽ polygon

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

Đã gửi 23 July 2014 - 01:42 PM

cảm ơn bạn về đoạn code APL tự động, gửi trong tin nhắn cho tôi sáng nay!


  • 0

#6 phamhuy1

phamhuy1

    biết vẽ rectang

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

Đã gửi 23 July 2014 - 02:34 PM

APL tự động là gì vậy anh :( , e mới tham gia diễn đàn nên hỏi ngu ngu tí, thông cảm :(


  • 0

#7 DesignAutoLisp

DesignAutoLisp

    biết vẽ line

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

Đã gửi 23 July 2014 - 09:43 PM

http://www.cadviet.c...3_example_4.txt

 

mọi người giúp em với xem e sai chỗ nào chỉ giùm hộ e... thanks cả nhà nhiều

 

 


  • 0

#8 DesignAutoLisp

DesignAutoLisp

    biết vẽ line

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

Đã gửi 24 July 2014 - 12:36 AM

e tim ra loi roi, thanks ca nha...hiii


  • 0

#9 DesignAutoLisp

DesignAutoLisp

    biết vẽ line

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

Đã gửi 24 July 2014 - 01:24 AM

mọi người cho e hỏi chút

giờ e có 1 chuỗi bất kỳ gồm các chữ số cách nhau bằng dấu cách "  "  hoặc dấu "," hay dấu chấm phẩy ";"

em muốn lấy riêng các chữ số bên trái, bên phải  dấu cách "  "  hoặc dấu "," hay dấu chấm phẩy ";" thì làm thế nào???

ví dụ: 1448.57,23.74 giờ muốn lấy số 1448.57 và số 23.74 riêng ra thì dùng hàm gì???

hàm substr dùng không có được........

 

 

thks cả nhà :mellow:  :)  :)  :)  :)  :)  :) 


  • 0

#10 Tot77

Tot77

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 990 Bài viết
Điểm đánh giá: 498 (tốt)

Đã gửi 24 July 2014 - 08:01 AM

Hàm substr dùng được mà.

(setq a "1448.57,23.74 "

         a1 (substr a 1 (vl-string-search "," a))

         a2 (substr a (+ 2 (vl-string-search "," a)))

)


  • 0

#11 DesignAutoLisp

DesignAutoLisp

    biết vẽ line

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

Đã gửi 24 July 2014 - 06:23 PM

thkssss ban nhieu.......


  • 0

#12 DesignAutoLisp

DesignAutoLisp

    biết vẽ line

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

Đã gửi 25 July 2014 - 04:35 AM

http://www.cadviet.c...32733_dcl_2.txt

http://www.cadviet.c...32733_lsp_1.txt

http://www.cadviet.c...3_editbox_1.lsp

nhờ các cao thủ chỉ giáo

e có file dcl và lsp như đính kèm

cho e hỏi chút là khi e thực hiện thao tác trên nút select xong thì làm thế nào để hiện tiếp hộp thoại dcl như lúc gọi hàm editbox để thực hiện tiếp việc tiếp các thao tác tiếp theo

 

thkssss cả nhà.............


  • 0

#13 Tot77

Tot77

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 990 Bài viết
Điểm đánh giá: 498 (tốt)

Đã gửi 25 July 2014 - 10:52 AM

Bạn làm như thế này:

(defun sav()
    (setq txt(get_tile "edt1"))
)
 
(defun reload()
    (setq id_dcl(load_dialog "editbox.dcl"))
  (new_dialog "editbox" id_dcl)
 
  (action_tile "select" "(setq ddiag 3)(done_dialog)")
  (action_tile "accept" "(setq ddiag 2)(sav)(done_dialog)")
  (action_tile "cancel" "(setq ddiag 1)(done_dialog)")
  (start_dialog)
  (unload_dialog id_dcl)
)
 
(defun c:editbox ()
  (reload)    
  (if (= ddiag 1)
    (progn
      (princ "chuong trinh da thoat: ")
    )
  )
  (if (= ddiag 3)
    (progn      
      (setq ss (ssget))
      (reload)
    )
  )
  (if (= ddiag 2)
    (progn
      (command "text" "j" "mc" '(0 0) 2.5 0 txt)
      (setq sname(ssname ss 0)
   obj(vlax-ename->vla-object sname)
   are(rtos (vla-get-area obj) 2 3)
   ss1(ssget)
   sname1(ssname ss1 0)
   obj1(vlax-ename->vla-object sname1)
      )
      (vla-put-textstring obj1 are)
      (princ "chay OK: ") (princ)
    )
  )
)
  
[

  • 1

#14 DesignAutoLisp

DesignAutoLisp

    biết vẽ line

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

Đã gửi 25 July 2014 - 06:07 PM

okkkk.... thkss bạn nhiều..........


  • 0

#15 DesignAutoLisp

DesignAutoLisp

    biết vẽ line

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

Đã gửi 03 August 2014 - 05:46 PM

mọi người cho e hỏi chút

e dung hàm (vla-put-Visible vla-obj 0) de an doi tuong chon, gio dung ham nao de hien các đối tượng chọn trước đó ạ, hoặc hiện 1 số đối tượng hiện trước đó

THKSSSSSS 


  • 0

#16 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 03 August 2014 - 06:07 PM

0 >> 1


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


#17 DesignAutoLisp

DesignAutoLisp

    biết vẽ line

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

Đã gửi 03 August 2014 - 06:10 PM

Nhu vay khong co dc vi the se khog bit duoc nhug doi tuong nao duoc chon de hien len
  • 0

#18 DesignAutoLisp

DesignAutoLisp

    biết vẽ line

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

Đã gửi 03 August 2014 - 06:17 PM

Gio e dung hàm (vla-put-Visible vla-obj 0) de an doi tuog chon, gio e muon hien 1so hoac tat ca doi tuog an do hien len thi lam cach nao a.
vi du: chom 10 doi tuong de an bang ham vla-put-visible cac doi tuong gia su theo thu tu tu 1 den 10, gio e muon hien doi tuong thu tu 2,4,5,7,9 chang han thj lam the nao
thks ca nha....
  • 0

#19 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 03 August 2014 - 06:29 PM

(vla-put-Visible vla-obj 1)

Vấn đề là bạn đã biết vla-obj khi ẩn rồi thì khi muốn hiện thằng nào phải gọi đúng thằng đó.


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


#20 Tot77

Tot77

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 990 Bài viết
Điểm đánh giá: 498 (tốt)

Đã gửi 03 August 2014 - 07:44 PM

Giả sử lb là cái list các đối tượng đa sắp xếp theo thứ tự.

(setq la '(2 4 5 7 9))

(mapcar '(lambda(x) (vla-put-Visible (vlax-ename->vla-object (nth x lb)) 1)) la)


  • 0