Chuyển đến nội dung
Diễn đàn CADViet
Nguyen Hoanh

Viết lisp theo yêu cầu [phần 2]

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

còn nữa là nếu có cái lip chỉ hiện tất cả những text mà mình đánh mấy ký tự đầu lÀ dc ấy bác giống như kiểu lẹnh find ấy bác thì bác cho em với .

Yêu cầu đến đâu ta làm đến đấy :lol:

(defun C:1()(acet-ss-visible (acet-ss-remove (ssget "X" (list (cons 0 "*TEXT") (cons 1 (strcat (getstring "\nPrefix :") "*")))) (ssget "X" '((0 . "*TEXT")))) 1))

  • Vote tăng 2

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

thank bác nó rất đúng ý em nhưng có một vấn đè rằng khi mình kích thủ công theo thứ tự các tên cọc thì nó rất chuẩn nhưng khi mình quét từ phải sang trái và từ dưới lên thì nó không nhận đúng cọc bác à.

ko biết nói gì hơn chỉ biết cảm ơn bác đã giúp đỡ em nhiều.

 

mình nghĩ là trong nova hẳn có cách để làm việc đó chứ đâu cần dùng lisp nhỉ?

 

Nếu bạn chèn cọc bằng lệnh trong nova, sau đó đổi tên cọc rồi update đầu trắc dọc và trắc ngang, hình như là đổi được tất cả tên cọc thì phải.cũng ko chắc chắn lắm, 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

mình nghĩ là trong nova hẳn có cách để làm việc đó chứ đâu cần dùng lisp nhỉ?

 

Nếu bạn chèn cọc bằng lệnh trong nova, sau đó đổi tên cọc rồi update đầu trắc dọc và trắc ngang, hình như là đổi được tất cả tên cọc thì phải.cũng ko chắc chắn lắm, hì. ^^

thế bác có cách nào làm trong nova ko chỉ cho em với .

em thường làm thủ công .

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

hihi dúng bác nhỉ thế thì thầy trò đường tăng mình lại ngồi chờ có phương án mới hay hơn hả bác .

cảm ơn bác nhiều .

quên mất còn vụ này nữa bác à .

chẳng hạn như hàng loạt text dạng A và hàng loạt text dạng B đều dc viết bằng 1 layẻr có cách nào để tắt text dữ lại text B ko bác .

có thể nhúng líp vào dc ko bác .

chẳng han như thế nhày nhé em có các text tên cọc từ cọc 1 đến cọc n

bên dưới dòng text cọc là text lý trình Km 00+00 đến Km xx+xx em muốn tắt 1 trong 2 cái để sử dụng nhưng ko dc vì nó có cái éo le là dùng chung 1 layer

còn nữa là nếu có cái lip chỉ hiện tất cả những text mà mình đánh mấy ký tự đầu lÀ dc ấy bác giống như kiểu lẹnh find ấy bác thì bác cho em với .

vì crânỳ rất tiện cho việc thiết kế nó giúp rất nhiều .

tiết kiệm thời gian không phải thủ công .

Hề hề hề,

Cái vụ này bạn trình bày chưa rõ ý nên bác Ketxu đã làm cho bạn cái lisp mà nó xử cái đuôi. Chắc bạn dùng sẽ không thoải mái lắm vì nó ẩn khiếp quá.....

Mình làm thử cái này xem bạn có ưng không nhé:

(defun c:antxt (/ m la t1 )
(vl-load-com)
(command "undo" "be")
(setq m (car (entsel "\n Chon  text mau"))
       la (cdr (assoc 8 (entget m)))
       t1 (substr (cdr (assoc 1 (entget m))) 1 3)
)
(acet-ss-visible (acet-ss-remove (ssget "X" (list (cons 1 (strcat t1 "*")))) (ssget "X" (list (cons 0  "*TEXT") (cons 8 la)))) 1)
(command "undo" "e")
(princ)
)

Hề hề hề, ráng dùng thử và cho ý kiến nghen.

Bạn chú ý cách xài cái lisp này nhé: gõ lệnh, chọn vào cái text mà bạn muốn giữ lại (lưu ý là lisp sẽ chỉ giữ lại các text trên cùng layer của text này và có tối thiểu 3 ký tự đầu tiên trùng với 3 ký tự đầu của text mẫu này, và chỉ xóa các text khác trên cùng layer với text mẫu)

 

@Ketxu: Bác có thể xóa cái (cons 0 "*TEXT") trong (ssget "X" (list (cons 0 "*TEXT") (cons 1 (strcat (getstring "\nPrefix") "*")))) đi được không bác 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

Yêu cầu đến đâu ta làm đến đấy :lol:

(defun C:1()(acet-ss-visible (acet-ss-remove (ssget "X" (list (cons 0 "*TEXT") (cons 1 (strcat (getstring "\nPrefix :") "*")))) (ssget "X" '((0 . "*TEXT")))) 1))

thank bác để em thử cá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

Yêu cầu đến đâu ta làm đến đấy :lol:

(defun C:1()(acet-ss-visible (acet-ss-remove (ssget "X" (list (cons 0 "*TEXT") (cons 1 (strcat (getstring "\nPrefix :") "*")))) (ssget "X" '((0 . "*TEXT")))) 1))

hic hic . đến giờ ăn vạ rồi đây.

bắt đền bác đấy công sức em làm bấy lâu nay nó đi họp theo các cụ rồi.

chạy lip của bác xong tất cả các text nó mất hết . đánh lệnh layon nó cũng ko hiện ra .

thế là nó theo các cụ toàn bộ rồi bác ơi.

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

hic hic . đến giờ ăn vạ rồi đây.

bắt đền bác đấy công sức em làm bấy lâu nay nó đi họp theo các cụ rồi.

chạy lip của bác xong tất cả các text nó mất hết . đánh lệnh layon nó cũng ko hiện ra .

thế là nó theo các cụ toàn bộ rồi bác ơi.

hề hề hề,

Biết ngay mà. Undo đi, làm vài chục phát undo đi nhé.

Dùng thử cái lisp của mình coi.

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

Hề hề hề,

Cái vụ này bạn trình bày chưa rõ ý nên bác Ketxu đã làm cho bạn cái lisp mà nó xử cái đuôi. Chắc bạn dùng sẽ không thoải mái lắm vì nó ẩn khiếp quá.....

@Ketxu: Bác có thể xóa cái (cons 0 "*TEXT") trong (ssget "X" (list (cons 0 "*TEXT") (cons 1 (strcat (getstring "\nPrefix") "*")))) đi được không bác nhể

E nghĩ là bỏ đi cũng được, nhưng rào càng kỹ filter list thì ssget "X" càng nhanh, lại không bị vướng bác fakedim :)

 

hic hic . đến giờ ăn vạ rồi đây.

bắt đền bác đấy công sức em làm bấy lâu nay nó đi họp theo các cụ rồi.

chạy lip của bác xong tất cả các text nó mất hết . đánh lệnh layon nó cũng ko hiện ra .

thế là nó theo các cụ toàn bộ rồi bác ơi.

 

- Đấy là 1 phản biện cho việc dùng lisp mà không biết tác dụng của nó, cũng như cần biết rõ mình cần gì. Vì bạn chỉ xin cái lisp hiện các chữ có phần mở đầu giống phần bạn đánh (đồng nghĩa với việc ẩn các chữ kia đi), chứ chẳng thèm nghĩ lúc hiện lại thì làm sao. Chính vì vậy mình mới nói "Yêu cầu đến đâu làm đến đó" :)

Còn cái vụ nhỡ tay xài rồi thì :

Thứ nhất : bạn hoàn toàn có thể Ctrl Z để undo lại

Thứ hai : Cái này ẩn đối tượng theo thuộc tính visible của nó, trên diễn đàn có 1 đống lisp ẩn/hiện/invert đối tượng bằng thằng này. Hình như ở trang 183,184 gì gì đó của topic cũng có bài về nó đấy, bạn lấy về xài chơi và rút kinh nghiệm ^^

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

hề hề hề,

Biết ngay mà. Undo đi, làm vài chục phát undo đi nhé.

Dùng thử cái lisp của mình coi.

cái của bác dùng hơi bị ok luôn .

nhưng em lại vướng cái là có 1 số line em dùng chung layer với text thành ra khi em dùng cái lệnh layiso thì nó hiện text và line lên dùng lip của bác thì nó vẫn dữ nguyên line . thế bây giờ làm sao để thiến cái thằng line đi hả bác .

chả là thế này : bác tặng em cái lip thay tên cọc đó . thì khi em cho nó ẩn tất cả bằng layiso thì nó hiện lên tên cọc và lý trình kèm theo cái đầu cờ của trắc ngang . thế nên em quét 1 phát để thay tên cọc hàng loạt thì lại vướng 2 thằng ẩm ương đó là lý trình và đầu cờ .nên em mới nảy sinh ra ý tưởng chỉ cho hiện mỗi tên cọc thôi . khổ nỗi khi có lip hiện mỗi tên cọc thì thằng đầu cờ nó cứ ngỏng lên làm cái lip hiện nên cọc mất tác dụng . vì không quét dc mình nó .

mà nếu mất đi cái line và cái lý trình thì vẫn phải tick thủ công vào tên cọc bác nhỉ .

vì cái lip thay tên cọc nó không đúng khi quét hàng loạt .

nếu như em đảm bảo dc đầy đủ các yếu tố trắc ngang thì bác có thể cải tiến cái thằng thay tên cọc hàng loạt và cái ẩn teext ko hiện line dc ko bác .

thank bác đã quan tâm em mấy hôm nay .

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

hề hề hề,

Biết ngay mà. Undo đi, làm vài chục phát undo đi nhé.

Dùng thử cái lisp của mình coi.

Èo, làm gì đến bác, trong thao tác 1 hàm này thì chỉ 1 lần Undo thui ^^

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

E nghĩ là bỏ đi cũng được, nhưng rào càng kỹ filter list thì ssget "X" càng nhanh, lại không bị vướng bác fakedim :)

 

 

 

- Đấy là 1 phản biện cho việc dùng lisp mà không biết tác dụng của nó, cũng như cần biết rõ mình cần gì. Vì bạn chỉ xin cái lisp hiện các chữ có phần mở đầu giống phần bạn đánh (đồng nghĩa với việc ẩn các chữ kia đi), chứ chẳng thèm nghĩ lúc hiện lại thì làm sao. Chính vì vậy mình mới nói "Yêu cầu đến đâu làm đến đó" :)

Còn cái vụ nhỡ tay xài rồi thì :

Thứ nhất : bạn hoàn toàn có thể Ctrl Z để undo lại

Thứ hai : Cái này ẩn đối tượng theo thuộc tính visible của nó, trên diễn đàn có 1 đống lisp ẩn/hiện/invert đối tượng bằng thằng này. Hình như ở trang 183,184 gì gì đó của topic cũng có bài về nó đấy, bạn lấy về xài chơi và rút kinh nghiệm ^^

dù thế nào đi nữa cũng phải cảm ơn bác đã quan tâm .

sao em bấm nút thank ko dc nhỉ.

hay là mấy hôm nay thank bác bình nhiều quá nó ko cho ấn nữa 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

cái của bác dùng hơi bị ok luôn .

nhưng em lại vướng cái là có 1 số line em dùng chung layer với text thành ra khi em dùng cái lệnh layiso thì nó hiện text và line lên dùng lip của bác thì nó vẫn dữ nguyên line . thế bây giờ làm sao để thiến cái thằng line đi hả bác .

chả là thế này : bác tặng em cái lip thay tên cọc đó . thì khi em cho nó ẩn tất cả bằng layiso thì nó hiện lên tên cọc và lý trình kèm theo cái đầu cờ của trắc ngang . thế nên em quét 1 phát để thay tên cọc hàng loạt thì lại vướng 2 thằng ẩm ương đó là lý trình và đầu cờ .nên em mới nảy sinh ra ý tưởng chỉ cho hiện mỗi tên cọc thôi . khổ nỗi khi có lip hiện mỗi tên cọc thì thằng đầu cờ nó cứ ngỏng lên làm cái lip hiện nên cọc mất tác dụng . vì không quét dc mình nó .

mà nếu mất đi cái line và cái lý trình thì vẫn phải tick thủ công vào tên cọc bác nhỉ .

vì cái lip thay tên cọc nó không đúng khi quét hàng loạt .

nếu như em đảm bảo dc đầy đủ các yếu tố trắc ngang thì bác có thể cải tiến cái thằng thay tên cọc hàng loạt và cái ẩn teext ko hiện line dc ko bác .

thank bác đã quan tâm em mấy hôm nay .

Hề hề hề,

Dùng cái ni nó sẽ ẩn tiệt những thằng cùng layer mà không phải text hoặc là text mà không có 3 ký tự đầu giống text mẫu:

(defun c:antxt (/ m la t1 )
(vl-load-com)
(command "undo" "be")
(setq m (car (entsel "\n Chon  text mau"))
       la (cdr (assoc 8 (entget m)))
       t1 (substr (cdr (assoc 1 (entget m))) 1 3)
)
(acet-ss-visible (acet-ss-remove (ssget "X" (list (cons 0 "*TEXT") (cons 1 (strcat t1 "*")))) (ssget "X" (list  (cons 8 la)))) 1)
(command "undo" "e")
(princ)
)

Hề hề hề,

Nếu bạn chịu khó quy hoạch cái bản vẽ cho nó có trật tự thì có thể chơi thay text hàng loạt được, tuy cũng không hẳn là dễ.

Hề hề hề,...

  • Vote tăng 2

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

Hề hề hề,

Dùng cái ni nó sẽ ẩn tiệt những thằng cùng layer mà không phải text hoặc là text mà không có 3 ký tự đầu giống text mẫu:

(defun c:antxt (/ m la t1 )
(vl-load-com)
(command "undo" "be")
(setq m (car (entsel "\n Chon  text mau"))
       la (cdr (assoc 8 (entget m)))
       t1 (substr (cdr (assoc 1 (entget m))) 1 3)
)
(acet-ss-visible (acet-ss-remove (ssget "X" (list (cons 0 "*TEXT") (cons 1 (strcat t1 "*")))) (ssget "X" (list  (cons 8 la)))) 1)
(command "undo" "e")
(princ)
)

Hề hề hề,

Nếu bạn chịu khó quy hoạch cái bản vẽ cho nó có trật tự thì có thể chơi thay text hàng loạt được, tuy cũng không hẳn là dễ.

Hề hề hề,...

mần chi quy hoạch được hả bác .

em cũng muốn quy hoạch lắm nhưng khổ nỗi cái đó là do thằng nova chứ đâu phải do em đâu.

em chắp tay xin nó tìm đủ cách mà ko dc bác à.bó tay .thank bác

để em thử cái coi.

em thử rồi ẩn thì ẩn ngon lành .

thế sau khi ẩn xong, chỉnh sửa hết rồi thì cho nó hiện trở lại thì phải làm sao bác nhỉ .

em có ý kiến như thế này bác xem có hợp lý không nhé.

nếu như em đủ diều kiện về yếu tố trắc ngang thì bác có thể sửa cái thay thên cọc bằng cách quét 1 phát nó tự động thay đổi the thứ tự ko bác . ko cần phải thủ công kích từ cái .

khi sửa dc cái thay tên cọc thì bác kết hợp cái antxt này vào chung 1 cái .

bác thấy thế nào .

cái ẩn này còn thiếu phần hiện sau khi ẩn bác à .

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

mần chi quy hoạch được hả bác .

em cũng muốn quy hoạch lắm nhưng khổ nỗi cái đó là do thằng nova chứ đâu phải do em đâu.

em chắp tay xin nó tìm đủ cách mà ko dc bác à.bó tay .thank bác

để em thử cái coi.

em thử rồi ẩn thì ẩn ngon lành .

thế sau khi ẩn xong, chỉnh sửa hết rồi thì cho nó hiện trở lại thì phải làm sao bác nhỉ .

em có ý kiến như thế này bác xem có hợp lý không nhé.

nếu như em đủ diều kiện về yếu tố trắc ngang thì bác có thể sửa cái thay thên cọc bằng cách quét 1 phát nó tự động thay đổi the thứ tự ko bác . ko cần phải thủ công kích từ cái .

khi sửa dc cái thay tên cọc thì bác kết hợp cái antxt này vào chung 1 cái .

bác thấy thế nào .

cái ẩn này còn thiếu phần hiện sau khi ẩn bác à .

Hề hề hề,

Muốn nó hiện lại thì dùng:

(acet-ss-visible (acet-ss-remove (ssget "X" (list (cons 0 "*TEXT") (cons 1 (strcat t1 "*")))) (ssget "X" (list (cons 8 la)))) 0)

Với điều kiện nó được thay đúng vào dòng code :

(acet-ss-visible (acet-ss-remove (ssget "X" (list (cons 0 "*TEXT") (cons 1 (strcat t1 "*")))) (ssget "X" (list (cons 8 la)))) 1)

của cái lisp ẩn đối tượng . Nhớ đổi tên lisp và tên lệnh để khỏi nhầm lẫn nghen (tỷ như tên lisp là hidtcola.lsp, tên lệnh là hitxt chẳng hạn)

Hề hề hề,

 

Việc quy hoạch lại bản vẽ của bạn là do bạn chứ có dính chi tới thằng Nova hay Noviec đâu. Tỷ như sau khi chạy Nova xong bạn sẽ có hàng loạt các trắc ngang, bạn chỉ cần sắp xếp các trắc ngang này theo đúng một trật tự nào đó, từ trên xuống dưới hay từ trái sang phải chẳng hạn, đúng với cái thứ thự sắp xếp của các vị trí cọc trên trắc dọc là OK mà.

Với các vị trí cọc mà bạn không có trắc ngang thì xóa béng cái tên của cọc đó khỏi trắc dọc hoặc ẩn nó đi.

Như vậy mình nghĩ là không quá khó với bạn và mình mới có thể giúp bạn làm cái lisp đổi tên cọc mà khỏi phải chọn thủ công được.

Hề hề hề,

 

Việc kết hợp các lisp thì nào có khó chi. Bạn chỉ cần copy các lisp đó vào cùng một file *.lsp nào đó mà bạn khoái là Ok. Có điều bạn phải nhớ tên các lệnh, kẻo mà nó nhầm lẫn lung tung là mệt đấy. Để riêng vậy mà hay, cần dùng thằng nào thì load thằng đó và chỉ cần mở nó ra là biết tên lệnh ngay, khỏi phải kiếm tìm nhọc công.

Hề hề hề,..

  • 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

Xin chào các anh cadviet. Em đang gặp 1 vướng mắc thế này mong các anh giúp đỡ em. File cad của em đang sử dụng Font VNI hết nhưng công ty lại sử dụng font Unicode không nên em phải bắt buộc chuyển qua font Unicode.Khi chuyển qua thì chữ ra tùm lum hết, vả lại cái symbol phi trong vni em nhấn \U+00DE còn gõ bên unicode là %%C bi loi symbol.Anh nào có lisp chuyển mã font nhanh mà không bị lỗi không.Xin cho em với. Xin cám ơn các anh!

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

thế bác có cách nào làm trong nova ko chỉ cho em với .

em thường làm thủ công .

 

Một vài lệnh trong nova không biết bạn đã xài bao giờ chưa. Nếu bạn chưa xài thì mấy lệnh này có thể giúp bạn được trong công việc sửa tên cọc

 

1. Đầu tiên khi bạn chèn thêm cọc thì có 2 cách chèn cọc: chèn cọc trên Tuyến (đường mặt bằng) và chèn cọc trên Trắc dọc bằng lệnh CC

2. Sử dụng lệnh Sửa tên cọc STC để chỉ vào cọc cần sửa tên (là cái cọc mà bạn chèn thêm vào ấy) trên Tuyến

3. Sử dụng lệnh EDTD (hoặc lệnh tbb trong Nova 3.) để update lại tên cọc trên trắc dọc và EDTN để update lại tên cọc trên trắc ngang.

 

Nova đã lường trước trong thiết kế có bước chèn thêm cọc nên có tính năng này rồi. Nếu bạn không chèn cọc 1 cách thủ công thì hoàn toàn có thể thay đổi mọi thứ bằng lệnh Nova, hạn chế file Nova bị "chết"

 

hì. nếu như những điều mình vừa nói chưa đúng ý bạn thì đành sử dụng lisp vậy. ^^

  • 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

Bác nào giúp em giãn chữ theo hàng dọc này với. em dùng nova các điền cao độ thiết kế dày quá bác nào giúp e với

http://www.cadviet.com/upfiles/3/dan_chu_theo_hang_ngan.dwg

Hề hề hề,

Bạn muốn nó gĩan ra sao???

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

Nhân tiện cho em hỏi là biến nào lưu giữ đơn vị hiện hành của CAD ạ ?

Hề hề hề,

Bạn coi thử cái này xem có phải cái bạn cần không nhé:

 

INSUNITS System Variable

Concepts Procedures Reference

 

Type: Integer

Saved in: Drawing

Initial value: 1

Specifies a drawing-units value for automatic scaling of blocks or images dragged from DesignCenter™ and inserted into a drawing.

0 Unspecified (No units)

1 Inches

2 Feet

3 Miles

4 Millimeters

5 Centimeters

6 Meters

7 Kilometers

8 Microinches

9 Mils

10 Yards

11 Angstroms

12 Nanometers

13 Microns

14 Decimeters

15 Decameters

16 Hectometers

17 Gigameters

18 Astronomical Units

19 Light Years

20 Parsecs

 

Nó lấy từ Help của CAD đó bạn ạ.

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

Xin lisp liên quan đến chương trình thống kê thép.

xin chào các ae cadviet, funnyzui muốn xin các bạn viết cho 1 cái lisp có thể quét chọn 1 lần nhiều đối tượng (là block_thuộc tính) để update lại các giá trị thuộc tính của nó, thay vì như hiện giờ mình phải pick từng đối tượng 1 để update lại các cây thép có sự thay đổi về chiều dài, số lượng cấu kiện,...

 

 

 

File cad bên dưới, có ghi rõ nội dung và hình ảnh minh họa:

 

thongkethep.dwg

 

File lisp của chương trình thống kê mà funnzyzui đang sử dụng:

http://www.cadviet.com/upfiles/3/chinh.rar

thongke_3.lsp

 

Bài viết về lệnh TTB.vlx và lệnh SCK.vlx có liên quan:

http://www.cadviet.com/forum/index.php?showtopic=13203&view=findpost&p=99749

http://www.cadviet.com/forum/index.php?showtopic=5497&view=findpost&p=67668

 

Mong các ae trên diễn đàn bớt chút thời gian để nghiên cứu giúp. Nếu có thể nhanh chóng như lisp SCK.vlx của TUE_NV thì quá tốt.

Xin cám ơn các ae!

Hề hề hề,

Mấy cái vlx bác gửi thì bó tay rồi. Riêng về cái lisp thongke_3 mà bác gửi thì mình đã cố đọc, xong test thí không được do thiếu cái file THONGKE.DCL bác ạ.

Cái lisp này khá dài và không dễ để đọc. Tuy nhiên theo thiển ý của mình, nếu bác cung cấp đầy đủ các file có liên quan thì có thể sẽ giải quyết được vấn đề bạn đặt ra.

Hề hề hề, chúc bạn vui.....

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

Một vài lệnh trong nova không biết bạn đã xài bao giờ chưa. Nếu bạn chưa xài thì mấy lệnh này có thể giúp bạn được trong công việc sửa tên cọc

 

1. Đầu tiên khi bạn chèn thêm cọc thì có 2 cách chèn cọc: chèn cọc trên Tuyến (đường mặt bằng) và chèn cọc trên Trắc dọc bằng lệnh CC

2. Sử dụng lệnh Sửa tên cọc STC để chỉ vào cọc cần sửa tên (là cái cọc mà bạn chèn thêm vào ấy) trên Tuyến

3. Sử dụng lệnh EDTD (hoặc lệnh tbb trong Nova 3.) để update lại tên cọc trên trắc dọc và EDTN để update lại tên cọc trên trắc ngang.

 

Nova đã lường trước trong thiết kế có bước chèn thêm cọc nên có tính năng này rồi. Nếu bạn không chèn cọc 1 cách thủ công thì hoàn toàn có thể thay đổi mọi thứ bằng lệnh Nova, hạn chế file Nova bị "chết"

 

hì. nếu như những điều mình vừa nói chưa đúng ý bạn thì đành sử dụng lisp vậy. ^^

thank bác nhiều ơi là nhiều .

có lẽ bác là người trong ngành .

bác có thể cho em xin cái nick yahoo để em có thể trao đổi và học hỏi bác thêm dc ko bác .

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

thank bác nhiều ơi là nhiều .

có lẽ bác là người trong ngành .

bác có thể cho em xin cái nick yahoo để em có thể trao đổi và học hỏi bác thêm dc ko bác .

okê thôi, dù mình cũng gà. ^^

nick YM: nddung_egr;

có gì thì pm 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

Hề hề hề,

Muốn nó hiện lại thì dùng:

(acet-ss-visible (acet-ss-remove (ssget "X" (list (cons 0 "*TEXT") (cons 1 (strcat t1 "*")))) (ssget "X" (list (cons 8 la)))) 0)

Với điều kiện nó được thay đúng vào dòng code :

(acet-ss-visible (acet-ss-remove (ssget "X" (list (cons 0 "*TEXT") (cons 1 (strcat t1 "*")))) (ssget "X" (list (cons 8 la)))) 1)

của cái lisp ẩn đối tượng . Nhớ đổi tên lisp và tên lệnh để khỏi nhầm lẫn nghen (tỷ như tên lisp là hidtcola.lsp, tên lệnh là hitxt chẳng hạn)

Hề hề hề,

 

Việc quy hoạch lại bản vẽ của bạn là do bạn chứ có dính chi tới thằng Nova hay Noviec đâu. Tỷ như sau khi chạy Nova xong bạn sẽ có hàng loạt các trắc ngang, bạn chỉ cần sắp xếp các trắc ngang này theo đúng một trật tự nào đó, từ trên xuống dưới hay từ trái sang phải chẳng hạn, đúng với cái thứ thự sắp xếp của các vị trí cọc trên trắc dọc là OK mà.

Với các vị trí cọc mà bạn không có trắc ngang thì xóa béng cái tên của cọc đó khỏi trắc dọc hoặc ẩn nó đi.

Như vậy mình nghĩ là không quá khó với bạn và mình mới có thể giúp bạn làm cái lisp đổi tên cọc mà khỏi phải chọn thủ công được.

Hề hề hề,

 

Việc kết hợp các lisp thì nào có khó chi. Bạn chỉ cần copy các lisp đó vào cùng một file *.lsp nào đó mà bạn khoái là Ok. Có điều bạn phải nhớ tên các lệnh, kẻo mà nó nhầm lẫn lung tung là mệt đấy. Để riêng vậy mà hay, cần dùng thằng nào thì load thằng đó và chỉ cần mở nó ra là biết tên lệnh ngay, khỏi phải kiếm tìm nhọc công.

Hề hề hề,..

em cho nó nằm theo 1 hàng dọc .

các trắc ngang chỉ nằm trên một hàng dọc thôi .

bác giúp em cái để em ko phải kich thủ công bác à .

tên các cọc nằm trên trắc dọc thì nó nằm ngang .

còn các tên cọc nằm trên trắc ngang thì nó nằm dọc .

để em gửi cái bản vẽ lên là bác biết ngay ấy mà.

bác giúp hộ em cái .

em vừa đi du lịch với công ty mà đến khách sạn là em nhảy vào xem bài bác đã trả lời chưa .

đồng nghiệp nó bảo hâm đi du lịch mà vẫn nghĩ đến công việc.

thôi thì hâm cũng dc .

có chân thành mới dc giúp đỡ mà bác .

thank bác nhiều.

bác viết hộ em cái líp nhé .

bản vẽ em nó đây .

http://www.cadviet.com/upfiles/3/bdtdtnkl_km5km8in__copy.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

em có 1 đoạn lisp

(defun c:bg (/)

(setvar "cmdecho" 1)

(setvar "cmdecho" 0)

(command "undo" "be")

(setq osmode (getvar "osmode"))

(setvar "edgemode" 0)

 

(setvar "osmode" 32)

(setq ss (entsel))

(setq diem (cadr ss))

(setq pt (getPoint "\nChon diem be gay:"))

(command "break" ss "f" pt pt)

 

(setvar "osmode" osmode)

(command "undo" "e")

)

các anh giúp em sửa nó để nó có thể chia đuợc nhiều đuờng giao với 1 đường khác. mình chỉ cần cọn 1 đường làm giao cắt và các đường khác khi cát nó đều bị chia ra tại điểm giao. các anh giúp em nhanh nhé :)

  • Vote giảm 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
Khách
Chủ đề này bây giờ đã bị đóng lại để trả lời thêm.

×