Đến nội dung


Hình ảnh
- - - - -

Lisp Tính Số Lượng Đai Và Ghi Ra Thành Text


  • Please log in to reply
23 replies to this topic

#1 c0ntructi0n

c0ntructi0n

    biết vẽ line

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

Đã gửi 24 April 2016 - 04:05 PM

Chào các bạn, mình có tìm trong diễn đàn cái lisp này mà chưa được, các bạn giúp dùm mình, mình giải thích như sau:

 

***gõ lệnh
***lisp sẽ yêu cầu mình chọn dim, ví dụ dim 950 như hình, sau đó
***lisp yêu cầu mình gõ bước cốt đai ví dụ 150, sau đó
***lisp sẽ hỏi đường kính cốt đai là bao nhiêu, mình gõ 6, sau đó
***lisp yêu cầu pick vị trí ngoài màn hình để ghi text
***kết quả là  7∅6a150
***dùng text arial, cao text là 80 nha các bạn

***cách tính lấy 950/150 được 6.3333 lấy phần nguyên la 6+1=7∅6a150 (không quan tâm là kết quả dư bao nhiêu, cứ lấy phần nguyên + 1 la được)

 

***http://www.cadviet.c...uat_ra_text.dwg
 


  • -1

#2 c0ntructi0n

c0ntructi0n

    biết vẽ line

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

Đã gửi 25 April 2016 - 12:29 AM

Có bạn nào giúp mình với  :D :D :D :D :D :D :D :D


  • 0

#3 huunhantvxdts

huunhantvxdts

    biết dimbaseline

  • Members
  • PipPipPipPipPip
  • 366 Bài viết
Điểm đánh giá: 53 (tàm tạm)

Đã gửi 25 April 2016 - 09:38 AM

Chào các bạn, mình có tìm trong diễn đàn cái lisp này mà chưa được, các bạn giúp dùm mình, mình giải thích như sau:

 

***gõ lệnh
***lisp sẽ yêu cầu mình chọn dim, ví dụ dim 950 như hình, sau đó
***lisp yêu cầu mình gõ bước cốt đai ví dụ 150, sau đó
***lisp sẽ hỏi đường kính cốt đai là bao nhiêu, mình gõ 6, sau đó
***lisp yêu cầu pick vị trí ngoài màn hình để ghi text
***kết quả là  7∅6a150
***dùng text arial, cao text là 80 nha các bạn

***cách tính lấy 950/150 được 6.3333 lấy phần nguyên la 6+1=7∅6a150 (không quan tâm là kết quả dư bao nhiêu, cứ lấy phần nguyên + 1 la được)

 

***http://www.cadviet.c...uat_ra_text.dwg
 

Bạn thử cái này thế nào??

trước khi chạy bạn chuyển style text hiện hành về arial 

lisp chạy theo style text và layer hiện hành

http://www.cadviet.c...6960_lamthu.lsp


  • 1

#4 c0ntructi0n

c0ntructi0n

    biết vẽ line

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

Đã gửi 25 April 2016 - 11:20 AM

cám ơn bạn trước, để tối về mình xem thử, h dang xài điện thoại ko chạy đc lisp
  • 0

#5 c0ntructi0n

c0ntructi0n

    biết vẽ line

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

Đã gửi 25 April 2016 - 06:34 PM

Bạn thử cái này thế nào??

trước khi chạy bạn chuyển style text hiện hành về arial 

lisp chạy theo style text và layer hiện hành

http://www.cadviet.c...6960_lamthu.lsp

Ok mình đã chạy thử lisp rất ok và đúng ý mình, cám ơn bạn.

H các bạn giúp mình 1 vấn đề nữa (được voi đòi tiên hehe)

Cộng các số đằng trước của text, ví dụ: 7d6a1500   12d6a200  ..... cộng lại cho kết quả là 7+12=19


  • -2

#6 huunhantvxdts

huunhantvxdts

    biết dimbaseline

  • Members
  • PipPipPipPipPip
  • 366 Bài viết
Điểm đánh giá: 53 (tàm tạm)

Đã gửi 26 April 2016 - 02:48 PM

Ok mình đã chạy thử lisp rất ok và đúng ý mình, cám ơn bạn.

H các bạn giúp mình 1 vấn đề nữa (được voi đòi tiên hehe)

Cộng các số đằng trước của text, ví dụ: 7d6a1500   12d6a200  ..... cộng lại cho kết quả là 7+12=19

Quá mơ hồ không biết nó nằm chỗ mô như thế nào???


  • 1

#7 c0ntructi0n

c0ntructi0n

    biết vẽ line

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

Đã gửi 26 April 2016 - 05:58 PM

Quá mơ hồ không biết nó nằm chỗ mô như thế nào???

 


Đây bạn, mình đính kèm bản vẽ và hình ảnh đây, muốn gì có đó luôn kk, giúp mình nhé

149122_cadviet1.jpghttp://www.cadviet.c...t_ra_text_1.dwg


  • -1

#8 huunhantvxdts

huunhantvxdts

    biết dimbaseline

  • Members
  • PipPipPipPipPip
  • 366 Bài viết
Điểm đánh giá: 53 (tàm tạm)

Đã gửi 27 April 2016 - 08:42 AM

 

Đây bạn, mình đính kèm bản vẽ và hình ảnh đây, muốn gì có đó luôn kk, giúp mình nhé

149122_cadviet1.jpghttp://www.cadviet.c...t_ra_text_1.dwg

 

Cố gắng làm thêm tí nữa cũng để luyện tay nghề


(defun C:tacht (/ ss tong text point giatri)
(vl-load-com)
(defun ss2ent (ss / sodt index lstent)  
(setq sodt (if ss (sslength ss) 0)    
index 0  )  
(repeat sodt 
(setq ent (ssname ss index)
index (1+ index)
lstent (cons ent lstent))
)  
(reverse lstent))
(prompt "\nChon doi tuong Text.")
(setq ss (ssget '((0 . "TEXT")))
lst (ss2ent ss)
lst (vl-sort lst '(lambda (e1 e2) (< (cadr (assoc 10 (entget e1))) (cadr (assoc 10 (entget e2))))))) 
(setq tong 0)
(setq chuoi "")
(foreach enxt lst
(setq giatri (cdr (assoc 1 (entget enxt))))
(setq text (substr giatri 1 (- (vl-string-search "C" giatri) 2)))
(setq chuoi (strcat chuoi "+" text))
(setq tong (+ (atof text) tong))
)
(setq chuoi (substr chuoi 2 (- (strlen chuoi) 1)))
(setq point (getpoint "\n Chon diem ghi dien tich: "))
(setq dientext (strcat chuoi " = " (rtos tong 2 0)))
(command "TEXT" point 80 0 dientext)
(princ) 
)

  • 2

#9 gia_bach

gia_bach

    biết lệnh adcenter

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

Đã gửi 27 April 2016 - 03:33 PM

 

Cố gắng làm thêm tí nữa cũng để luyện tay nghề


(defun C:tacht (/ ss tong text point giatri)
(vl-load-com)
(defun ss2ent (ss / sodt index lstent)  
(setq sodt (if ss (sslength ss) 0)    
index 0  )  
(repeat sodt 
(setq ent (ssname ss index)
index (1+ index)
lstent (cons ent lstent))
)  
(reverse lstent))
(prompt "\nChon doi tuong Text.")
(setq ss (ssget '((0 . "TEXT")))
lst (ss2ent ss)
lst (vl-sort lst '(lambda (e1 e2) (< (cadr (assoc 10 (entget e1))) (cadr (assoc 10 (entget e2))))))) 
(setq tong 0)
(setq chuoi "")
(foreach enxt lst
(setq giatri (cdr (assoc 1 (entget enxt))))
(setq text (substr giatri 1 (- (vl-string-search "C" giatri) 2)))
(setq chuoi (strcat chuoi "+" text))
(setq tong (+ (atof text) tong))
)
(setq chuoi (substr chuoi 2 (- (strlen chuoi) 1)))
(setq point (getpoint "\n Chon diem ghi dien tich: "))
(setq dientext (strcat chuoi " = " (rtos tong 2 0)))
(command "TEXT" point 80 0 dientext)
(princ) 
)

 

Tuy chủ thót chưa có ý kiến và giám thị không giải thích đề ra, nhưng cá nhân tôi cho rằng đáp án mới giải quyết 1 phần của vấn đề.

VD : 7d6a150 + 9d6a200 cho k/quả là 7+9=15 (cùng đường kính d6)

nhưng với t/hợp 7d6a150 + 9d8a200 kết quả là gì? (khác đ/kính d6 + d8)


  • 1

#10 c0ntructi0n

c0ntructi0n

    biết vẽ line

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

Đã gửi 27 April 2016 - 07:47 PM

Tuy chủ thót chưa có ý kiến và giám thị không giải thích đề ra, nhưng cá nhân tôi cho rằng đáp án mới giải quyết 1 phần của vấn đề.

VD : 7d6a150 + 9d6a200 cho k/quả là 7+9=15 (cùng đường kính d6)

nhưng với t/hợp 7d6a150 + 9d8a200 kết quả là gì? (khác đ/kính d6 + d8)
Bạn gia bạch có thể giúp mình trong trường hợp 7d6a150 + 9d8a200 được không, mình muốn cho ra đáp số là: 7d6, 9d8

Nếu vậy thì đúng là đỡ phải cộng trừ nhân chia

Thank yous mọi người


  • 0

#11 huunhantvxdts

huunhantvxdts

    biết dimbaseline

  • Members
  • PipPipPipPipPip
  • 366 Bài viết
Điểm đánh giá: 53 (tàm tạm)

Đã gửi 28 April 2016 - 07:33 AM

 

Tuy chủ thót chưa có ý kiến và giám thị không giải thích đề ra, nhưng cá nhân tôi cho rằng đáp án mới giải quyết 1 phần của vấn đề.

VD : 7d6a150 + 9d6a200 cho k/quả là 7+9=15 (cùng đường kính d6)

nhưng với t/hợp 7d6a150 + 9d8a200 kết quả là gì? (khác đ/kính d6 + d8)
Bạn gia bạch có thể giúp mình trong trường hợp 7d6a150 + 9d8a200 được không, mình muốn cho ra đáp số là: 7d6, 9d8

Nếu vậy thì đúng là đỡ phải cộng trừ nhân chia

Thank yous mọi người

 

Làm cái này cho bạn thật sự rất khó (khó là vì không biết mục đích là gì??? Nó được sắp xếp ra sao???) giống như trên mình đã nói làm nhưng rất mơ hồ


  • 1

#12 c0ntructi0n

c0ntructi0n

    biết vẽ line

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

Đã gửi 29 April 2016 - 11:56 AM

Nếu vậy thì chọn bằng mắt cũng được, bao nhiêu đó cũng đủ để tăng tốc độ triển khai cái dầm rồi, cám ơn các bạn thật nhiều, trên này quả nhiên là nhiều cao thủ, đúng là làm chăm chỉ không bằng cái cách làm.


  • 0

#13 hiepttr

hiepttr

    Edu level: li10

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

Đã gửi 29 April 2016 - 05:26 PM

Sao mà dễ buông tay thế ? Cung cấp thêm thông tin để kiếm cái "máy gặt đập liên hoàn" về mà thay cái "lưỡi hái" chứ :D :D :D


  • 1

Có vợ dù dữ dù hiền , bạn đều có lợi
_ Nếu vợ hiền, bạn sẽ là người đàn ông sung sướng
_ Nếu vợ dữ, bạn sẽ thành ... triết gia !

Bergson


#14 c0ntructi0n

c0ntructi0n

    biết vẽ line

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

Đã gửi 29 April 2016 - 07:04 PM

Sao mà dễ buông tay thế ? Cung cấp thêm thông tin để kiếm cái "máy gặt đập liên hoàn" về mà thay cái "lưỡi hái" chứ :D :D :D

 

Đúng là cái má gặt gặt như sấm so với cái "cù liêm". Do mình thấy mình làm nhà cũng nhỏ nên thép đai thường là cùng đường kính nên lấy cái cù liêm gặt đỡ :lol: :lol: :lol: . Nhưng có cái vụ sau nhờ các bạn, cái này nếu có máy gặt thì nhanh, xin trình bày như sau:

***Trong cad có bảng thống kê thép (đính kèm)

***Mình dung didg của thằng Hàn Quốc để chuyển 2 cột text sang excel (cột đường kính & khối lượng)

***Trong excel tính được d6=100KG, d10=200KG, d16=1000KG chẳng hạn

***Rồi gõ lại cad thành bảng tổng hợp KL

***Giúp mình gặt nó trong cad

Cám ơn trước,gặt xong cho vài tấn lúa :D :D :D

http://www.cadviet.c...22_cadviet1.dwg


  • 0

#15 ndtnv

ndtnv

    biết lệnh minsert

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

Đã gửi 29 April 2016 - 09:56 PM

Các yêu cầu đều không rõ ràng nên bạn huunhantvxdts muốn giúp thêm cũng khó.

Yêu cầu phải rõ ràng, có kết quả mong muốn thì may ra mới có người giúp, tôi có chuyên môn kết cấu cũng còn thấy mơ hồ huống gì những bạn khác.

Hãy đọc bài này rồi trình bày lại kết quả mong muốn cho rõ ràng :

http://www.cadviet.c...se-nhu-the-nao/

 

Ps: Tôi chỉ góp ý, test và sửa lisp chứ không viết hộ.

Nếu ai muốn học mà chưa biết bắt đầu ntn có thể đến etown Tân Bình tôi sẽ hướng dẫn khoảng 1h để tự học.


  • -1

#16 c0ntructi0n

c0ntructi0n

    biết vẽ line

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

Đã gửi 29 April 2016 - 11:45 PM

Đề tài này bạn huunhan đã giúp mình ok ở bài #3, vậy là ok rồi các bạn nhé

Và mình có nhờ các bạn giúp ở thếm 1 vấn đề ở bài #14, nếu vẫn chưa hiểu bài #14 thì mình sẽ chuyển sang đề tài khác.


  • 0

#17 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 30 April 2016 - 08:42 AM

Chắc 1 dấu dislike cho bác ndtnv cũng không làm cho bác ấy đói. Nhưng một bài viết mà nhiều người góp ý thì nên xem lại chứ nhỉ?


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


#18 c0ntructi0n

c0ntructi0n

    biết vẽ line

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

Đã gửi 30 April 2016 - 08:59 AM

Oh mình cũng thấy bài này bạn huunhan đã giúp mình ok rồi,ok các bạn góp ý mình cám ơn, còn cái mục ở bài #14 cũng là cái phụ, cũng không phải đề tài này, mình sẽ chuyển sang bài khác vậy.
  • 0

#19 phongtran86

phongtran86

    biết lệnh offset

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

Đã gửi 11 May 2016 - 11:17 AM

Chào các bạn, mình có tìm trong diễn đàn cái lisp này mà chưa được, các bạn giúp dùm mình, mình giải thích như sau:

 

***gõ lệnh
***lisp sẽ yêu cầu mình chọn dim, ví dụ dim 950 như hình, sau đó
***lisp yêu cầu mình gõ bước cốt đai ví dụ 150, sau đó
***lisp sẽ hỏi đường kính cốt đai là bao nhiêu, mình gõ 6, sau đó
***lisp yêu cầu pick vị trí ngoài màn hình để ghi text
***kết quả là  7∅6a150
***dùng text arial, cao text là 80 nha các bạn

***cách tính lấy 950/150 được 6.3333 lấy phần nguyên la 6+1=7∅6a150 (không quan tâm là kết quả dư bao nhiêu, cứ lấy phần nguyên + 1 la được)

 

***http://www.cadviet.c...uat_ra_text.dwg
 

Nhờ các bác giúp với, vẫn với lisp trên nhưng mà khác chút xíu: k phải như "lisp sẽ hỏi đường kính cốt đai là bao nhiêu, mình gõ 6, sau đó"

mà là lisp hiển thị gợi ý trong dòng lệnh chính: (pick điểm ghi text hoặc (Duongkinhdai<6> :). Nếu gõ D: gõ đường kính---> trở lại pick text. Nếu k thì pick vị trí text bình thường.

Tổng quát hơn: (pick điểm ghi text hoặc chỉnh (Duongkinhdai<6>/ Kcdai <150> :) Nếu gõ D: gõ đường kính . Vẫn hiển thị gợi ý:

(pick điểm ghi text hoặc chỉnh (Duongkinhdai<6>/ Kcdai <150> :)  gõ K nếu muốn thay đổi khoảng cách. k thì pick điểm ghi text bình thường.

Tổng cả lisp cho vào vòng lặp, để khi gõ lệnh nếu D với K không đổi ta chi cần chọn đoạn dim (hoặc nhập bề rộng đoạn rải cốt đai) pick điểm ghi, rồi lại chọn đoạn dim- pick điểm ghi :) Giá trị K,D lưu lại từ lần gần nhất thay đổi. :)


  • 0

#20 traitimgio

traitimgio

    biết zoom

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

Đã gửi 11 May 2016 - 01:57 PM

lisp hay mà bị die hết link diễn đàn rồi, Bác nào up lại giúp với


  • 0