Chuyển đến nội dung
Diễn đàn CADViet
  • Thông báo

    • Nguyen Hoanh

      CADViet đã hoàn tất nâng cấp   14/09/2017

      Chào các bạn, CADViet đã hoàn tất việc nâng cấp lên phiên bản mới. Tất cả các chức năng đã hoạt động theo kỳ vọng của ban quản trị. Nếu có vấn đề gì cần phản hồi, các bản post ở đây nhé: Trân trọng, Nguyễn Hoành.
Đăng nhập để thực hiện theo  
mrtranxd

Giúp tính diện tích

Các bài được khuyến nghị

mrtranxd    0

Mọi người chỉ m cách tinh diện tích thằng này với.Dùng lệnh AA thì lâu quá lại phải đổi thành đường pl.hic!Rồi cộng từng cái.t chỉ biết làm như vậy thôi.Ai có cách tính khác không?Nhanh lên nhé.Mình đang cần.

mediafile:

http://www.mediafire.com/?qi91f3c2b7b1c3y

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
pdle    125

Mọi người chỉ m cách tinh diện tích thằng này với.Dùng lệnh AA thì lâu quá lại phải đổi thành đường pl.hic!Rồi cộng từng cái.t chỉ biết làm như vậy thôi.Ai có cách tính khác không?Nhanh lên nhé.Mình đang cần.

mediafile:http://www.mediafire.com/?qi91f3c2b7b1c3y

Sao anh không tính diện tích bằng các số đã có trên các cột đã có í ạ ?

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
pdle    125

Sao anh không tính diện tích bằng các số đã có trên các cột đã có í ạ ?

Hoặc là anh dùng lệnh boundary biến các cột đó thành region, sau đó union chúng thành một cái region và tìm diện tích của cái region tổng!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
phamthanhbinh    3.123

Mọi người chỉ m cách tinh diện tích thằng này với.Dùng lệnh AA thì lâu quá lại phải đổi thành đường pl.hic!Rồi cộng từng cái.t chỉ biết làm như vậy thôi.Ai có cách tính khác không?Nhanh lên nhé.Mình đang cần.

mediafile:

http://www.mediafire.com/?qi91f3c2b7b1c3y

Hề hề hề,

Bạn xài thử cái lisp mới toe của bác hochoaihetdot xem sao nhé. nếu thấy ưng ý thì thank cho bác ấy một phát. còn chưa ưng thì ngứa chỗ nào, hãy post lên sẽ có bác gãi giùm hỉ????


(defun CheckObj (e funnam) (if (eq (cdr (assoc 0 (entget e))) funnam) T nil))
(defun PasRes(kq / OK e data)
(setq OK nil)
(while (not OK)
	(setq e (car (entsel "\tSelect a text to paste result:")))
	(if (CheckObj e "TEXT") (setq OK T) (alert "\nFunction only for TEXT object."))
)
(entmod (subst (cons 1 (rtos kq 2 2)) (assoc 1 (setq data (entget e))) data))
(princ)
)
;;;-----------------------------------------
(defun WriRes(kq / pt)
(if (not h0) (setq h0 2.0))
(setq h (getreal (strcat "\nInput height of result text <" (rtos h0 2 1) ">")))
(if (not h) (setq h h0) (setq h0 h))
(setq pt (getpoint "\tPick point of text result:"))
;;;;(if (not (tblsearch "Style" "DBD_TXT")) (command "-style" "DBD_TXT" "Vnsimple" ""	"0.7" "" "" "" ""))
(if (not (tblsearch "Layer" "DBD_TXT")) (Command "Layer" "N" "DBD_TXT" "C" "Magenta" "DBD_TXT" ""))
(entmake (list (cons 0 "TEXT") (cons 1 (rtos kq 2 2)) (cons 40 h) (cons 41 0.7) (cons 10 pt) (cons 72 1) (cons 11 pt)  
       (cons 73 2) (cons 8 "DBD_TXT") 
       ;;;;;(cons 7 "DBD_TXT") 
       (cons 62 6)))
(princ)
)
;;;-----------------------------------------
(defun OutPutRes(kq)
(if (not key1) (setq key1 "P"))
(initget "p w ")
(setq key (getkword (strcat "\Paste result on a existing text/Write result [P/W] <" key1 ">: ")))
(if (not key) (setq key key1) (setq key1 key))
(if (= (strcase key) "P") (PasRes kq))
(if (= (strcase key) "W") (WriRes kq))	
)
(defun congtrunhanchia (pheptinh sohang1 sohang2 / kq)
(cond
	((= (strcase pheptinh) "C") (setq kq (+ sohang1 sohang2)))
	((= (strcase pheptinh) "T") (setq kq (- sohang1 sohang2)))
	((= (strcase pheptinh) "N") (setq kq (* sohang1 sohang2)))
	((= (strcase pheptinh) "H") (setq kq (/ sohang1 sohang2)))	
)
kq
)
(defun c:dtdt()
(setq sca1 1.0)
(setq sca (getreal (strcat "\nNhap ty le <" (rtos sca1) ">:")))
(if (not sca)
	(setq sca sca1)
	(setq sca1 sca)
)
(setq suma 0 ss_del (ssadd) pt nil)
(while (setq pt (getpoint "Pick point"))
	(command "-boundary" "A" "" pt "")
	(setq obj (entlast))
	(command ".area" "o" obj)
	(setq suma (+ suma (getvar "area")))
	;;;;(command "-hatch" pt "")
	(setq ss_del (ssadd (entlast) ss_del))
)
(setq kq (* sca sca suma))
(if (not key_ctnc1) (setq key_ctnc1 "C"))
(initget "c t n h")
(setq key_ctnc (getkword (strcat "\Cong/Tru/Nhan/cHia [C/T/N/H] <" key_ctnc1 ">: ")))
(if (not key_ctnc) (setq key_ctnc key_ctnc1) (setq key_ctnc1 key_ctnc))
(if (not sohang0) (setq sohang0 0.00))
                 (setq chon (getstring t "\n Chon so hang <y or n> : "))
                 (if (= (strcase chon) "Y")
                      (setq sohang (atof (cdr (assoc 1 (entget (car (entsel "\n Chon text gia tri muon tinh")))))))
     (setq sohang (getreal (strcat "\nInput number to cong tru nhan chia <" (rtos sohang0) ">:")))
                 )
(if (not sohang)
	(setq sohang sohang0)
	(setq sohang0 sohang)
)
(setq kq (congtrunhanchia key_ctnc kq sohang))
(command "erase" ss_del "")
(OutPutRes kq)
(princ "\nWirrten by hochoaivandot-www.Cadviet.com")
(princ)
)

Hề hế hề,.... chúc bạn vui.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
hoan2182    836

Hoặc là anh dùng lệnh boundary biến các cột đó thành region, sau đó union chúng thành một cái region và tìm diện tích của cái region tổng!

Cách làm thủ công của anh hơi bị lâu. Em cũng làm thủ công như anh, nhưng dùng lệnh Hatch. Khi sử dụng lệnh Hatch lưu ý phải bấm Piview xem thử Hatch, nếu thấy nhỏ quá phải thay đổi scale cho phù hợp, trước khi OK kết thúc lệnh.

Chọn đối tượng Hatch>> gõ lệnh Li đểm xem diện tích:

Command: li

LIST 1 found

 

HATCH Layer: "betong"

Space: Model space

Handle = 942

Hatch pattern ANSI31

Annotative: No

Hatch scale 400.0000

Hatch angle 0

Associative

Area 35830359.0410

Origin X= 0.0000 Y= 0.0000 Z= 0.0000

 

Đây là File bản vẽ đã Hatch xong:

 

http://www.cadviet.com/upfiles/3/hatchdt.dwg

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

Đăng nhập để thực hiện theo  

×