Ðề: Visual Lisp
mình cảm ơn chương trình fastcad
QUẢNG CÁO ĐẦU TRANG
Collapse
Thông báo
Collapse
No announcement yet.
Visual Lisp
Collapse
X
-
Ðề: Visual Lisp
Em mới học năm 3 thui,cad còn yếu lắm.mạo muội cho e hỏi các bác làm cách nào để luyện cad nhanh, và tốt không.ngoại trừ "bạn nên thường xuyên vẽ" mà em đã biết rồi.giúp em nha.thank you!
Leave a comment:
-
Ðề: Visual Lisp
Em mạn phép tham gia một chút các bác nha. Em thấy Autoslip này trong cuốn tự học Autocad 2008 của kĩ sư Thành Vinh cũng viết đó các bác ạ
Em là sinh viên ngành hàn nên cũng chưa tìm hiểu kĩ lắm các bác ạ
Leave a comment:
-
Ðề: Visual Lisp
Nguyên văn bởi Autocad2008Chào ban sau khi nghien cứu mình đã sửa lại như thế này
(defun c:tinh()
(setq pd (getpoint "\nPls pick a point:"))
(Setq a (getreal "\nPl enter a:"))
(Setq b (getreal "\nPl enter b:"))
(setq c (+ a b))
(setq c (strcat (rtos c 2 1)))
(command "text" "j" "C" pd "2" "" c))
Bạn tham khảo trong help của visualisp
(rtos, value [, mode, precision])
Edits the given value as a real number in the format specified by the mode and precision as defined by the analogous AutoLISP function. If mode and precision are omitted, it uses the current values selected with the UNITS command.
Thân ái chào bạn chúc vui vẻ
Chúc bác vui khỏe!Last edited by thanhnhan_kt; 04-01-2008, 09:24 PM.
Leave a comment:
-
Ðề: Visual Lisp
Thật ra vấn đề của bạn kô thể giải quyết triệt để bằng hàm rtos được. Lỗi trên là do biến hệ thống dimzin trong AutoCAD. Bạn tham khảo thêm trong phần Help của AutoCAD sẽ hiểu cơ chế và tính năng của biến này. LISP và AutoCAD system variable có liên hệ mật thiết nhau.
Thân.
Leave a comment:
-
Ðề: Visual Lisp
Nguyên văn bởi thanhnhan_ktChào các cao thủ trong diễn đàn! Em đang tập toẹ viết mấy cái lisp mà vất vả quá, tìm mấy cuốn sách đọc thì thấy nội dung cư na ná nhau, sách dịch nên đọc nhiều lúc tức như bò đá, đọc 1 câu dài dằng dặc đọc xong chẳng hiểu nó viết cái gì?? .
Em có một vài thắc mắc mong được các anh giải đáp dùm em:
1. Em viết đoạn mã sau:
(defun c:tinh()
(setq pd (getpoint "\nPls pick a point:"))
(Setq a (getreal "\nPl enter a:"))
(Setq b (getreal "\nPl enter b:"))
(setq c (+ a b))
(command "text" "j" "C" pd "2" "" c)
)
không hiểu sao đến khi in ra màn hình được một đống toàn số không đằng sau for Ex: a=3, b=5 Kq in trên màn hình "8.00000000" có cách nào khắc phục không ạ? (không muốn dùng biến integer)
2. Một câu liên quan: cấu trúc hàm Round (trong lisp) như thế nào? và có hàm roundup, rounddown như trong EXCEL không ạ?
Mong các bác giải đáp giúp, em xin cảm ơn!
(defun c:tinh()
(setq pd (getpoint "\nPls pick a point:"))
(Setq a (getreal "\nPl enter a:"))
(Setq b (getreal "\nPl enter b:"))
(setq c (+ a b))
(setq c (strcat (rtos c 2 1)))
(command "text" "j" "C" pd "2" "" c))
Bạn tham khảo trong help của visualisp
(rtos, value [, mode, precision])
Edits the given value as a real number in the format specified by the mode and precision as defined by the analogous AutoLISP function. If mode and precision are omitted, it uses the current values selected with the UNITS command.
Thân ái chào bạn chúc vui vẻLast edited by Autocad2008; 04-01-2008, 08:10 PM.
Leave a comment:
-
Ðề: Visual Lisp
Chào các cao thủ trong diễn đàn! Em đang tập toẹ viết mấy cái lisp mà vất vả quá, tìm mấy cuốn sách đọc thì thấy nội dung cư na ná nhau, sách dịch nên đọc nhiều lúc tức như bò đá, đọc 1 câu dài dằng dặc đọc xong chẳng hiểu nó viết cái gì?? .
Em có một vài thắc mắc mong được các anh giải đáp dùm em:
1. Em viết đoạn mã sau:
(defun c:tinh()
(setq pd (getpoint "\nPls pick a point:"))
(Setq a (getreal "\nPl enter a:"))
(Setq b (getreal "\nPl enter b:"))
(setq c (+ a b))
(command "text" "j" "C" pd "2" "" c)
)
không hiểu sao đến khi in ra màn hình được một đống toàn số không đằng sau for Ex: a=3, b=5 Kq in trên màn hình "8.00000000" có cách nào khắc phục không ạ? (không muốn dùng biến integer)
2. Một câu liên quan: cấu trúc hàm Round (trong lisp) như thế nào? và có hàm roundup, rounddown như trong EXCEL không ạ?
Mong các bác giải đáp giúp, em xin cảm ơn!Last edited by thanhnhan_kt; 03-01-2008, 12:06 AM.
Leave a comment:
-
Ðề: Visual Lisp
trong cad 06 07 có lệnh dtexted để sửa text rất nhanh.Nhưng với cad 04 thì sửa text rất vất vả.Vậy có anh nào có lips để sửa text cho cad 2004 ko vậy,Em cảm ơn nhiều.
Leave a comment:
-
Ðề: Visual Lisp
Nguyên văn bởi tien2005Thật ra thì mình không sử dụng nova nên không biết dữ liệu của nó như thế nào. Nếu Bạn muốn lấy cao độ 1 điểm bất kỳ thuộc mặt phẳng tạo bởi lưới tam giác thì Bạn có thể làm như sau:
- Viết phương trình mặt phẳng của lưới tam giác
- Lấy tọa độ của điểm cần xác định rồi thay vào phương trình mp sẽ tính được cao độ
Cách xác định phương trình mp chủ yếu là dùng định thức cấp 2. Sau đây là đoạn code mẫu của Tôi để tính toán san nền Bạn có thể tham khảo:
;************dinh thuc cap 2******
(defun DTC2 (A1 A2 B1 B2) (- (* A1 B2) (* A2 B1)))
;;***LAP CAC HE SO A B C D CUAA PHUONG TRINH MAT PHANG*****
(setq HSA (DTC2 (- #Y2 #Y1) (- #Y3 #Y1) (- #Z2 #Z1) (- #Z3 #Z1)))
(setq HSB (* (DTC2 (- #X2 #X1) (- #X3 #X1) (- #Z2 #Z1) (- #Z3 #Z1)) -1))
(setq HSC (DTC2 (- #X2 #X1) (- #X3 #X1) (- #Y2 #Y1) (- #Y3 #Y1)))
(setq HSD (* (+ (* HSA #X1) (* HSB #Y1) (* HSC #Z1)) -1))
(setq CDi (* (/ (+ (* HSA Xi) (* HSB Yi) HSD) HSC) -1))
Trong đó #x1, #y1, ...., #y3, #z3 là tọa độ của các điểm khống chế lưới tam giác, xi, yi là tọa độ mặt phẳng của điểm cần xác định. CDi là cao độ cần xác định.
Chúc Bạn thành công
Leave a comment:
-
Ðề: Visual Lisp
Xin lỗi bạn nha, vì mình chưa nói rõ nên bạn không hiệu Lưới không gian tam giác trong nova là lưới gồm các tam giác vẽ bằng pline. Cái minh không biết là làm thế nào để nhận biết diểm mình chọn nằm trong tam giác nào và cách chọn tam giác đó để lấy cao độ các điểm chuẩn nội sụy Nếu bạn biết chỉ mình giụp Cảm ơn nhiều, chúc bạn thành cộng
Leave a comment:
-
Ðề: Visual Lisp
Nguyên văn bởi HoneyAnh Lam ơi, cho Mình hỏi Anh Lam có biết thuật toán lấy cao độ 1 điểm bất kỳ của lưới tam giác mà chương trình nova xuất ra không. Nếu Anh Lam biết chỉ mình với nha, cảm ơn nhiều.
- Viết phương trình mặt phẳng của lưới tam giác
- Lấy tọa độ của điểm cần xác định rồi thay vào phương trình mp sẽ tính được cao độ
Cách xác định phương trình mp chủ yếu là dùng định thức cấp 2. Sau đây là đoạn code mẫu của Tôi để tính toán san nền Bạn có thể tham khảo:
;************dinh thuc cap 2******
(defun DTC2 (A1 A2 B1 B2) (- (* A1 B2) (* A2 B1)))
;;***LAP CAC HE SO A B C D CUAA PHUONG TRINH MAT PHANG*****
(setq HSA (DTC2 (- #Y2 #Y1) (- #Y3 #Y1) (- #Z2 #Z1) (- #Z3 #Z1)))
(setq HSB (* (DTC2 (- #X2 #X1) (- #X3 #X1) (- #Z2 #Z1) (- #Z3 #Z1)) -1))
(setq HSC (DTC2 (- #X2 #X1) (- #X3 #X1) (- #Y2 #Y1) (- #Y3 #Y1)))
(setq HSD (* (+ (* HSA #X1) (* HSB #Y1) (* HSC #Z1)) -1))
(setq CDi (* (/ (+ (* HSA Xi) (* HSB Yi) HSD) HSC) -1))
Trong đó #x1, #y1, ...., #y3, #z3 là tọa độ của các điểm khống chế lưới tam giác, xi, yi là tọa độ mặt phẳng của điểm cần xác định. CDi là cao độ cần xác định.
Chúc Bạn thành công
Leave a comment:
-
Ðề: Visual Lisp
Anh Lam ơi, cho Mình hỏi Anh Lam có biết thuật toán lấy cao độ 1 điểm bất kỳ của lưới tam giác mà chương trình nova xuất ra không. Nếu Anh Lam biết chỉ mình với nha, cảm ơn nhiều.
Leave a comment:
-
Ðề: Visual Lisp
cac anh co the chi cho em cach lay ra dien tich cua doi tuong vua duoc hatch in ra man hinh. lay du lieu dien tich dua vai hatch
Leave a comment:
Quảng cáo cuối trang
Collapse
Leave a comment: