ccc123
-
Số lượng nội dung
26 -
Đã tham gia
-
Lần ghé thăm cuối
Bài đăng được đăng bởi ccc123
-
-
Thank nhiều! bạn sửa luôn đoạn code này hộ mình với
(defun c:te()
(defun new (/ onew1)
(if (null new1) (setq new1 1))
(setq onew1 new1)
(setq new1 (getint (strcat "\nNhap so can chia <" (itoa new1) ">: ")))
(if (null new1) (setq new1 onew1))
)
(setq en (ssget))
(setq n (sslength en) i 0)
(while (< i n)
(setq li (cdr (assoc 1 (setq ename (entget (ssname en i))))))
(setq lis (/ (atof li) (new)))
(entmod (subst (cons 1 (rtos lis 2 2)) (assoc 1 ename) ename))
(setq i (+ i 1))
)
)
-
anh Hoành chỉnh lại mã lisp để nhân chính text đó với hệ số bất kỳ và thay thế chính text đó không cần chọn text chọn text cần chỉnh sửa ko?
-
Bạn chịu khó tìm kiếm một chút đi. Trên diễn đàn đã bàn rồi đấy.Mình tìm mãi rồi nhưng ko thấy đâu cả. chi có lisp cộng text thôi. bạn post cho mình với nhé
-
Trên bản vẽ cad mình có n text dạng số. muốn chia n text đó cho 1 số bất kỳ. các bạn giúp mình đoạn lisp đó với
-
Vào đây neeu muốn xuất ra file têxtCám ơn bác nhiều!
-
-
E có một bản vẽ có rất nhiều block attributes theo thứ tự. Các bác giúp hộ e đoạn code lấy thông tin của attributes và ghi các text trong đó vào bảng exell với. E tìm hiểu cái này mà vãn lư mơ
-
bạn thay đoạn tạo pl bằng cách chọn 1 pline có sẳn là được mà. Nếu là bạn đã có đường pline mà không biết cách cải tạo lại code thì mình chỉnh cho 1 chút còn nếu chưa có pline luôn thì ngoìa cách pic điểm để tạo pline mình không nghỉ ra cách nào khác.OK em thử xem.Cảm ơn bác
-
Tùy yêu cầu của bạn thôi chọn đối tượng cũn được. Nhưng thường thì đo diện tích phải là plie khép kín.Em biết điều đó.Nhưng do người khác vẽ nên rất khó để đảm bảo là vùng kín.Bác có đoạn code nào khác mà không cần dùng đến boundary không bác.lisp bác viết cho em em phát triển thấy rất tuyệt vời, em chỉ cong băn khoăn đó nữa thôi bác à.
-
Mấy bửa nay máy cơ quan hư mạng nên không trả lời bạn được.Bạn tìm trong lisp của mình viết tìm dòng có chử rtos sửa số 4 thành số 2 là được.
Cảm ơn bác. E sửa được rồi.Hôm trước em không chú ý hàm đó viết ở dòng command.Bác ơi bác có cách đo diện tích nào khác không. Vì đường của em bị hở mà khó kiểm soát. bác có cách đo nào khác không.Nếu dùng lệnh Boundary vùng không kín thì lệnh không thực hiện được.
-
(setq soketqua (rtos sobandau 2 4))Cái màu đỏ là số sau dấu ,
Em thử rồi không được bác a. Bác cho em ví dụ cụ thể vào phép gán trong lisp bác viết cho em nhé bác
-
;;;--------------------------------------------------------------------------(defun boundpt (p / e res)
;;;Return T if p is in a closed area. Otherwise return nil
(setq e (entlast))
(command "boundary" p "")
(setq res (not (equal (entlast) e)))
(if res (command "erase" (entlast) ""))
res
)
;;;---------------------------------------------------------------------------
Em hỏi thêm câu nữa.
(setq dientich (/ dtdoduoc (* motmetdt motmetdt)))
(setq HSSD (* dientich 40 5))
Em muốn làm tròn sau dấu phẩy 2 số thì mình làm thế nào bác.
Thank bác nhiều
-
http://www.cadviet.com/upfiles/kyhieulo.zipĐây bạn load file lisp này lên tạo đường dẩn đến file kyhieulodatduy.dwg.
Gỏ lệnh KHLD:
Hỏi tên lô: lisp sẽ tự thêm LK- phía trước tên lô.
Hỏi Chon diem trong vung kin can do:pic vào trong vùng cần đo nếu vùng chọn không kín thì nó lại hỏi Chon diem trong vung kin can do khi nào chọn được điểm trong vùng kín thì lisp chạy tiếp.
Hỏi Mot met hien hanh la (1) <Diem viet ket qua>: lisp mặc định 1 met là 1 đơn vị bản vẽ nếu muốn thay đổi thì bạn gỏ m lisp sẽ hỏi bạn nhập giá trị 1 mét là bao nhiêu đơn vị.
Chấp nhận giá trị 1 mét thì chọn 1 điểm lisp sẽ chèn ký hiệu và điển cácthông số theo ý bạn.
Bác duy ơi em download về rồi nhưng khi chạy báo lỗi không có hàm "boundPt". Bác kiểm tra giúp e nhé
-
Em thank bác trước nghe
-
trên diễn đàn là file *.VLX, bác cho em xin file *.lisp với
Em có file cad này bác hoanh viết lisp giúp em với nhé
-
Các bác viết hộ em lisp này với nhé.
Có 1 block attributes.
Đo diện tích hình kín.
Chèn block attributes vào bản vẽ.
Chèn diện tích vừa tính được vào text trong attributes.
Thank các bác nhiều
-
em bó tay rồi. Các bác viết hộ em lisp với nhé. các yêu cầu em đã ghi vao trong bản vẽ kèm theo
-
bạn bỏ dấu hai nháy (") ở 2 bên chữ center đi!Em biết lỗi nó rồi. Nhưng vấn đề ở chỗ là nó không chạy lệnh gán text bác ạ
-
em viết các đoạn code tiếp theo thì không chạy đồng thời đươc. các bác chỉ giáo giúp em với nhé
(defun c:LK()
(setq Center (getpoint "\n nhap tam: "))
;----------------------------------chen block------------------------------
(command "insert" "vongtron" "center" "s" "" "" "" "")
;----------------------------------Nhap ten lo------------------------------
(setq p1 (list (+ (car Center) 5.1770) (+ (cadr Center) 21.0645)))
(setq abc (getreal "\n nhap ten lo: "))
(command "TEXT" p1 "" "" abc)
)
-
thế thì bạn loại bỏ hàm polar ra khỏi đoạn code trên là được.(defun c:LK()
(setq Center (getpoint "\n nhap tam: "))
;----------------------------------Nhap ten lo------------------------------
(setq p1 (list (+ (car Center) 5.1770) (+ (cadr Center) 21.0645)))
(setq LK (getreal "\n nhap ten lo: "))
(command "TEXT" p1 "" "" LK)
)
được rồi ạ.cảm ơn các bác nhiều. CADVIET thật tuyệt vời
-
Hàm POLA dùng chỉ định 1 điểm từ 1 điểm cho trước, góc, khoảng cách:(setq diemcan (polar diemgoc goc khoangcach))
Của bạn hình như thiếu cả góc lẩn khoảng cách.
bác chỉnh sửa giúp em cho chạy được với. điểm tọa độ ghi text đó có khoảng cách với điểm pick là x= 5.177, y = 21.06.
e chưa hiểu hàm này lắm
-
Mục tiêu của đoạn code là gì?tức là đoạn code này dùng làm gì?
còn nếu chỉ để chạy được thì:
(defun c:LK()
(setq Center (getpoint "\n nhap tam: "))
;----------------------------------Nhap ten lo------------------------------
(setq p1 center)
(setq LK (getreal "\n nhap ten lo: "))
(command "TEXT" p1 "" "" LK)
Mục
Mục tiêu của em là khi pick vào 1 điểm bất kỳ đoạn text đó sẽ gán vào một điểm có tọa độ khác tọa độ đó. em đang viết lisp chèn block và gán các thông số text vào block đó bác ạ
-
Chào các bác. Mình viết đoạn code này nhưng không chạy được. các bác sửa giúp e với nhé.
(defun c:LK()
(setq Center (getpoint "\n nhap tam: "))
;----------------------------------Nhap ten lo------------------------------
(setq p1 (polar (list (+ (car Center) 5.1770) (+ (cadr Center) 21.0645))))
(setq LK (getreal "\n nhap ten lo: "))
(command "TEXT" p1 "" "" LK)
)
-
Bạn có thể post yêu cầu về autolisp ở topic này.A viết hộ em lisp này với.
1. pick vào đường polyline.
2. Insert block "a" vào.
3. Tên ô thay đổi theo lần pick (A1, A2, ....)
4. Chèn diện tích vào ô tròn (DT).
5. MDXD = 40
6. TCTB = 107. SHSD = MDXD*DT*TCTB
Cảm ơn a rất nhiều!
Chèn ký hiệu ghi độ cao công trình
trong Sử dụng AutoCAD
Đã đăng · Trả lời báo cáo
cho mình hỏi 1 câu.mình có lisp chèn block thuộc tính. các máy dùng bình thường.nhưng có 1 số máy ko gán được dữ liệu vào block khi dùng lisp.Khi ed bình thường thì vẫn được. mình nghĩ chỉ do chế độ nhập giữ liệu của block nhưng không tìm được lệnh trong cad. mong các bạn giúp mình. mình đã thử với các lệnh attdia, attdisp