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

divine kai

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

    83
  • Đã tham gia

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

Bài đăng được đăng bởi divine kai


  1. Vào lúc 26/11/2013 tại 13:52, phamthanhbinh đã nói:

    Hế hề hế,

    Muốn có cái bảng này, bạn cần chép thêm file Chiadat.dcl vào trong thư mục có đường dẫn tìm kiếm trong CAD mới được bạn ạ.

    Anh ơi, cụ thể là đường dẫn nào anh có thể chỉ em được không anh? nó cứ hiện ntn

     

    image.png.6cee80aa0a8668b9c183a3027559f1d4.png


  2. Dear Các anh chị trong diễn đàn,

    Em mới ra trường chưa có nhiều kinh nghiệm trong lĩnh vực mảng phân lô thửa đất. Anh chị nào có kinh nghiệm về mảng này có thể cho em xin file cad mẫu dự án đã phân lô hoàn tất thành dự án ( khung thông tin, trang trí, viewport để em tham khảo được không ạ.

    Em xin cảm ơn anh chị trong diễn đàn rất nhiều...

    Có dự án thực tế thì càng tốt ạ, em xin cảm ơn.


  3. 1 giờ trước, DuongTrungHuy đã nói:

    Cái này là tọa độ VN2000 của điểm ngoài thực địa đó Bạn.

     

    8 điểm bên dưới có khả năng là tọa độ B,L mà họ thể hiện theo 1 format riêng.

     

    Có nhiều phần mềm để chuyển tọa độ VN2000 về tọa độ B,L như hhmaps v.v...

    Bạn có thể tham khảo trên mạng đó nhé!

     

    Chào.

     

    Cảm ơn bạn, nhưng mà bạn có thể nói thêm cho mình biết là format đó là gì và cách chuyển như thế nào không, mình tìm không thấy nói về tọa độ kì lạ này


  4. Chào các anh trên diễn đàn,

    Em làm bên địa chính, hiện tại em có dãy tọa độ X, Y tọa độ thể hiện là 8 số và 7 số ( bên dưới hình phần thứ 2) . Cho em hỏi là tọa độ này là tọa độ gì và cách để chuyển tọa độ này về hệ tọa độ trắc địa BL cad X6 số Y7 số ạ, hoặc có phần mềm nào cũng được ạ, có thể chuyển về tọa độ WGs 84 cũng được.

    Em xin chân thành cảm ơn.

    1672400176_toado8-7.thumb.png.014764ff2efbf5f79d2c748840fcc534.png


  5. 6 phút trước, Duong Nhat Duy đã nói:

    Cảm ơn bạn nhé !

    Mình đã sửa lại chỗ đặt text tại trọng tâm từ lisp bác @ndtnv, nhưng sao cảm thấy sai sai (ví dụ text trong hcn lại ko ở trọng tâm), nhưng dù sao thì text đã nằm trong hatch, kể cả hatch lồi hatch lõm.

    Lệnh tách hatch thì mình gửi bạn 1 lisp riêng biệt, chứ viết như bác @Doan Nguyen Van thì dài quá.

     

    HPS - Tach Hatch.lsp

    Hatch to Text.lsp

    image.png.1fa9d30937f9af75779e8682c0fd0e4e.png

    lisp thứ 2 nó báo lỗi như thế này anh


  6. 1 phút trước, Doan Nguyen Van đã nói:

    Trường hợp này cũng giải quyết được thôi, nhưng chắc bạn muốn sửa tay hơn, dễ thì sửa giúp bạn nhưng TH đặc biệt thì cần nhiều thời gian để làm, mà chẳng ai muốn bỏ thời gian để làm free nhưng cái hại não cả....

    @Doan Van Ha cháu dính nhiều rồi bác ạ :'D 

    dạ em cũng biết nó hơi phức tạp nên tốt hơn hết để em sửa tay luôn =))


  7. 6 phút trước, Doan Nguyen Van đã nói:

    Bạn dùng lệnh FIND để sửa nhé

    
    (alert (strcat "LISP Hatch to Text"
    	       "\nNguoi viet: 3Duy"
    	       "\nLenh thuc hien:"
    	       "\n        H2T - Dien tich"
    	       "\n        H2L - Ten layer"
    	       )
    )
    
    ;TEN LENH
    (defun C:ii ()
      (alert (strcat "LISP Hatch to Text"
    	       "\nNguoi viet: 3Duy"
    	       "\nLenh thuc hien:"
    	       "\n        H2T - Dien tich"
    	       "\n        H2L - Ten layer"
    	       )
    )
      )
    
    (vl-load-com)
    
    ;HATCH TO TEXT
    (defun C:h2t ( / AREA ELST OBJ)
      (setq elst (acet-ss-to-list (ssget (list (cons 0 "HATCH")))))
      (foreach ent elst
        (if (> (vla-get-numberofloops (vlax-ename->vla-object ent)) 1) (progn
       	(setq entl (entlast))
    	(command "UNDO" "BE")
    	(vl-cmdf "_-HATCHEDIT" (ssadd ent) "H" "")
    	(setq ss (ssadd ent))
      (while (setq entl (entnext entl))
    	  (setq ss (ssadd entl ss)) )
      (setq lst (list))
      (foreach ent2 (acet-ss-to-list ss)
        (setq obj (vlax-ename->vla-object ent2))
        (if (vl-catch-all-error-p (vl-catch-all-apply (function (lambda () (setq area (vlax-get obj 'area))))))
          (setq area 0.00)
          (setq area (vlax-get obj 'area))
          )
        (setq lst (append lst (list (list (cdr (assoc 8 (entget ent2))) (rtos area 2 (getvar "LUPREC")) (car (boundingbox obj))))))
        )
        	(command "UNDO" "E")
    	(command "UNDO" "1")
      (foreach lst1 lst
    	  (maketext (car lst1) (cadr lst1) (caddr lst1))
    	  ) ) (progn
    (setq obj (vlax-ename->vla-object ent))
        (if (vl-catch-all-error-p (vl-catch-all-apply (function (lambda () (setq area (vlax-get obj 'area))))))
          (setq area 0.00)
          (setq area (vlax-get obj 'area))
          )
    (maketext (cdr (assoc 8 (entget ent))) (rtos area 2 (getvar "LUPREC")) (car (boundingbox obj)))
    ))
        )
        
      (print)
      )
    (defun C:h2l ( / ELST OBJ)
      (setq elst (acet-ss-to-list (ssget (list (cons 0 "HATCH")))))
        (foreach ent elst
        (if (> (vla-get-numberofloops (vlax-ename->vla-object ent)) 1) (progn
     	(setq entl (entlast))
    	(command "UNDO" "BE")
    	(vl-cmdf "_-HATCHEDIT" (ssadd ent) "H" "")
    	(setq ss (ssadd ent))
    	(while (setq entl (entnext entl))
    	  (setq ss (ssadd entl ss)) )
    	(Setq lst (list))
    	       (foreach ent2 (acet-ss-to-list ss)
    		 (setq lst (append lst (list (list (cdr (assoc 8 (entget ent2))) (car (boundingbox (vlax-ename->vla-object ent2)))))))
    		 )
    	(command "UNDO" "E")
    	(command "UNDO" "1")
    	(foreach lst1 lst
    	  (maketext (car lst1) (car lst1) (cadr lst1))
    	  )
    	) (maketext (cdr (assoc 8 (entget ent))) (cdr (assoc 8 (entget ent))) (car (boundingbox (vlax-ename->vla-object ent))))
          ))
    	
        
      (print)
      )
    
    (defun boundingbox (obj / a b lst lst1)
      (if
        (and
          (vlax-method-applicable-p obj 'getboundingbox)
          (not (vl-catch-all-error-p (vl-catch-all-apply 'vla-getboundingbox (list obj 'a 'b))))
          (setq lst (mapcar 'vlax-safearray->list (list a b)))
          )
        (setq lst1 (mapcar '(lambda ( a ) (mapcar '(lambda ( b ) ((eval b) lst)) a))
    		       '((caar cadar) (caadr cadar) (caadr cadadr) (caar cadadr))
    		       )
    	  lst1 (append (list (list (/ (+ (car (car lst1)) (car (caddr lst1))) 2.) (/ (+ (cadr (car lst1)) (cadr (caddr lst1))) 2.))) lst1)
    	  )
        )
      )
    (defun maketext (lay noidung point / lay point)
    (entmakex (list
    		(cons 0 "TEXT")
    		(cons 100 "AcDbEntity")
    		(cons 100 "AcDbText")
    		(cons 8 lay)
    		(cons 1 noidung)
    		(cons 7 (getvar "TEXTSTYLE"))
    		(cons 10 point)
    		(cons 11 point)
    		(cons 40 (/ (getvar "VIEWSIZE") 100))
    		(cons 72 4)
    		))
      )

     

    image.thumb.png.a7c86d127be5c0fb58e02370cd5caaa3.png

    còn những trường hợp như thế này bắt buộc phải sửa tay đúng không anh?

×