ZIZU
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.


Diễn đàn giao thông
 
Trang ChínhTrang Chính  Tìm kiếmTìm kiếm  Latest imagesLatest images  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  
Đăng Nhập
Tên truy cập:
Mật khẩu:
Đăng nhập tự động mỗi khi truy cập: 
:: Quên mật khẩu
Top posters
Admin
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_lcapTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Voting_barTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_rcap 
xhung0602
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_lcapTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Voting_barTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_rcap 
sonmk2008
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_lcapTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Voting_barTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_rcap 
philipdn
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_lcapTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Voting_barTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_rcap 
TRANHOC2008
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_lcapTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Voting_barTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_rcap 
vinhtg
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_lcapTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Voting_barTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_rcap 
CIC.com
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_lcapTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Voting_barTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_rcap 
vu hien
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_lcapTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Voting_barTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_rcap 
moclantim
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_lcapTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Voting_barTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_rcap 
cd2k44
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_lcapTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Voting_barTỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Vote_rcap 
Latest topics
» C rack phần mềm TDT9.1
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeSun Nov 26, 2023 4:33 pm by rong chau a

» Phần mềm cubiconst
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeMon Nov 13, 2023 6:00 pm by Hunghoi1

»  Chuyển đổi giữa các phiên bản autocad
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeWed Nov 01, 2023 2:16 pm by hoangphihong

» Phần mềm tdt9.1
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeTue Aug 08, 2023 10:45 am by hoangphihong

» Chia sẻ Bộ Lisp rất hay: ”Kho báu của Minh”
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeTue Jan 10, 2023 2:28 pm by hoangphihong

» Hướng dẫn vẽ bình đồ bằng phần mềm Sufer
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeFri Jan 06, 2023 11:29 am by hoangphihong

»  SAN NỀN: PHẦN MỀM MIỄN PHÍ NXSOFT
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeFri Jan 06, 2023 11:26 am by hoangphihong

» Bản tính kết cấu cống hộp theo 22TCN - 272 - 05
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeTue Jan 03, 2023 11:09 pm by huynhcd29gtcc

» Lỗi AutoCAD Error Aborting Ads Civil
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeTue Jan 03, 2023 1:50 pm by hoangphihong

» TẶNG KEY DPSURVEY 2.9
TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeMon Sep 07, 2020 10:58 am by longboy

Statistics
Diễn Đàn hiện có 10096 thành viên
Chúng ta cùng chào mừng thành viên mới đăng ký: Phuongkq

Tổng số bài viết đã gửi vào diễn đàn là 18519 in 3437 subjects
Keywords
Sumac hitosoft 2018 alpha delta bravo 2017 drad ngang mapsite toan phan 2016 2011 thiết nova group HHMAPS dcad crack 2013 2010 civil topo FAST RDCAD
Social bookmarking
Social bookmarking reddit      

Bookmark and share the address of ZIZU on your social bookmarking website
LIÊN KẾT




TỔNG LƯỢT TRUY CẬP

 

 TỔNG HỢP MỘT SỐ LISP CƠ BẢN

Go down 
+13
trangkutehd
cd2k44
qkhs.live
ro88
batitus
thuancauduong
philong3112
ken"s
phuquang113
khaosat2009
philipdn
sonxaydung
Admin
17 posters
Chuyển đến trang : Previous  1, 2
Tác giảThông điệp
batitus
Thành viên chính thức
Thành viên chính thức
batitus


Tổng số bài gửi : 35
Ngày đăng ký : 26/08/2009

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeTue Apr 20, 2010 11:10 am

Cho mình hỏi có lisp nào giúp nhân 2 số với nhau ko, hay công 2 số với nhau ko. Mong đc giúp đớ , chân thành cảm ơn !
Về Đầu Trang Go down
ro88
Thành viên chính thức
Thành viên chính thức
ro88


Nam Tổng số bài gửi : 9
Age : 35
Đến từ: : Nha Trang_Khanh Hoà
Nghề nghiệp: : Khảo sát trắc địa
Ngày đăng ký : 01/08/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeSun Aug 01, 2010 12:40 pm

em mới gia nhập diễn đàn.anh thuancauduong hay anh philipdn viet dum em lisp này nhé.em cảm on trước.
em dang vẽ bản đồ địa hình nhung mỗi khi em tìm điểm rồi dùng lệnh pline nối các điểm đó lại với nhau ,như vậy thì lau quá.em muốn nhờ các anh viết giúp em một lisp có thể đánh những điểm cần nối lại với nhau lên excell rồi sau đó chạy một phát là những điểm đó tự động nối lại với nhau được không.
Về Đầu Trang Go down
qkhs.live
Thành viên năng động
Thành viên năng động
qkhs.live


Nam Tổng số bài gửi : 186
Age : 42
Đến từ: : XXXX
Nghề nghiệp: : YYYY
Sở thích : ZZZZ
Ngày đăng ký : 13/07/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeSun Aug 01, 2010 7:51 pm

(DEFUN c:+()
; (prompt "\n *************")
(setq a nil)
(prompt "\n Ch�n c�c s� c�n t�nh t�ng: ")
(setq a (ssget ' ((0 . "text"))))
(setq i 0)
(setq tong 0.0)
(setq mang (ssname a i))
(while (/= mang nil)
(setq c (entget mang))
(setq d (cdr (assoc 1 c)))
(setq tong (+ (atof d) tong))
(setq i (+ i 1))
(setq mang (ssname a i))
)
(setq p1 (getpoint "\n �i�m ghi k�t qu�: "))
(command ".TEXT" "r" p1 "0" (rtos tong 2 2))
)
;*******************************************************
(DEFUN c:-()
(prompt "\n *************")
(setq a nil)
(prompt "\n Ch�n c�c s� b� tr�: ")
(setq a (ssget ' ((0 . "text"))))
(setq i 0)
(setq sotru 0.0)
(setq mang (ssname a i))
(while (/= mang nil)
(setq c (entget mang))
(setq d (cdr (assoc 1 c)))
(setq sotru (+ (atof d) sotru))
(setq i (+ i 1))
(setq mang (ssname a i))
)
(setq a nil)
(prompt "\n Ch�n c�c s� tr�: ")
(setq a (ssget ' ((0 . "text"))))
(setq i 0)
(setq sobitru 0.0)
(setq mang (ssname a i))
(while (/= mang nil)
(setq c (entget mang))
(setq d (cdr (assoc 1 c)))
(setq sobitru (+ (atof d) sobitru))
(setq i (+ i 1))
(setq mang (ssname a i))
)
(setq hieu (- sotru sobitru))
(setq p1 (getpoint "\n �i�m ghi k�t qu�: "))
(command ".TEXT" "r" p1 "0" (rtos hieu 2 2))
)
;*******************************************************
(DEFUN c:*()
(prompt "\n *************")
(setq a nil)
(prompt "\n Ch�n s� h�ng th� nh�t: ")
(setq a (ssget ' ((0 . "text"))))
(setq nhan 0.0)
(setq mang (ssname a 0))
(setq c (entget mang))
(setq d (cdr (assoc 1 c)))
(setq nhan (atof d))
(setq a nil)
(prompt "\n Ch�n s� h�ng th� 2: ")
(setq a (ssget ' ((0 . "text"))))
(setq binhan 0.0)
(setq mang (ssname a 0))
(setq c (entget mang))
(setq d (cdr (assoc 1 c)))
(setq binhan (atof d))
(setq tich (* nhan binhan))
(setq p1 (getpoint "\n �i�m ghi k�t qu�: "))
(command ".TEXT" "r" p1 "0" (rtos tich 2 2))
)
;*******************************************************
(DEFUN c:/()
(prompt "\n *************")
(setq a nil)
(prompt "\n Ch�n s� b� chia: ")
(setq a (ssget ' ((0 . "text"))))
(setq bichia 0.0)
(setq mang (ssname a 0))
(setq c (entget mang))
(setq d (cdr (assoc 1 c)))
(setq bichia (atof d))
(setq a nil)
(prompt "\n Ch�n s� chia: ")
(setq a (ssget ' ((0 . "text"))))
(setq chia 0.0)
(setq mang (ssname a 0))
(setq c (entget mang))
(setq d (cdr (assoc 1 c)))
(setq chia (atof d))
(setq thuong (/ bichia chia))
(setq p1 (getpoint "\n �i�m ghi k�t qu�: "))
(command ".TEXT" "r" p1 "0" (rtos thuong 2 2))
)
;(setq b (ssname a 0)) ;lay doi tuong dau tien duoc chon
;(setq c (entget b)) ;liet ke cac dac trung cua doi tuong (theo truong)
;(setq d (cdr (assoc 1 c))) ;lay gia tri cua truong 1 (gia tri text)
;(setq so (+ (atof d) 1)) ;chuyen text -> so
Về Đầu Trang Go down
http://taybac.1talk.net
philipdn
Moderator
Moderator
philipdn


Nam Tổng số bài gửi : 320
Age : 40
Đến từ: : Việt Nam
Nghề nghiệp: : Xây dựng cầu đường
Sở thích : Học tập, nghiên cứu và vi tính
Ngày đăng ký : 16/11/2008

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeSun Aug 01, 2010 9:40 pm

ro88 đã viết:
em mới gia nhập diễn đàn.anh thuancauduong hay anh philipdn viet dum em lisp này nhé.em cảm on trước.
em dang vẽ bản đồ địa hình nhung mỗi khi em tìm điểm rồi dùng lệnh pline nối các điểm đó lại với nhau ,như vậy thì lau quá.em muốn nhờ các anh viết giúp em một lisp có thể đánh những điểm cần nối lại với nhau lên excell rồi sau đó chạy một phát là những điểm đó tự động nối lại với nhau được không.
Bạn nói rõ hơn về yêu cầu của bạn nhé, mình chưa hiểu lắm, bạn nên đưa hình vẽ hoặc file minh hoạ lên để mọi người dể dàng giúp bạn
Bạn dùng pline nối các điểm đó (điểm đó là điểm gì: point hay text hay cái gì đó)
Nối theo thứ tự nào hay tuỳ ý, bạn đánh những điểm cần nối là đánh cái gì vậy
....
Về Đầu Trang Go down
http://vn.myblog.yahoo.com/alonestar.cafe
ro88
Thành viên chính thức
Thành viên chính thức
ro88


Nam Tổng số bài gửi : 9
Age : 35
Đến từ: : Nha Trang_Khanh Hoà
Nghề nghiệp: : Khảo sát trắc địa
Ngày đăng ký : 01/08/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeMon Aug 02, 2010 2:39 pm


Bạn nói rõ hơn về yêu cầu của bạn nhé, mình chưa hiểu lắm, bạn nên đưa hình vẽ hoặc file minh hoạ lên để mọi người dể dàng giúp bạn
Bạn dùng pline nối các điểm đó (điểm đó là điểm gì: point hay text hay cái gì đó)
Nối theo thứ tự nào hay tuỳ ý, bạn đánh những điểm cần nối là đánh cái gì vậy
....[/quote]
ví dụ mình có một http://www.mediafire.com/file/pccfrt146ic0ycp/mo dat ninh than ( phuong ).dwg
mình muốn nối các diểm như trong bản vẽ lại với nhau.nhưng khi mình tìm từ điểm này dể nối với diểm khác thì mất thời gian quá.những diểm mình muốn nối lại với nhau là những số thứ tư như trong bản vẽ .nó dươc láy ra từ dữ liệu may đo diện tử toan đạc.có cả cao đọ và toạ độ luôn.nếu như có ai đã vẽ bản đồ địa hình chắc sẽ biết.nhờ các bác xem dùm có giải quyết được không nha.
Về Đầu Trang Go down
philipdn
Moderator
Moderator
philipdn


Nam Tổng số bài gửi : 320
Age : 40
Đến từ: : Việt Nam
Nghề nghiệp: : Xây dựng cầu đường
Sở thích : Học tập, nghiên cứu và vi tính
Ngày đăng ký : 16/11/2008

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeMon Aug 02, 2010 4:58 pm

ro88 đã viết:

ví dụ mình có một http://www.mediafire.com/file/pccfrt146ic0ycp/mo dat ninh than ( phuong ).dwg
mình muốn nối các diểm như trong bản vẽ lại với nhau.nhưng khi mình tìm từ điểm này dể nối với diểm khác thì mất thời gian quá.những diểm mình muốn nối lại với nhau là những số thứ tư như trong bản vẽ .nó dươc láy ra từ dữ liệu may đo diện tử toan đạc.có cả cao đọ và toạ độ luôn.nếu như có ai đã vẽ bản đồ địa hình chắc sẽ biết.nhờ các bác xem dùm có giải quyết được không nha.
File bị lỗi ko giải nén được, bạn xem lại nhé
Về Đầu Trang Go down
http://vn.myblog.yahoo.com/alonestar.cafe
ro88
Thành viên chính thức
Thành viên chính thức
ro88


Nam Tổng số bài gửi : 9
Age : 35
Đến từ: : Nha Trang_Khanh Hoà
Nghề nghiệp: : Khảo sát trắc địa
Ngày đăng ký : 01/08/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeMon Aug 02, 2010 6:02 pm

philipdn đã viết:
ro88 đã viết:

ví dụ mình có một http://www.mediafire.com/file/pccfrt146ic0ycp/mo dat ninh than ( phuong ).dwg
mình muốn nối các diểm như trong bản vẽ lại với nhau.nhưng khi mình tìm từ điểm này dể nối với diểm khác thì mất thời gian quá.những diểm mình muốn nối lại với nhau là những số thứ tư như trong bản vẽ .nó dươc láy ra từ dữ liệu may đo diện tử toan đạc.có cả cao đọ và toạ độ luôn.nếu như có ai đã vẽ bản đồ địa hình chắc sẽ biết.nhờ các bác xem dùm có giải quyết được không nha.
File bị lỗi ko giải nén được, bạn xem lại nhé
mình vẫn mở file ra được ma hay để mình gửi qua mail cho bạn nhé.up lên lại nè coi thử mở được ko nhé http://www.mediafire.com/file/vzbpktndjzb3dpy/mo dat ninh than ( phuong ).rar
Về Đầu Trang Go down
thuancauduong
Thành viên chính thức
Thành viên chính thức



Tổng số bài gửi : 38
Ngày đăng ký : 29/04/2008

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeTue Aug 03, 2010 8:47 am

Mình có mở bản vẽ của bạn, song không hiểu được bạn cần gì. Mình đoán cái text nhỏ màu tím (nằm trên lớp TT) là số thứ tự, nhưng với cách nối của bạn mình thấy nó không có quy luật nào.

Mình diễn giải thế này không biết có đúng ý bạn không:
- Chọn một tập hợp các text.
- Nối các text đó theo thứ tự tăng dần.

Bạn copy toàn bộ phần text bên dưới (màu xanh, giữa hai hàng gạch ngang) dán vào dòng lệnh của AutoCAD (phiên bản nào cũng được) rồi gõ lệnh NoiText thử xem sao. Hy vọng giúp được bạn!

;--------------------------------------------------------------------------------------
(defun c:NoiText(/ chon dem dstext ds stt toado text textdau textdau sodinh)
(command ".cmdecho" 0)
(command ".ucs" "w")
(command ".osnapcoord" 1)

(princ "\nChon cac TEXT de noi theo thu tu: ")

(if (setq chon (ssget '((0 . "TEXT"))))
(progn
(setq dem 0
dstext '())
(while (< dem (sslength chon))
(progn
(setq ds (entget (ssname chon dem))
stt (atof (cdr (assoc 1 ds)))
toado (cdr (assoc 11 ds))
text (list stt toado)
dstext (append dstext (list text))
dem (1+ dem))))
;Sap xep dstext tang dan theo stt
(setq dstext (vl-sort dstext (function (lambda (e1 e2) (< (car e1)(car e2))))))
(setq textdau (car dstext)
textcuoi (last dstext)
sodinh (length dstext))
;Noi cac diem theo thu tu
(if (> sodinh 1)
(progn
(command ".3DPOLY")
(while dstext
(progn
(command (car (cdr (car dstext))))
(setq dstext (cdr dstext))))
(command "")
;(command ".zoom" "o" (entlast) "")
(alert (strcat "\nDa ve 3DPOLYLINE co " (rtos sodinh 2 0) " dinh, bat dau tu " (rtos (car textdau) 2) " den " (rtos (car textcuoi) 2) ". "))
(princ (strcat "\nDa ve 3DPOLYLINE co " (rtos sodinh 2 0) " dinh, bat dau tu " (rtos (car textdau) 2) " den " (rtos (car textcuoi) 2) ". "))
)
)
)
)
(command ".ucs" "p")
(princ)
)

;--------------------------------------------------------------------------------------
Về Đầu Trang Go down
ro88
Thành viên chính thức
Thành viên chính thức
ro88


Nam Tổng số bài gửi : 9
Age : 35
Đến từ: : Nha Trang_Khanh Hoà
Nghề nghiệp: : Khảo sát trắc địa
Ngày đăng ký : 01/08/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeTue Aug 03, 2010 10:22 am

thuancauduong đã viết:
Mình có mở bản vẽ của bạn, song không hiểu được bạn cần gì. Mình đoán cái text nhỏ màu tím (nằm trên lớp TT) là số thứ tự, nhưng với cách nối của bạn mình thấy nó không có quy luật nào.

Mình diễn giải thế này không biết có đúng ý bạn không:
- Chọn một tập hợp các text.
- Nối các text đó theo thứ tự tăng dần.

Bạn copy toàn bộ phần text bên dưới (màu xanh, giữa hai hàng gạch ngang) dán vào dòng lệnh của AutoCAD (phiên bản nào cũng được) rồi gõ lệnh NoiText thử xem sao. Hy vọng giúp được bạn!

;--------------------------------------------------------------------------------------
(defun c:NoiText(/ chon dem dstext ds stt toado text textdau textdau sodinh)
(command ".cmdecho" 0)
(command ".ucs" "w")
(command ".osnapcoord" 1)

(princ "\nChon cac TEXT de noi theo thu tu: ")

(if (setq chon (ssget '((0 . "TEXT"))))
(progn
(setq dem 0
dstext '())
(while (< dem (sslength chon))
(progn
(setq ds (entget (ssname chon dem))
stt (atof (cdr (assoc 1 ds)))
toado (cdr (assoc 11 ds))
text (list stt toado)
dstext (append dstext (list text))
dem (1+ dem))))
;Sap xep dstext tang dan theo stt
(setq dstext (vl-sort dstext (function (lambda (e1 e2) (< (car e1)(car e2))))))
(setq textdau (car dstext)
textcuoi (last dstext)
sodinh (length dstext))
;Noi cac diem theo thu tu
(if (> sodinh 1)
(progn
(command ".3DPOLY")
(while dstext
(progn
(command (car (cdr (car dstext))))
(setq dstext (cdr dstext))))
(command "")
;(command ".zoom" "o" (entlast) "")
(alert (strcat "\nDa ve 3DPOLYLINE co " (rtos sodinh 2 0) " dinh, bat dau tu " (rtos (car textdau) 2) " den " (rtos (car textcuoi) 2) ". "))
(princ (strcat "\nDa ve 3DPOLYLINE co " (rtos sodinh 2 0) " dinh, bat dau tu " (rtos (car textdau) 2) " den " (rtos (car textcuoi) 2) ". "))
)
)
)
)
(command ".ucs" "p")
(princ)
)

;--------------------------------------------------------------------------------------
Cảm ơn bạn đã viết giúp mình.mình đã dùng lisp của ban viết cho mình rồi.nhưng lisp của ban viết la những text nôi với nhau theo thứ tự tang dần rồi.ý mình là không chạy theo quy luật nào cả chỉ nhập điểm nào trước là nối tiếp theo điểm đó.ví du như trong bản vẽ mình muốn nối con đường lại với nhau.mà con đường thì có lề trái và lề phải,mình nối lề trái trước ví dụ lề trái là những text có số là 1,3,5,7,2,4,8 không theo quy luât nào cả.lisp trên bạn viết cho mình là đúng rồi nhung ban đừng cho nó chạy theo thứ tụ tăng dần hay gì hét ma là mình chọn điểm nào thì nối lại với điểm đó.cảm ơn bạn rát nhiều.mà mổi lần mình sử sụng là phải copy nó dán vào dòng lẹnh hả bạn.không có cách nào cho nó mặc định luôn sao,mỗi lần mình gõ lệnh noitext la tự nó hiểu luôn được không bạn.cảm ơn nhé.giúp dùm mình nha bạn.mình cần gấp lắm.












Về Đầu Trang Go down
thuancauduong
Thành viên chính thức
Thành viên chính thức



Tổng số bài gửi : 38
Ngày đăng ký : 29/04/2008

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeTue Aug 03, 2010 11:01 am

Thành thật xin lỗi, vì mình vẫn ... chưa hiểu ý bạn. Razz
Nếu bạn muốn "chọn điểm nào thì nối lại với điểm đó" thì cần gì đến Lisp hả bạn, chỉ cần gõ lệnh PL, bật chế độ bắt điểm insertion là có thể bắt được text đó rồi nối bằng tay có phải hơn không!
Cách làm thế nào nhé:
- Trong AutoCAD, gõ OS, check vào insertion (trên cùng bên phải), nhấn OK.
- Gõ PL, đưa con trỏ vào gần text bạn muốn nối, nó sẽ bắt điểm của text đó cho bạn (nếu chưa được thì nhấn F3 trên bàn phím). Theo thứ tự đó bạn cứ nối bằng tay đến khi kết thúc.

Mình có thể cải tiến Lisp đó theo yêu cầu của bạn, nhưng quả thực mình chưa biết bạn cần gì!

Đối với một tiện ích Lisp nào đó bạn muốn sử dụng nhiều lần thì làm như sau:
- Nhấn nút Start, vào Run..., gõ Notepad, OK.
- Copy và dán đoạn code vào đó.
- Nhấn Ctrl+S, ở dòng "Save as type" xổ xuống chọn All files, bạn chỉ đến nơi cần lưu, đặt tên có phần mở rộng là LSP, ví dụ NoiText.LSP.
- Vào AutoCAD, gõ lệnh AP. Chỉ đến nơi bạn đã lưu file và nhấn nút Load.
- Nếu bạn muốn nó tự chạy cùng AutoCAD thì với lệnh AP đó, nhấn vào nút Contents... ở góc dưới bên phải, nhấn nút Add và chỉ đến file cần chạy.
Hy vọng có thể giúp bạn!
Về Đầu Trang Go down
ro88
Thành viên chính thức
Thành viên chính thức
ro88


Nam Tổng số bài gửi : 9
Age : 35
Đến từ: : Nha Trang_Khanh Hoà
Nghề nghiệp: : Khảo sát trắc địa
Ngày đăng ký : 01/08/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeTue Aug 03, 2010 11:45 am

thuancauduong đã viết:
Thành thật xin lỗi, vì mình vẫn ... chưa hiểu ý bạn. Razz
Nếu bạn muốn "chọn điểm nào thì nối lại với điểm đó" thì cần gì đến Lisp hả bạn, chỉ cần gõ lệnh PL, bật chế độ bắt điểm insertion là có thể bắt được text đó rồi nối bằng tay có phải hơn không!
Cách làm thế nào nhé:
- Trong AutoCAD, gõ OS, check vào insertion (trên cùng bên phải), nhấn OK.
- Gõ PL, đưa con trỏ vào gần text bạn muốn nối, nó sẽ bắt điểm của text đó cho bạn (nếu chưa được thì nhấn F3 trên bàn phím). Theo thứ tự đó bạn cứ nối bằng tay đến khi kết thúc.

Mình có thể cải tiến Lisp đó theo yêu cầu của bạn, nhưng quả thực mình chưa biết bạn cần gì!

Đối với một tiện ích Lisp nào đó bạn muốn sử dụng nhiều lần thì làm như sau:
- Nhấn nút Start, vào Run..., gõ Notepad, OK.
- Copy và dán đoạn code vào đó.
- Nhấn Ctrl+S, ở dòng "Save as type" xổ xuống chọn All files, bạn chỉ đến nơi cần lưu, đặt tên có phần mở rộng là LSP, ví dụ NoiText.LSP.
- Vào AutoCAD, gõ lệnh AP. Chỉ đến nơi bạn đã lưu file và nhấn nút Load.
- Nếu bạn muốn nó tự chạy cùng AutoCAD thì với lệnh AP đó, nhấn vào nút Contents... ở góc dưới bên phải, nhấn nút Add và chỉ đến file cần chạy.
Hy vọng có thể giúp bạn!
anh cho em sood điện thoại của anh đi em nói chac sẽ sễ hiểu hơn
Về Đầu Trang Go down
philipdn
Moderator
Moderator
philipdn


Nam Tổng số bài gửi : 320
Age : 40
Đến từ: : Việt Nam
Nghề nghiệp: : Xây dựng cầu đường
Sở thích : Học tập, nghiên cứu và vi tính
Ngày đăng ký : 16/11/2008

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeTue Aug 03, 2010 5:51 pm

Mình xem file và những ý bạn nói ở trên mình cũng ko hiểu rõ yêu cầu của bạn, cái thứ tự mà bạn nói 1,3,5,7,... ở bài viết trên là số nào trong file bản vẽ, và những số này (tạm gọi là số thứ tự) có duy nhất hay ko?
Theo mình hiểu, khi bạn trút số liệu từ máy đo ra sẽ kèm theo số thứ tự điểm đo, một số điểm đo này bạn lưu bằng sổ đo là kí hiệu của các vị trí ghi chú, giờ bạn muốn nối chúng lại bằng đường pline???
Kô biết đó có fải là ý của bạn ko?
Thân
Về Đầu Trang Go down
http://vn.myblog.yahoo.com/alonestar.cafe
ro88
Thành viên chính thức
Thành viên chính thức
ro88


Nam Tổng số bài gửi : 9
Age : 35
Đến từ: : Nha Trang_Khanh Hoà
Nghề nghiệp: : Khảo sát trắc địa
Ngày đăng ký : 01/08/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeWed Aug 04, 2010 10:51 pm

philipdn đã viết:
Mình xem file và những ý bạn nói ở trên mình cũng ko hiểu rõ yêu cầu của bạn, cái thứ tự mà bạn nói 1,3,5,7,... ở bài viết trên là số nào trong file bản vẽ, và những số này (tạm gọi là số thứ tự) có duy nhất hay ko?
Theo mình hiểu, khi bạn trút số liệu từ máy đo ra sẽ kèm theo số thứ tự điểm đo, một số điểm đo này bạn lưu bằng sổ đo là kí hiệu của các vị trí ghi chú, giờ bạn muốn nối chúng lại bằng đường pline???
Kô biết đó có fải là ý của bạn ko?
Thân
bạn có phần mềm chạy bình đồ địa hình không.chay khoảng một nghìn điểm đó .cho mình xin nhé.kèm theo hướng dẫn sử sụng thì càng tốt.cảm ơn bạn nhiều.
Về Đầu Trang Go down
cd2k44
Thành viên năng động
Thành viên năng động



Nam Tổng số bài gửi : 244
Age : 38
Đến từ: : TP Hồ Chí Minh
Nghề nghiệp: : Kỹ Sư Cầu Đường
Ngày đăng ký : 24/02/2009

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeThu Aug 05, 2010 8:22 am

ro88 đã viết:
philipdn đã viết:
Mình xem file và những ý bạn nói ở trên mình cũng ko hiểu rõ yêu cầu của bạn, cái thứ tự mà bạn nói 1,3,5,7,... ở bài viết trên là số nào trong file bản vẽ, và những số này (tạm gọi là số thứ tự) có duy nhất hay ko?
Theo mình hiểu, khi bạn trút số liệu từ máy đo ra sẽ kèm theo số thứ tự điểm đo, một số điểm đo này bạn lưu bằng sổ đo là kí hiệu của các vị trí ghi chú, giờ bạn muốn nối chúng lại bằng đường pline???
Kô biết đó có fải là ý của bạn ko?
Thân
bạn có phần mềm chạy bình đồ địa hình không.chay khoảng một nghìn điểm đó .cho mình xin nhé.kèm theo hướng dẫn sử sụng thì càng tốt.cảm ơn bạn nhiều.
Bạn dùng topo của hài hòa đi bạn. Trên diễn đàn có bộ cài và khóa đó. Nếu bạn tìm không được mình gửi cho, cả hướng dẫn sử dụng bằng video và file pdf luôn
Về Đầu Trang Go down
ro88
Thành viên chính thức
Thành viên chính thức
ro88


Nam Tổng số bài gửi : 9
Age : 35
Đến từ: : Nha Trang_Khanh Hoà
Nghề nghiệp: : Khảo sát trắc địa
Ngày đăng ký : 01/08/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeFri Aug 06, 2010 8:05 pm

cd2k44 đã viết:
ro88 đã viết:
philipdn đã viết:
Mình xem file và những ý bạn nói ở trên mình cũng ko hiểu rõ yêu cầu của bạn, cái thứ tự mà bạn nói 1,3,5,7,... ở bài viết trên là số nào trong file bản vẽ, và những số này (tạm gọi là số thứ tự) có duy nhất hay ko?
Theo mình hiểu, khi bạn trút số liệu từ máy đo ra sẽ kèm theo số thứ tự điểm đo, một số điểm đo này bạn lưu bằng sổ đo là kí hiệu của các vị trí ghi chú, giờ bạn muốn nối chúng lại bằng đường pline???
Kô biết đó có fải là ý của bạn ko?
Thân
bạn có phần mềm chạy bình đồ địa hình không.chay khoảng một nghìn điểm đó .cho mình xin nhé.kèm theo hướng dẫn sử sụng thì càng tốt.cảm ơn bạn nhiều.
Bạn dùng topo của hài hòa đi bạn. Trên diễn đàn có bộ cài và khóa đó. Nếu bạn tìm không được mình gửi cho, cả hướng dẫn sử dụng bằng video và file pdf luôn
bạn cho mình xin phần mềm đó đi,cả khoá va file hướng dẫn sử dụng luôn nhé.cảm ơn bạn nhiều.ma phần mềm chạy bình đồ bạn nói chạy trên cad14 phải ko?nếu vay thì cho mình xin luôn phan mềm cad14 luôn nhé.hi` tongue cảm ơn nhiều nhé.
Về Đầu Trang Go down
qkhs.live
Thành viên năng động
Thành viên năng động
qkhs.live


Nam Tổng số bài gửi : 186
Age : 42
Đến từ: : XXXX
Nghề nghiệp: : YYYY
Sở thích : ZZZZ
Ngày đăng ký : 13/07/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeSat Aug 07, 2010 8:45 am

Có phải đang nói đến Surfer ko? Mình có bản 6 và 9, mình chỉ biết sử dụng sơ qua bản 6 bản 9 chưa biết hết. Nếu đúng cái này thì tối về mình UP lên cho.
Về Đầu Trang Go down
http://taybac.1talk.net
trangkutehd
Thành viên chính thức
Thành viên chính thức



Tổng số bài gửi : 4
Ngày đăng ký : 19/08/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeTue Aug 24, 2010 7:46 pm

thanks bạn
________________________
tin tuc ||
bong da || tin tuc trong ngay || ket qua bong da || game ||
nhac





Về Đầu Trang Go down
ro88
Thành viên chính thức
Thành viên chính thức
ro88


Nam Tổng số bài gửi : 9
Age : 35
Đến từ: : Nha Trang_Khanh Hoà
Nghề nghiệp: : Khảo sát trắc địa
Ngày đăng ký : 01/08/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeSat Sep 25, 2010 12:30 pm

Ơ đây có anh em nào có páss của phân mêm mápsite ko vay?cho mình xin nhé.mình đang rât cânf mong các bạn giúp đơ cảm ơn nhiêù
Về Đầu Trang Go down
eaglesvmouse
Thành viên chính thức
Thành viên chính thức



Tổng số bài gửi : 1
Ngày đăng ký : 17/01/2011

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeMon Jan 17, 2011 10:18 am

bác nào chỉ hộ mình cách dùng lệnh "c1" vẽ cửa một cánh với?
Về Đầu Trang Go down
xuantruong
Thành viên năng động
Thành viên năng động



Tổng số bài gửi : 87
Ngày đăng ký : 18/10/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeSun Jan 23, 2011 5:27 pm

Thanks
Về Đầu Trang Go down
contrung
Thành viên chính thức
Thành viên chính thức
contrung


Nam Tổng số bài gửi : 42
Age : 36
Đến từ: : Thanh Hóa
Nghề nghiệp: : Kỹ sư địa chất công trình - Địa chất kỹ thuật
Sở thích : Bóng đá
Ngày đăng ký : 24/07/2010

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeSun Aug 21, 2011 10:56 am

Xin chào tất cả các anh em!
mình có một cái LISP này ki load lên cad thì chạy không được. mong các bác chỉ giáo và giúp mình chỉnh lại để chạy được trên cad nha!mình chayjcad2007.
vì mình cũng đang làm quen với cad nên chưa rành lắm.
mình muốn vẽ một bản vẽ theo tỷ lệ mình chọn nhưng lại không biết được định tỷ lệ cho bản vẽ như thế nào cả: ví dụ mình muốn vẽ một bản vẽ tỷ lệ 1/100 ; 1/150 ; 1/200; 1/250; 1/500...thì định tỷ lệ ra làm sao, chữ và kích thước chiều cao theo tỷ lệ là bao nhiêu. mình cũng mới học cad nên các bạn đừng chê mình gà nha! mong các bạn chỉ giáo thật cụ thể cho mình biết với nha. mình cũng có tham khảo trên mạng nhưng mọi người nói chung chung quá. mình chưa hiểu hết được. ví dụ muốn vẽ nhiều tỷ lệ trên một bản vẽ như thế nào?
dim,text ra làm sao... mong anh em tận tình chỉ giáo nha
nếu bạn nào có lisp giúp mình như trên thì thật là tốt quá!
có thể gửi mại cho mình cũng được: hoandck29@gmail.com
mình chân thành cảm ơn!
còn đây là lisp mình nhờ các bạn sửa lại lỗi để chạy được trên cad với nha:
file của nó đây:
http://www.mediafire.com/?5fdlfw4hfm50voe
xin chân thành cảm ơn các anh em!
Về Đầu Trang Go down
http://cotamviet.oni.cc
thandieudaihiep
Thành viên năng động
Thành viên năng động



Tổng số bài gửi : 92
Ngày đăng ký : 07/04/2012

TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitimeThu Dec 04, 2014 4:24 pm

Admin đã viết:
Bài 7: Offset line sang 2 bên

Trích dẫn :

(defun c:oo(/ data_m)

(defun import_data(/ i)
   (setq data_m (ssget))
   (if (= nil distan_m) (setq distan_m 110.0))
   (princ "Distance (")
   (princ distan_m)
   (princ "):")
   (setq i (getreal ))
   (if (not (= nil i)) (setq distan_m i))
)

(defun process(/ ent check)

(defun p_check()
   (setq check 0)
   (if (= "LINE" (cdr (assoc 0 ent))) (setq check 1))
   (princ)
)

(defun p_d_offset(/ p1 p2 p3 p4)

(defun makeline(/ e2 e5)
;    (princ ent)
;    (setq e5 nil)
;    (setq e5 (cdr (assoc 5 ent)))
;    (princ e5)
;    (if (= nil e5) (setq e5 ))

   (setq la (list (cons 0 "LINE")
       (cons 5 (cdr (assoc 5 ent)) )
       (cons 8 (cdr (assoc 8 ent)) )
       (cons 10 p3)
       (cons 11 p4)
   ))
;    (princ la)
   (entmake la)
   (princ)
)

   (setq p1 (cdr (assoc 10 ent)) p2 (cdr (assoc 11 ent)) )
   (if (not (= p1 p2)) (progn
       (if (< (abs (- (nth 0 p1) (nth 0 p2))) 0.000001) (progn
           (setq p3 (list (+ (nth 0 p1) distan_m) (nth 1 p1) (nth 2 p1) ) )
           (setq p4 (list (+ (nth 0 p2) distan_m) (nth 1 p2) (nth 2 p2) ) )
           (makeline)
           (setq p3 (list (- (nth 0 p1) distan_m) (nth 1 p1) (nth 2 p1) ) )
           (setq p4 (list (- (nth 0 p2) distan_m) (nth 1 p2) (nth 2 p2) ) )
           (makeline)
       ))
       (if (< (abs (- (nth 1 p1) (nth 1 p2))) 0.000001) (progn
           (setq p3 (list (nth 0 p1) (+ (nth 1 p1) distan_m) (nth 2 p1) ) )
           (setq p4 (list (nth 0 p2) (+ (nth 1 p2) distan_m) (nth 2 p2) ) )
           (makeline)
           (setq p3 (list (nth 0 p1) (- (nth 1 p1) distan_m) (nth 2 p1) ) )
           (setq p4 (list (nth 0 p2) (- (nth 1 p2) distan_m) (nth 2 p2) ) )
           (makeline)
       ))

   ))
   (princ)
)

   (if (not (= nil data_m)) (progn
       (setq i 0)
       (while (< i (sslength data_m)) (progn
           (setq ent (entget (ssname data_m i)))
           (p_check)
           (if (= 1 check) (p_d_offset))
           (setq i (+ i 1))
       ))
   ))
   (princ)
)
   (import_data)
  (ai_undo_push)
   (process)
  (ai_undo_pop)
   (princ)
)

Lênh để offset line sang 2 bên là oo.
Bản vẽ cũng ổn rồi. chuẩn bị viết TEXT và Dim thôi. Nhưng trước khi chuyển sang phần mới. Tôi muốn cho cho các bạn biết thêm 2 mẹo nữa khi vẽ.

Bài 8: Break đối tượng
Nhiều người sẽ bảo có lệnh Break (br) rồi cần gì LISP. Nhưng không! Lệnh BR thường không chặt điểm mà chặt đoạn nếu ta không cẩn trọng.

Trích dẫn :

(defun c:bf (/ dt diem)
 (setq dt   (car (entsel "\nVao doi tuong can chat")))
 (if dt
   (progn
     (redraw dt 3)  
     (setq diem (getpoint "\nVao diem chat: "))
     (redraw dt 4)
   )
 )
   (if (and dt diem)    
   (command ".break" dt diem diem)
 )
 )

Lệnh bf sẽ giúp ta chặt đối tượng tại một điểm.

Bài 9: Nối 2 đường Line bị ngặt quãng

Hãy tưởng tượng bạn có 1 đương Line. Bạn Br nó. Đường Line giờ đã trở thành 2 đường riêng biệt, cách nhau 1 đoạn. Không cần thiết phải xoa 1 đường và EX đường kia khi bạn muốn 2 đường làm 1.

Trích dẫn :

(defun c:jl (/ p1 p2 p3 ssdt entla entlb tt p1a p2a tt p1b p2b layermoi TAPLINEMOI TENLAYERMOI)
 (defun thanghang (p0 p1 p2 / dx1 dy1 dx2 dy2 x1 y1 x2 y2 x0 y0)
   (setq
     x0  (car p0)
     y0  (cadr p0)
     x1  (car p1)
     y1  (cadr p1)
     x2  (car p2)
     y2  (cadr p2)
     dx1 (- x1 x0)
     dy1 (- y1 y0)
     dx2 (- x2 x0)
     dy2 (- y2 y0)
   )
   (if (equal (* dx1 dy2) (* dx2 dy1) 0.01)
     t
     nil
   )
 )
 (defun noiline (p1 p2 p3 p4 / kq dmax)
   (if (and (thanghang p1 p2 p3) (thanghang p1 p2 p4))
     (progn
(setq d1   (distance p1 p3)
     d2   (distance p1 p4)
     d3   (distance p2 p3)
     d4   (distance p2 p4)
     dmax (max d1 d2 d3 d4)
     kq   (cond
    ((= dmax d1) (list p1 p3))
    ((= dmax d2) (list p1 p4))
    ((= dmax d3) (list p2 p3))
    ((= dmax d4) (list p2 p4))
    (t nil)
  )
)
kq
     )
     nil
   )
 )
 (init)
 (setq
   p1  (getpoint "\ngocdau: ")
   p2  (getcorner p1 "\ngocsau: ")
   ssdt  (ssget "c" p1 p2 '((0 . "LINE")))
   entla (ssname ssdt 0)
   entlb (ssname ssdt 1)
   tt  (entget entla)
   p1a  (cdr (assoc 10 tt))
   p2a  (cdr (assoc 11 tt))
   tt  (entget entlb)
   p1b  (cdr (assoc 10 tt))
   p2b  (cdr (assoc 11 tt))
   tenlayermoi (cdr (assoc 8 (entget entla)))
 )
 (if (setq taplinemoi (noiline p1a p2a p1b p2b))
   (progn
     (command ".erase" ssdt "")
     (entmake
(list
 (cons 0 "LINE")
 (cons 8 tenlayermoi)
 (cons 10 (car taplinemoi))
 (cons 11 (cadr taplinemoi))
)
     )      
     (traos)
   )
   (princ "\nKhong the noi line duoc !")
 )
 (done)
)

Lệnh jl rất tiện. Bạn thử dùng mà xem...

Bài 10: Hiệu chỉnh Hatch

Trích dẫn :

(defun c:hc ()
  (setq elist (entget (car (entsel "\nLUA CHON MAU HATCH DE SAO CHEP: ")))
etyp (cdr (assoc 0 elist))
old (getvar "clayer")
);setq

(if (/= etyp "HATCH")
(prompt "\nKHONG PHAI DOI TUONG HATCH! HAY THU LAI!")
(progn
(setq layn (cdr (assoc 8 elist)))
  (setvar "HPNAME" (cdr (assoc 2 elist)))
  (setvar "HPSCALE" (cdr (assoc 41 elist)))
  (setvar "HPANG" (cdr (assoc 52 elist)))
  (setq pt1 (getpoint "\nCHON MOT DIEM TRONG VUNG SE HATCH: "))
(setvar "clayer" layn)
  (command "bhatch" pt1 "")
(setvar "clayer" old)
);progn
);if
(princ)
);defun
;****** mk ****** mk ****** mk ****** mk ****** mk ****** mk ******
(defun c:hm ()
  (setq ename (entsel "\nLUA CHON MAU HATCH DE DI CHUYEN: ")
elist (entget (car ename))
etyp (cdr (assoc 0 elist))
old (getvar "clayer")
);setq

(if (/= etyp "HATCH")
(prompt "\nKHONG PHAI DOI TUONG HATCH! HAY THU LAI!")
(progn
(setq layn (cdr (assoc 8 elist)))
  (setvar "HPNAME" (cdr (assoc 2 elist)))
  (setvar "HPSCALE" (cdr (assoc 41 elist)))
  (setvar "HPANG" (cdr (assoc 52 elist)))  
       (setq pt1 (getpoint "\nCHON MOT DIEM TRONG VUNG SE HATCH: "))
(setvar "clayer" layn)
(entdel (car ename))
  (command "bhatch" pt1 "")
(setvar "clayer" old)
);progn
);if
(princ)
);defun
;****** mk ****** mk ****** mk ****** mk ****** mk ****** mk ******
(defun c:ha ()
  (setq ename(entsel "\nLUA CHON MAU HATCH DE THAY DOI GOC : ")
elist(entget (car ename))
etyp(cdr (assoc 0 elist))
oang(assoc 52 elist)
);setq

(if (/= etyp "HATCH")
(prompt "\nKHONG PHAI DOI TUONG HATCH! HAY THU LAI!")
(progn
(setq ang  (getangle (strcat "\nSO DO GOC MOI <" (rtos (cdr oang) 2) ">:"))
nang (cons 52 ang)
nlst (subst nang oang elist)
)
(entmod nlst)
(command "hatchedit" ename "" "" "" "")
);progn
);if
(princ)
);defun
;****** mk ****** mk ****** mk ****** mk ****** mk ****** mk ******
(defun c:hs ()
  (setq ename (entsel "\nLUA CHON MAU HATCH DE THAY DOI TY LE : ")
elist (entget (car ename))
etyp (cdr (assoc 0 elist))
oscl (assoc 41 elist)
);setq

(if (/= etyp "HATCH")
(prompt "\nKHONG PHAI DOI TUONG HATCH! HAY THU LAI!")
(progn
(setq hscl (getreal (strcat "\nTY LE MAU HATCH MOI <" (rtos (cdr oscl) 2) ">:"))
nscl (cons 41 hscl)
nlst (subst nscl oscl elist)
)
(entmod nlst)
(command "hatchedit" ename "" "" "" "")
);progn
);if
(princ)
);defun

Trong lisp này cung cấp cho chúng ta những lệnh sau
1. hc: Copy Hatch
1. hm: Move Hatch
1. ha: Chỉnh góc của mấu Hatch
1. hs: Chỉnh độ Scale của mẫu Hatch


Thanks
__________________________________________

http://www.thuvienxaydung.forumvi.com
Về Đầu Trang Go down
http://thuvienxaydung.forumvi.com/
Sponsored content





TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Empty
Bài gửiTiêu đề: Re: TỔNG HỢP MỘT SỐ LISP CƠ BẢN   TỔNG HỢP MỘT SỐ LISP CƠ BẢN - Page 2 Icon_minitime

Về Đầu Trang Go down
 
TỔNG HỢP MỘT SỐ LISP CƠ BẢN
Về Đầu Trang 
Trang 2 trong tổng số 2 trangChuyển đến trang : Previous  1, 2
 Similar topics
-
» Lisp Hỗ trợ in ấn
» Chia sẻ Bộ Lisp rất hay: ”Kho báu của Minh”
» Xin lisp dai taluy !
» SỬA FILE LISP DÙM
» Lisp tính lý trình của 1 hoặc 2 điểm trên 1 polyline và ghi kết quả vào 1 text có sẵn

Permissions in this forum:Bạn không có quyền trả lời bài viết
ZIZU :: CLB AUTO CAD :: Auto lisp & Visua Lisp-
Chuyển đến