avi612
-
Số lượng nội dung
118 -
Đã tham gia
-
Lần ghé thăm cuối
Bài đăng được đăng bởi avi612
-
-
Ví dụ:
Bạn dùng lệnh Move để move 100 đối tượng đến 1 vị trí khác.
Tiếp theo, bạn lại đổi vị trí của 100 đối tượng đó đến 1 vị trí khác.
Bạn gõ lệnh Move-->Enter, chọn phím P là nó chọn lại cho bạn 100 đối tượng ban đầu.
- 1
-
Sau khi thao tác với 1 số đối tượng nào đó thì khi thực hiện lệnh tiếp theo đến bước chọn đối tượng bạn dùng phím "P" để chọn lại nó.
-
Chào tất cả các anh các anh chị trong diễn đàn .
Em có tham gia diễn đàn thời gian khá dài nhưng chỉ vào học hỏi mọi người . Nay xin anh chị chỉ dùm em hay viết dùm em lisp thay thế text hàng loạt như trong fire em gửi kèm ạ. Dạ quy luật thay thế của em là Text ở cột A thay cho text ở B. em có minh họa trong bản vẽ đính kèm
Em cảm ơn anh chị nhiều.
Cái này giải quyết được 60% ý đồ của bạn, còn thao tác chỉ 1 lần quyếtt chuột thì chắc nhờ người khác giúp giùm.
(defun c:tnn(/ os #sset #ssname #str #sset1 #ssname1) (setvar "CMDECHO" 0) (command ".undo" "BE") (command ".UCS" "W" ^C^C) (Prompt "\n- Ch\U+1ECDn Text góc:") (setq #sset (ssget ":s" '((0 . "*TEXT,DIMENSION")))) (setq #ssname (ssname #sset 0)) (setq #str (cdr (assoc 1 (entget #ssname)))) (Prompt "\n- Ch\U+1ECDn Text \U+0111ích:") (setq #sset1 (ssget ":s" '((0 . "*TEXT,DIMENSION")))) (setq #ssname1 (ssname #sset1 0)) (entmod (subst (cons 1 #str) (assoc 1 (entget #ssname1)) (entget #ssname1))) (command ".undo" "E") (princ) (princ) )
- 2
-
Chà! cũng khó đây...Tại mình chưa thạo lắm về thể loại "lisp vla..." này nên vận dụng cũng chưa tốt lắm.
Dưới đây là đoạn lisp mình đã thử làm..nhưng sai cấu trúc...pác xem lại giùm e nó sai ở đâu với...
Àh! cho mình hỏi thêm luôn là ngoài dùng những hàm lisp "vla.." này thì mình còn có thể làm cách khác được không, ví như những hàm đơn giãn hơn..
(defun c:ttt(/ #sset #Bacc i #tong #tong1 #ssname #ename #dau #cuoi #ent #dis #point) (vl-load-com) (setvar "CMDECHO" 0) (command ".undo" "BE") (command ".UCS" "W" ^C^C) (Prompt "\n- Ch\U+1ECDn \U+0111o\U+1EA1n th\U+1EB3ng c\U+1EA7n tính t\U+1ED5ng: ") (setq #sset (ssget ":N" '((0 . "*LINE,PLINE,ARC,ELLIPSE")))) (setq #Bacc (getint "\n- Nh\U+1EADp s\U+1ED1 l\U+1EBB: ")) (if (null #Bacc) (setq #Bacc 2)) (setq i 0) (setq #tong 0) (while (setq #ssname (ssname #sset i)) (setq #ename (cdr (assoc 0 (entget #ssname)))) (setq #dis (vlax-curve-getDistAtParam #ename (vlax-curve-getEndParam #ename))) (setq #tong (+ #tong #dis)) (setq i (1+ i)) );WHILE (setq #tong1 (rtos #tong 2 #Bacc)) (setq #point (getpoint "\n- Ch\U+1ECDn \U+0111i\U+1EC3m chèn k\U+1EBFt qu\U+1EA3: ")) (command ".text" "J" "MC" #point 1.7 0 #tong1) (command ".undo" "E") (princ) (princ) )
-
Mình đang thử viết 1 lisp tính độ dài của các đối tượng riêng biệt như line, pline, arc, và spline.
Về phần các đối tượng là line và pline thì mình tính được rồi còn 2 đối tượng nữa là arc (cung tròn) và spline nữa nhưng mình ko biết cách tính và lập hàm như thế nào.
Ai biết giúp mình cấu trúc của hàm tính đó ntn nhá....Tks
-
Việc in bên Model hay layout thì chẳng khác gì nhau cả, vì khi bạn cố định khung tên của mình là khung chuẩn 1:1 thì khi vẽ bên model bạn phải vẽ các chi tiết khi nó đã được chia tỉ lệ rồi, còn bên layout thì bạn chỉ việc thay đổi tỉ lệ của khung viewport theo ý mình muốn:
Cụ thể:
Khi bố trí khung bản vẽ bên Model.
- Muốn thể hiện đường thẳng 10m dưới tỉ lệ 1/200 thì bạn vẽ 1 đường line= 50 và thay đổi Dimension để nó thể hiện cho bạn đoạn thẳng đó bằng 10m. Và cho vào khung bản vẽ--->In
Khi bố trí bên layout
- Bạn chỉ cần thay đổi thông số Standard Scale hoặc Custom Scale = 1/200 và cho vào khung bản vẽ--->In
-----
Và khi in ra kích thước thật của đoạn thẳng là 50mm tương đương (1/200 của 10m)
- 1
-
xem lại cấu hình máy của bạn phù hợp với CAD2010 ko.
vì mình thấy có chữ NIVIDIA là có liên quan đến đồ họa đó...có thể ko phù hợp chăng
-
Các bạn ơi! các bạn cho mình hỏi chut về cài đặt nova với
Chẳng là thế này: lúc đầu mình có cài nova2005 và sử dụng khóa ảo vào chương trình làm việc đc bình thường rồi
nhưng sau đó khi tắt máy đi và khởi động lại thì có cách nào không phải cài lại nova và cài lại khóa ảo không!
+ Nhân tiện đây các bạn có ít tại liệu nào hướng dẫn tỷ mỷ 1 chút đc ko?
Thanks các bạn đã quan tâm và chỉ giúp!
Share cho chú 1 bộ file bộ Nova2005 có hướng dẫn cài đặt đầy đủ.
http://www.mediafire.com/download.php?nrrsjbitm0g3bnv
Load về sài nhá.
Khi cài đặt xong thì mỗi khi tắt máy mở lại thì chỉ cần load khóa ảo lên thôi...nhớ tắt các chương trình diệt virut trước khi cài đặt.
- 1
-
Khi bạn đi học ở 1 trung tâm nào đó thì thông thường họ sẽ cấp cho bạn 1 giấy chứng nhận, đánh giá xếp loại thành tích trong quá trình học tập.
Còn vấn đề bằng cấp thì chỉ có 1 số trường hợp đặc biệt lắm thì mới có người hỏi tới thôi, ví như mình đang làm ở 1 công ty có liên kết với nước ngoài thì mấy thằng này nó chẳng tin gì mấy chú kỹ sư Việt Nam mình nên hễ nói tới cái gì nó cũng đòi bằng cấp...nên trong trường hợp này thì tìm cách hợp lý hóa cái giấy chứng nhận ban đầu thôi...chứ thực ra với món CAD này thì mình nghĩ bằng cấp chẳng để làm gì....Có người ko có bằng mà CAD 2D, CAD 3D, Autolisp...còn siêu hơn mấy anh đi học trung tâm ra.....
------------------------------------
Àh!!! ý trên là những gì mình biết thôi còn có gì thêm nữa ko thì ko rõ.
-
File đâu bạn, hình như bạn chưa up lên....
-
Mình đã đọc qua bài đó mấy lần rồi, nhưng mình không hiểu, sau khi thay đường dẫn thư mục ở máy mình vào trong đoạn lisp này thì mình cần chèn nó vào đâu, vì mình cũng ko thạo lisp lắm, chỉ sưu tầm về sử dụng thôi.
(if (findfile "C:\\A") (if (not (vl-string-search "C:\\A" (getenv "ACAD"))) (setenv "ACAD" (strcat (getenv "ACAD") ";" "C:\\A") );;end if (prompt "Folder C:\A Not Found!")) );;end if -
Vấn đề mình cần hỏi là như sau:
---Mình có 1 bộ lisp sưu tập được, khi sử dụng bộ lisp của mình thì trước đây mình phải thực hiện các bước sau:
1. Add các thư mục có chứa file lisp vào trong Support File Search Path.
2. Mở CAD:
Gõ lệnh "Ap -->Contents-->Add các file lisp vào trong mục "Statup suite".Tiếp theo, gõ lệnh: "menuload -->browser-->load file menu lên.Sau khi thực hiện xong 2 bước trên thì mình có sài được rồi.---Nhưng bi giờ mình muốn tối ưu các thao tác trên cho gọn lại và cho nó pro hơn chút thì mình định làm 1 file "setup", để tiện cho việc sử dụng giữa các máy khác nhau.Cái việc dùng phần mềm đóng gói các thư mục và file lisp lại thì đơn giản rồi, mình đã làm được.Cái mình gặp khó là làm thế nào để khi chúng ta click vào file setup đó thì nó tự động thực hiện luôn 2 bước trên.Mong mọi người nhiệt tình giúp đỡ.------------------------------------------------------------------------------------------------------------------------------------Cũng nói thêm là mình đã tìm và đọc tất cả các topic trên forum về vần đề này rồi, nhưng nhiều người trả lời và các câu trả lời thường rời rạc những cách khác nhau nên mình hơi khó hiểu và không thể nào liên kết được các bước làm với nhau.Nên hôm nay đành viết 1 bài mới (mặc dù chủ đề này đã được thảo luận nhiều trước đây) để có thể tổng hợp lại để vấn đề được rõ ràng hơn, sau này ai đọc đến cũng có thể làm được. -
Mình chép file lisp của Ketxu về rồi để chung nó với bộ lisp mình thường dùng trong C:\Program Files\Tool Lisp (1)
Sau đó mình load chỉ 1 lisp này lên rồi gõ loadall thì nó chuyển mình đến hộp thoại trong thư mục C:\Documents and Settings\Administrator\My Documents\Downloads. (2)
Đáng ra nó phải chuyển mình đến đường dẫn (1) chứ ko phải (2) phải ko, rồi mình thử chọn file cho nó load lên thì chỉ chọn dc từng file 1 (rất mất công vì mình cần chọn nhìu file)....sau khi thử load 1 file lên thì nó báo nil....
Vậy cho mình hỏi, lisp trên sai ở đâu hay mình cách dùng của mình ko đúng..
-
Hic, hôm nay chủ nhật nên không ai ghé qua hết....
Mong mọi người giúp giùm ý 2 và 3 đi ạh.
-
Trước khi comment ở Topic này mình cũng đã thử đọc qua 1 lượt các topic nói về việc này rồi. Nhưng 1 phần là không hiểu và 1 phần nữa cách diễn giải vấn đề mình đọc ko hình dung ra được.
Tue_NV có thể giúp mình kĩ hơn về vấn đề này ko.
-
Mình có một bộ lisp sưu tập được từ trên CADviet, nhưng nó không hẳng là file lisp ko thôi mà có cả các bản vẽ thư viện và mình tạo cho nó 1 cái menu để gọi nó ra...khi mình dùng trên máy của mình thì dễ nhưng khi mang đến 1 máy khác thì mình phải mất thời gian để làm các thao tác load nó về nên mình có ý định tạo nó thành 1 file **.exe để khi nhấp vào đó thì một thứ đều theo ý mình định sẵn.
1_ Nhưng mình gặp khó khăn ở chổ, khi chạy file exe mình tạo thì làm sao cho mọi thứ mình đóng gói trước đó nằm ở trong thư mục ổ C do mình định sẵn (ví dụ C:\Program Files\Thu Muc Lisp)
2_ Mình muốn trong phần Option -->Support File Seach Path-->Nó sẽ add cho mình 1 số đường dẫn đến thư mục mình chỉ định.
3_ Và trong CAD, cũng sẽ tự động load cái menu lên luôn (lệnh menuload).
Mình còn 3 vấn đề trên chưa giải quyết được ai giúp mình với.
-
Thử theo cách thủ công xem sao, đổi trục tọa độ phương z = phương x.
Sau khi làm xong thì trả lại trục như ban đầu.
-
nova 4.01 chạy tốt trên nền CAD 14....đó là với Win Xp.
Cài trên Win 7 cần thêm 1 số file phụ trợ nữa mới cài được...nhưng trong quá trình làm thường xảy ra lỗi.
-
Up lên đầu để mọi người giúp mình.
Trong thời gian chờ đợi, cho mình hỏi chức năng Override của Dimension Style Manager của CAD mình sử dụng để làm gì, và trong trường hợp nào nhỉ.
Mình ít khi sử dụng chức năng này nên không rành lắm.
-
Đã text thử lisp của bạn, nhưng ko được như ý.
Khi load Dim xong.
Gõ lệnh: sd
Chọn đối tượng: là các Dimension. --->Enter
Chọn vị trí mới của chân đường giống kích thước: pick điểm --->Enter
Kết quả tất cả các Dim mang giá trị 0 và nằm chung 1 chỗ.....
Bạn xem lại nhé.
-
Cách của Doan Van Ha là dùng lisp up Dim theo từng tỉ lệ do mình đặt sẵn ở curent đúng ko. Cách này thì mình đã sử dụng rồi.
Nhưng trường hợp của mình thì lại khác, với những trường hợp, nhiều người vẽ 1 bản vẽ, họ vẽ ở model sau đó họ chỉnh Dim rất lung tung, có những Dim mình thấy họ đặt tỉ lệ cả ở tad Fit và tad Primary Units (nhưng bản vẽ vẫn đúng). Nên khi mình chỉnh sửa bản vẽ, mình chỉ cần thay đổi những thông số khác như đường giống, màu, kiểu chữ....để theo 1 ISO chuẩn. Với mỗi lần như vậy, theo cách làm thủ công của mình thì mình dùm Dim style chuẩn (Dim ISO) của mình so sánh (chức năng Compare của Dimension) với Dim hiện tại (Dim chưa ISO) sau đó mình sẽ sữa theo bản so sánh đó, việc này rất lâu vì với 1 bản vẽ có nhiều tỉ lệ khác nhau thì mình mất khoản gần 1h cho việc hiệu chỉnh mấy cái Dim này...Nên mong rằng mọi người giúp mình khắc phục bước này, để công việc thêm hiệu quả.
-
Mong rằng vậy, hic....
nhưng mà giờ chắc phải típ tục với việc làm thủ công nữa rồi...."Very Boring"
-
Hic. Không ai ghé qua sao.... :blush:
Mong mọi người bớt chút thời gian, giúp mình.
-
Khi mình load trên mạng về 1 file bản vẽ để sử dụng thì thường lúc nào cũng thấy rằng ở phần Dimension có rất nhiều Dim Style khác nhau (khác về đường giống, kiểu chữ, màu.......có thể vào Dimension -->Compare để so sánh 2 Dim Style khác nhau) thì thường những Dim Style khác nhau rất nhiều nên khi muốn đưa chúng về một ISO thì mình phải làm thủ công rất lâu.
Nên mình muốn nhờ mọi người giúp mình một Lisp có chức năng giống như là copy để chuyển những Dim Style khác nhau về chung 1 ISO đã cho trước.
------------------------
VD: Lisp có thể hoạt động như sau:
Mình sẽ khai báo cho Dim style nào đó, có thể là "Standard" (mặc định của CAD) có những thông số theo một ISO mình quy định sẵn.
Sau đó gõ lệnh: (ví dụ) CopyDim [Enter]
Hiện ra một hộp thoại có yêu cầu:
Chọn Dim Style chuẩn: (ví dụ: Standard)
Chọn Dim Style cần thay đổi: (ví dụ: Dim 1/20) (có thể chọn nhiều dim style cùng 1 lúc)
Chọn các Tad cần copy: vì trong Dim có tới 7 Tad khác nhau (Lines, Symbols and Arrows, Text, Fit, Primary Units, Alternate Units, Tolerances).
Enter ----> kết thúc lệnh.
Kết quả:
Những Dim style mình chọn cần thay đổi bên trên sẽ có những thông số giống như Dim style gốc. (thường thì mình không thay đổi tỉ lệ Fit hay Scale factor, chỉ thay đổi những định dạng chung như kiểu chữ, màu, đường giống....v.v).
------------------------
Không biết là mình ghi yêu cầu của mình rõ ràng chưa, nhưng mong rằng mọi người giúp đỡ cho...
Tks trước luôn......
[Yêu Cầu] Lisp chọn nhanh các đối tượng khi vừa thực hiện một lệnh.
trong AutoLisp
Đã đăng · Trả lời báo cáo
Vậy thì phím P là cách bạn cần làm đó.