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

Nộ Thiên

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

    290
  • Đã tham gia

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

  • Ngày trúng

    2

Bài đăng được đăng bởi Nộ Thiên


  1. Từ lâu, lúc làm quen với Lisp, mình đã nghĩ đến việc xây dựng 1 Lisp như thế này. Nhưng lúc đó thấy kg khả thi:

    Bài toán là Bạn cần fải chỉnh sửa hàng loạt các chi tiết theo 1 cách giống nhau. Cụ thể chẳng hạn như fải thay đổi bề rộng dầm của hàng lọat mặt cắt dầm.

     

    Bình thường bạn sẽ fải chỉnh sửa từng mặt cắt một là : stretch tới, lui như thế nào đó. Bạn sẽ làm như vậy với từng mặt cắt một rất mất công.

     

    Bây giờ Lisp đó sẽ làm việc như thế này:

    - Chạy lisp

    - chọn 1 điểm làm chuẩn

    - click 1 lựa chọn để bắt đầu record các lệnh tiếp theo sau đây.

    Lúc này mình sẽ chỉnh sửa 1 mặt cắt mẫu bằng các lệnh bình thường của CAD: stretch, copy, move, zoom, pan ...

    - click 1 lựa chọn để biết là kết thúc record các lệnh.

    - Tiếp theo chương trình sẽ yêu cầu nhập 1 điểm tiếp theo để thực hiện lại các lệnh đã record trước đó với điểm chuẩn mới là điểm mình vừa lựa chọn. Hoặc là Exit để kết thúc.

     

    Như vậy là mình đã chỉnh sửa đc hàng loạt các mặt cắt theo cùng 1 kiểu hiệu chỉnh.

     

    Vì bây giờ thấy CAD ver mới có thêm chức năng ghi lại các lệnh trước đó nên băn khoăn là liệu có xây dựng đc 1 Lisp như vậy có khả thi hay không? Mong A/E xem xét.


  2. Thế không ổn bác Lâm ạ, vì sẽ không thể hiện được khả năng quản lý bản vẽ. VD nếu 1 bản vẽ có nhiều đối tượng lặp lại thì dùng block sẽ nhẹ hơn bản vẽ không dùng block mà dùng đối tượng rời rạc

    Đúng vậy cái gì lập lại nhiều thì dùng Block sẽ đở tốn dung lượng hơn

    - Chẳng hạn như bảng thống kê mà làm theo kiểu text sẽ nặng hơn so với bản thống kê Block Att

    - nhiều line nhỏ chưa chắn đã qua mặt đc pline.

    - nhiều line nhỏ chưa chắc qua đc nét đứt.

    - ...

     

     

    Tiêu chí mà Ji đưa ra là yêu cầu bản vẽ dung lượng nhỏ nhất với số lượng đối tượng trong bản vẽ nhiều nhất ? còn các điều kiện khác không quan trong , theo tôi chỉ cần chuyển bản vẽ đó ra dạng PDF rồi dùng 1 phần mềm convert ngược lại , khi đó cả bản vẽ sẽ chỉ có 1 layer duy nhất , 1 màu duy nhất với số lượng rất nhiều các đối tượng do các text hay các pline ... bị explorer :lol:

    Covert lại cho ra 1 bản vẽ khổng lồ, chứ kg fải là tối ưu nhất. Bởi đa số các đối tượng đc rã ra hết.


  3. Anh Hoành ơi cho em hỏi tý!

    EM có nhiều file lisp (các lisp đều chạy đưọc ), khi Biến nó thành đuôi VLX, thì có 1 số lệnh không chạy đưọc nghĩa là sao nhỉ

    EM biến riêng lênhkhộng chạy đưọc đó thành VLX (Bỏ các file lisp khác) thì nó lại chạy đuợc

     

    Nghialã thế nào nhỉ??????????????

    Giúp em với

    Chắc là bị trùng tên hàm rồi.


  4. Cái bộ đó mình lấy từ DVD "tuyển tập các ebook về xây dựng", là tài liệu mà Bác Phi Phi bên ketcau.com mang về trong 1 chuyến về nước và gửi ở 1 tiệm đĩa ở Đà Nẵng. Tiệm này chém 50k/DVD. Trong này thấy rất nhiều sách (chủ yếu là sách nước ngoài). Ai cần sách gì nếu kiểm tra thấy có mình sẽ up lên.


  5. Nếu ai cũng 5 thank 1 book như bác thì cái thế giới này biết phải cảm ơn nhau bao nhiêu lần khi đưa cho nhau mượn một quyển sách. Bác nói làm em mủi lòng quá. Biết bao nhiêu em nhỏ ở các vùng miền núi xa xôi không có sách vở học. Bác tài liệu thì nhiều thật đấy. Nhưng nói thật là em chưa có thấy bác Up lên được gì cho anh em cả. Vẫn đang chờ dài cổ ra. Bác có sách dạy Tekla Structure thì up lên em mấy cuốn đi. 100 cái thank đang chờ bác đấy. :lol:

    Mình có bộ Tekla Tutorials (viết = tiếng anh) có xài kg?

    Xem qua bài 1 có thích hợp kg?

    Lesson 1

    • Vote tăng 1

  6. em có 2 đoạn code làm y xì từ trong sách hướng dẫn mà ko hiện dialog lên được. Mong các bác chỉ bảo cho em, em mới chỉ tập tành học LISP :lol:

    //Ten file:ex18-6.dcl

    //muc dich: su dung ham mode_tile de thay doi trang thai cua edit_box

    ex6: dialog {

    label = "Grid setup";

    :boxed_row {

    label = "Grid";

    : radio_button { label = "Grid &On"; key = " radio_on"; }

    : radio_button { label = "Grid &Off"; key = "radio_off"; }

    }

    : edit_box { label = "&X Spacing"; edit_width = 6; key = "edit_X"; }

    : edit_box { label = "&Y Spacing"; edit_width = 6; key = "edit_Y"; }

    ok_cancel_err;

    }

    //Ket thuc file

     

    ;file ex18-6.lsp

    ;muc dich hien thi hop thoai ex6 chua trong ex18-6.dcl

    (defun c:ex6 (/ DCL_ID)

    (setq DCL_ID (load_dialog "C:\testlisp\ex18-6.DCL"))

    (if (not (new_dialog "ex6" DCL_ID)) (exit))

    (action_tile "radio_off" "(mode_tile \"edit_X\" 1) (mode_tile \"edit_Y\" 1)")

    (action_tile "radio_on" "(mode_tile \"edit_X\" 0) (mode_tile \"edit_Y\" 0)")

    (start_dialog)

    (unload_dialog DCL_ID)

    (princ)

    )

     

    khi em load ex18.lsp rồi thực hiện ex6 thì hiện ra lỗi thế này :

    Command: ex6

    ; error: quit / exit abort

    (setq DCL_ID (load_dialog "C:\\testlisp\\ex18-6.DCL"))


  7. chào các bạn mình thấy một số phần mềm viết bằng lisp muốn chạy được thì phải cung cấp cho họ một số seri của ổ cứng sau đó người ta cấp cho mình một file LISP(ví dụ File KHOA.lsp) thì phần mềm mới chạy được. bạn nào biết nguyên lý của lisp đó (KHOA.lsp) hướng dẫn mình với hay có lsp nào post lên cho mình xem với.

    Cứ đưa file của ct đó lên đi.

×