Đến nội dung


Hình ảnh
* * * - - 8 Bình chọn

Viết lisp theo yêu cầu [phần 2]


  • Chủ đề bị khóa Chủ đề bị khóa
3783 replies to this topic

#1321 romeo1982

romeo1982

    biết lệnh mirror

  • Members
  • PipPipPip
  • 152 Bài viết
Điểm đánh giá: 19 (tàm tạm)

Đã gửi 29 June 2010 - 02:43 PM

oh, lip rất hay, làm công việc của mình nhẹ đi phần nào, thật cám ơn.
Mình nhờ bạn 1 tí nữa, vấn đề là mình vẽ bản vẽ qui hoạch, những cái qui hoạch lớn mình thống kê hiện trạng rất là mệt.
mình có 1 file: http://www.mediafire...j1tmnvgneu.(xin lỗi cadviet ko hiểu vì sao mình ko upload được trên cadviet)
trong đó có 5 polyline khép kín, trong mỗi polyline có từ 1 đến 5 hình tròn, mình muốn xin 1 cái lip khi ra lệnh nó sẽ tự dò trong mỗi polyline nếu có 1 hình tròn thì tạo ra 1 layer mới đặt tên là 1T chẳng hạn và đưa vòng tròn đó và polyline về layer 1T, tương tự cho polyline có 2 hình tròn thì 2T, polyline có 3 hình tròn thì 3T,...........
Chú ý là file qui hoạch thường rất nặng và rất dễ bị treo.Xin cám ơn
  • 0

#1322 romeo1982

romeo1982

    biết lệnh mirror

  • Members
  • PipPipPip
  • 152 Bài viết
Điểm đánh giá: 19 (tàm tạm)

Đã gửi 29 June 2010 - 03:44 PM

Quên nữa mấy bác chú ý là những hình chữ nhật là polyline nhưng có thể nó bị vỡ ra thành line và bị hở nhỏ nữa, cám ơn
  • 0

#1323 Tadiman893

Tadiman893

    Chưa sử dụng CAD

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

Đã gửi 29 June 2010 - 04:16 PM

Các bạn cho mình hỏi tại sao nhập sl1 là số lẻ thì nó ra đúng sl1 còn nếu sl1 là chẵn thì nó chỉ ra sl/2. Cảm ơn các bạn!
http://www.cadviet.c.../tadiman893.lsp

--------------------------------------------------------------------------------------------------
(defun c:tron()
(setq A (getpoint "\n Chon diem thu nhat :"))
(setq B (getpoint A"\n Chon diem thu hai :"))
(setq O (list (/ (+ (car A) (Car :cheers:) 2) (/ (+ (cadr A) (cadr :s_big:) 2)))
(command ".line" A B "")
(setq sl1 (getstring 5"\n Nhap so luong duong kinh trong duong tron :"))
(command ".array" "last" "" "p" O sl1 "" "")
)

---------------------------------------------------------------------------------------------------
  • 0

#1324 truongthanh

truongthanh

    biết lệnh text

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

Đã gửi 30 June 2010 - 08:49 AM

Cho mình hỏi, ví dụ mình có 10 pline đã được DIM kích thước bằng lệnh DIMALINGED, mình dùng lệnh DIMREASSOCIATE để gắn PLINE với DIM, mình phải ngồi làm từng DIM với từng PLINE, vậy cho mình hỏi có cách nào hay LISP nào mà khi mình quét chọn tất cả nó sẽ hiểu DIM đó là của PLINE đó ko (nghĩa là cái DIM đang đo cho PLINE nào thì sẽ gắn liền với cái PLINE đó)
Thanks các bạn rất nhiều!

Nhờ các bạn giúp dùm mình với!
  • 0

#1325 romeo1982

romeo1982

    biết lệnh mirror

  • Members
  • PipPipPip
  • 152 Bài viết
Điểm đánh giá: 19 (tàm tạm)

Đã gửi 30 June 2010 - 10:03 AM

oh, lip rất hay, làm công việc của mình nhẹ đi phần nào, thật cám ơn.
Mình nhờ bạn 1 tí nữa, vấn đề là mình vẽ bản vẽ qui hoạch, những cái qui hoạch lớn mình thống kê hiện trạng rất là mệt.
mình có 1 file: http://www.mediafire...j1tmnvgneu.(xin lỗi cadviet ko hiểu vì sao mình ko upload được trên cadviet)
trong đó có 5 polyline khép kín, trong mỗi polyline có từ 1 đến 5 hình tròn, mình muốn xin 1 cái lip khi ra lệnh nó sẽ tự dò trong mỗi polyline nếu có 1 hình tròn thì tạo ra 1 layer mới đặt tên là 1T chẳng hạn và đưa vòng tròn đó và polyline về layer 1T, tương tự cho polyline có 2 hình tròn thì 2T, polyline có 3 hình tròn thì 3T,...........
Chú ý là file qui hoạch thường rất nặng và rất dễ bị treo.Xin cám ơn

Mong các cao thủ giúp đỡ sớm ,cám ơn
  • 0

#1326 yes

yes

    biết pan

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

Đã gửi 30 June 2010 - 04:19 PM

@Yes : Lisp ẩn đối tượng theo màu trên diễn đàn đã có. Bạn chịu khó Tìm kiếm vậy

1. Cám ơn bạn đã hướng dẫn. Mình đã tìm trên diễn đàn nhưng không có. Chỉ có lisp tạo layer theo color nhưng lại bị lỗi. Mình cũng đang cần, bạn có thể sửa lai lỗi giúp mình không.

(Defun c:MRL ()
(princ "\nPHAM QUOC DUY Binh Son - Quang ngai")
(setq XX (ssget "x"))
(setq L 0)
(setq M (sslength XX))
(while (< L M)
(setq DT (ssname XX L))
(setq DTM (entget DT))
(setq TEXT (cdr (assoc 10 DTM)))
(setq MAUDt (cdr (assoc 62 DTM)))

(command "-layer" "new" MAUDT "color" MAUDT MAUDT "")
(command ".chprop" DT "" "la" MAUDT "COLOR" "BYLAYER" "")
(setq L (1+ L))
)

(setq nhan (* l 100))
(setq chia (/ nhan m))
(princ (strcat "\nDa chinh: <" (itoa chia) " %>"))

(Princ)
)
2. Nhờ bạn viết giúp mình Lisp ẩn hiện đối tượng theo màu. Cảm ơn bạn đã quan tâm.
  • 0

#1327 dkkx3a

dkkx3a

    biết lệnh trim

  • Members
  • PipPipPip
  • 190 Bài viết
Điểm đánh giá: 57 (tàm tạm)

Đã gửi 30 June 2010 - 04:27 PM

2. Nhờ bạn viết giúp mình Lisp ẩn hiện đối tượng theo màu. Cảm ơn bạn đã quan tâm.


Bạn theo cái này thử. kết hợp với fi của CAD nữa là Ê Kô
http://www.cadviet.c...p?showtopic=279
  • 0
TỰ SỰ
Biển vào chiều buồn giữa cô liêu
Sóng vỗ bờ bạc đầu con nước
Khi biển động như lòng ta chợt động
Biển ồn ào nhưng thực rất dịu êm.......

#1328 romeo1982

romeo1982

    biết lệnh mirror

  • Members
  • PipPipPip
  • 152 Bài viết
Điểm đánh giá: 19 (tàm tạm)

Đã gửi 01 July 2010 - 08:35 AM

Mình nhờ bạn 1 tí nữa, vấn đề là mình vẽ bản vẽ qui hoạch, những cái qui hoạch lớn mình thống kê hiện trạng rất là mệt.
mình có 1 file:http://www.cadviet.com/upfiles/2/goi_cadviet.rar
trong đó có 5 polyline khép kín, trong mỗi polyline có từ 1 đến 5 hình tròn, mình muốn xin 1 cái lip khi ra lệnh nó sẽ tự dò trong mỗi polyline nếu có 1 hình tròn thì tạo ra 1 layer mới đặt tên là 1T chẳng hạn và đưa vòng tròn đó và polyline về layer 1T, tương tự cho polyline có 2 hình tròn thì 2T, polyline có 3 hình tròn thì 3T,...........
Chú ý là file qui hoạch thường rất nặng và rất dễ bị treo.Xin cám ơn

Mong các cao thủ giúp đỡ sớm, cám ơn
  • 0

#1329 romeo1982

romeo1982

    biết lệnh mirror

  • Members
  • PipPipPip
  • 152 Bài viết
Điểm đánh giá: 19 (tàm tạm)

Đã gửi 01 July 2010 - 09:33 AM

Chuyện này không thể làm được hay sao vậy các cao thủ cho mình biết với
  • 0

#1330 duy782006

duy782006

    PHẠM QUỐC DUY

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 2155 Bài viết
Điểm đánh giá: 1360 (rất tốt)

Đã gửi 01 July 2010 - 10:02 AM

1. Cám ơn bạn đã hướng dẫn. Mình đã tìm trên diễn đàn nhưng không có. Chỉ có lisp tạo layer theo color nhưng lại bị lỗi. Mình cũng đang cần, bạn có thể sửa lai lỗi giúp mình không.

(Defun c:MRL ()
(princ "\nPHAM QUOC DUY Binh Son - Quang ngai")
(setq XX (ssget "x"))
(setq L 0)
(setq M (sslength XX))
(while (< L M)
(setq DT (ssname XX L))
(setq DTM (entget DT))
(setq TEXT (cdr (assoc 10 DTM)))
(setq MAUDt (cdr (assoc 62 DTM)))

(command "-layer" "new" MAUDT "color" MAUDT MAUDT "")
(command ".chprop" DT "" "la" MAUDT "COLOR" "BYLAYER" "")
(setq L (1+ L))
)

(setq nhan (* l 100))
(setq chia (/ nhan m))
(princ (strcat "\nDa chinh: <" (itoa chia) " %>"))

(Princ)
)
2. Nhờ bạn viết giúp mình Lisp ẩn hiện đối tượng theo màu. Cảm ơn bạn đã quan tâm.

Lisp MRL bị lổi gì bạn?
  • 0

Cứ ngỡ trần gian là cõi thật.Cho nên tất bật đến bây giờ.
Tạo hộp thoại bằng lisp My blog QUY ĐỊNH ĐẶT TÊN TOPIC TRONG CHUYÊN MỤC LISPD http://ktsduy.wordpress.com/
Để cám ơn chỉ cần nhấn rep_up.png
(Là nhấn vào nút đó phía bài viết của người ta í chứ đừng có nhè cái hình này mà nhấn miết đi nha :-D


#1331 yes

yes

    biết pan

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

Đã gửi 01 July 2010 - 11:39 AM

Lisp MRL bị lổi gì bạn?

Dòng lệnh sau chạy mãi không dừng. Bạn kiểm tra lại giúp minh nhé. Thank

Enter name list for new layer(s): Enter an option
[?/Make/Set/New/ON/OFF/Color/Ltype/LWeight/Plot/Freeze/Thaw/LOck/Unlock/stAte]:
color
New color [Truecolor/COlorbook] <7 (white)>: Enter an option
[?/Make/Set/New/ON/OFF/Color/Ltype/LWeight/Plot/Freeze/Thaw/LOck/Unlock/stAte]:
  • 0

#1332 yes

yes

    biết pan

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

Đã gửi 01 July 2010 - 11:45 AM

Bạn theo cái này thử. kết hợp với fi của CAD nữa là Ê Kô
http://www.cadviet.c...p?showtopic=279


Thế thì phức tạp và mất thời gian lắm. Mình muốn chỉ dùng lệnh để bật tắt tất cả các đối tượng có cùng màu tương tự như lệnh layiso. Rất mong được các cao thủ giúp đỡ.
  • 0

#1333 hoa35ktxd

hoa35ktxd

    biết lệnh move

  • Members
  • PipPipPip
  • 125 Bài viết
Điểm đánh giá: 38 (tàm tạm)

Đã gửi 01 July 2010 - 12:32 PM

Thế thì phức tạp và mất thời gian lắm. Mình muốn chỉ dùng lệnh để bật tắt tất cả các đối tượng có cùng màu tương tự như lệnh layiso. Rất mong được các cao thủ giúp đỡ.

Tôi thấy có vẻ hơi khó (hoặc không thể thực hiện được) vì các đối tượng cùng màu nhưng lại nằm trên các lớp khác nhau, nhưng trên các lớp lại có nhiều đối tượng khác không cùng màu với đối tượng cần bật tắt.
Hiện tại tôi chỉ biết cách bật tắt lớp, còn bật tắt từng đối tượng thì chưa biết. Nếu có thể bật tắt từng đối tượng thì có thể giải quyết được vấn đề của bạn.
  • 0

#1334 Sony2007

Sony2007

    biết lệnh copy

  • Members
  • PipPipPip
  • 115 Bài viết
Điểm đánh giá: 85 (tàm tạm)

Đã gửi 01 July 2010 - 01:20 PM

Giúp đỡ e 1 lisp về nội suy điểm. E có một bài toán thế này:
- Pick điểm P1 bất kỳ trong autocad, chỉ nhập thêm cao độ Z1 của điểm đó (user)
- Pick điểm P2 bất kỳ trong autocad, chỉ nhập thêm cao độ Z2 của điểm đó (user)
sau đó chọn điểm bất kỳ nằm trên đường thẳng P1P2, nội suy giá trị Z thông qua các giá trị P1(x1,y1,z1), P2 (x2, y2,z2) và P (x, y) (thuộc đường thẳng P1P2). Ghi giá trị Z nội suy được bằng text. (Các giá trị P này khi pick tùy ý thuộc P1P2)

Các bác giúp đỡ e với nhé
  • 0

#1335 duy782006

duy782006

    PHẠM QUỐC DUY

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 2155 Bài viết
Điểm đánh giá: 1360 (rất tốt)

Đã gửi 01 July 2010 - 01:52 PM

Dòng lệnh sau chạy mãi không dừng. Bạn kiểm tra lại giúp minh nhé. Thank

Enter name list for new layer(s): Enter an option
[?/Make/Set/New/ON/OFF/Color/Ltype/LWeight/Plot/Freeze/Thaw/LOck/Unlock/stAte]:
color
New color [Truecolor/COlorbook] <7 (white)>: Enter an option
[?/Make/Set/New/ON/OFF/Color/Ltype/LWeight/Plot/Freeze/Thaw/LOck/Unlock/stAte]:

Do nhiều đối tượng nên hắn chạy lâu đó thôi chứ ko phải lổi. Ko biết có cách nào nhanh hơn ko chứ lisp này thì đúng là chờ mệt. Khi cần cải tạo bản vẽ của những người vẽ ko theo bài bản mình mới dùng lisp này nên cũng ko nghiên cứu thêm.
  • 0

Cứ ngỡ trần gian là cõi thật.Cho nên tất bật đến bây giờ.
Tạo hộp thoại bằng lisp My blog QUY ĐỊNH ĐẶT TÊN TOPIC TRONG CHUYÊN MỤC LISPD http://ktsduy.wordpress.com/
Để cám ơn chỉ cần nhấn rep_up.png
(Là nhấn vào nút đó phía bài viết của người ta í chứ đừng có nhè cái hình này mà nhấn miết đi nha :-D


#1336 romeo1982

romeo1982

    biết lệnh mirror

  • Members
  • PipPipPip
  • 152 Bài viết
Điểm đánh giá: 19 (tàm tạm)

Đã gửi 01 July 2010 - 02:16 PM

Mình nhờ các cao thủ 1 tí, vấn đề là mình vẽ bản vẽ qui hoạch, những cái qui hoạch lớn mình thống kê hiện trạng rất là mệt.
mình có 1 file: http://www.cadviet.c...goi_cadviet.rar
trong đó có 5 polyline khép kín, trong mỗi polyline có từ 1 đến 5 hình tròn, mình muốn xin 1 cái lip khi ra lệnh nó sẽ tự dò trong mỗi polyline nếu có 1 hình tròn thì tạo ra 1 layer mới đặt tên là 1T chẳng hạn và đưa vòng tròn đó và polyline về layer 1T, tương tự cho polyline có 2 hình tròn thì 2T, polyline có 3 hình tròn thì 3T,...........
Chú ý là file qui hoạch thường rất nặng và rất dễ bị treo, các hình chữ nhật có thể bị nổ ra thành line và có thể bị hở nhỏ nữa .Xin cám ơn
  • 0

#1337 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1435 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 01 July 2010 - 02:19 PM

oh, lip rất hay, làm công việc của mình nhẹ đi phần nào, thật cám ơn.
Mình nhờ bạn 1 tí nữa, vấn đề là mình vẽ bản vẽ qui hoạch, những cái qui hoạch lớn mình thống kê hiện trạng rất là mệt.
mình có 1 file: http://www.mediafire...j1tmnvgneu.(xin lỗi cadviet ko hiểu vì sao mình ko upload được trên cadviet)
trong đó có 5 polyline khép kín, trong mỗi polyline có từ 1 đến 5 hình tròn, mình muốn xin 1 cái lip khi ra lệnh nó sẽ tự dò trong mỗi polyline nếu có 1 hình tròn thì tạo ra 1 layer mới đặt tên là 1T chẳng hạn và đưa vòng tròn đó và polyline về layer 1T, tương tự cho polyline có 2 hình tròn thì 2T, polyline có 3 hình tròn thì 3T,...........
Chú ý là file qui hoạch thường rất nặng và rất dễ bị treo.Xin cám ơn


Còn vấn đề này "các hình chữ nhật có thể bị nổ ra thành line và có thể bị hở nhỏ nữa" thì pótay !
Bạn thử LISP này :
(defun c:addLay (/ ent i j layname objci objpl pt_lst ss ssc)
;| By : Gia Bach, gia_bach @ www.CadViet.com |;
(vl-load-com)

(defun GetPtLst (obj / anginc arcparam blg delta eparam inc pt ptlst sparam)
(setq sparam (vlax-curve-getStartParam obj)
eparam (vlax-curve-getEndParam obj)
anginc (* pi (/ 6 180.0)))
(while (<= sparam eparam)
(setq pt (vlax-curve-getPointAtParam obj sparam))
(if (not (equal pt (car ptlst) 1e-12))
(setq ptlst (cons pt ptlst)))
(if (and (/= sparam eparam)
(setq blg (abs (vlax-invoke obj 'GetBulge sparam)))
(/= 0 blg))
(progn
(setq delta (* 4 (atan blg)) ;included angle
inc (/ 1.0 (1+ (fix (/ delta anginc))))
arcparam (+ sparam inc))
(while (< arcparam (1+ sparam))
(setq pt (vlax-curve-getPointAtParam obj arcparam)
ptlst (cons pt ptlst)
arcparam (+ inc arcparam)))) )
(setq sparam (1+ sparam)) )
ptlst)
;main
(princ "\nChon Pline : ")
(if (setq ss (ssget '((0 . "LWPOLYLINE"))))
(progn
(setq i -1)
(while (setq ent (ssname ss (setq i (1+ i))))
(setq objPL (vlax-ename->vla-object ent)
pt_lst (GetPtLst objPL)
ssC (ssget "_WP" pt_lst (list (cons 0 "CIRCLE"))) )
(if ssC
(progn
(setq num (sslength ssC))
(if (> num 255) (setq num (rem num 255)))
(setq layname (strcat "Layer_" (itoa num) "_Circle") j -1)
(or (tblsearch "Layer" layname) (vl-cmdf "-layer" "N" layname "c" num layname ""))
(vla-put-Layer objPL layname)
(while (setq ent (ssname ssC (setq j (1+ j))))
(setq objCi (vlax-ename->vla-object ent) )
(vla-put-Layer objCi layname) ) ) ))))
(princ))

  • 1

#1338 truongthanh

truongthanh

    biết lệnh text

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

Đã gửi 01 July 2010 - 03:36 PM

Cho mình hỏi, ví dụ mình có 10 pline đã được DIM kích thước bằng lệnh DIMALINGED, mình dùng lệnh DIMREASSOCIATE để gắn PLINE với DIM, mình phải ngồi làm từng DIM với từng PLINE, vậy cho mình hỏi có cách nào hay LISP nào mà khi mình quét chọn tất cả nó sẽ hiểu DIM đó là của PLINE đó ko (nghĩa là cái DIM đang đo cho PLINE nào thì sẽ gắn liền với cái PLINE đó)
Thanks các bạn rất nhiều!

Có ai giúp mình với!
Thanks mọi người nhiều lắm!
  • 0

#1339 romeo1982

romeo1982

    biết lệnh mirror

  • Members
  • PipPipPip
  • 152 Bài viết
Điểm đánh giá: 19 (tàm tạm)

Đã gửi 01 July 2010 - 04:15 PM

Còn vấn đề này "các hình chữ nhật có thể bị nổ ra thành line và có thể bị hở nhỏ nữa" thì pótay !
Bạn thử LISP này :

(defun c:addLay (/ ent i j layname objci objpl pt_lst ss ssc)
;| By : Gia Bach, gia_bach @ www.CadViet.com |;
(vl-load-com)

(defun GetPtLst (obj / anginc arcparam blg delta eparam inc pt ptlst sparam)
(setq sparam (vlax-curve-getStartParam obj)
eparam (vlax-curve-getEndParam obj)
anginc (* pi (/ 6 180.0)))
(while (<= sparam eparam)
(setq pt (vlax-curve-getPointAtParam obj sparam))
(if (not (equal pt (car ptlst) 1e-12))
(setq ptlst (cons pt ptlst)))
(if (and (/= sparam eparam)
(setq blg (abs (vlax-invoke obj 'GetBulge sparam)))
(/= 0 blg))
(progn
(setq delta (* 4 (atan blg)) ;included angle
inc (/ 1.0 (1+ (fix (/ delta anginc))))
arcparam (+ sparam inc))
(while (< arcparam (1+ sparam))
(setq pt (vlax-curve-getPointAtParam obj arcparam)
ptlst (cons pt ptlst)
arcparam (+ inc arcparam)))) )
(setq sparam (1+ sparam)) )
ptlst)
;main
(princ "\nChon Pline : ")
(if (setq ss (ssget '((0 . "LWPOLYLINE"))))
(progn
(setq i -1)
(while (setq ent (ssname ss (setq i (1+ i))))
(setq objPL (vlax-ename->vla-object ent)
pt_lst (GetPtLst objPL)
ssC (ssget "_WP" pt_lst (list (cons 0 "CIRCLE"))) )
(if ssC
(progn
(setq num (sslength ssC))
(if (> num 255) (setq num (rem num 255)))
(setq layname (strcat "Layer_" (itoa num) "_Circle") j -1)
(or (tblsearch "Layer" layname) (vl-cmdf "-layer" "N" layname "c" num layname ""))
(vla-put-Layer objPL layname)
(while (setq ent (ssname ssC (setq j (1+ j))))
(setq objCi (vlax-ename->vla-object ent) )
(vla-put-Layer objCi layname) ) ) ))))
(princ))

Cám ơn bạn, nhưng sao mình thử trên file mình gởi lên cadviet nó lại ko có phản ứng gì hết vậy mong bạn giúp đỡ
  • 0

#1340 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

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

Đã gửi 01 July 2010 - 05:41 PM

Giúp đỡ e 1 lisp về nội suy điểm. E có một bài toán thế này:
- Pick điểm P1 bất kỳ trong autocad, chỉ nhập thêm cao độ Z1 của điểm đó (user)
- Pick điểm P2 bất kỳ trong autocad, chỉ nhập thêm cao độ Z2 của điểm đó (user)
sau đó chọn điểm bất kỳ nằm trên đường thẳng P1P2, nội suy giá trị Z thông qua các giá trị P1(x1,y1,z1), P2 (x2, y2,z2) và P (x, y) (thuộc đường thẳng P1P2). Ghi giá trị Z nội suy được bằng text. (Các giá trị P này khi pick tùy ý thuộc P1P2)

Các bác giúp đỡ e với nhé

Chào bạn Sony2007,
Bài toán của bạn đặt ra chưa chặt chẽ.
Bạn sử dụng việc pick diểm thứ nhất và pick điểm thừ 2 thì Ok chưa có vấn đề gì. Nhưng việc pick điểm thứ 3 thì sao nhỉ??? Có chắc chắn bạn sẽ pick điểm này đúng vào đoạn thẳng P1P2 hay không??? Nếu không trúng (mà điều này có nhẽ chiếm tới xác suất 90% đây bạn ạ) thì sẽ nội suy ra sao bạn nhỉ ?????
Trong trường hợp bạn pick không trúng thì bạn cần có 1 nguyên tắc lựa chọn điêm nào đó nằm trên đoạn thẳng P1P2 để nội suy bạn ạ. Còn việc nội suy này không phải quá phức tạp đâu, chỉ là các phép tính theo tam giác đồng dạng mà thôi. Bạn hoàn toàn có thể làm được mà.
Chúc bạn thành cô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.