Doan Van Ha
-
Số lượng nội dung
6.220 -
Đã tham gia
-
Lần ghé thăm cuối
-
Ngày trúng
446
Bài đăng được đăng bởi Doan Van Ha
-
-
Soft đã set 3 số lẻ (thể hiện bằng số 3 trong lisp). Nếu chưa được thì bạn thử dùng lệnh DIMZIN, nếu nó khác 0 thì nhập 0 rồi chạy lisp.
- 1
-
15 phút trước, levietmy đã nói:Cám ơn bạn.
Có lẽ mình diễn đạt chưa rõ ràng nên code bạn trả lời chưa đúng ý mình.
Ý là mình muốn chọn ename của đối tượng qua một điểm p cho trước, mình đang dùng hàm (nentselp p). Nhưng hàm này cho ra ename (do mình chọn trúng nằm trong cái block) chứ không phải cái ename đó giống như khi dùng ssget hay entsel (khi dùng 2 hàm này thì 0 có đối số điểm p).
Ví dụ khi dùng (setq ss (ssget)) (setq name (ssname ss 0)), cái name này chính là cái mình ý mình muốn chọn thông qua cái điểm p.
Răng rứa hè? Vẫn lấy ename của block
(cdr (assoc 330 (entget (car (nentselp (getpoint))))))- 1
-
10 giờ trước, levietmy đã nói:Các bạn cho mình hỏi về hàm entsel và nentselp.
Mình có block ATT, mình muốn dùng hàm nentselp để chọn ATT đó sao cho nó trả về ename giống như dùng hàm entsel mà mình 0 làm không được.
(cdr (assoc 2 (entget (cdr (assoc 330 (entget (car (nentsel))))))))
- 1
-
8 phút trước, duy782006 đã nói:(setq sl (getstring 5"\nSo luong:"))
-Lưu ý con số 5 này nhé, nếu không có nó thì khi nhập chuổi nút Space sẽ tương đương với enter nghĩa là kết thúc quá trình nhập chuổi, còn có nó thì Space là khoảng trắng.
Tùy theo nhu cầu chuổi cần nhập mà quyết định có số 5 này hay không.initget thì getkword chứ đâu phải getstring mà space được.
-
9 phút trước, Luutru đã nói:Tàu là tổ sư của tổ sư rồi bạn, phong phú biến hóa khôn lường, mình chỉ biết chút ít, học mót những cái cần cho công việc nên không thể đú với họ được.
Bạn này giới thiệu giùm cho @Biet ve CAD hay là 2 in 1 ?
- 1
-
15 phút trước, gia_bach đã nói:Có gì chứng minh file này là của bạn không?
Vote
- 1
-
Bài toán này trong trường hợp tổng quát thì rất khó giải, vì các loại object để tạo thành block là chưa được kiểm soát cụ thể.
May ra nhóm object là duy nhất và biết trước thì khả dĩ.- 1
-
39 phút trước, ketxu đã nói:Mình nghĩ là do tay chân hoặc do xử lý float của CAD th :)
Làm việc với các số quá lớn hoặc quá nhỏ trong AutoCad/ZWCad/GstarCad... thì gặp lỗi này hoài á.
Nhiều khi các points nó còn theo Elon Musk bay vào vũ trụ nữa đó.
- 1
-
-
Vừa mở file từ Menu trên 2007 và 2023 cho SDI=0 & SDI=1 vẫn (command "_.zoom" "e") được, không lỗi
-
Tôi thử test trên Cad 2007 và 2023 thì SDI=1 hay SDI=0 đều thực hiện (command "_.zoom" "e") được.
-
9 phút trước, thewind0910 đã nói:GPT code đc lisp mà bác. Nma k phải lisp nào cũng hoạt động theo đúng ý hoặc ko hoạt động đc.
Tại mình cũng k hiểu chứ nếu ae hiểu lấy ý tưởng nó code rồi sửa cho hoàn chỉnh là ok mà
1. GPT nó code được mấy bài toán đơn giản thôi, ví dụ vẽ đường thẳng nếu biết 2 điểm chẳng hạn.
Còn nếu GPT mà code được những yêu cầu phức tạp thì con người ở giá hết trơn.
2. Bạn @vietduc147258 đã gởi bạn cái lisp ấy dùng được trong việc tạo layer có độ MỜ, nhưng bạn không chịu (hoặc không biết?) nghiên cứu thôi.
- 1
-
Đây là bài toán hoàn toàn khác đề bài với bài toán của SSG ban đầu.
Ở đó chia đôi theo biểu thức S1/(S1+S2) = kCòn ở đây là chia n phần bằng nhau?
-
Đã update thêm phần xuất Excel + Xuất bảng khối lượng theo cột và hàng.
-
21 phút trước, tannguyen291 đã nói:Anh toàn viết '(lambda. Không hề viết (function (lambda. Nhưng khi chuyển qua vlx and fas đều không hề lỗi. Nên chưa hiểu lắm.
Còn dùng 2 dấu phẩy trên thì mù tịt luôn. -
4 phút trước, limfx đã nói:Khi dùng '' và ' nhiều quá code đọc khó hiểu
Nên cách rút gọn chỉ cho người chuyên nghiệp. Em nghĩ vậy
Khi người ta xây dựng 1 ngôn ngữ lập trình thì không có gì thừa đâu bạn. Chỉ là mình chậm hiểu thôi. Và chắc họ cũng không xây dựng cho người chuyên nghiệp và người kém chuyên nghiệp đâu.
-
26 phút trước, ndtnv đã nói:Cách viết '''((u v) tôi copy của 1 member trên cadviet từ lâu rồi, vì ngắn hơn nên dùng thôi, cũng như '(1 2) ngắn hơn (list 1 2) vậy
'(1 2) và (list 1 2) nó khác nhau là một bên thì các element bên trong là phần tử tường minh, còn một bên thì bên trong có thể tường minh hoặc là biến được lấy từ hàm setq.
Còn cách viết dùng 2 dấu phẩy trên này khó hiểu quá, và cũng mới gặp lần đầu.
Em "lambda" đang tự hỏi: sinh em ra làm gì cho dài dòng mà không dùng 2 dấu phẩy trên cho gọn?- 1
-
30 phút trước, ndtnv đã nói:Vì không có bản vẽ nên bạn tự đặt thuộc tính các đoạn thẳng cần vẽ
(defun C:TOP ( / l p q) (foreach e (vl-remove-if 'listp (mapcar 'cadr (ssnamex (ssget '((0 . "LINE")))))) (setq p (cdr (assoc 10 (entget e))) q (cdr (assoc 11 (entget e)))) (setq l (cons (if (> (cadr p) (cadr q)) p q) l)) ) (setq l (vl-sort l ''((u v) (< (car u) (car v))))) (mapcar ''((u v) (entmakex (list '(0 . "LINE") (cons 10 u) (cons 11 v)))) l (cdr l)) )
Cho hỏi tí:
1. Tại sao viết '''((u v) thì tương đương với '(lambda(u v) ?
2. Cách viết 1 ngoài ngắn gọn thì có gì ưu điểm so với cách viết dùng lambda? Và liệu lambda có phải là hàm thừa? -
30 phút trước, tannguyen291 đã nói:Một cái đề bài ối zời ơi. Bạn nên đi thắp hương hỏi các thánh thì mới giải đáp được chứ anh em cadviet chắc chịu. :))
Phải kèm lễ vật nữa thì mấy thánh CV mới linh được.
-
46 phút trước, thewind0910 đã nói:Em đang có lisp thêm dấu ngoặc () vào text nhờ các anh chị viết thêm cho em 1 lisp thành thêm dấu ngoặc nhọn <> vào text được chọn vs ạ.
Tại ngôn ngữ code toàn ngoặc ))(( nên em k biết sửa ở chỗ nàoThanks anh chị
(setq ttdangt "(")
(setq ttdangs ")")Thành:
(setq ttdangt "<")
(setq ttdangs ">")
- 1
-
Khi chọn bạn nhập chữ "X" thì nó chọn tất cả
- 1
-
Có 1 thao tác chọn tất cả mà cũng làm biếng ư? Lisp của tôi đó nhưng tôi không sửa vì người khác dùng bất tiện.
- 1
-
Đề bài toán này rất thiếu các giả thiết => Lisp chỉ viết được theo cái hình trong file Cad, chứ không thể viết tổng quát được đâu.
- 1
-
Có giải thích trong Help
Xin trợ giúp về lisp Xline
trong AutoLisp
Đã đăng · Trả lời báo cáo
Nói chung bạn lượm lung tung, khen hay, không biết code lỗi cũng như không biết sử dụng, mặc dù nó "rất hay"?