Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 19 kết quả

Đề tài: Lập trình C++ | Di Chuyển Một Đối Tượng Hình Học !!!

  1. #1
    Ngày gia nhập
    04 2009
    Bài viết
    16

    Mặc định Lập trình C++ | Di Chuyển Một Đối Tượng Hình Học !!!

    Em có một đối tượng hình học (giả sử là hình tam giác). Để tạo ra hình tam giác em phải tạo ra tọa độ 3 điểm. Nhưng vấn để đặt ra ở đây là di chuyển tam giác đó, theo em thì tam giác được ta ra từ 3 điểm riêng biệt ko thẳng hàng. Vậy khi di chuyện nó ta phải di chuyển đồng thời cả 3 điểm hay có một giải thuật nào khác? Xin các anh cho em hướng giải quyết vấn đề này ạ ( ko cần code chỉ cần hướng ).

  2. #2
    Ngày gia nhập
    04 2008
    Nơi ở
    HCMC
    Bài viết
    251

    Vấn đề là bạn định di chuyển nó như thế nào.
    Đã được chỉnh sửa lần cuối bởi thienthan34 : 18-04-2009 lúc 03:41 PM.
    C++ Code:
    1. for(;;){cout<<"Busy"<<endl;}
    2. system("cls");
    Hãy ủng hộ cho quỹ phát triển cộng đồng C Việt
    http://congdongcviet.com/quyphattrien-congdongcviet.cpp

  3. #3
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Theo mình hiểu thì ý bạn muốn là di chuyển tịnh tiến, đây là công thức :
    x'1 = x1 + dx
    x'2 = x2 + dx
    x'3 = x3 + dx
    y'1 = y1 + dy
    y'2 = y2 + dy
    y'3 = y3 + dy
    Trong đó (x1,y1), (x2,y2), (x3,y3) là 3 điểm của tam giác, dx là độ lệch theo phương ngang, dy là độ lệch theo phương dọc
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

  4. #4
    Ngày gia nhập
    04 2009
    Bài viết
    16

    Trích dẫn Nguyên bản được gửi bởi meoconlongvang Xem bài viết
    Theo mình hiểu thì ý bạn muốn là di chuyển tịnh tiến, đây là công thức :


    Trong đó (x1,y1), (x2,y2), (x3,y3) là 3 điểm của tam giác, dx là độ lệch theo phương ngang, dy là độ lệch theo phương dọc
    Cái này là di chuyển tịnh tiến đồng thời cả 3 điểm rồi. Có cách nào hay hơn ko ạ??? Hoặc có thể tạo ra một điểm bất kì có tọa độ khác 3 đỉnh của tam giác, sau đó chỉ cần di chuyển tịnh tiến tọa độ này thì 3 tọa độ đỉnh của tam giác đồng thời sẽ di chuyển theo ko ???

  5. #5
    Ngày gia nhập
    09 2007
    Bài viết
    724

    Trích dẫn Nguyên bản được gửi bởi vboyit87 Xem bài viết
    Cái này là di chuyển tịnh tiến đồng thời cả 3 điểm rồi. Có cách nào hay hơn ko ạ??? Hoặc có thể tạo ra một điểm bất kì có tọa độ khác 3 đỉnh của tam giác, sau đó chỉ cần di chuyển tịnh tiến tọa độ này thì 3 tọa độ đỉnh của tam giác đồng thời sẽ di chuyển theo ko ???
    Nếu bạn muốn di chuyển 1 điểm thì bạn di chuyển 1 điểm thôi

    Còn có cách nào để di chuyển 1 điểm mà n điểm di chuyển theo thì có đó... Nhưng lại mất nhiều time hơn di chuyển n điểm.

    cách thực hiện.

    Lưu các thông tin của tất cả các điểm so với điểm cần di chuyển. (ví như độ dài khoảng cách và góc ) khi bạn di chuyển đỉnh kia thì tính lại n-1 đỉnh còn lại từ các thông tin trên.... Nhưng cách này hoàn toàn không khả thi... vì phải thực hiện nhiều (gần như là gấp đôi ) phép toán so với dùng ma trận (như của ku mèo ).

    Nếu muốn hiểu hơn thì bạn nên kiếm 1 cuốn sách về Đồ họa máy tính, đọc phần các phép toán biến đổi cơ bản.

  6. #6
    Ngày gia nhập
    04 2009
    Bài viết
    16

    Mặc định Xoay hình!!!

    Thêm một vấn đề nữa là xoay hình. Hình ở đây là hình phẳng, em muốn xoay nó thì làm thế nào (Xoay tròn). Xin các pro cho em hướng giải quyết.

  7. #7
    Ngày gia nhập
    04 2009
    Bài viết
    16

    Vấn đề này được post lên lâu rồi mà ko ai cho hướng giải quyết sao. Xoay tròn một đối tượng hình học thì tất cả các điểm trên hình sẽ xoay theo một đường tròn. Vậy giải quyết vấn đề này ra sao??? Mong các bác giúp đỡ cho..
    o0oKNOWNEDGE IS POWERo0o

  8. #8
    Ngày gia nhập
    04 2008
    Bài viết
    336

    các vấn đề của bạn hỏi thuộc phạm vi đồ họa máy tính, bạn có thể vào đây để tìm câu trả lời (tìm phần CÁC PHÉP BIẾN ĐỔI TRONG ĐỒ HỌA HAI CHIỀU/ BA CHIỀU)
    http://www.uit.edu.vn/data/gtrinh/TH109/
    code ra gió bão

  9. #9
    Ngày gia nhập
    04 2009
    Bài viết
    16

    Cám ơn bạn nhiều. Một trang quá tuyệt vời đúng với cái mình đang cần tìm....
    o0oKNOWNEDGE IS POWERo0o

  10. #10
    Ngày gia nhập
    04 2009
    Bài viết
    16

    Trích dẫn Nguyên bản được gửi bởi 6220119 Xem bài viết
    các vấn đề của bạn hỏi thuộc phạm vi đồ họa máy tính, bạn có thể vào đây để tìm câu trả lời (tìm phần CÁC PHÉP BIẾN ĐỔI TRONG ĐỒ HỌA HAI CHIỀU/ BA CHIỀU)
    http://www.uit.edu.vn/data/gtrinh/TH109/
    Em đã tìm hiểu giáo trình đồ họa máy tính anh cho và đã hiểu vấn đề xoay hình như sau:
    Giả sử điểm P có tọa độ P(x,y) thuộc đối tượng hình cần xoay, khi ta xoay đối tượng đó một góc là a độ (hoặc radian) thì điểm P(x,y) động thời cũng xoay theo một góc a độ hoặc (radian). Khi đó tọa độ điểm P sẽ là P(x',y') và được tính theo công thức sau
    x'= x*cos(a) - y*sin(a)
    y'= x*sin(a) + y*cos(a)

    Vậy em muốn khởi tạo a là radian hoặc là độ em phải làm như thế nào.
    Đã được chỉnh sửa lần cuối bởi vboyit87 : 01-05-2009 lúc 11:23 AM.
    o0oKNOWNEDGE IS POWERo0o

Các đề tài tương tự

  1. Mẹo hay khi chuyển nhà trọn gói, chuyển văn phòng
    Gửi bởi quynhcute trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 20-08-2012, 09:53 PM
  2. Trả lời: 0
    Bài viết cuối: 07-08-2012, 05:12 PM
  3. Chuyển nhà,Chuyển Văn Phòng trọn gói giá rẻ 098.229.5559
    Gửi bởi nguyenrong trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 26-06-2012, 02:05 PM
  4. Trả lời: 20
    Bài viết cuối: 27-02-2012, 12:05 AM
  5. ADO.NET Chuyể Phần mềm QLNS sang Ngôn ngữ Dynamic Programming. Ai chuyển giúp mình!?
    Gửi bởi huynhanhton trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 03-04-2011, 11:41 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn