Đến nội dung


Hình ảnh
- - - - -

TÍNH ĐỘ DỐC


  • Please log in to reply
32 replies to this topic

#1 van tu

van tu

    biết zoom

  • Members
  • Pip
  • 15 Bài viết
Điểm đánh giá: 9 (bình thường)

Đã gửi 06 November 2010 - 09:23 PM

Nhờ anh em cadviet viết hộ lisp tính độ dốc: mình co file đính kèm
http://www.mediafire...phlcktypl4x89q8

  • 0

#2 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 6007 Bài viết
Điểm đánh giá: 3113 (tuyệt vời)

Đã gửi 06 November 2010 - 09:42 PM

Nhờ anh em cadviet viết hộ lisp tính độ dốc: mình co file đính kèm

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

Hề hề hề,
Chào bạn Van tu,
Mình đã xem bản vẽ của bạn, song chưa hiểu rõ lắm. Bạn nói bấm trực tiếp vào bản vẽ tức là chọn trực tiếp vào các text trong các vòng tròn xanh hay là chọn vào đường tím nằm xiên góc có ghi độ dốc đó.
Yêu cầu của bạn không quá khó, song cần hiểu rõ mới làm đúng được bạn ạ.....
Chúc bạn vui.
  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#3 hung_xu20032000

hung_xu20032000

    biết vẽ ellipse

  • Members
  • PipPip
  • 52 Bài viết
Điểm đánh giá: -2 (bình thường)

Đã gửi 06 November 2010 - 09:59 PM

bạn có thể tham khảo theo lisp của công ty hài hoà
http://www.cadviet.c...tool_apatit.rar
  • 0

#4 nguyentuyen6

nguyentuyen6

    biết lệnh chamfer

  • Advance Member
  • PipPipPipPip
  • 213 Bài viết
Điểm đánh giá: 124 (tàm tạm)

Đã gửi 06 November 2010 - 10:21 PM

Mình viết thử cái này xem đúng ý bạn không nhé. Chọn các số lần lượt như trong biểu thức của bạn gửi nhé!!!
(defun c:dd (/ txt1 txt2 txt3 txt4 nametxt1 nametxt2 nametxt3 nametxt4 kqua obj)
(vl-load-com)
(setq txt1 (car (entsel "\nChon text1:"))
nametxt1 (entget txt1)
txt2 (car(entsel "\nChon text2:"))
nametxt2 (entget txt2)
txt3 (car(entsel "\nChon text3:"))
nametxt3 (entget txt3)
txt4 (car(entsel "\nChon text4:"))
nametxt4 (entget txt4)
kqua 0)
;=======
(setq
sochia (cond (sochia) (166))
sochiaold sochia
sochia (getreal (strcat "\nVao he so chia <"(rtos sochiaold 2 2)">: "))
)
(if (= sochia nil) (setq sochia sochiaold))
;=======

(setq
kqua
(- (- (atof (cdr (assoc 1 nametxt1))) (atof (cdr (assoc 1 nametxt2))))
(- (atof (cdr (assoc 1 nametxt3))) (atof (cdr (assoc 1 nametxt4))))
)
)
(setq kqua (/ kqua sochia))
(princ kqua)

(setq obj (vlax-ename->vla-object
(car (entsel "\nChon text de ghi ket qua:"))
)
)
(vla-put-TextString obj (strcat " "(rtos kqua 2 2)" %"))
;(vla-put-TextString obj (strcat " "(rtos (* kqua 100) 2 2)" %"))
(princ)
)

  • 0

Lisp In bản vẽ hàng loạt:
http://www.cadviet.c...ndpost&p=139860


#5 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 6007 Bài viết
Điểm đánh giá: 3113 (tuyệt vời)

Đã gửi 07 November 2010 - 12:48 AM

Mình viết thử cái này xem đúng ý bạn không nhé. Chọn các số lần lượt như trong biểu thức của bạn gửi nhé!!!

(defun c:dd (/ txt1 txt2 txt3 txt4 nametxt1 nametxt2 nametxt3 nametxt4 kqua obj)
(vl-load-com)
(setq txt1 (car (entsel "\nChon text1:"))
nametxt1 (entget txt1)
txt2 (car(entsel "\nChon text2:"))
nametxt2 (entget txt2)
txt3 (car(entsel "\nChon text3:"))
nametxt3 (entget txt3)
txt4 (car(entsel "\nChon text4:"))
nametxt4 (entget txt4)
kqua 0)
;=======
(setq
sochia (cond (sochia) (166))
sochiaold sochia
sochia (getreal (strcat "\nVao he so chia <"(rtos sochiaold 2 2)">: "))
)
(if (= sochia nil) (setq sochia sochiaold))
;=======

(setq
kqua
(- (- (atof (cdr (assoc 1 nametxt1))) (atof (cdr (assoc 1 nametxt2))))
(- (atof (cdr (assoc 1 nametxt3))) (atof (cdr (assoc 1 nametxt4))))
)
)
(setq kqua (/ kqua sochia))
(princ kqua)

(setq obj (vlax-ename->vla-object
(car (entsel "\nChon text de ghi ket qua:"))
)
)
(vla-put-TextString obj (strcat " "(rtos kqua 2 2)" %"))
;(vla-put-TextString obj (strcat " "(rtos (* kqua 100) 2 2)" %"))
(princ)
)

Chào bạn nguyentuyen6
Vì sao bạn không chọn biến sochia giống như đã làm với các số khác vì mình thấy trên bản vẽ của bạn van tu con số này cũng đã được cho trước rồi mà????
Kết quả khi tính theo phần trăm thì cái dòng code (vla-put-TextString ...... ) thứ hai của bạn mới là đúng.
  • 1
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.

#6 nguyentuyen6

nguyentuyen6

    biết lệnh chamfer

  • Advance Member
  • PipPipPipPip
  • 213 Bài viết
Điểm đánh giá: 124 (tàm tạm)

Đã gửi 07 November 2010 - 08:37 AM

Chào bạn nguyentuyen6
Vì sao bạn không chọn biến sochia giống như đã làm với các số khác vì mình thấy trên bản vẽ của bạn van tu con số này cũng đã được cho trước rồi mà????
Kết quả khi tính theo phần trăm thì cái dòng code (vla-put-TextString ...... ) thứ hai của bạn mới là đúng.

Chào bác thanhbinh!!
Cái biến sochia e làm như vậy vì nghĩ : Có khi cái biến ấy chỉ cần nhập 1 lần rồi dùng chung cho tất cả các cái sau. Thì làm như vậy sẽ đỡ mất công pick nhiều lần, hi`hi`. E ko làm cái trắc ngang trăc dọc bao h nên cũng mù tịt chẳng hiểu gì về nó cả.
Còn cái tính % thì em cũng nghĩ là dòng thứ 2 mới đúng nên vẫn để đó. Tại cái biểu thức bạn vantu gửi e cũng chả thấy cái x100 ở đâu nên cứ để tạm vào cho nó đúng yêu cầu. Đến khi bạn vantu test thử lisp này rồi cho ý kiến cũng dễ để sửa bác ạ.
  • 1

Lisp In bản vẽ hàng loạt:
http://www.cadviet.c...ndpost&p=139860


#7 quoc93

quoc93

    biết vẽ line

  • Members
  • PipPip
  • 26 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 30 December 2011 - 03:29 PM

Nhờ mấy anh viết dùm em cái lisp tính độ dốc và ghi ra luôn bao gồm cả kí hiêu.
Số liệu đầu vào: text cao độ ở hai đầu.
Chiều dài thì pick trên bản vẽ.
yêu cầu:
Khi đánh lệnh này thì buộc anh phải nhập cao độ điểm dầu
nhập cao độ điểm cuối
nhập chiều dài của doạn cần ghi độ dốc bằng cách nhập số trên bàn phím hoặc pick hai điểm và lấy chiều dài giữa hai đoạn pick.
cho phép chọn bao nhiêu số lẻ sau dấu thập phân (ví dụ: 0,001 hoặc 0,01 vv)
cu the nhu hinh sau:
http://ng6.upanh.com...236.1.120x1.bmp
  • 0

#8 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 30 December 2011 - 03:51 PM

Có 1 thắc mắc muốn hỏi bạn: sao bạn phải nhập nhiều thứ thế? (gồm: nhập 2 text, nhập chiều dài hoặc pick 2 điểm). Có thể chỉ cần pick lên đường thẳng là đã biết độ dốc (không phải dóc) rồi mà?
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#9 quoc93

quoc93

    biết vẽ line

  • Members
  • PipPip
  • 26 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 30 December 2011 - 04:03 PM

Bởi vì cái này em làm trên bình đồ, nó chỉ có text cao độ, còn đường thẳng này có cao độ z bằng 0. Anh xem thêm hình em post
  • 0

#10 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 31 December 2011 - 08:46 AM

Bởi vì cái này em làm trên bình đồ, nó chỉ có text cao độ, còn đường thẳng này có cao độ z bằng 0. Anh xem thêm hình em post

Bạn có thể gởi file cad lên được không, để còn hiểu rõ hơn? Tôi đang viết giúp bạn nhưng nhìn file hình ảnh thì code sẽ không hay.
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#11 quoc93

quoc93

    biết vẽ line

  • Members
  • PipPip
  • 26 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 31 December 2011 - 09:10 AM

http://www.mediafire...jyafkj93n5iwh39
ĐÂY LÀ FILE CAD . THỰC TẾ LÀ EM ĐANG THIẾT KẾ NÚT. ANH XEM MỘT SỐ ĐỘ DỐC EM ĐÃ TÍNH TAY VÀ GHI VÀO NHƯ TRÊN.
SỐ LIỆU ĐẦU VÀO :

+ CAO ĐỘ ĐIỂM ĐẦU, ĐIỂM CUỐI DỨOI DẠNG TEXT (LÀM SAO ĐỂ PICK CHỌN TEXT)

+ CHIỀU DÀI ĐOẠN CẦN TÍNH ĐỘ DỐC( CÓ THỂ LÀ PICK HAI ĐIỂM ĐỂ XÁC ĐỊNH CHIỀU THEO ĐOẠN THẲNG HOẶC CÓ THỂ CHỌN ĐỐI TƯỢNG LÀ LINE HOẶC PL VÀ CHƯƠNG TRÌNH TỰ XÁC ĐỊNH ĐƯỢC CHIỀU DÀI CỦA ĐỐI TƯỢNG (CÓ THỂ LÀ ĐƯỜNG THẰNG HOẶC ĐƯỜNG CONG (ĐỐI VỚI TRƯỜNG HỢP XÁC ĐỊNH ĐỘ DÓC MÉP BÓ VỈA NÓ LÀ ĐƯỜNG CONG)

+ TÙY CHỌN SỐ LẺ SAU DẤU THẬP PHÂN LÀ 2 HOẶC3...

+ CÓ KÝ HIỆU LÀ % VÀ HƯỚNG DỐC TỪ CAO XUỐNG THẤP. GIỐNG NHƯ BẢN VẼ CAD EM GỬI.
CHÚC NĂM MỚI THÀNH CÔNG, VUI VẺ VÀ SÔNGS KHỎE.
  • 0

#12 quoc93

quoc93

    biết vẽ line

  • Members
  • PipPip
  • 26 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 31 December 2011 - 09:29 AM

EM MUỐN KHI DÙNG LỆNH NÀY THÌ CAD SẼ HỎI NHỮNG CÂU LỆNH SAU:
- CHỌN TEXT CAO ĐỘ ĐIỂM ĐẦU:
-CHỌN TEXT CAO ĐỘ ĐIỂM CUỐI:
- XÁC ĐỊNH CHIỀU DÀI CẦN TÍNH ĐỘ DỐC:
- SỐ LẺ THẬP PHÂN:
- VỊ TRÍ ĐIỀN ĐỘ ĐỐC: CÁI NÀY CÓ THỂ MẶC ĐỊNH LÀ ĐIỀN Ở GIỮA KHOẢNG CÁCH MÌNH CHỌN
- LAYER, CHIỀU CAO (THUỘC TÍNH CỦA ĐỐI TƯỢNG ĐỘ DỐC THEO TEXT ĐÃ CHỌN)
  • 0

#13 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 31 December 2011 - 11:02 AM

Đây bạn! Chú ý: vị trí và kích cỡ mũi tên tôi chỉ tạm thiết kế theo 1 tỉ lệ với chiều cao text, bạn có thể sửa lại theo ý mình.

;Doan Van Ha - CADViet.com - Ngay 31/12/2011
;Muc dich: Tinh va ghi do doc.
(defun C:HA( / ent1 ent2 ent3 ent4 obj cd pg h sty lop doc pg1 pg2 pt1 ptg pt2)
(BAT_DAU)
(setq ent1 (entsel "\nPick Text cao do diem dau: "))
(setq ent2 (entsel "\nPick Text cao do diem cuoi: "))
(setq ent3 (entsel "\nPick len 1 Text mau de lay thong tin Text: "))
(setq ent4 (entsel "\nPick duong can lay chieu dai va ghi do doc: "))
(or *stp* (setq *stp* 2))
(setq stp (getint (strcat "\nSo chu so thap phan <" (itoa *stp*) ">: ")))
(if (not stp) (setq stp *stp*) (setq *stp* stp))
(initget "T P") (setq huong (getkword "\nChon huong ve do doc [Trai->phai/Phai->trai]: "))
(if (and ent1 ent2 ent3 ent4 stp)
(progn
(setq obj (vlax-ename->vla-object (car ent4)))
(setq cd (vlax-curve-getDistAtParam obj (vlax-curve-getEndParam obj)))
(setq pg (vlax-curve-getPointAtDist obj (/ cd 2)))
(setq goc (angle '(0 0 0) (vlax-curve-getFirstDeriv obj (vlax-curve-getParamAtPoint obj pg))))
(cond ((>= (* 1 pi) goc (* 0.5 pi)) (setq goc (- goc pi)))
((>= (* 1.5 pi) goc pi) (setq goc (- goc pi)))
((>= (* 2 pi) goc (* 1.5 pi)) (setq goc (- goc (* 2 pi)))))
(setq h (cdr (assoc 40 (entget (car ent3)))))
(setq sty (cdr (assoc 7 (entget (car ent3)))))
(setq lop (cdr (assoc 8 (entget (car ent3)))))
(setq doc (abs (/ (- (atof (cdr (assoc 1 (entget (car ent1))))) (atof (cdr (assoc 1 (entget (car ent2)))))) cd)))
(setq pg1 (polar pg (+ goc (/ pi 2)) (* 1.5 h)))
(setq pg2 (polar pg1 (+ goc (/ pi 2)) (* 1.5 h)))
(cond ((and (> goc 0) (= huong "T")) (setq gocL goc))
((and (> goc 0) (= huong "P")) (setq gocL (+ pi goc)))
((and (< goc 0) (= huong "T")) (setq gocL goc))
((and (< goc 0) (= huong "P")) (setq gocL (+ pi goc))))
(setq pt1 (polar pg1 (+ gocL pi) (* 3 h)) ptg (polar pt1 gocL (* 5 h)) pt2 (polar ptg gocL (* 1 h)))
(acet-sysvar-set (list "osmode" 0 "cmdecho" 0))
(command "pline" pt1 ptg "w" (* 0.2 h) 0 pt2 "")
(command "text" "s" sty "j" "m" pg2 h (/ (* 180 goc) pi) (strcat (rtos doc 2 stp) "%"))
(command "change" (entlast) "" "p" "la" lop "")))
(KET_THUC)
(princ))
(defun BAT_DAU()
(vl-load-com)
(setq AcDoc (vla-get-activeDocument (vlax-get-acad-object)))
(vla-StartUndoMark AcDoc)
(setq err *error* *error* KHI_LOI))
(defun KET_THUC()
(acet-sysvar-restore)
(vla-EndUndoMark AcDoc)
(setq *error* err))
(defun KHI_LOI(msg)
(acet-sysvar-restore)
(vla-EndUndoMark AcDoc)
(redraw)
(command "u")
(princ (strcat "\n" msg ", Reset System Variables\n"))
(setq *error* err))

  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#14 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 31 December 2011 - 11:20 AM

Đây bạn! Chú ý: vị trí và kích cỡ mũi tên tôi chỉ tạm thiết kế theo 1 tỉ lệ với chiều cao text, bạn có thể sửa lại theo ý mình.


;Doan Van Ha - CADViet.com - Ngay 31/12/2011
;Muc dich: Tinh va ghi do doc.
(defun C:HA( / ent1 ent2 ent3 ent4 obj cd pg goc h sty lop doc pg1 pg2 pt1 ptg pt2)
(BAT_DAU)
(setq ent1 (car (entsel "\nPick Text cao do diem dau: ")))
(setq ent2 (car (entsel "\nPick Text cao do diem cuoi: ")))
(setq ent3 (car (entsel "\nPick len 1 Text mau de lay thong tin Text: ")))
(setq ent4 (car (entsel "\nPick duong can ghi do doc: ")))
(or *stp* (setq *stp* 2))
(setq stp (getint (strcat "\nSo chu so thap phan <" (itoa *stp*) ">: ")))
(if (not stp) (setq stp *stp*) (setq *stp* stp))
(if (and ent1 ent2 ent3 ent4)
(progn
(setq obj (vlax-ename->vla-object ent4))
(setq cd (vlax-curve-getDistAtParam obj (vlax-curve-getEndParam obj)))
(setq pg (vlax-curve-getPointAtDist obj (/ cd 2)))
(setq goc (angle '(0 0 0) (vlax-curve-getFirstDeriv obj (vlax-curve-getParamAtPoint obj pg))))
(setq h (cdr (assoc 40 (entget ent3))))
(setq sty (cdr (assoc 7 (entget ent3))))
(setq lop (cdr (assoc 8 (entget ent3))))
(setq doc (/ (- (atof (cdr (assoc 1 (entget ent1)))) (atof (cdr (assoc 1 (entget ent2))))) cd))
(setq pg1 (polar pg (+ goc (/ pi 2)) (* 1.5 h)))
(setq pg2 (polar pg1 (+ goc (/ pi 2)) (* 1.5 h)))
(setq pt1 (polar pg1 (+ goc pi) (* 3 h)) ptg (polar pt1 goc (* 5 h)) pt2 (polar ptg goc (* 1 h)))
(acet-sysvar-set (list "osmode" 0 "cmdecho" 0))
(command "pline" pt1 ptg "w" (* 0.2 h) 0 pt2 "")
(command "text" "s" sty "j" "m" pg2 h (/ (* 180 goc) pi) (strcat (rtos doc 2 stp) "%"))
(command "change" (entlast) "" "p" "la" lop "")))
(KET_THUC)
(princ))
(defun BAT_DAU()
(vl-load-com)
(setq AcDoc (vla-get-activeDocument (vlax-get-acad-object)))
(vla-StartUndoMark AcDoc)
(setq err *error* *error* KHI_LOI))
(defun KET_THUC()
(acet-sysvar-restore)
(vla-EndUndoMark AcDoc)
(setq *error* err))
(defun KHI_LOI(msg)
(acet-sysvar-restore)
(vla-EndUndoMark AcDoc)
(redraw)
(command "u")
(princ (strcat "\n" msg ", Reset System Variables\n"))
(setq *error* err))

Tue_NV có góp ý chút :
Dòng
(if (and ent1 ent2 ent3 ent4)
(progn
......
nên đưa lên trên để kiểm tra các biến ent1, ent2, ent3 và ent4 đồng thời kiểm tra cả biến stp luôn
(setq ent1 (car (entsel "\nPick Text cao do diem dau: ")))(setq ent2 (car (entsel "\nPick Text cao do diem cuoi: ")))(setq ent3 (car (entsel "\nPick len 1 Text mau de lay thong tin Text: ")))(setq ent4 (car (entsel "\nPick duong can ghi do doc: ")))(or *stp* (setq *stp* 2))(setq stp (getint (strcat "\nSo chu so thap phan <" (itoa *stp*) ">: ")))(if (not stp) (setq stp *stp*) (setq *stp* stp))
Nếu 1 trong các biến này không được nhập hoặc chọn thì lệnh sẽ không được thực thi.
Vậy sẽ hay hơn.
  • 0

#15 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 31 December 2011 - 11:59 AM

Cám ơn bác đã góp ý. Không biết ý bác có phải như code dưới đây không, chứ nếu vậy thì kẹt thằng stp khi enter để lấy mặc định. Với lại, nếu viết cho thật chỉn chu thì còn nhiều điều cần bổ sung nữa như: entsel không phải text, stp âm, UCS... Tất nhiên cũng làm được thôi, bác hè!

(if (and
(setq ent1 (car (entsel "\nPick Text cao do diem dau: ")))
(setq ent2 (car (entsel "\nPick Text cao do diem cuoi: ")))
(setq ent3 (car (entsel "\nPick len 1 Text mau de lay thong tin Text: ")))
(setq ent4 (car (entsel "\nPick duong can ghi do doc: ")))
(or *stp* (setq *stp* 2))
(setq stp (getint (strcat "\nSo chu so thap phan <" (itoa *stp*) ">: ")))
(if (not stp) (setq stp *stp*) (setq *stp* stp)))
(progn
...

  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#16 quoc93

quoc93

    biết vẽ line

  • Members
  • PipPip
  • 26 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 31 December 2011 - 01:50 PM

Anh ơi sao cái không thấy chỗ chọn chiều dài , nếu không có chiều dài làm sao xác định được độ dốc của đường mình cần tìm độ dốc.
  • 0

#17 quoc93

quoc93

    biết vẽ line

  • Members
  • PipPip
  • 26 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 31 December 2011 - 01:54 PM

Ở đây hình như anh xác định chiều dài dựa vào hai điểm text như thế là không được chiều dài phải do mình chọn hoặc pick đối tượng line hoặc pl.
hướng của chiều dốc là từ cao đến thấp
độ dốc là không âm
công thức tính độ dốc:
| cao độ điểm đầu - cao độ điểm cuối |*100/chiều dài của đoạn mình cần tìm độ dốc
chú ý có dấu trị tuyệt đối đó anh
  • 0

#18 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5447 Bài viết
Điểm đánh giá: 2624 (tuyệt vời)

Đã gửi 31 December 2011 - 06:06 PM

1. Chiều dài: đã lấy chiều dài của curve được chọn rồi mà.
2. Giá trị tuyệt đối: đã sửa.
3. Rất khó để đáp ứng y/c hướng dốc vì các text cao độ của bạn không có quy luật liên quan với curve, hơn nữa nó lại có thể là đường cong. Tôi làm thêm cho bạn tuỳ chọn hướng vẽ.
Link vẫn như cũ.
  • 1

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#19 quoc93

quoc93

    biết vẽ line

  • Members
  • PipPip
  • 26 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 31 December 2011 - 07:25 PM

chỗ chọn hướng dốc em làm mà không được mình làm như thế nào để chọn hướng dốc.
  • 0

#20 quoc93

quoc93

    biết vẽ line

  • Members
  • PipPip
  • 26 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 31 December 2011 - 07:31 PM

Anh có thể viết thêm pick để chọn hướng vẽ độ dốc được không. Sau khi chọn số thập phân sẽ hỏi pick hai điểm để xác định vị trí đặc kí hiệu dốc.
  • 0