Đến nội dung


Hình ảnh
- - - - -

[ yêu cầu ] lisp đo khoảng cách dán bào block att


  • Please log in to reply
12 replies to this topic

#1 traigtmientay

traigtmientay

    biết vẽ arc

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

Đã gửi 26 October 2012 - 10:58 AM

em đang làm mấy công tác liên quan đến đo khoảng cách ,
vì làm thủ công lâu nên e đã nghĩ ra làm cái block động có thể vận dụng mọi thứ .
nhưng cái khoảng cách ko khắc phục dc nên em viết yêu cầu này nhờ các anh .
lisp có thể đo theo 3 phương X Y đường chéo
thực thi lệnh thì líp hỏi đo theo phương nào
nếu theo phương cũ có thể bỏ qua bằng dấu cách .
đo xong hỏi chọn block cần điền , chọn att cần điền ( có thể có nhiều att )
kết thúc .
các anh hãy viết trường hợp chung nhất cho tất cả anh em dc dùng .
cảm ơn các anhhttp://www.cadviet.c..._drawing1_1.dwgHình đã gửi
  • 0

#2 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 26 October 2012 - 11:05 AM

1). Khái niệm đo khoảng cách: là k/c 2 điểm hay là chiều dài line, hay là chiều dài curve. Nếu vậy thì cần gì phải hỏi phương đo.
2). Add từng khoảng cách vào từng att, hay add khoảng cách cho tất cả?
3). Chọn block để làm gì? Chỉ cần chọn att được không?
4). File bản vẽ minh họa?
v.v... và v.v...
  • 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 traigtmientay

traigtmientay

    biết vẽ arc

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

Đã gửi 26 October 2012 - 11:19 AM

e đã cho file lên đó rồi . khoảng cách tốt nhất là pick điểm ,
add khoảng cách đo từng đoạn 1 vào 1 att
chỉ cần chọn att cũng dc miễn là cái att nằm trong block dc chọn nhảy số .
  • 0

#4 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 26 October 2012 - 11:25 AM

Chọn phương là thừa, phải khô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.


#5 lp_hai

lp_hai

    biết lệnh measure

  • Members
  • PipPipPipPipPipPip
  • 456 Bài viết
Điểm đánh giá: 202 (khá)

Đã gửi 26 October 2012 - 11:46 AM

mình nghĩ nếu chọn khoảng cách bằng pick điểm thì chắc phải chọn phương, vì đôi khi chọn pick điểm thì chưa chắc 2 điểm đã thẳng hàng ?!
@ traimientay trong bản vẽ của bạn lúc nào cũng có cái đường màu trắng đó ah? nếu có thì giải quyết bài toán của bạn nhanh hơn
  • 0
Hình đã gửi

#6 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 26 October 2012 - 12:00 PM

Command Dim -> Lấy Entlast Measurement -> Pick vào Att -> Thay đổi giá trị -> del entlast (nếu cần). Cái này chắc bác Hạ đã viết xong từ lúc chủ topic còn chưa kịp upload, chỉ là chờ cầu trả lời về phương mà thôi
  • 0

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


#7 traigtmientay

traigtmientay

    biết vẽ arc

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

Đã gửi 26 October 2012 - 12:36 PM

thực ra em muốn chọn phương để khống chế sai số phát sinh khối lượng . nếu ko chọn phương thì mình phải bắt điểm chính xác , khối lượng thao tác tương đương nhau . chon phương nó chắc cú hơn về khối lượng , nhưng cái ko chọn phương chỉ chọn điểm trên bản vẽ bằng cách bắt điểm nó rèn luyện kỹ năng và trách nhiệm công việc . chắc e chọn hướng đi chỉ cần bắt điểm ko cần chọn phương . chỉ cần 2 vị trí trên bản vẽ là ok . các anh có thể phát triển cho text và mtext luôn cũng dc . trong 1 lisp mà làm dc trọn gói . mọi người có thể dùng lisp đa năng
còn cái đường màu trắng là để minh họa thôi anh à.
  • 0

#8 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 26 October 2012 - 03:30 PM

... cách bắt điểm nó rèn luyện kỹ năng và trách nhiệm công việc . chắc e chọn hướng đi chỉ cần bắt điểm ko cần chọn phương . chỉ cần 2 vị trí trên bản vẽ là ok . các anh có thể phát triển cho text và mtext luôn cũng dc . trong 1 lisp mà làm dc trọn gói . mọi người có thể dùng lisp đa năng
còn cái đường màu trắng là để minh họa thôi anh à.


;Doan Van Ha - CADViet.com - Ngay 26/10/2012
;Muc dich: add dimension vao att
(defun C:HA( / p1 p2 ent data obj tag lst len)
(vl-load-com)
(while
(and
(setq p1 (getpoint "\nChon diem P1: "))
(setq p2 (getpoint P1 "\nChon diem P2: "))
(setq ent (nentsel "\nChon Attribute: ")))
(setq obj (vlax-ename->vla-object (cdr (assoc 330 (setq data (entget (car ent)))))))
(setq tag (cdr (assoc 2 data)))
(setq lst (list (cons tag (setq len (rtos (distance p1 p2) 2 2)))))
(foreach att (setq atts (vlax-safearray->list (vlax-variant-value (vla-getattributes obj))))
(if (= (vla-get-tagstring att) tag)
(vla-put-textstring att len)))
(vla-update obj)))

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


#9 lp_hai

lp_hai

    biết lệnh measure

  • Members
  • PipPipPipPipPipPip
  • 456 Bài viết
Điểm đánh giá: 202 (khá)

Đã gửi 26 October 2012 - 03:45 PM

bạn text thử thế nào

(defun c:muong(/ dz p1 p2 bl dis)
(setq dz (getvar "dimzin"))
(while (setq p1 (getpoint "\nchon diem 1:"))
(setq p2 (getpoint p1 "\nchon diem 2:")
bl (entget(entnext(entnext(car(entsel)))))
)
(setvar "dimzin" 4)
(setq dis (rtos (distance p1 p2) 2 2))
(setq bl (subst (cons 1 dis) (assoc 1 bl) bl))
(entmod bl)
)
(setvar "dimzin" dz)
(princ)
)

ở đây mình bỏ qua chọn phương vì mình nghĩ không cần thiết, và bạn có thể bật tắt F8 (chế độ othor) để chọn điểm như khi vẽ line vậy thôi.
  • 1
Hình đã gửi

#10 traigtmientay

traigtmientay

    biết vẽ arc

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

Đã gửi 26 October 2012 - 06:52 PM

e vẫn bị khóa like . thực ra là e có cái lisp khoảng cách cho text nhưng nó hơi gà chỉ cho text ko cho att . nên e nghĩ đến việc gộp chung cho anh em dùng . chứ như em có att rồi lại thêm text . người khác ko có phải mò cả 2 cũng khổ . vì e cũng đi mò và tìm kiếm nhiều rồi nên e biết .
  • 0

#11 ketxu

ketxu

    Copier - Paster - Editor

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

Đã gửi 26 October 2012 - 07:35 PM

Ng­ười ta yêu cầu như thế nào chỉ mần vậy thui các bác :)

(defun c:linhtinh(/ a)(vl-load-com)
(vla-put-textstring
(vlax-ename->vla-object (car(nentsel "\nThay gia tri vao dau day ?")))
(rtos (distance (setq a (getpoint "\nP1 :"))(getpoint a "\nP2 :")) 2 2)
)
(command "regen")
)

  • 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


#12 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

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

Đã gửi 26 October 2012 - 09:45 PM

e vẫn bị khóa like . thực ra là e có cái lisp khoảng cách cho text nhưng nó hơi gà chỉ cho text ko cho att . nên e nghĩ đến việc gộp chung cho anh em dùng . chứ như em có att rồi lại thêm text . người khác ko có phải mò cả 2 cũng khổ . vì e cũng đi mò và tìm kiếm nhiều rồi nên e biết .

Đừng đem các lisper ra làm thí nghiệm nhé 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.


#13 traigtmientay

traigtmientay

    biết vẽ arc

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

Đã gửi 26 October 2012 - 10:55 PM

e ko bao giờ có ý định như bác hà nói . e rất tôn trọng mọi người và cũng chẳng bao giờ đưa ai ra làm chuột bạch . mình ko tôn trọng người khác thì mình chinh là chuột bạch đầu tiên chứ ko phải người khác .
e chân thành cảm ơn anh em đã giúp đỡ em .
  • 0