Chuyển đến nội dung
Diễn đàn CADViet
  • Thông báo

    • Nguyen Hoanh

      CADViet đã hoàn tất nâng cấp   14/09/2017

      Chào các bạn, CADViet đã hoàn tất việc nâng cấp lên phiên bản mới. Tất cả các chức năng đã hoạt động theo kỳ vọng của ban quản trị. Nếu có vấn đề gì cần phản hồi, các bản post ở đây nhé: Trân trọng, Nguyễn Hoành.
thanhduan2407

[Đã xong] In nhiều bản vẽ trong model mà chỉ cần 1 layout

Các bài được khuyến nghị

dovananh.xd    25

Chắc là không bạn ạ :) Để làm như thế thì cần biết cái khung của bạn nó trông như thế nào, cái Text nó ra làm sao, nó làm bằng Text hay ATT, nó nằm trong Block Khung tên hay nó rời rạc, quy luật tăng là như thế nào ...v...v Nói chung là rất nhiều lý do. Tuy nhiên lý do lớn nhất vẫn là bạn k để ý Nội quy yêu cầu lisp, mà mình thì nói nhiều rồi, mệt rồi, xin không nói nữa ^^

File đây bác. Xem giúp em nhé!

http://www.cadviet.com/upfiles/3/89140_mckl75doanab.dwg

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
dovananh.xd    25

Em có file đuôi fas nhờ bác giải mã luôn không biết có được không ạ?

http://www.cadviet.com/upfiles/3/89140_duc.rar

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
dovananh.xd    25

Bác

"thanhduan2407" đã có công viết ra cái lisp này thì mong bác hoàn chỉnh luân giúp em với được không ạh?

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
thanhduan2407    227

thực sự mình đang bận trong việc học hành ôn thi bên kinh tế. Lâu rồi ko động đến lisp nhưng vẫn ghé thăm có gì hay không? Ý tưởng bạn đưa ra mình làm lâu rồi. Có rồi, số hiệu bản vẽ tự động, ngày tháng....nói chung là có hết rồi. 1 ngày mình đang hì hục viết trên word thì bị 1 tin trời đánh, sếp bắt đi công trình, lúc đó mình đang ôn thi cao học kinh tế nên ko đi, sếp cho nghỉ luôn. Thế là toi con gà. Khi nào rảnh, có thời gian mình cứ post lên cho những ai thích nghịch ngợm. :). Mình rất thích ý tưởng hay....

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
thanhduan2407    227

Những ai gửi mail cho mình vào Mail: heaven2407@gmail.com. Mình sẽ tặng tất cả các lisp mình có.

P/s: chỉ có những ai làm cùng ngành nghề với mình Trắc Địa hoặc liên quan đến Trắc Địa thì sẽ thấy hay. Cũng vì phải bỏ ra thời gian và công sức nên các bạn nên tôn trọng người viết nha. Dù nó (lisp)đơn giản thôi nhưng ý tưởng mới là vấn đề. Mình thích những cái đơn giản nhưng hay là mình thích.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
iclickvn    0

hay thế... đúng cái e đang tìm

thanks for share

 

 

 

 

 

 

 

 

 

 

____________________________________________________________

thiet ke web gia re | thiết kế web giá rẻ | thiet ke website gia re | web gia re

 

may anh canon l may quay sony

 

visa to vietnam legitimated and supported by the Vietnamese Immigration Department. visa for vietnam and visa services for tourist and business visas vietnam visas . vietnam visa online legitimated and supported by the Vietnamese Immigration Department. vietnam visa on arrival and visa services for tourist and business visas vietnam visa application

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
thanhduan2407    227

Lisp trên mình đã cải tiến lâu rồi nhưng quên chưa update lại. Thành thật xin lỗi mọi người.

Lisp trên có nhược điểm là khi chọn Pline thì ko được zoom, vì khi mình zoom thì lúc "Pan" sẽ sai. Do vậy mình đã sử dụng lệnh Align để cái tiến nó. Zoom tẹt ga. Hề hề. Trong tuần tới mình sẽ bỏ ra 1 chút để update. Ai cần toàn bộ lisp. Cứ mail cho mình: heaven2407@gmail.com

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
thanhduan2407    227

Bác

"thanhduan2407" đã có công viết ra cái lisp này thì mong bác hoàn chỉnh luân giúp em với được không ạh?

(defun c:ikn (/ olmode pre D1 D2 ent i dsdinh) ;;;In khung nghieng
(vl-load-com)
(command "undo" "be")
(setq olmode (getvar "OSMODE"))
(setvar "OSMODE" 1)
(setq h 2)   ;;;;Chieu cao chu (Ten so hieu ban ve)
(setq pre "< KC, CN KT>: ")
(entmake (list (cons 0 "TEXT") (cons 40 h) (cons 1 pre) (cons 10 '(0 0 0))))
(command "ddedit" (entlast) "")
(setq pre (cdr(assoc 1 (entget(entlast)))))
(entdel (entlast))
(setq dau (getint "\n Danh so bat dau (n):"))
(command "PSPACE")
(setq
  		po  (getpoint "\nChon vi tri dat so hieu ban ve :  ")
D1 (getpoint "\nChon diem thu nhat: ")
D2 (getpoint "\nChon diem thu hai: ")

)
(command "MSPACE")
(setq ent (entsel "\nChon pline "))
(setq i 0)
(setq dsdinh (acet-geom-vertex-list (car ent)))
(setq n (/ (length dsdinh) 2))
(if ent
 (progn
  (repeat n
 	(alignspace (nth i dsdinh)(nth (1+ i) dsdinh) D1 D2)
 	(command "PSPACE")
 	(setq txt (strcat pre (if (< dau 10) (strcat "0" (itoa dau)) (itoa dau)) "/" (if (< n 10) (strcat "0" (rtos n 2 0)) (rtos n 2 0))))
 	(entmake (list (cons 0 "TEXT") (cons 40 h) (cons 1 txt) (cons 10 pO)))
		(setq Elast (entlast))
		(command "_plot" "" "" "" "" "" "" "")
 	(command "erase" Elast "")
		(command "MSPACE")
 	(setq dau (+ dau 1))
		(setq i (+ i 2))
  )
  )
)
(command "plan" "w")
(command "PSPACE")
(setvar "OSMODE" olmode)
(command "undo" "end")
(princ)
)

Bạn vẽ Pline đi qua 2 góc dưới cùng của bản vẽ và khi kích chọn điểm thứ nhất và điểm thứ 2, bạn kích chọn 2 điểm bên dưới của Mview để nó sẽ lấy 2 điểm dưới cùng của bản vẽ vừa khít với cạnh dưới cùng của Mview. Bạn hiểu lisp thì bạn sẽ làm được thôi. Mình tranh thủ gửi cho bạn.

P/s: Bạn nên tìm hiểu phần đánh số hiệu bản vẽ của bác Thaistress...gì gì đó. Lâu rồi ko vào nên quên. Sorry bác ý. Hii

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Truong_AAn    68

sao minh in nó chỉ ra được cái khung đầu tiên và đường nối các bản vẽ. Nó cứ in liên tục làm mình tốn rất nhiều giấy phải shitdow máy rồi tắt máy in mới dừng được. mình dùng cad2011

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
dovananh.xd    25

(defun c:ikn (/ olmode pre D1 D2 ent i dsdinh) ;;;In khung nghieng
(vl-load-com)
(command "undo" "be")
(setq olmode (getvar "OSMODE"))
(setvar "OSMODE" 1)
(setq h 2)   ;;;;Chieu cao chu (Ten so hieu ban ve)
(setq pre "< KC, CN KT>: ")
(entmake (list (cons 0 "TEXT") (cons 40 h) (cons 1 pre) (cons 10 '(0 0 0))))
(command "ddedit" (entlast) "")
(setq pre (cdr(assoc 1 (entget(entlast)))))
(entdel (entlast))
(setq dau (getint "\n Danh so bat dau (n):"))
(command "PSPACE")
(setq
  		po  (getpoint "\nChon vi tri dat so hieu ban ve :  ")
D1 (getpoint "\nChon diem thu nhat: ")
D2 (getpoint "\nChon diem thu hai: ")

)
(command "MSPACE")
(setq ent (entsel "\nChon pline "))
(setq i 0)
(setq dsdinh (acet-geom-vertex-list (car ent)))
(setq n (/ (length dsdinh) 2))
(if ent
 (progn
  (repeat n
 	(alignspace (nth i dsdinh)(nth (1+ i) dsdinh) D1 D2)
 	(command "PSPACE")
 	(setq txt (strcat pre (if (< dau 10) (strcat "0" (itoa dau)) (itoa dau)) "/" (if (< n 10) (strcat "0" (rtos n 2 0)) (rtos n 2 0))))
 	(entmake (list (cons 0 "TEXT") (cons 40 h) (cons 1 txt) (cons 10 pO)))
	(setq Elast (entlast))
	(command "_plot" "" "" "" "" "" "" "")
 	(command "erase" Elast "")
	(command "MSPACE")
 	(setq dau (+ dau 1))
	(setq i (+ i 2))
  )
  )
)
(command "plan" "w")
(command "PSPACE")
(setvar "OSMODE" olmode)
(command "undo" "end")
(princ)
)

Bạn vẽ Pline đi qua 2 góc dưới cùng của bản vẽ và khi kích chọn điểm thứ nhất và điểm thứ 2, bạn kích chọn 2 điểm bên dưới của Mview để nó sẽ lấy 2 điểm dưới cùng của bản vẽ vừa khít với cạnh dưới cùng của Mview. Bạn hiểu lisp thì bạn sẽ làm được thôi. Mình tranh thủ gửi cho bạn.

P/s: Bạn nên tìm hiểu phần đánh số hiệu bản vẽ của bác Thaistress...gì gì đó. Lâu rồi ko vào nên quên. Sorry bác ý. Hii

Nó báo lỗi thế này bác ạh:

Chon pline ; error: no function definition: ALIGNSPACE

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
thanhduan2407    227

Bạn dùng Tools Express nhé. Nếu có rồi. Bọn gõ lệnh Al và làm 1 số động tác của lệnh ấy. Sau đó bạn dùng lisp của mình (mình cũng chưa biết nguyên nhân nhưng đã tìm ra cách như vậy). Bạn thử xem

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
thanhduan2407    227

Để thực hành bạn nên thực hành với số lượng ít để xem. Bạn ko cần phải Restart lại máy mà nếu nhỡ nó chạy liên tục bạn sử dụng Ctr+Alt+Delete để cắt bỏ chương trình.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Doan Van Ha    2.676

Bạn dùng Tools Express nhé. Nếu có rồi. Bọn gõ lệnh Al và làm 1 số động tác của lệnh ấy. Sau đó bạn dùng lisp của mình (mình cũng chưa biết nguyên nhân nhưng đã tìm ra cách như vậy). Bạn thử xem

Hàm alignspace nằm trong file "aspace.lsp" thuộc Tool Express. Bình thường nó chưa được load. Muốn đưa hàm này vào lisp cần phải thêm dòng này

vào đầu lisp (load "aspace") để load nó, khi đó hàm alignspace mới có hiệu lực.

Rất nhiều hàm trong Tool Express không thể sử dụng được ngay đâu!

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
dovananh.xd    25

Hàm alignspace nằm trong file "aspace.lsp" thuộc Tool Express. Bình thường nó chưa được load. Muốn đưa hàm này vào lisp cần phải thêm dòng này

vào đầu lisp (load "aspace") để load nó, khi đó hàm alignspace mới có hiệu lực.

Rất nhiều hàm trong Tool Express không thể sử dụng được ngay đâu!

Thanks bác nhé, em làm được rồi.

À này bác Doan Van Ha ơi, nếu mình muốn bỏ stt bản vẽ/ tổng bản vẽ thì sửa thế nào?

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
dovananh.xd    25

Cảm ơn bạn Doan Van Ha. Mình thích nhưng ko có thời gian. Sau này mình vẫn đam mê và đi sâu hơn nữa.

Bác thanh duan ơi!, bỏ 0x/n (n = tổng bản vẽ) thì sửa chỗ nào, để tiện cho việc sau này em chỉnh sửa ạ!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
thanhduan2407    227

Bác thanh duan ơi!, bỏ 0x/n (n = tổng bản vẽ) thì sửa chỗ nào, để tiện cho việc sau này em chỉnh sửa ạ!

 

Mình định trả lời nhưng bạn hỏi bác Doan Van Ha nên ko dám trả lời tranh.

Bạn sửa chỗ này:

(setq txt (strcat pre (if (< dau 10) (strcat "0" (itoa dau)) (itoa dau)) "/" (if (< n 10) (strcat "0" (rtos n 2 0)) (rtos n 2 0))))

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
dovananh.xd    25

Sửa cụ thể thế nào hở bác? em chưa hiểu ngôn ngữ lập trình.

Còn vấn đề này nữa, khi chèn text vào thì nó mặc định là Standard, bây h em muốn nó là font chữ đang hiện hành, ví dụ như: style name là: ".VnAvantH", font là ".VnAvantH" luôn và căn lề của text là "MC"

Và đây nữa: bác thay chỗ dòng này nhé:

 

(command "plan" "w")

(command "PSPACE")

(setvar "OSMODE" olmode)

(command "undo" "end")

bằng dòng lệnh sao cho nó close lại file cad và không lưu.

 

Giúp em với, sắp được rồi. hihi;))

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
thanhduan2407    227

Sửa cụ thể thế nào hở bác? em chưa hiểu ngôn ngữ lập trình.

Còn vấn đề này nữa, khi chèn text vào thì nó mặc định là Standard, bây h em muốn nó là font chữ đang hiện hành, ví dụ như: style name là: ".VnAvantH", font là ".VnAvantH" luôn và căn lề của text là "MC"

Và đây nữa: bác thay chỗ dòng này nhé:

 

(command "plan" "w")

(command "PSPACE")

(setvar "OSMODE" olmode)

(command "undo" "end")

bằng dòng lệnh sao cho nó close lại file cad và không lưu.

 

Giúp em với, sắp được rồi. hihi;))

Mình online điện thoại bạn ạ. Chả có Cad. Hic. Nhờ bác Doan Van Ha hoặc bác Ketxu giúp dùm vậy. 2 Bác giúp bạn này 1 tay nha các bác. Hic

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
dovananh.xd    25

ai trả lời cũng được mà, quan trọng gì đâu ạ.

Bây h em muốn thay đổi dòng: (setq h 2) ;;;;Chieu cao chu (Ten so hieu ban ve) bằng dòng lệnh "\n Chon chieu cao text:" và khi text in ra mặc định là "Middle Centre" bác chỉ luôn em, em sửa, vừa sửa vừa học luôn chắc là sửa ở dòng này: hoặc sau dòng này: (setq txt (strcat pre (if (< dau 10) (strcat "0" (itoa dau)) (itoa dau))))

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Doan Van Ha    2.676

ai trả lời cũng được mà, quan trọng gì đâu ạ.

Bây h em muốn thay đổi dòng: (setq h 2) ;;;;Chieu cao chu (Ten so hieu ban ve) bằng dòng lệnh "\n Chon chieu cao text:" và khi text in ra mặc định là "Middle Centre" bác chỉ luôn em, em sửa, vừa sửa vừa học luôn chắc là sửa ở dòng này: hoặc sau dòng này: (setq txt (strcat pre (if (< dau 10) (strcat "0" (itoa dau)) (itoa dau))))

Bạn gom hết y/c làm 1 lần luôn thể. Đừng cứ 5-10 phút sinh ra 1 y/c thì người giúp bạn rất nản chí đó.

Hãy test thử nhiều lần đi, rồi y/c lại lần chót, thật cụ thể. Bạn Thanhduan, hoặc tôi, hoặc ai đó sẽ giúp bạn nếu có thể.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
dovananh.xd    25

Bạn gom hết y/c làm 1 lần luôn thể. Đừng cứ 5-10 phút sinh ra 1 y/c thì người giúp bạn rất nản chí đó.

Hãy test thử nhiều lần đi, rồi y/c lại lần chót, thật cụ thể. Bạn Thanhduan, hoặc tôi, hoặc ai đó sẽ giúp bạn nếu có thể.

Yêu cầu của em thì em viết bên topic yêu cầu nhưng chưa ai trả lời, tiện thể bác thanhduan viết đây thì em xin luôn ở đây. Nhưng lisp bác thanhduan viết lại (mới post lên) thì cũng tương tự như đầu topic này, và gần đáp ứng được yêu cầu của em ở topic này:http://www.cadviet.com/forum/index.php?showtopic=62655&hl=&fromsearch=1.

Còn trong topic này thì cái lisp mới đây chỉ cần sửa thêm một chút nữa đó là:

1/ Chiều cao text có thể thay đổi (hình như ở dòng: (setq h 2) ;;;;Chieu cao chu (Ten so hieu ban ve)

2/ Text ghi ra trung với style name của style hiện hành (Như lisp trên thì nó chỉ ghi ở style standard)

3/ Text có căn lề là "MC"

4/ Sau khi hoàn thành lệnh, đóng file CAD lại và không lưu.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Doan Van Ha    2.676

Yêu cầu của em thì em viết bên topic yêu cầu nhưng chưa ai trả lời, tiện thể bác thanhduan viết đây thì em xin luôn ở đây. Nhưng lisp bác thanhduan viết lại (mới post lên) thì cũng tương tự như đầu topic này, và gần đáp ứng được yêu cầu của em ở topic này:http://www.cadviet.c...l=&fromsearch=1.

Còn trong topic này thì cái lisp mới đây chỉ cần sửa thêm một chút nữa đó là:

1/ Chiều cao text có thể thay đổi (hình như ở dòng: (setq h 2) ;;;;Chieu cao chu (Ten so hieu ban ve)

2/ Text ghi ra trung với style name của style hiện hành (Như lisp trên thì nó chỉ ghi ở style standard)

3/ Text có căn lề là "MC"

4/ Sau khi hoàn thành lệnh, đóng file CAD lại và không lưu.

Tôi không có máy in, chưa test thử. Gặp sự cố thì báo lại giùm.

(defun c:ikn (/ olmode pre D1 D2 ent1 ent2 pre dau h sty lay col po d1 d2 n i dsdinh) ;;;In khung nghieng
(vl-load-com) (load "aspace") (command "undo" "be") (setq olmode (getvar "OSMODE")) (setvar "OSMODE" 1)
(setq pre (getstring T "\nNhap tien to: "))
(setq dau (getint "\nDanh so bat dau (n): "))
(setq ent1 (car (entsel "\nChon Text mau de lay Style va Justify: ")))		;De lay Style/height/layer/color
(setq h (cdr (assoc 40 (entget ent1))))
(setq sty (cdr (assoc 7 (entget ent1))))
(setq lay (cdr (assoc 8 (entget ent1))))
(setq col (cdr (assoc 62 (entget ent1))))
(command "PSPACE")
(setq po (getpoint "\nChon vi tri dat so hieu ban ve:  ")
      	D1 (getpoint "\nChon diem thu nhat: ")
      	D2 (getpoint "\nChon diem thu hai: "))
(command "MSPACE")
(setq ent2 (entsel "\nChon pline: "))
(setq i 0)
(setq dsdinh (acet-geom-vertex-list (car ent2)))
(setq n (/ (length dsdinh) 2))
(if ent2
 (progn
  (repeat n
(alignspace (nth i dsdinh) (nth (1+ i) dsdinh) D1 D2)
(command "PSPACE")
;Chon 1 trong 2 dong duoi day. Dong khong muon dung thi them dau ; dang truoc.
(setq txt (strcat pre (if (< dau 10) (strcat "0" (itoa dau)) (itoa dau)) "/" (if (< n 10) (strcat "0" (rtos n 2 0)) (rtos n 2 0))))	;VD in ra la <KC, CN KT>: 03/15
;	(setq txt (strcat pre (if (< dau 10) (strcat "0" (itoa dau)) (itoa dau))))					;VD in ra la <KC, CN KT>: 03
(MakeText po txt h 0 "MC" sty lay col)
(setq Elast (entlast))
(command "_plot" "" "" "" "" "" "" "")
(command "erase" Elast "")
(command "MSPACE")
(setq dau (+ dau 1))
(setq i (+ i 2)))))
(command "plan" "w")
(command "PSPACE")
(setvar "OSMODE" olmode) (command "undo" "end") (princ))
;----- by Thaistressz. Thanks!
(defun MakeText (point string Height Ang justify Style Layer Color / Lst)
(setq Lst (list '(0 . "TEXT")
  (cons 8 (if Layer Layer (getvar "Clayer")))
  (cons 62 (if Color Color 256))
  (cons 10 point)
  (cons 40 Height)
  (cons 1 string)
  (if Ang (cons 50 Ang))
  (cons 7 (if Style Style (getvar "Textstyle"))))
 justify (strcase justify))
(cond ((= justify "C") (setq Lst (append Lst (list (cons 72 1) (cons 11 point)))))
       	((= justify "R") (setq Lst (append Lst (list (cons 72 2) (cons 11 point)))))
       	((= justify "M") (setq Lst (append Lst (list (cons 72 4) (cons 11 point)))))
       	((= justify "TL") (setq Lst (append Lst (list (cons 72 0) (cons 11 point) (cons 73 3)))))
       	((= justify "TC") (setq Lst (append Lst (list (cons 72 1) (cons 11 point) (cons 73 3)))))
       	((= justify "TR") (setq Lst (append Lst (list (cons 72 2) (cons 11 point) (cons 73 3)))))   
       	((= justify "ML") (setq Lst (append Lst (list (cons 72 0) (cons 11 point) (cons 73 2)))))
       	((= justify "MC") (setq Lst (append Lst (list (cons 72 1) (cons 11 point) (cons 73 2)))))
       	((= justify "MR") (setq Lst (append Lst (list (cons 72 2) (cons 11 point) (cons 73 2)))))
       	((= justify "BL") (setq Lst (append Lst (list (cons 72 0) (cons 11 point) (cons 73 1)))))
       	((= justify "BC") (setq Lst (append Lst (list (cons 72 1) (cons 11 point) (cons 73 1)))))
       	((= justify "BR") (setq Lst (append Lst (list (cons 72 2) (cons 11 point) (cons 73 1))))))
(entmake Lst))

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
thanhduan2407    227

Tôi không có máy in, chưa test thử. Gặp sự cố thì báo lại giùm.

(defun c:ikn (/ olmode pre D1 D2 ent1 ent2 pre dau h sty lay col po d1 d2 n i dsdinh) ;;;In khung nghieng
(vl-load-com) (load "aspace") (command "undo" "be") (setq olmode (getvar "OSMODE")) (setvar "OSMODE" 1)
(setq pre (getstring T "\nNhap tien to: "))
(setq dau (getint "\nDanh so bat dau (n): "))
(setq ent1 (car (entsel "\nChon Text mau de lay Style va Justify: ")))		;De lay Style+Justify...
(setq h (cdr (assoc 40 (entget ent1))))
(setq sty (cdr (assoc 7 (entget ent1))))
(setq lay (cdr (assoc 8 (entget ent1))))
(setq col (cdr (assoc 62 (entget ent1))))
(command "PSPACE")
(setq po (getpoint "\nChon vi tri dat so hieu ban ve:  ")
  		D1 (getpoint "\nChon diem thu nhat: ")
  		D2 (getpoint "\nChon diem thu hai: "))
(command "MSPACE")
(setq ent2 (entsel "\nChon pline: "))
(setq i 0)
(setq dsdinh (acet-geom-vertex-list (car ent2)))
(setq n (/ (length dsdinh) 2))
(if ent2
 (progn
  (repeat n
(alignspace (nth i dsdinh) (nth (1+ i) dsdinh) D1 D2)
(command "PSPACE")
;Chon 1 trong 2 dong duoi day. Dong khong muon dung thi them dau ; dang truoc.
(setq txt (strcat pre (if (< dau 10) (strcat "0" (itoa dau)) (itoa dau)) "/" (if (< n 10) (strcat "0" (rtos n 2 0)) (rtos n 2 0))))	;VD in ra la <KC, CN KT>: 03/15
;	(setq txt (strcat pre (if (< dau 10) (strcat "0" (itoa dau)) (itoa dau))))					;VD in ra la <KC, CN KT>: 03
(MakeText po txt h 0 "MC" sty lay col)
(setq Elast (entlast))
(command "_plot" "" "" "" "" "" "" "")
(command "erase" Elast "")
(command "MSPACE")
(setq dau (+ dau 1))
(setq i (+ i 2)))))
(command "plan" "w")
(command "PSPACE")
(setvar "OSMODE" olmode) (command "undo" "end") (princ))
;-----
(defun MakeText (point string Height Ang justify Style Layer Color / Lst)
(setq Lst (list '(0 . "TEXT")
  (cons 8 (if Layer Layer (getvar "Clayer")))
  (cons 62 (if Color Color 256))
  (cons 10 point)
  (cons 40 Height)
  (cons 1 string)
  (if Ang (cons 50 Ang))
  (cons 7 (if Style Style (getvar "Textstyle"))))
			justify (strcase justify))
(cond ((= justify "C") (setq Lst (append Lst (list (cons 72 1) (cons 11 point)))))
			((= justify "R") (setq Lst (append Lst (list (cons 72 2) (cons 11 point)))))
			((= justify "M") (setq Lst (append Lst (list (cons 72 4) (cons 11 point)))))
			((= justify "TL") (setq Lst (append Lst (list (cons 72 0) (cons 11 point) (cons 73 3)))))
			((= justify "TC") (setq Lst (append Lst (list (cons 72 1) (cons 11 point) (cons 73 3)))))
			((= justify "TR") (setq Lst (append Lst (list (cons 72 2) (cons 11 point) (cons 73 3)))))  
			((= justify "ML") (setq Lst (append Lst (list (cons 72 0) (cons 11 point) (cons 73 2)))))
			((= justify "MC") (setq Lst (append Lst (list (cons 72 1) (cons 11 point) (cons 73 2)))))
			((= justify "MR") (setq Lst (append Lst (list (cons 72 2) (cons 11 point) (cons 73 2)))))
			((= justify "BL") (setq Lst (append Lst (list (cons 72 0) (cons 11 point) (cons 73 1)))))
			((= justify "BC") (setq Lst (append Lst (list (cons 72 1) (cons 11 point) (cons 73 1)))))
			((= justify "BR") (setq Lst (append Lst (list (cons 72 2) (cons 11 point) (cons 73 1))))))
(entmake Lst));end

Bác Doan Van Ha nhiệt tình thật. Bạn dovananh.xd mời bia bác ấy đi. Hii

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay


×