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

anonmyous

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

    48
  • Đã tham gia

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

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


  1. Chả là thế này, hôm nay nhận được một bản vẽ mà khi dùng hàm LISP để đọc tọa độ của đối tượng TEXT (cdr (assoc 10 data)) thì nó cho ra kết quả không trùng với tọa độ của TEXT ấy khi dùng lệnh ID để kiểm tra vị trí TEXT

    Em cũng có kiểm tra UCS, PLAN đưa về World hết rồi mà kết quả vẫn như cũ

    Nhờ các bác khắc phục giúp, bản vẽ thì nay lại quên chép về rồi nên không up lên được, up sau vậy


  2. Hôm nay tui có viết một đoạn mã trong đó cần đếm số lượng chữ cái, vấn đề nó là thế này :

    - Nếu chữ không dấu "dat dao" chẳng hạn, thì hàm (strlen "dat dao") = 7 -> OK

    - Nếu chữ theo font Unicode, nhìn vào thì nó là (strlen "đất đào") nhưng thực sự nó lại hiểu là (strlen "\U+0111\U+1EA5t \U+0111\U+00E0o") và kết quả là bằng 31.

    Bác nào giúp hộ đoạn mã tính chiều dài của một chuỗi bất kì, có thể chữ không dấu, cũng có thể chữ dùng font Unicode hộ mình với


  3. Em cảm ơn bác Doan Van Ha nhiều nhé. Mà lúc nãy quên mất, không nhờ viết luôn cả cái thao tác ngược lại phức tạp hơn biến từ wipeout thành poly line với. Bác xem có giúp đc e luôn ko với?

     

    Chọn Wipe Out -> Explode

    PEdit -> Chọn đoạn bất kì trên cái mớ vừa bẻ -> [ENTER] -> J -> P -> [Enter] -> Done

    Có cần phải LISP ko nhỉ


  4. Chào các bác !

    Bác nào cho em xin đoạn mã đọc dữ liệu đường 2D POLYLINE

    Đường mà (assoc 0 data ) = (0 . "POLYLINE") đấy ạ, không phải (0 . "LWPOLYLINE") đâu

    E nhớ trên 4r cũng có rồi nhưng mà dùng các hàm khi chạy (vl-load-com)

    E muốn đọc nó bằng LISP thuần túy, đồng thời cũng xác định luôn vị trí các đoạn cong trên đường này


  5. + Trước đây khi vẽ Polyline (2004) bằng lệnh Pline -> vào xem Properties của đường vẽ xong nó báo là Polyline

    Hoặc giả dụ có 1 đường 2D Polyline nào đó trong bản vẽ, chỉ cần Explode nó ra rồi dùng Pedit nối lại là nó thành Polyline

     

    + Sau này mình dùng CAD 2012 thì khi dùng Pline -> vào xem Properties của đường vẽ xong nó báo là 2D Polyline

    và có Eplode nó ra đi nữa rồi nối lại bằng Pedit thì nó vẫn là 2D Polyline

     

    Vấn đề của mình là : làm sao vẽ đường có thuộc tính là Polyline (chứ không phải 2D Polyline) trong CAD 2012, hay có cách nào để chuyển đổi từ 2D Polyline sang Polyline ko ?


  6. Quan sát video, Tue_NV chỉ có ý kiến nhỏ để chương trình chạy nhanh hơn là : Bạn có thể gộp các Lisp lại thành 1 Lisp duy nhất -> Khi chọn Block -> Xuất ra và ghi 1 lượt luôn. Nếu khối lượng nhiều, chắc chắn sẽ nhanh hơn đấy.

     

    Hiện tại nó chậm là do mình vẫn dùng command OFFSET của CAD, cũng đang tính viết riêng cho nó một func OFFSET riêng.


  7. Cám ơn các bạn. Bạn đoán vậy đúng rồi. Tuy nhiên, mình đính chính một tý: các ĐỈNH của các đoạn thẳng tạo thành nên uốn lượn theo đường cong càng giống càng tốt chứ kg cần nằm về hai phía của nó. Mình gởi hình cho các bạn

    4_6.jpg

     

    Mục đích của bác muốn biến đổi vậy để làm gì, dựng WipeOut cho nhanh chăng, còn độ chính xác thì cái này ở phần đầu vào ta có thể cho nó một tham số khống chế chiều dài đoạn chia, nhập & chạy lại LISP cho đến khi kết quả thỏa mãn

×