Jump to content
InfoFile
Tác giả: Thaistreetz
Bài viết gốc: 78093
Tên lệnh: pt
Viết lisp theo yêu cầu [phần 2]



Chú ý:
- Khi chạy lisp này, với mỗi text lisp sẽ quyét tất cả các point để tìm point gần nhất và di chuyển text đến point đó. Chính vì thế có thể xảy ra trường hợp (rất ít xảy ra) 2 text có chung một point gần nhất, khi đó lisp sẽ di chuyển chúng trùng với nhau dẫn đến có thể một số point bị lạc mất text cao độ. bạn sử dụng chú ý một chút là OK.
- Tên lệnh...
>>



Chú ý:
- Khi chạy lisp này, với mỗi text lisp sẽ quyét tất cả các point để tìm point gần nhất và di chuyển text đến point đó. Chính vì thế có thể xảy ra trường hợp (rất ít xảy ra) 2 text có chung một point gần nhất, khi đó lisp sẽ di chuyển chúng trùng với nhau dẫn đến có thể một số point bị lạc mất text cao độ. bạn sử dụng chú ý một chút là OK.
- Tên lệnh bạn có thể tự đổi cho phù hợp với nhu cầu.
- Vì viết nhanh nên mình chỉ quan tâm đến hiệu quả, không quan tâm đến chất lượng nên lisp này nói chung là không hay lắm dưới con mắt người lập trình, vài chỗ cách làm hơi củ chuối nhưng với người sử dụng thì OK không vấn đề gì. hi vọng đúng ý bạn. :tongue2:
<<

Filename: 78093_pt.lsp
Tác giả: Tue_NV
Bài viết gốc: 77550
Tên lệnh: dcap
Nhờ Giúp Lisp Đánh Cấp

Bạn thử cái này nữa coi sao :

:tongue2:

Filename: 77550_dcap.lsp
Tác giả: Phiphi-
Bài viết gốc: 77203
Tên lệnh: xx yy cd cv
Giúp mình Lisp đánh số bản vẽ này với!

Lệnh CV trong LISP (của TRAN LE PHUONG) dưới đây cho phép bạn copy tất cả những gỉ đi kèm với Text rồi tăng số/chữ theo yêu cầu.
Tuy nhiên Lisp chỉ thay đổi chử số cuối và tối đa đến 100 mà thôi.
Nhờ Tue_NV bổ xung thêm để hoàn thiện theo yêu cầu đánh chử số đầu của minhphuong_humg. Thank you.


Bode box có lổi, xin sửa như sau:
----------(command "MOVE" "P" "" A...
>>

Lệnh CV trong LISP (của TRAN LE PHUONG) dưới đây cho phép bạn copy tất cả những gỉ đi kèm với Text rồi tăng số/chữ theo yêu cầu.
Tuy nhiên Lisp chỉ thay đổi chử số cuối và tối đa đến 100 mà thôi.
Nhờ Tue_NV bổ xung thêm để hoàn thiện theo yêu cầu đánh chử số đầu của minhphuong_humg. Thank you.


Bode box có lổi, xin sửa như sau:
----------(command "MOVE" "P" "" A :bigsmile:---------------
<<

Filename: 77203_xx_yy_cd_cv.lsp
Tác giả: Tue_NV
Bài viết gốc: 77352
Tên lệnh: dcap
Nhờ Giúp Lisp Đánh Cấp

Bạn thử Lisp này Tue_NV viết thử xem :
Bài toán : cho 1 Polyline -> vẽ đường đánh cấp với bề rộng là B như file bạn gửi kèm theo

Hiện nay chức năng download Lisp file của diễn đàn bị lỗi. Nếu bạn sử dụng chức năng download Lisp file của diễn đàn bị lỗi thì hãy nhấn nút Reply bài viết này của Tue_NV -> chép hết code về (không sót đấy nhé về chạy thử là được
>>

Bạn thử Lisp này Tue_NV viết thử xem :
Bài toán : cho 1 Polyline -> vẽ đường đánh cấp với bề rộng là B như file bạn gửi kèm theo

Hiện nay chức năng download Lisp file của diễn đàn bị lỗi. Nếu bạn sử dụng chức năng download Lisp file của diễn đàn bị lỗi thì hãy nhấn nút Reply bài viết này của Tue_NV -> chép hết code về (không sót đấy nhé về chạy thử là được
Chúc thành công :bigsmile:
<<

Filename: 77352_dcap.lsp
Tác giả: Tue_NV
Bài viết gốc: 77505
Tên lệnh: dcap
Nhờ Giúp Lisp Đánh Cấp

Bạn dkkx3a và bạn xaakiii_mboet có thể cho biết bạn đánh cấp cho Pline gấp khúc, nhưng bạn đánh cấp với trường hợp các cấp nằm dưới Pline sử dụng trong trường hợp thực tế nào không?
Tue_NV sử dụng Lisp đánh cấp với các cấp nằm trên Pline trong trường hợp đánh bậc cấp.
Tue_NV xin nâng cấp vào Lisp : đánh cấp cho pline gấp khúc ở 2 trường hợp :
1. Các cấp nằm trên...
>>

Bạn dkkx3a và bạn xaakiii_mboet có thể cho biết bạn đánh cấp cho Pline gấp khúc, nhưng bạn đánh cấp với trường hợp các cấp nằm dưới Pline sử dụng trong trường hợp thực tế nào không?
Tue_NV sử dụng Lisp đánh cấp với các cấp nằm trên Pline trong trường hợp đánh bậc cấp.
Tue_NV xin nâng cấp vào Lisp : đánh cấp cho pline gấp khúc ở 2 trường hợp :
1. Các cấp nằm trên pline
2. các cấp nằm dưới pline
Các bạn sử dụng thử xem : (áp dụng đúng luôn cho Spline)

Hiện nay chức năng download Lisp file của diễn đàn bị lỗi. Nếu bạn sử dụng chức năng download Lisp file của diễn đàn bị lỗi thì hãy nhấn nút Reply bài viết này của Tue_NV -> chép hết code về (không sót đấy nhé về chạy thử là được
Chúc thành công :tongue2:
<<

Filename: 77505_dcap.lsp
Tác giả: master_worse
Bài viết gốc: 77091
Tên lệnh: l2t
Tự động cập nhật chiều dài LINE khi LINE thay đổi

(cập nhật đối tượng đích ngay sau khi đối tượng nguồn thay đổi)
đối tượng nguồn LINE và đối tượng đích là 1 hoặc nhiều text


Filename: 77091_l2t.lsp
Tác giả: master_worse
Bài viết gốc: 77097
Tên lệnh: tru
Trừ đi tất cả các số được chọn cho 1 giá trị xác định

Chọn các số bị trừ -> nhập số trừ



Filename: 77097_tru.lsp
Tác giả: gia_bach
Bài viết gốc: 76835
Tên lệnh: linkr
LISP : Ánh xạ giá trị đối tượng (thay đổi giá trị nguồn -> Đích cập nhật theo)


Chào Tue_NV
Lisp LINKR bị lỗi như Tue_NV đã phát hiện.
(sau khi Post Lisp LINKR lên diễn đàn vài ngày tui cũng đã phát hiện lỗi này, nhưng chờ mãi không thấy ai có ý kiến phản hồi. "No Table")
Gửi Tue_NV Lisp đã fix lỗi. Tue_NV test lại dùm, cám ơn nhiều.

Filename: 76835_linkr.lsp
Tác giả: gia_bach
Bài viết gốc: 76836
Tên lệnh: linkt
LISP : Ánh xạ giá trị đối tượng (thay đổi giá trị nguồn -> Đích cập nhật theo)
Gửi bạn LISP link text đã cập nhật phần liên kết sau khi đóng bản vẽ .
chú ý : để liên kết đuợc thưc hiện, list phải đuợc Appload truớc khi sử dụng (đưa list vào mục Startup Suite)

Filename: 76836_linkt.lsp
Tác giả: Thaistreetz
Bài viết gốc: 76270
Tên lệnh: ft df dfx dx
Lisp căn lề text: Left, Center, Right và Fit (giống word)

Thêm lệnh DX: sắp xếp text theo hàng ngang (Đưa các text về cùng toạ độ Y, giữ nguyên toạ độ X)

Filename: 76270_ft_df_dfx_dx.lsp
Tác giả: pucca
Bài viết gốc: 76550
Tên lệnh: linkt
Viết lisp theo yêu cầu [phần 2]

Chào các bạn. Mình đang có 2 lisp: tính tổng 1 loạt text rồi ghi sang 1 text và lisp ánh xạ 1 text sang text khác để tự động cập nhật theo. Giờ mình cần 1 lisp để tính tổng 1 loạt text field và tổng tự động cập nhật theo (sau khi REGEN) sau mỗi thay đổi của 1 trong các text field. Các bạn giúp mình kết hợp 2 lisp này được không. Cảm ơn nhiều
>>
Chào các bạn. Mình đang có 2 lisp: tính tổng 1 loạt text rồi ghi sang 1 text và lisp ánh xạ 1 text sang text khác để tự động cập nhật theo. Giờ mình cần 1 lisp để tính tổng 1 loạt text field và tổng tự động cập nhật theo (sau khi REGEN) sau mỗi thay đổi của 1 trong các text field. Các bạn giúp mình kết hợp 2 lisp này được không. Cảm ơn nhiều :bigsmile: .

Tính tổng:

<<

Filename: 76550_linkt.lsp
Tác giả: thiep
Bài viết gốc: 76041
Tên lệnh: clockwise
Viết lisp theo yêu cầu [phần 2]

tivanteo, Cảm ơn bạn.
Lisp của bạn cho thiep rất tuyệt, rất có ích cho các nhà Địa chính, trắc đạc. Nó tạo ra 1 TABLE tọa độ các góc ranh, và rất tuyệt khi đưa các tên điểm ranh ra ngoài ranh.

Filename: 76041_clockwise.lsp
Tác giả: gia_bach
Bài viết gốc: 75960
Tên lệnh: copy2 paste2
Sử dụng ClipBoard trong LISP : Copy và Paste dữ liệu kiểu Text
Giới thiệu với các bạn đọan LISP (vừa sưu tầm đuợc) lưu và lấy dữ liệu kiểu Text từ ClipBoard
Hàm SetClipBoardText By XShrimp : lưu dữ liệu kiểu Text vào ClipBoard
Hàm GetClipBoardText By Patrick_35 : lấy dữ liệu kiểu Text từ ClipBoard

Ứng dụng :
Trong CAD
- trên bản vẽ A gọi lệnh copy2 -> chọn Text nguồn,
- trên bản vẽ B, C ... gọi lệnh paste2 -> chọn các đối...
>>
Giới thiệu với các bạn đọan LISP (vừa sưu tầm đuợc) lưu và lấy dữ liệu kiểu Text từ ClipBoard
Hàm SetClipBoardText By XShrimp : lưu dữ liệu kiểu Text vào ClipBoard
Hàm GetClipBoardText By Patrick_35 : lấy dữ liệu kiểu Text từ ClipBoard

Ứng dụng :
Trong CAD
- trên bản vẽ A gọi lệnh copy2 -> chọn Text nguồn,
- trên bản vẽ B, C ... gọi lệnh paste2 -> chọn các đối tựong đích >enter :bigsmile:

Với các Text từ nguồn khác như : Word, Excel , trình duyệt, … : hàm GetClipBoardText bỏ qua các đối tuợng đồ họa (image), chỉ chọn ra Text. Đặc biệt trong Excel : cho phép copy dữ liệu trong nhiều cell.

<<

Filename: 75960_copy2_paste2.lsp
Tác giả: Tue_NV
Bài viết gốc: 75467
Tên lệnh: dk
Viết lisp theo yêu cầu [phần 2]

Bạn sử dụng Code này thử nhé :

Filename: 75467_dk.lsp
Tác giả: gia_bach
Bài viết gốc: 75949
Tên lệnh: atp
Viết lisp theo yêu cầu [phần 2]

Thiệp viết hơi bị khó hiểu.
có phải là : ghi Text tại đỉnh Pline theo thứ tự vị trí cùng chiều hay ngược chiều kim đồng hồ.

Filename: 75949_atp.lsp
Tác giả: Tue_NV
Bài viết gốc: 75098
Tên lệnh: mnh tmn
Lisp đưa đối tượng về vị trí cũ sau khi move?

Bạn sử dụng 2 Lisp này xem sao
Lệnh mnh : thực hiện y như lệnh Move của CAD (-> Move đối tượng A, B, C -> vị trí mới)
-> Lệnh tmn -> kế thừa lệnh mnh -> đưa đối tượng đuợc chọn Move nhầm về vị trí cũ)

Filename: 75098_mnh_tmn.lsp
Tác giả: Thaistreetz
Bài viết gốc: 75283
Tên lệnh: ft df dfx
lisp đẩy các đối tượng cách nhau 1 khoảng cách đều nhau?

Với text thì bạn có thể sử dụng lisp này của mình.
Thực ra là gồm 3 lisp.
- Lệnh FT: căn lề text, lisp này mình đã post tại đây
- Lệnh DF: dãn dòng các text cho đều nhau.
- Lệnh DFX: dàn đều các text theo hàng ngang với khoảng cách đều nhau (khoảng cách từ điểm đầu text này đến điểm cuối của text kia)
Kết hợp 3 lệnh này trong quá trình sử dụng sẽ được cái bạn...
>>
Với text thì bạn có thể sử dụng lisp này của mình.
Thực ra là gồm 3 lisp.
- Lệnh FT: căn lề text, lisp này mình đã post tại đây
- Lệnh DF: dãn dòng các text cho đều nhau.
- Lệnh DFX: dàn đều các text theo hàng ngang với khoảng cách đều nhau (khoảng cách từ điểm đầu text này đến điểm cuối của text kia)
Kết hợp 3 lệnh này trong quá trình sử dụng sẽ được cái bạn cần.

với yêu cầu như trong hình của bạn thì chỉ cần dùng 2 lệnh FT và DF là đủ.
<<

Filename: 75283_ft_df_dfx.lsp
Tác giả: Thaistreetz
Bài viết gốc: 75411
Tên lệnh: edt
Edit trực tiếp text Attribute trong block
Trong block có sử dụng nhiều text attribute thì việc gõ ed để sửa nội dung hơi vất vả một chút.
Đây là đoạn code để edit trực tiếp vào các text attribute do ta chọn bằng cách pick chuột.

Tuy nhiên lisp này phải gõ nội dung cần thay đổi ở dòng command.
Giờ em muốn thực hiện việc này thông qua một hộp thoại. hộp thoại đó có 2 nút Cancel và OK.
Xin nhờ các huynh viết hộ...
>>
Trong block có sử dụng nhiều text attribute thì việc gõ ed để sửa nội dung hơi vất vả một chút.
Đây là đoạn code để edit trực tiếp vào các text attribute do ta chọn bằng cách pick chuột.

Tuy nhiên lisp này phải gõ nội dung cần thay đổi ở dòng command.
Giờ em muốn thực hiện việc này thông qua một hộp thoại. hộp thoại đó có 2 nút Cancel và OK.
Xin nhờ các huynh viết hộ cái này, em không có rành khoản này lắm.
<<

Filename: 75411_edt.lsp
Tác giả: Tue_NV
Bài viết gốc: 74934
Tên lệnh: nhaplenh
Viết lisp theo yêu cầu [phần 2]

Em dùng Lisp này thử xem nhé :

Đường Link mà svba gửi ở bài viết số 242 bị lỗi không down load được. Em xem lại đường Link nhé

Filename: 74934_nhaplenh.lsp
Tác giả: Tue_NV
Bài viết gốc: 74994
Tên lệnh: sapxep
Viết lisp theo yêu cầu [phần 2]

Svba hãy sử dụng đoạn Code sau :

:cheers:

Filename: 74994_sapxep.lsp

Trang 4/330

4