tiazu 1 Báo cáo bài đăng Đã đăng Tháng 4 28, 2008 Mình ko biết cách nào để vẽ 1 cung có kích thước chính xác. Ai vẽ được xin chỉ giúp. Thanks nhiều. Ví dụ: Cung có radius=1600, length=1000 (Dùng dimarc để đo). 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
KE AN MAY DI VANG 574 Báo cáo bài đăng Đã đăng Tháng 4 28, 2008 Mình ko biết cách nào để vẽ 1 cung có kích thước chính xác. Ai vẽ được xin chỉ giúp. Thanks nhiều. Ví dụ: Cung có radius=1600, length=1000 (Dùng dimarc để đo). Bạn vẽ cả đường tròn rồi dùng lệnh Draw > point > Measre Lệnh này chia đường tròn ra các cung tròn có độ dài cho trước. Bạn bạn di con trỏ vào đường tròn sẽ thấy các điểm chia. ( lệnh Divide : chia đường tròn thành n phần đều nhau)> 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
crazylisp 14 Báo cáo bài đăng Đã đăng Tháng 4 28, 2008 Hoặc có thể làm như sau: Vẽ một arc bất kỳ có bán kính 1600. Sau đó dùng lệnh lengthen, chọn arc vừa vẽ, chọn tham số Total, nhập vào số 1000. 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
hiepquang 265 Báo cáo bài đăng Đã đăng Tháng 4 29, 2008 Xin lỗi các Bro, mình trông gà hoá cuốc nên tưởng nhầm là dây cung :cheers: 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
tiazu 1 Báo cáo bài đăng Đã đăng Tháng 5 7, 2008 Bạn vẽ cả đường tròn rồi dùng lệnh Draw > point > Measre Lệnh này chia đường tròn ra các cung tròn có độ dài cho trước. Bạn bạn di con trỏ vào đường tròn sẽ thấy các điểm chia. ( lệnh Divide : chia đường tròn thành n phần đều nhau)> Hoặc có thể làm như sau: Vẽ một arc bất kỳ có bán kính 1600. Sau đó dùng lệnh lengthen, chọn arc vừa vẽ, chọn tham số Total, nhập vào số 1000. Cám ơn mọi người đã giúp đỡ mình. Thanks :cheers: 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
nguyenbakien 31 Báo cáo bài đăng Đã đăng Tháng 5 7, 2008 Xin lỗi các Bro, mình trông gà hoá cuốc nên tưởng nhầm là dây cung :blush: Ban bi con mèo nó bịt mắt rùi nên ko thấy la phải rùi :cheers: 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
k_victory 12 Báo cáo bài đăng Đã đăng Tháng 5 11, 2008 Đọc bài này mình lại nghĩ tới vấn đề mà mình đã gặp hồi trước, nhưng chưa có cách giải quyết đó là, làm cách nào để vẽ chính xác 1 cung tròn có độ dài cung và biết điểm đầu và điểm cuối(tức là độ dài đoạn chắn cung đó), tất nhiên là chưa biết bán kính.Lúc đó mình chỉ làm phương pháp mò, là xác định đoạn chắn cung sau đó kéo cho đoạn cung cho đến khi đúng độ dài đã biết, nhưng chỉ là tương đối. 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
KE AN MAY DI VANG 574 Báo cáo bài đăng Đã đăng Tháng 5 11, 2008 Tôi bấm Thanhs cho bạn vì: -Đọc bài viết của bạn, tôi không rõ đây là lời giãi bầy tâm sự hay là câu hỏi. -Có thể coi đây là một tình huống tâm lý. -"để vẽ chính xác 1 cung tròn có độ dài cung và biết điểm đầu và điểm cuối(tức là độ dài đoạn chắn cung đó), tất nhiên là chưa biết bán kính.)" Sao trước đây bạn không dùng lượng giác để tính, theo tôi dùng luợng giác tính sẽ vẽ được cung tròn có kT chính xá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
k_victory 12 Báo cáo bài đăng Đã đăng Tháng 5 13, 2008 Đó là 1 câu hỏi mà! :cheers: mình có ghi là mình chưa có cách giải quyết và mình có hỏi làm thế nào nữa!Mình cũng xem các công thức tình bán kính cung tròn của lớp 8 nhưng không được, bạn có thể nói cụ thể về cách tính lượng giác không?Kiến thức phổ thông lâu rồi ko xài!Mong bạn giúp đỡ vì cái này liên quan công việc của mình. 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
lamtecco2 856 Báo cáo bài đăng Đã đăng Tháng 6 6, 2008 Đó là 1 câu hỏi mà! :s_big: mình có ghi là mình chưa có cách giải quyết và mình có hỏi làm thế nào nữa!Mình cũng xem các công thức tình bán kính cung tròn của lớp 8 nhưng không được, bạn có thể nói cụ thể về cách tính lượng giác không?Kiến thức phổ thông lâu rồi ko xài!Mong bạn giúp đỡ vì cái này liên quan công việc của mình. Ta có công thức tính chiều dài 1 cung bất kỳ như sau : K = ( R*pi*A)/180 Trong đó : K : Độ dài của cung R : Bán kính đường cong A : Góc hướng tâm tạo bởi cung tròn đó Vì vậy ở đây ta cần 1 lisp vẽ cung tròn có bán kính R cho trước và được tạo bởi góc có độ lớn xác định bởi công thức : A = (K*180)/(pi*R) Cụ thể với yêu cầu bài toán của Tiazu với R = 1600 và chiều dài cung tròn là 1000 ta tính được độ lớn góc cần mở để vẽ được cung tròn là 35d48'35.5" 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
duongsatdn 763 Báo cáo bài đăng Đã đăng Tháng 6 6, 2008 Ta có công thức tính chiều dài 1 cung bất kỳ như sau : K = ( R*pi*A)/180Trong đó : K : Độ dài của cung R : Bán kính đường cong A : Góc hướng tâm tạo bởi cung tròn đó Vì vậy ở đây ta cần 1 lisp vẽ cung tròn có bán kính R cho trước và được tạo bởi góc có độ lớn xác định bởi công thức : A = (K*180)/(pi*R) Cụ thể với yêu cầu bài toán của Tiazu với R = 1600 và chiều dài cung tròn là 1000 ta tính được độ lớn góc cần mở để vẽ được cung tròn là 35d48'35.5" Vẫn phải cần bán kính bác ạ! làm cách nào để vẽ chính xác 1 cung tròn có độ dài cung và biết điểm đầu và điểm cuối(tức là độ dài đoạn chắn cung đó), tất nhiên là chưa biết bán kính 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
duongsatdn 763 Báo cáo bài đăng Đã đăng Tháng 6 6, 2008 làm cách nào để vẽ chính xác 1 cung tròn có độ dài cung và biết điểm đầu và điểm cuối(tức là độ dài đoạn chắn cung đó), tất nhiên là chưa biết bán kính Có vô số đường tròn với 2R>a, trong đó a là chiều dài dây cung (tức là khoảng cách giữa hai điểm cho trước)! Các đường tròn này có tâm nằm trên đường thẳng vuông góc với "dây cung" đã cho tại trung điểm của nó. 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
icoffshore 9 Báo cáo bài đăng Đã đăng Tháng 6 6, 2008 biết điểm đầu và điểm cuối + chiều dài dây cung coi như đã xác định được bán kính và tâm 2 đường tròn thoả mãn yêu cầu này nằm đối xứng nhau qua đoạn thẳng nối 2 điểm cho trước kia. Vấn đề là bán kính tính ra sẽ là số vô tỉ chẳng hạn thì sẽ ko nhập vào một cách tuyệt đối được. Chúng ta cần dùng Cad với các kiểu truy bắt đối tượng để xử lý vụ này một cách chính mới là khó. 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
icoffshore 9 Báo cáo bài đăng Đã đăng Tháng 6 7, 2008 Vì chiều dài đường cong ko thể tính toán chính xác tuyệt đối được bởi số Pi đã là số vô tỉ rồi. Như vậy, nếu cho chiều dài cung thì việc xác định bán kính vẫn chỉ là chính xác ở mức độ nào đó. Tóm lại, yêu cầu này hiện nay chưa thể làm đượ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
leolas 133 Báo cáo bài đăng Đã đăng Tháng 6 7, 2008 làm cách nào để vẽ chính xác 1 cung tròn có độ dài cung và biết điểm đầu và điểm cuối(tức là độ dài đoạn chắn cung đó), tất nhiên là chưa biết bán kính. Có công thức tính như sau : C/S = sin(x)/x Với C : chiều dài dây cung , S : chiều dài cung , (x) : là góc chắn cung/2 Để giải phương trình này bạn dùng hệ thức Newton để giài tìm ra (x), có (x) thì ra được bán kính. Một cách nữa nhanh và đơn giản hơn là vào trang : http://www.1728.com/circsect.htm Chọn vào CHORD & ARC, rồi nạp thông số chiều dài dây cung & cung vào, rồi ghi các kết quả được xuất ra 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
k_victory 12 Báo cáo bài đăng Đã đăng Tháng 6 18, 2008 Có công thức tính như sau :C/S = sin(x)/x Với C : chiều dài dây cung , S : chiều dài cung , (x) : là góc chắn cung/2 Để giải phương trình này bạn dùng hệ thức Newton để giài tìm ra (x), có (x) thì ra được bán kính. Một cách nữa nhanh và đơn giản hơn là vào trang : <a href="http://www.1728.com/circsect.htm" target="_blank">http://www.1728.com/circsect.htm</a> Chọn vào CHORD & ARC, rồi nạp thông số chiều dài dây cung & cung vào, rồi ghi các kết quả được xuất ra Cảm ơn bạn nhưng đã có được góc chắn cung thì đồng nghĩa với có được tâm--->có được bán kính---> vẫn chưa đúng với giả thuyết đặt ra. 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
k_victory 12 Báo cáo bài đăng Đã đăng Tháng 6 18, 2008 Có vô số đường tròn với 2R>a, trong đó a là chiều dài dây cung (tức là khoảng cách giữa hai điểm cho trước)! Các đường tròn này có tâm nằm trên đường thẳng vuông góc với "dây cung" đã cho tại trung điểm của nó. Bạn này nhầm lẫn chiều dài dây cung với chiều dài đoạn chắn cung rồi! 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
duongsatdn 763 Báo cáo bài đăng Đã đăng Tháng 6 19, 2008 Bạn này nhầm lẫn chiều dài dây cung với chiều dài đoạn chắn cung rồi! Cảm ơn bạn! Xin bạn định nghĩa giúp hai khái niệm trên! 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
ssg 1.102 Báo cáo bài đăng Đã đăng Tháng 6 20, 2008 Các bạn dùng thử lisp này. 1) Lệnh ARL: vẽ cung với bán kính R và chiều dài cung L, cho độ chính xác "tuyệt đối". Khái niệm tuyệt đối nằm trong dấu nháy vì thực chất, mọi cái đều... tương đối. AutoCAD, hay bất kỳ trình CAD nào, đều xử lý số liệu đến một độ chính xác nào đó theo khả năng của nó, nhất là trong các phép tính toán đại số và lượng giác phức tạp. 2) Lệnh ACL: vẽ cung với chiều dài dây C và chiều dài cung L. Trong hầu hết các trường hợp thông thường, cho độ chính xác không dưới 6 chữ số thập phân (1 phần triệu drawing unit). Bạn nào muốn kết quả chính xác "tuyệt đối" hoặc "gần như tuyệt đối" thì thêm 1 hoặc vài số 0 nữa ở chỗ dx 0.00001 trong chương trình. Đổi lại, bạn phải chịu khó ngồi... thư giãn một chút khi chạy chương trình! ;;;----------------------------------------------------------- (defun RTD(x) (/ (* x 180) pi) ) ;;;----------------------------------------------------------- (defun Tang(x) (/ (sin x) (cos x)) ) ;;;----------------------------------------------------------- (defun asin(x) (cond ((and (< x 1) (> x -1)) (atan (/ x (sqrt (- 1 (expt x 2))))) ) ((= x 1) (/ pi 2)) ((= x -1) (/ pi -2)) ) ) ;;;----------------------------------------------------------- (defun acos(x) (- (/ pi 2) (asin x))) ;;;----------------------------------------------------------- (defun C:ARL( / R L p1 p2 a oldos) ;;;Arc with Radius + Length (setq R (getreal "\nBan kinh:") L (getreal "\nChieu dai cung:") p1 (getpoint "\nDiem chuan:") p2 (polar p1 pi R) a (rtd (/ L R)) oldos (getvar "osmode") ) (setvar "osmode" 0) (command "arc" p1 "c" p2 "a" a) (setvar "osmode" oldos) (princ) ) ;;;----------------------------------------------------------- (defun C:ACL(/ C L p1 p2 x dx h p3 oldos) ;;;Arc with Chord + Length (setq C (getreal "\nChieu dai day:") L (getreal "\nChieu dai cung:") ) (if (>= C L) (progn (alert "Error! Chieu dai day phai nho hon chieu dai cung!") (exit))) (setq p1 (getpoint "\nDiem chuan:") p2 (polar p1 pi C) x (* 2 (acos (/ C L))) dx 0.00001 ) (while (> (/ x (sin x)) (/ L C)) (setq x (- x dx))) (setq dx (* dx dx)) (if (/= (/ x (sin x)) (/ L C)) (while (< (/ x (sin x)) (/ L C)) (setq x (+ x dx))) ) (setq x (- x (/ dx 2)) h (* (/ C 2) (tang (/ x 2))) p3 (list (- (car p1) (/ C 2)) (+ (cadr p1) h)) oldos (getvar "osmode") ) (setvar "osmode" 0) (command "arc" p1 p3 p2) (setvar "osmode" oldos) (princ) ) ;;;----------------------------------------------------------- P/S: Bạn nào biết cách giải phương trình sin(x) = k.x (với k = const) xin làm giúp. Đưa kết quả giải phương trình trên vào lisp sẽ hay hơn và cho kết quả chính xác hơn. Kiến thức lượng giác ssg quên sạch rồi! 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
k_victory 12 Báo cáo bài đăng Đã đăng Tháng 6 23, 2008 Cảm ơn bạn!Xin bạn định nghĩa giúp hai khái niệm trên! Ah,trước giờ mình vẫn nghĩ dây cung đường cong (trong trường hợp này là 1 phần của đường tròn), còn đoạn chắn dây cung là 2 giao điểm của đường thẳng và dây cung, vì là kiến thức cũ nên có thể mình nhớ lầm, rất mong được trao đổi với bạn để ôn lại kiến thức cũ. :mellow: 2 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
Nguyen Hoanh 4.663 Báo cáo bài đăng Đã đăng Tháng 6 23, 2008 P/S: Bạn nào biết cách giải phương trình sin(x) = k.x (với k = const) xin làm giúp. Đưa kết quả giải phương trình trên vào lisp sẽ hay hơn và cho kết quả chính xác hơn. Kiến thức lượng giác ssg quên sạch rồi! Cái này em cũng ngồi giải nát óc mà không ra. Search mỏi tay thì được phương pháp giải bài toán: f(x) = sin(x) - kx = 0. Nhưng người ta cũng phải sử dụng phương pháp lặp Newton để giải. Bài gốc (bằng tiếng Anh) ở đây: http://mathforum.org/dr.math/faq/faq.circle.segment.html#n1 Xin mô tả lại phương pháp này cho mọi người (cũng lặp giống pp của bác ssg): Khởi tạo: X0 = sqrt(6-6k). Công thức truy hồi: Xn+1 = Xn - (sin(Xn)-kXn)/(cos(Xn)-k). Khi n tiến đến vô tận thì Xn tiến về giá trị kết quả. Về phương diện tin học, ta sẽ lặp công thức cho đến lúc nào hiệu của Xn và Xn+1 bé hơn sai số mong muốn thì dừng lặp. Đoạn code của bác ssg trở thành: (setq saiso 0.0000001) (defun timx (k / xn xn+1) (setq xn (sqrt (- 6.0 (* 6.0 k))) xn+1 (+ xn (* 2.0 saiso)) ) (while (> (abs (- xn+1 xn)) saiso) (setq xn xn+1 xn+1 (- Xn (/ (- (sin Xn) (* k Xn)) (- (cos Xn) k))) ) ) xn ) (defun C:ACL (/ C L p1 p2 x dx h p3 oldos) ;;;Arc with Chord + Length (setq C (getreal "\nChieu dai day:") L (getreal "\nChieu dai cung:") ) (if (>= C L) (progn (alert "Error! Chieu dai day phai nho hon chieu dai cung!")(exit))) (setq p1 (getpoint "\nDiem chuan:") p2 (polar p1 pi C) k (/ C L) ) (setq x (* 2.0 (timx k)) x (/ (* x 180.0) pi) ;; convert radian to degree oldos (getvar "osmode") ) (setvar "osmode" 0) (command "arc" p1 "E" p2 "A" x) (setvar "osmode" oldos) (princ) ) 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
t8778 0 Báo cáo bài đăng Đã đăng Tháng 7 12, 2008 Với việc vẽ cái cung như vậy dùng lisp là phải rồi. 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
daik50 22 Báo cáo bài đăng Đã đăng Tháng 3 21, 2012 Xin lỗi cả nhà, các bác có thể cho em xin lisp vẽ cung khi biết điểm đầu, điểm cuối và chiều dài cung được không, hoặc có thể chỉ cho e la phải tìm cái này ở đâu không. Em đang rất cần. Thanks các bác trướ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
phamthanhbinh 3.146 Báo cáo bài đăng Đã đăng Tháng 3 21, 2012 Xin lỗi cả nhà, các bác có thể cho em xin lisp vẽ cung khi biết điểm đầu, điểm cuối và chiều dài cung được không, hoặc có thể chỉ cho e la phải tìm cái này ở đâu không. Em đang rất cần. Thanks các bác trước. Hề hề hề, Yêu cầu của bạn hoàn toàn có thể sử dụng lisp của bác SSG hay của bác Hoành để vẽ được mà. Có điều sau đó bạn phải rotate cái cung vẽ xong đi một góc theo cái góc giữa dây cung và trục x là Ok. Nếu bạn không thích như vậy thì phải chờ thêm chút chút để chỉnh sửa cái lisp của bác SSG là Ok. 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
phamthanhbinh 3.146 Báo cáo bài đăng Đã đăng Tháng 3 21, 2012 Xin lỗi cả nhà, các bác có thể cho em xin lisp vẽ cung khi biết điểm đầu, điểm cuối và chiều dài cung được không, hoặc có thể chỉ cho e la phải tìm cái này ở đâu không. Em đang rất cần. Thanks các bác trước. Hề hề hề, Đây là code của bác SSG mình sửa lại chút chút theo yêu cầu của bạn. Lệnh vẽ là acl1 khác chút chút với lệnh acl của bác SSG. Ưu nhược điểm của nó thì bạn đọc các bài post phía trên sẽ hiểu. ;;;----------------------------------------------------------- (defun RTD(x) (/ (* x 180) pi) ) ;;;----------------------------------------------------------- (defun Tang(x) (/ (sin x) (cos x)) ) ;;;----------------------------------------------------------- (defun asin(x) (cond ((and (< x 1) (> x -1)) (atan (/ x (sqrt (- 1 (expt x 2))))) ) ((= x 1) (/ pi 2)) ((= x -1) (/ pi -2)) ) ) ;;;----------------------------------------------------------- (defun acos(x) (- (/ pi 2) (asin x))) ;;;----------------------------------------------------------- (defun C:ARL( / R L p1 p2 a oldos) ;;;Arc with Radius + Length (setq R (getreal "\nBan kinh:") L (getreal "\nChieu dai cung:") p1 (getpoint "\nDiem chuan:") p2 (polar p1 pi R) a (rtd (/ L R)) oldos (getvar "osmode") ) (setvar "osmode" 0) (command "arc" p1 "c" p2 "a" a) (setvar "osmode" oldos) (princ) ) ;;;----------------------------------------------------------- (defun C:ACL(/ C L p1 p2 x dx h p3 oldos) ;;;Arc with Chord + Length (setq C (getreal "\nChieu dai day:") L (getreal "\nChieu dai cung:") ) (if (>= C L) (progn (alert "Error! Chieu dai day phai nho hon chieu dai cung!") (exit))) (setq p1 (getpoint "\nDiem chuan:") p2 (polar p1 pi C) x (* 2 (acos (/ C L))) dx 0.00001 ) (while (> (/ x (sin x)) (/ L C)) (setq x (- x dx))) (setq dx (* dx dx)) (if (/= (/ x (sin x)) (/ L C)) (while (< (/ x (sin x)) (/ L C)) (setq x (+ x dx))) ) (setq x (- x (/ dx 2)) h (* (/ C 2) (tang (/ x 2))) p3 (list (- (car p1) (/ C 2)) (+ (cadr p1) h)) oldos (getvar "osmode") ) (setvar "osmode" 0) (command "arc" p1 p3 p2) (setvar "osmode" oldos) (princ) ) ;;;----------------------------------------------------------- (defun C:ACL1(/ C L p1 p2 x dx h p3 oldos) ;;;Arc with Chord + Length (setq p1 (getpoint "\nDiem neo thu nhat:") p2 (getpoint p1 "\n Diem neo thu hai") ) (setq C (distance p1 p2) L (getreal "\nChieu dai cung:") x (* 2 (acos (/ C L))) dx 0.00001 ang (angle p1 p2) pm (list (/ (+(car p2) (car p1)) 2) (/ (+ (cadr p2) (cadr p1)) 2)) ) (if (>= C L) (progn (alert "Error! Chieu dai day phai nho hon chieu dai cung!") (exit))) (while (> (/ x (sin x)) (/ L C)) (setq x (- x dx))) (setq dx (* dx dx)) (if (/= (/ x (sin x)) (/ L C)) (while (< (/ x (sin x)) (/ L C)) (setq x (+ x dx))) ) (setq x (- x (/ dx 2)) h (* (/ C 2) (tang (/ x 2))) p3 (list (- (car pm) (* h (sin ang))) (+ (cadr pm) (* h (cos ang)))) oldos (getvar "osmode") ) (setvar "osmode" 0) (command "arc" p1 p3 p2) (setvar "osmode" oldos) (princ) ) 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