LẠI MỘT HỌC KỲ MỚI CÙNG VỚI NHỮNG QUYẾT TÂM MỚI.ANH EM CỐ GẮNG LÊN NHA


    Bài tập lớn Tin học ứng dụng. Có cái này cho ae xem, hay lắm :))

    Share

    NVQ
    Admin

    Tổng số bài gửi : 72
    Join date : 25/10/2008
    Age : 30
    Đến từ : SunSpa_Resort

    Bài tập lớn Tin học ứng dụng. Có cái này cho ae xem, hay lắm :))

    Bài gửi  NVQ on Wed Oct 29, 2008 2:28 pm

    Mọi người xem rồi cho ý kiến nhé
    " border="0" />


    _________________
    Có Khi nào trên đường đời tấp nập.....!
    Tôi vô tình nhặt được sấp đôla........!

    Trái đất này là của chúng mình....
    Mọi người vô đây bổ xung lí lịch giùmhttp://ctm5.forum0.net/forum-f10/topic-t71.htm

    tanghung
    Ngồi bàn hai
    Ngồi bàn hai

    Tổng số bài gửi : 84
    Join date : 25/10/2008
    Age : 29
    Đến từ : Quảng Ninh

    Re: Bài tập lớn Tin học ứng dụng. Có cái này cho ae xem, hay lắm :))

    Bài gửi  tanghung on Wed Oct 29, 2008 6:21 pm

    [b]Đúng rồi đấy. Hay quá. NVQ tìm ở đâu thê?
    Mà cái này gõ một lệnh là nó vẽ cả loạt như trên hình ah?

    Bây giờ 2 đường dẫn trong và ngoài thay đổi VD vuông thành tròn thì làm thế nào?
    Ae bây jờ mở rông ra làm một cái lisp nhập tất cả các thông số đầu vào bao gồm biên dạng 2 đường dẫn( đường bất kì cho máu!), các thông số của mảnh tam giác liên kết(l1,l2, anpha) . rồi enter môt cái nó cho ngay biên dạng cam.

    Hehe...thấy ý tưởng mở rộng đc ko? sẽ khó thêm đấy! tao đang manh nha tìm ra thuật toán rồi! còn viết lisp chưa biết thế nào. có lẽ ae mình phải chơi hội đồng thôi ![/b]

    NVQ
    Admin

    Tổng số bài gửi : 72
    Join date : 25/10/2008
    Age : 30
    Đến từ : SunSpa_Resort

    Re: Bài tập lớn Tin học ứng dụng. Có cái này cho ae xem, hay lắm :))

    Bài gửi  NVQ on Wed Oct 29, 2008 7:41 pm

    Đã có Lisp, chạy và kết quả ra như trên Laughing Laughing Laughing Laughing
    Nhưng Lisp này bắt buộc Điểm M phải chạy trên hình tròn, còn điểm P thì chạy trên biên dạng bất kì. Hình ở dưới chính là kết quả với 2 biên dạng khác nhau đó.
    Còn có cái hay nữa là nó không vẽ ngay ra biên dạng cam, mà nó chạy từ từ cho mình xem cheers cheers cheers cheers cheers cheers cheers.
    Hơn nữa mấy cái biên dạng kia là mình vẽ theo thông số, không cần nhập lúc chạy lệnh.
    Tuy nhiên vẫn còn nhiều thứ phải nghiên cứu lắm.


    _________________
    Có Khi nào trên đường đời tấp nập.....!
    Tôi vô tình nhặt được sấp đôla........!

    Trái đất này là của chúng mình....
    Mọi người vô đây bổ xung lí lịch giùmhttp://ctm5.forum0.net/forum-f10/topic-t71.htm

    VTP
    Ngồi bàn hai
    Ngồi bàn hai

    Tổng số bài gửi : 59
    Join date : 24/10/2008
    Age : 30
    Đến từ : NGHỆ AN

    Re: Bài tập lớn Tin học ứng dụng. Có cái này cho ae xem, hay lắm :))

    Bài gửi  VTP on Wed Oct 29, 2008 10:56 pm

    NVQ_atmyn đã viết:Đã có Lisp, chạy và kết quả ra như trên Laughing Laughing Laughing Laughing
    Nhưng Lisp này bắt buộc Điểm M phải chạy trên hình tròn, còn điểm P thì chạy trên biên dạng bất kì. Hình ở dưới chính là kết quả với 2 biên dạng khác nhau đó.
    Còn có cái hay nữa là nó không vẽ ngay ra biên dạng cam, mà nó chạy từ từ cho mình xem cheers cheers cheers cheers cheers cheers cheers.
    Hơn nữa mấy cái biên dạng kia là mình vẽ theo thông số, không cần nhập lúc chạy lệnh.
    Tuy nhiên vẫn còn nhiều thứ phải nghiên cứu lắm.


    Oh!Quân ơi!mày đọc trong cài líp đó a?t chưa đọc tý j cả. pale

    mà tìm ra thuật toán tìm đường profil của điểm c chưa?có thì gửi t cái nha.cách làm nha.ok Rolling Eyes

    lol! lol! lol! lol! lol! lol! lol! lol! lol! lol! lol! lol!

    tanghung
    Ngồi bàn hai
    Ngồi bàn hai

    Tổng số bài gửi : 84
    Join date : 25/10/2008
    Age : 29
    Đến từ : Quảng Ninh

    Re: Bài tập lớn Tin học ứng dụng. Có cái này cho ae xem, hay lắm :))

    Bài gửi  tanghung on Fri Oct 31, 2008 1:03 pm

    Đã có giải bài 1 ! hic phải cảm ơn lão SSG trong cadviet.com ! Đúng là đỉnh của chảo! ở VN ko biết có đc mấy lão như thế này ! ae cố mà học hỏi !

    POST cai code LISP lên cho anh em lấy về mà xem! ngoạn mục ! Thầy giáo mình cho BT lơn kiểu này khoai ... vãi tè !


    rendeer rendeer rendeer rendeer rendeer lol! lol! lol!



    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;;VE BIEN DANG CAM GIA CONG CAC HINH DAC BIET
    ;;;Appload va go lenh BDC de chay
    ;;;Copyright by ssg - www.cadviet.com - October 2008
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


    ;;;-------------------------------------------------------------------------------
    (defun DTR(x) (/ (* x pi) 180) ) ;;;Change degree to radian
    ;;;-------------------------------------------------------------------------------
    (defun ints (e1 e2 / ob1 ob2 V L1 L2)
    ;;;Intersections of e1, e2. Return LIST of points
    ;;;Thanks Mr. Hoanh for this function!
    (setq
    ob1 (vlax-ename->vla-object e1)
    ob2 (vlax-ename->vla-object e2)
    )
    (setq V (vlax-variant-value (vla-IntersectWith ob1 ob2 acExtendOtherEntity)))
    (if (/= (vlax-safearray-get-u-bound V 1) -1)
    (progn
    (setq L1 (vlax-safearray->list V) L2 nil)
    (while L1
    (setq L2 (append L2 (list (list (car L1) (cadr L1) (caddr L1)))))
    (repeat 3 (setq L1 (cdr L1)))
    )
    )
    (setq L2 nil)
    )
    L2
    )
    ;;;-------------------------------------------------------------------------------
    (defun getVert (e / i L p)
    ;;;Return list of all vertex from pline e
    (setq i 0 L nil)
    (vl-load-com)
    (repeat (fix (+ (vlax-curve-getEndParam e) 1))
    (setq p (vlax-curve-getPointAtParam e i))
    (if (not (member p L)) (setq L (append L (list p))))
    (setq i (1+ i))
    )
    L
    )
    ;;;-------------------------------------------------------------------------------
    (defun near2P (p1 p2 p) ;;;Select near point p1 or p2 from p
    (if (<= (distance p p1) (distance p p2)) p1 p2)
    )
    ;;;-------------------------------------------------------------------------------
    (defun dist3p (p1 p2 p / ag pt pg) ;;;Distance from p to line p1p2
    (setq
    ag (angle p1 p2)
    pt (polar p (+ (/ pi 2) ag) 100)
    pg (inters p1 p2 p pt nil)
    )
    (distance p pg)
    )
    ;;;===========================================
    ;;;Main program
    (defun C:BDC( / ec es et ett ag p0 p1 p2 p3 pg Lst0 Lst1
    Lst2 Lstp kc k d r1 r2 r12 g1 g2 x oldos)
    (vl-load-com)
    ;;;NHAP SO LIEU VA TINH THAM SO HINH HOC
    (setq es (car (entsel "\nBien dang chi tiet gia cong:")))
    (redraw es 3)
    (setq et (car (entsel "\nTam giac ga dao:")))
    (redraw et 3)
    (setq ec (car (entsel "\nDuong tron chuan:")))
    (redraw ec 3)
    (setq ag (getreal "\nTri so goc cua 1 khoang chia <1>:"))
    (if (null ag) (setq ag 1))
    (command "regen")
    (setq
    p1 (car (ints et ec))
    p2 (car (ints et es))
    Lst0 (getvert et)
    kc 0
    )
    (foreach pk Lst0
    (if (>= (setq k (dist3p p1 p2 pk)) kc) (setq kc k p3 pk))
    )
    (setq
    Lstp (list p3)
    d (entget ec)
    p0 (cdr (assoc 10 d))
    r1 (cdr (assoc 40 d))
    r2 (distance p0 p2)
    r12 (distance p1 p2)
    g1 (angle p0 p1)
    g2 (angle p0 p2)
    oldos (getvar "osmode")
    )

    ;;;VE BIEN DANG CAM
    (setvar "osmode" 0)
    (repeat (fix (/ 360 ag))
    ;;;Quay theo duong tron
    (command "rotate" et "" p0 ag)
    (setq
    p1 (polar p0 (+ g1 (dtr ag)) r1)
    p2 (polar p0 (+ g2 (dtr ag)) r2)
    )

    ;;;Ve duong tron phu, xac dinh giao diem, quay ve vi tri chinh xac
    (command "circle" p1 r12)
    (setq
    ett (entlast)
    Lst1 (ints ett es)
    pg (near2P (car Lst1) (cadr Lst1) p2)
    )
    (command "rotate" et "" p1 "r" p1 p2 pg)
    (command "erase" ett "")

    ;;;Xac dinh 1 diem tren quy dao, add vao Lstp
    (setq Lst2 (getvert et) kc 0)
    (foreach pk Lst2
    (if (>= (setq k (dist3p p1 p2 pk)) kc) (setq kc k p3 pk))
    )
    (setq Lstp (append Lstp (list p3)))
    (command "point" p3) ;;;Ve cac diem de kiem tra qua trinh chay, khong can thi bo

    ;;;Reset, chuan bi cho vong lap sau
    (setq
    p2 pg
    r2 (distance p0 p2)
    g1 (angle p0 p1)
    g2 (angle p0 p2)
    )
    );;;end repeat

    ;;;Ve pline voi ket qua Lstp
    (command "pline") (foreach x Lstp (command x)) (command "c")

    ;;;Reset osmode va ket thuc
    (setvar "osmode" oldos)
    (command "regen")
    (princ)
    )
    ;;;===========================================


    Hết!
    PM : ae đọc kĩ HDSD trước khi dùng kẻo ... hóc thì khổ !
    cheers affraid

    NVQ
    Admin

    Tổng số bài gửi : 72
    Join date : 25/10/2008
    Age : 30
    Đến từ : SunSpa_Resort

    Re: Bài tập lớn Tin học ứng dụng. Có cái này cho ae xem, hay lắm :))

    Bài gửi  NVQ on Fri Oct 31, 2008 7:32 pm

    May quá, có bạn T. Hưng up Lisp lên rồi, nhưng bản này sửa chưa đó, Lisp trước lỗi nha Thảo bớp, bỏ đi. Chắc Hưng up bản đã sửa chữa, mọi người mang về chạy thử, ngon thì nghiên cứu lệnh, thứ 2 báo cáo thầy. Ok chúng ta qua bài 1.


    _________________
    Có Khi nào trên đường đời tấp nập.....!
    Tôi vô tình nhặt được sấp đôla........!

    Trái đất này là của chúng mình....
    Mọi người vô đây bổ xung lí lịch giùmhttp://ctm5.forum0.net/forum-f10/topic-t71.htm

    supercuong
    Ngồi bàn đầu
    Ngồi bàn đầu

    Tổng số bài gửi : 149
    Join date : 26/10/2008
    Age : 29
    Đến từ : Hà Nội

    Re: Bài tập lớn Tin học ứng dụng. Có cái này cho ae xem, hay lắm :))

    Bài gửi  supercuong on Thu Nov 20, 2008 3:13 am

    Chạy có được đâu! sao mà băt được tam giác gá dao thế? chịu?

    NVQ
    Admin

    Tổng số bài gửi : 72
    Join date : 25/10/2008
    Age : 30
    Đến từ : SunSpa_Resort

    Re: Bài tập lớn Tin học ứng dụng. Có cái này cho ae xem, hay lắm :))

    Bài gửi  NVQ on Thu Nov 20, 2008 5:23 pm

    Chạy được mới post chứ thằng này. Vẽ tam giác gá dao bằng lênh pline, nó đòi hỏi các biên dạng phải là đường cong kín mà. Mà thằng Cương, sư mày chứ Spam vừa thôi, sao mới có hôm mà thấy nhảy lên bàn 3, lại còn post bài sai khu vưc.
    Cảnh cáo lần 1 nha.


    _________________
    Có Khi nào trên đường đời tấp nập.....!
    Tôi vô tình nhặt được sấp đôla........!

    Trái đất này là của chúng mình....
    Mọi người vô đây bổ xung lí lịch giùmhttp://ctm5.forum0.net/forum-f10/topic-t71.htm

    Sponsored content

    Re: Bài tập lớn Tin học ứng dụng. Có cái này cho ae xem, hay lắm :))

    Bài gửi  Sponsored content Today at 11:02 pm


      Hôm nay: Thu Dec 08, 2016 11:02 pm