Chuyển đến nội dung
Diễn đàn CADViet
  • Thông báo

    • Nguyen Hoanh

      CADViet đã hoàn tất nâng cấp   14/09/2017

      Chào các bạn, CADViet đã hoàn tất việc nâng cấp lên phiên bản mới. Tất cả các chức năng đã hoạt động theo kỳ vọng của ban quản trị. Nếu có vấn đề gì cần phản hồi, các bản post ở đây nhé: Trân trọng, Nguyễn Hoành.
Đăng nhập để thực hiện theo  
phamthe

[Yêu cầu] Nhờ sửa giúp đoạn code gọi khung tyle

Các bài được khuyến nghị

phamthe    1

mình loay hoay sửa mà không biết thay đổi chỗ nào để có được chỗ pick điểm hiện khung sơ bộ vị trí khung tyle vừa khung nào ở vị trí tâm khung. cái code minh gửi kèm thì vị trí pick điểm ở góc bên trái dưới, giờ mình muốn pick điểm là vị trí tâm rectang như hình đính kèm. Nhờ bạn sửa giúp với, cảm ơn ban nhiều!

http://www.cadviet.com/upfiles/5/116810_bv_1.lsp

116810_bv_1.jpg

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.123

mình loay hoay sửa mà không biết thay đổi chỗ nào để có được chỗ pick điểm hiện khung sơ bộ vị trí khung tyle vừa khung nào ở vị trí tâm khung. cái code minh gửi kèm thì vị trí pick điểm ở góc bên trái dưới, giờ mình muốn pick điểm là vị trí tâm rectang như hình đính kèm. Nhờ bạn sửa giúp với, cảm ơn ban nhiều!

http://www.cadviet.com/upfiles/5/116810_bv_1.lsp

116810_bv_1.jpg

Hề hề hề,

1/- Diễn đàn bị lỗi gì mà mình không thể copy code vào bài viết được.mà để gỏ code thì nhảy con trỏ lung tung cả Đề nghị admin kiểm tra lại.

2/- Chủ thớt có thể tự sửa lại các hàm xác định các điểm p1 và p2 trong các hàm (taokhung ....) Do diễn đàn bị lỗi nên mình không thể hướng dẫn chủ thớt cụ thể được. Nếu chủ thớt có thể thì liên hệ với mình qua mail, mình sẽ chỉ rõ.

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
phamthe    1

setq P1 (list (+ (car D) 84) (cadr D))) ;;; 84 là cạnh ngang

(setq P2 (list (car D) (+ (cadr D) 112))) ;;; 112 là cạnh đứng

anh bình ơi, thay chỗ nào để điểm pick là tâm của hình chữ nhật bung ra chứ không phải là góc trái bên dưới hình chữ nhật bung ra như đoạn code trên anh 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
quocmanh04tt    385

Mình đang Post nhưng ko đủ được, lỗi DD.

  • + HCN của bạn được vẽ qua 2 điểm P1 và P2
  • + Điểm P1, P2 được xác định từ điểm D (điểm pick).
  • + Xác định điểm P1:
  • - (setq P1 (list (+ (car D) 84) (cadr D)))
  • Trong đó: (+ (car D) 84) là hoành độ của P1 lấy bằng hoành độ của điểm D tức là (car D) cộng thêm 84, (cadr D) là tung độ của P1 chính là tung độ của D.
  • + Xác định điểm P2:
  • - (setq P1 (list (car D) (+(cadr D) 112)))
  • Trong đó: (car D) là hoành độ của P1 lấy bằng hoành độ của điểm D tức là (car D), (cadr D) là tung độ của D cộng thêm 112 = tung độ của P1: (+ (cadr D) 112). 
Hy vọng bạn sẽ tự làm được.
  • Vote tăng 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
phamthanhbinh    3.123

setq P1 (list (+ (car D) 84) (cadr D))) ;;; 84 là cạnh ngang

(setq P2 (list (car D) (+ (cadr D) 112))) ;;; 112 là cạnh đứng

anh bình ơi, thay chỗ nào để điểm pick là tâm của hình chữ nhật bung ra chứ không phải là góc trái bên dưới hình chữ nhật bung ra như đoạn code trên anh nhỉ?

Hề hề hề,

Đúng là cần sửa ở các dòng code này.

Với code này thì khung chữ nhật được vẽ theo hai điểm từ góc phải dưới tới góc trái trên và nhận điểm pick là điểm góc trái dưới.

Để cho điểm pick là tâm của khung chữ nhật bạn sẽ phải thay ví trí của hai điểm p1 và p2 cho phù hợp.

Cụ thể trong trường hợp này, có thể làm như sau:

 (setq p1 (list (+ (car D) 42) (+ (card D) 56)))

(setq p2 (list (- (car D) 42) (- (card D) 56)))

Như vậy khung chữ nhật sẽ được tạo từ điểm góc trên bên phải tới góc dưới bên trái và nhận điểm pick làm tâm.

Với suy luận tương tự bạn có thể thay thành việc tạo khung từ điểm góc trên bên trái tới điểm góc dứoi bên phải  .......

Và bạn cũng có thể tự sửa được với các khung còn lại.

Chỉ thay những dòng code này và không cần đụng tới các dòng code khác vì nó không ảnh hưởng tới kết quả của bạn.

Hy vọng bạn thành công.

  • Vote tăng 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

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

Đăng nhập để thực hiện theo  

×