Đến nội dung


Hình ảnh
- - - - -

[Yêu cầu] Chèn block lấy số liệu trong bảng TABLE.


  • Please log in to reply
7 replies to this topic

#1 thonggtcc

thonggtcc

    biết zoom

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

Đã gửi 04 April 2013 - 11:19 AM

Xin chào các bạn, mình có 1 cách làm như sau, xin trình bày các bước như thế này:

1. Đầu tiên mình tạo 1 file Excel có đầy đủ tọa độ, tên block: File: http://www.cadviet.c...mau_so_lieu.rar

2. Mở autocad, lệnh datalink, đặt tên vidu, chọn file ở trên và Ok.

3. Lệnh table, mục "From a data link"  chọn vidu, ok.

4. Kết quả: Chèn được bảng Excel vào Cad dạng bảng Table và ta có thể cộng trừ nhân chia trực tiếp trên Cad với 1 số hàm quen thuộc của Excel. File kết quả: http://www.cadviet.c...105390_vidu.dwg

 

Ok. Sau đây là câu hỏi của mình:

1/ Với dữ liệu như trên thì có cách gì để vẽ được đường thẳng hay đơn giản là chèn 1 block vào vị trí có tọa độ (x,y) vào bản vẽ không?

2/ Hoặc code VBA, LISP để xử lý trường hợp này như thế nào ạ?

3/ Nếu mình update số liệu thừ liệu có phát sinh tự động vẽ thêm.

Xin các cao thủ cadviet trả lời giúp.

 


  • 0

#2 thonggtcc

thonggtcc

    biết zoom

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

Đã gửi 05 April 2014 - 09:40 AM

Câu hỏi của mình đặt ra đã lâu nhưng không thấy bạn nào trả lời giúp. Việc mình rất cần.

Nếu pro nào biết xin hướng dẫn. Cảm ơn.


  • 0

#3 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 07 April 2014 - 09:01 AM

Xin chào các bạn, mình có 1 cách làm như sau, xin trình bày các bước như thế này:

1. Đầu tiên mình tạo 1 file Excel có đầy đủ tọa độ, tên block: File: http://www.cadviet.c...mau_so_lieu.rar

2. Mở autocad, lệnh datalink, đặt tên vidu, chọn file ở trên và Ok.

3. Lệnh table, mục "From a data link"  chọn vidu, ok.

4. Kết quả: Chèn được bảng Excel vào Cad dạng bảng Table và ta có thể cộng trừ nhân chia trực tiếp trên Cad với 1 số hàm quen thuộc của Excel. File kết quả: http://www.cadviet.c...105390_vidu.dwg

 

Ok. Sau đây là câu hỏi của mình:

1/ Với dữ liệu như trên thì có cách gì để vẽ được đường thẳng hay đơn giản là chèn 1 block vào vị trí có tọa độ (x,y) vào bản vẽ không?

2/ Hoặc code VBA, LISP để xử lý trường hợp này như thế nào ạ?

3/ Nếu mình update số liệu thừ liệu có phát sinh tự động vẽ thêm.

Xin các cao thủ cadviet trả lời giúp.

 

Bạn khá là kiên nhẫn đó (v/đề đặt ra hơn 1 năm có lẻ).

Xin trả lời bạn như sau :ở tầm "vĩ mô" vấn đề bạn đặt ra có thể giải quyết được bằng các công cụ lập trình.

15454_table_data.jpg

Tuy nhiên lập trình chỉ có thể làm việc với những gì cụ thể (vi mô).

Với 1 bài toán cụ thể việc chèn 1 block vào vị trí có tọa độ cho trước vô cùng đơn giản (dữ liệu ban đầu có thể là từ file hay từ Table như bài toán của bạn), nhưng với 1 đường tròn hay 1 cung tròn thì dữ liệu ban đầu phải nhiều hơn (với đ/thẳng là điểm đầu và điểm cuối hay với đ/tròn phải thêm tâm điểm hoặc điểm thứ ba ....)

Do đó với dữ liệu "thô sơ" như bạn cung cấp thì chỉ làm được với node (thậm chí với block cũng cần phải thêm tên block?) không thể làm được với đ/ thẳng, d/tròn, hình chữ nhật ,,, Như vậy việc thiết kế dữ liệu ban đầu là bước vô cùng quan trọng đảm bảo dự án có thành công hay không.

 

Vài dòng ... chúc bạn tìm ra được hướng giải quyết của mình.


  • 0

#4 thonggtcc

thonggtcc

    biết zoom

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

Đã gửi 11 April 2014 - 01:19 PM

Rất cảm ơn anh Gia_bach đã quan tâm.

Xin lỗi, vì bài toán của mình đưa ra có nhiều thông tin cụ thể để có thể lập trình được. Xin hỏi, với dữ liệu đã cho như thế thì việc vẽ 1 điểm (node với tên ở cột Z chẳng hạn) có thực hiện tự động được không anh? Vì dữ liệu mình có thể thay đổi và update từ file nguồn Excel thì việc vẽ tự động như thế thì rất cần thiết.


  • 0

#5 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 16 April 2014 - 09:57 AM

Rất cảm ơn anh Gia_bach đã quan tâm.

Xin lỗi, vì bài toán của mình đưa ra có nhiều thông tin cụ thể để có thể lập trình được. Xin hỏi, với dữ liệu đã cho như thế thì việc vẽ 1 điểm (node với tên ở cột Z chẳng hạn) có thực hiện tự động được không anh? Vì dữ liệu mình có thể thay đổi và update từ file nguồn Excel thì việc vẽ tự động như thế thì rất cần thiết.

Như tôi đã viết ở trên, câu trả lời là "có thể tự động" được.

Với 1 table có khoảng vài chục dòng dữ liệu thì th/gian có thể không đáng kể, nhưng với 1 file cad thực tế thì dữ liệu trong table phải lên đến vài chục ngàn dòng chứ ? 

Liệu nó có khả thi hay không nếu như thời gian cập nhật quá lâu (5-10 phút hay vài ba tiếng ..) 


  • 0

#6 NguyenNgocSon

NguyenNgocSon

    biết dimbaseline

  • Members
  • PipPipPipPipPip
  • 368 Bài viết
Điểm đánh giá: 39 (tàm tạm)

Đã gửi 17 April 2014 - 12:52 PM

Vấn đề này hoàn toàn giải quyết được. Việc sử lý nhanh hay chậm tùy thuọc vào dữ liệu và cấu hình máy


  • 0

#7 thonggtcc

thonggtcc

    biết zoom

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

Đã gửi 18 April 2014 - 11:01 AM

gia_bach

Với 1 table có khoảng vài chục dòng dữ liệu thì th/gian có thể không đáng kể, nhưng với 1 file cad thực tế thì dữ liệu trong table phải lên đến vài chục ngàn dòng chứ ? 

Liệu nó có khả thi hay không nếu như thời gian cập nhật quá lâu (5-10 phút hay vài ba tiếng ..)

 

NguyenNgocSon

Gửi vào Hôm qua, 12:52 PM

Vấn đề này hoàn toàn giải quyết được. Việc sử lý nhanh hay chậm tùy thuọc vào dữ liệu và cấu hình máy

 

Rất cảm ơn anh Gia_bach và bạn NguyenNgocSon.

1./ Vấn đề đặt ra theo anh Gia_bach không khả thi vì thời gian?: Không vấn đề gì, vì mình nghĩ khi giải quyết được vấn đề thì sẽ có cách giải quyết được thuật toán tối ưu.

2./ Mình rất đồng tình về ý kiến của bạn NguyenNgocSon: Cấu hình máy giờ không đến nỗi tệ, thậm chí dư để xử lý.

Vậy các anh có thể giúp mình hoặc đưa ra ý tưởng để mình xử lý cũng được.

, bạn Son trước đây đã giúp mình 1 CT đưa số liệu từ Excel vào Cad rồi. Chắc việc này trong khả năng của bạn phải không?

Vậy cho mình cảm ơn trước.


  • 0

#8 thonggtcc

thonggtcc

    biết zoom

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

Đã gửi 18 April 2014 - 11:06 AM

Bạn NguyenNgocSon cho mình hỏi thêm:

Code đầy đủ trong VBA về cắt và bo tròn của 2 đường thẳng (giống như lệnh fillet trong cad ấy) có cùng tên lớp như thế nào vậy?


  • 0