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

tigertiger

Thành viên
  • Số lượng nội dung

    16
  • Đã tham gia

  • Lần ghé thăm cuối

Bài đăng được đăng bởi tigertiger


  1. Đây bạn :

    (defun c:cso()
    (setq olddim (getvar "dimzin"))
    (setvar "DimZin" 0)
    
    (setq en (ssget '((0 . "TEXT"))))
    (setq tp (getint "\n So chu so thap phan :"))
    
    (setq n (sslength en) i 0)
    
    (if (null newo) (setq newo 1))
    
    (setq new1 (getreal (strcat "\nNhap so can cong <" (rtos newo) ">: ")))
    
    (if (null new1) (setq new1 newo) (setq newo new1))
    
    (while (< i n)
    
    (setq ename (entget (ssname en i)))
    
    (setq li (cdr (assoc 1 ename)))
    (setq lis (+ (atof li) new1))
    
    (setq ename (subst (cons 1 (rtos lis 2 tp)) (assoc 1 ename) ename))
    
    (entmod ename)
    (setq i (+ i 1))
    )
    (setvar "dimzin" olddim)
    (princ)
    )
    ;;;;

     

    rất hay

    • Like 1
    • Vote tăng 1

  2. Hum rùi em đi thi tin ứng dụng môn autocad, thì lúc vào làm bài nó xuất hiện một số lỗi sau mong các pác giúp đỡ, để em còn thì lại hi hi :

    1_Không đặt lệnh tắt trong express (dùng lệnh aliasedit)

    2-Không sử dụng đc tổ hợp phím Ctrl+O : mở bản vẽ mới mà nó lại là Bật_tắt Osnap

    3-Không sử dụng đc tổ hợp phím Ctrl+C : copy bản vẽ này sang bản vẽ kia

    4-Có cách nào bít đc rẳng em đã copy bài của bạn không, bạn em nó bảo các thầy cô có cách bít đc em đã sử dụng lệnh j để bít em đã copy bài bạn, và làm thế nào để khắc phục điều này----> không để thầy cô bít đc.

    thank so muk!

     

    với 1) - bạn nên quen với lệnh tắt chuẩn của CAD - hoặc bí quá thì dùng thanh công cụ, menu

    với 2) file \ open ... hay file mới file \ new

    với 3) Edit \ copy..

    với 4) có cách để biết được -- > còn để GV không biết thì không nên // vì thi là phản ánh khả năng lĩnh hội của bạn về kiến thức mà?

    • Vote tăng 1

  3. Nếu bạn chỉ dùng 2D vẽ theo kiểu thông thường thì nên dùng ACAD LT cho rẻ, chẳng tội gì mà đắt.

     

    Nhưng nếu không sử dụng LISP thì cũng là mất lợi thế,

     

    nhiều tiện ích trên diễn đàn : như đo diện tích / chỉnh đường kích thước / in ấn nhanh... đều đa số dùng LISP

     

    ấy vậy mà không có thì thật là mất công

    .


  4. Trích dẫn(chienxd1985 @ Jun 8 2009, 16:10) *

    mình cũng đã làm theo cách của bạn nhưng chỉ được từng lúc, mấy cái file cad.lsp mình đã xóa đi nhưng thỉnh thoảng no vẫn tự sinh ra có cách nào ngăn chặn tận gốc ko.mà nguyên nhân gốc là do đâu vậy undecided.gif

     

    bạn đọc thêm đoạn này mới đủ

    .

     

    Bạn hãy download file CVAV v1.01 này về (bằng cách phải chuột vào link rồi chọn save link as hoặc save target as) rồi làm theo hướng dẫn:

     

    1. Phải chuột vào link rồi chọn save as về máy bạn.

    CVAVHelp1.png

     

    2. Dùng lệnh appload: Tool > Load Application

    CVAVHelp2.png

     

    3. Chọn mục content

    CVAVHelp3.png

     

    4. Nhấn Add

    CVAVHelp4.png

     

    5. Chọn đến file file CVAV.lsp

    CVAVHelp5.png

     

    6. file file CVAV.lsp đã nằm trong danh sách khởi động, nhấn close để kết thúc

    CVAVHelp6.png

     

    Bây giờ bạn đã được bảo vệ khỏi sự quấy nhiễu của acad.lsp, mỗi khi thấy không còn có acad.lsp nữa, bạn muốn gỡ CVAV ra khỏi autocad, chỉ đơn giản là remove CVAV.lsp ra khỏi mục content là được.

     

    Hãy thử sử dụng và cho chúng tôi biết ý kiến của bạn.

    • Vote tăng 1
    • Vote giảm 1

  5. mình cũng đã làm theo cách của bạn nhưng chỉ được từng lúc, mấy cái file cad.lsp mình đã xóa đi nhưng thỉnh thoảng no vẫn tự sinh ra có cách nào ngăn chặn tận gốc ko.mà nguyên nhân gốc là do đâu vậy :lol2:

     

     

    bạn chưa đọc hết rồi, phải download file sau

     

    Bạn hãy download file CVAV v1.01 này về (bằng cách phải chuột vào link rồi chọn save link as hoặc save target as) rồi làm theo hướng dẫn

     

    đọc tiếp ở bài 1 nhé, load file nay lên đó mà

    • Vote tăng 3

  6. Cái này mới quan trọng anh ạ, ai có súng dùng súng, ai có dao dùng dao ---> quan trọng là giết được địch :lol2:

     

    Ai theo VB.NET, VB6, VBA, C, Delphi,... thì cứ phát triển theo hướng đó, quan trọng là mục đích cuối cùng phải đạt được thôi.

     

    Vấn đề không có súng có dao thì dùng GẬY, hiiiiii

     

    hoặc bí quá thì dùng tay vẽ luông

     

    Nói vậy, nhưng tùy ai mạnh gì dùng đó, chứ không nên áp đặt VB6 đúng không?

    ?


  7. Khi em thực hiện lệnh của một list thì xuất hiện 1 thồng báo lỗi sau: ...syntax error

    (List em dùng không có vấn đề gì, lỗi này tùy lúc nó mới xuất hiện trong 1 bản vẽ hoặc trên 1 số bản vẽ khi thực hiện lệnh).

    Bác nào biết chỉ giúp em lỗi này và cách khắc phục với.Xin cảm ơn thật nhiều.

     

     

    Chắc là file lisp của bạn có lỗi rồi

     

    bạn dụng (princ "............") thông báo để xem lỗi đoạn nào

     

    .


  8. Mình mới bắt đầu tìm hiểu về Autocad, muốn tự học ở nhà, chưa biết bắt đầu từ đâu?Cài AC bản nào?Lấy tài liệu ở đâu?Phương pháp học như nào hiệu quả? Mong các Pro giúp đỡ. (Điều kiện gia cảnh không cho phép học tại trung tâm @@) Sorry nếu Spam.

     

     

    Nên cài phiên bản 2007,

     

    Nên bắt đầu từ mua sách, Đọc các lệnh và làm lần lượt các bài tập từ căn bản đến mức độ khó hơn,

     

    Học từ bạn bè, từ diễn đàn ... vv


  9. Nói gì thì nói, VBA vẫn chỉ mang tính ứng dụng, hạn chế về nhiều thứ (không biên dịch, khó bảo mật, hỗ trợ ActiveX ít,...). Gọi là "chương trình" một cách đúng nghĩa khi dùng môi trường lập trình điều khiển AutoCad (và còn nhiều ứng dụng khác nữa). Ví dụ VSTA (Visual Studio Tools for Applications) đang được phát triển, đó chính là VB.NET phát triển trong các ứng dụng như Office, AutoCad,...

    Cho dù hơi chậm nhưng không ảnh hưởng vì tốc độ máy tính cao.

     

    Ví dụ chương trình vẽ mặt cắt Địa chất công trình GeoSection do tôi viết tôi dùng nền Excel, toàn bộ project viết trong VB6. VBA chỉ có chức năng gọi dll để chạy thôi. Tốc độ nhìn chung khá nhanh:

     

    http://www.giaiphapexcel.com/forum/showthr...7210#post157210

     

     

    Giờ thì nên dùng Visual studio , C# hoặc C++ thì có nhiều tiện ích, vì VBA hay VB (nếu không thuần túy can thiệp ở ngoài vào) thì hạn chế

     

    Nhưng tóm lại ngôn ngữ không quan trọng mà là quan trọng liên kết thế nào thôi?


  10. Với hình chữ nhật ABCD thì tâm scale là điểm M. Còn các hình chữ nhật khác A'B'C'D' thì tâm scale là điểm M'. Điểm M' sẽ đuợc lisp xác định dựa vào tỉ lệ AM / BM. Tức A'M'/B'M' = AM/BM. Không biết có thễ làm đuợc lisp như vậy không. Bạn Tue_NV xém có làm đuợc không.

     

    Vấn đề dđuwọc Tue_NV giải quyết

    Nhưng theo mình hay hơn cả là chọn tập các điểm tương ứng các hình,

     

    nếu không phải hình chữ nhật thì cách của tue_NV cũng khó thành?


  11. --------------------------------------

    Do em vẽ bằng pl nên ko thể bo được góc ở gốc toạ độ 0,0.

    em đã thử vẽ lại = rectang và hoàn toàn đc :(

    em cũng chưa hiểu tại sao vẽ = pl lại ko bo đc ở gốc toạ độ :(

     

    ah, xem lại thì do thế này

     

    + do bạn vẽ poline - nhưng không dùng lựa chọn Close cuối (mà bạn đã chọn bắt điểm?)--> đường không khép kín --> không thể Fillet được (không chỉ ở 0,0 đâu - thử vẽ chỗ khác cũng thế, không thể fillet tại vị trí không nối liền khép kín này)

     

    ===> CÁCH khắc phục

     

    bạn dùng lệnh Pedit : gõ Pe, chọn đối tượng hình đó --> rồi gõ C<Enter> (Close) --> rồi Enter (thoát lệnh này)

     

    rồi giờ đã nối liền khép kín --> dùng F được rồi

     

    OK?

    • Vote tăng 2

  12. Link down

    em dùng cad 2004.

    Mong các bác giúp cho!

    --------------------------------------

    Do em vẽ bằng pl nên ko thể bo được góc ở gốc toạ độ 0,0.

    em đã thử vẽ lại = rectang và hoàn toàn đc :(

    em cũng chưa hiểu tại sao vẽ = pl lại ko bo đc ở gốc toạ độ :(

     

     

    Đúng là hình của bạn lạ thật, không Fillet được, có 2 cách khắc phục:

     

    + Xoá đi vẽ lại HCN và filled là được

     

    + Cách 2: Phá khối (explode) và rồi Fillet --> sau đó lại dùng Pedit để nối lại thì cũng được

     

    Nguyên nhân tại sao thế, thì theo thông báo lỗi của Auto CAD là:

    Lines belonging to polylines must be consecutive or separated by one segment

    *Invalid*

×