Đến nội dung


Hình ảnh
- - - - -

Access and Modify Database Object of Cad


  • Please log in to reply
6 replies to this topic

#1 trinhvantien

trinhvantien

    Chưa sử dụng CAD

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

Đã gửi 17 July 2010 - 03:57 PM

Chúng ta đều biết rằng AutoCad lưu trữ dữ liệu bằng các record trong Database của nó. Mỗi khi mở file thì cad load cơ sở dữ liệu này lên thành bản vẽ mà ta nhìn thấy (tôi thấy rất ấn tượng về điều này). Bên Lisp thì có hàm để truy cập vào kho datase để chỉnh sửa trực tiếp mà không cần vẽ lại đối tượng khi có thay đổi thiết kế, riêng về VBA thì tôi vẫn chưa biết là có hay không !!!???
Tôi lấy VD : Ban đầu ct của tôi vẽ đoạn dầm đơn dài 3000, sau này thay đổi tkế thành 4250. Thay vì phải xóa dầm ban đầu và ra lệnh cho ct vẽ lại thì tôi muốn truy cập vào database của Cad, sửa lại các giá trị theo thay đổi mới và hình vẽ cũ tự động cập nhật theo.
Anh em nào có cao kiến thì post lên. thanks !
  • 0
______________________________________________________________________________

*** Sống hiên ngang danh lợi mãi xem thường,
Tâm bất biến giữa dòng đời vạn biến.
===========================================================
Trịnh Văn Tiến
Project Engineer
HP : 0983232765
Email : tvtien07@yahoo.com

#2 dan_12a

dan_12a

    Chưa sử dụng CAD

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

Đã gửi 18 July 2010 - 11:06 PM

Mình cũng đang thắc mắc vấn đề này, mình đã vào help để đọc nhưng chỉ thấy có Getxdata và Setxdata nhưng không biết có phải liên quan đến Databáe không. Nó cũng không cho
ví dụ cụ thể.có thành viên nào của Cadviet biết có thể hướng dẫn hoạc cho 1 ví dụ không. Mình cảm ơn
  • 0

#3 phantuhuong

phantuhuong

    biết dimstyle

  • Moderator
  • PipPipPipPipPip
  • 383 Bài viết
Điểm đánh giá: 200 (khá)

Đã gửi 19 July 2010 - 12:00 AM

Chúng ta đều biết rằng AutoCad lưu trữ dữ liệu bằng các record trong Database của nó. Mỗi khi mở file thì cad load cơ sở dữ liệu này lên thành bản vẽ mà ta nhìn thấy (tôi thấy rất ấn tượng về điều này). Bên Lisp thì có hàm để truy cập vào kho datase để chỉnh sửa trực tiếp mà không cần vẽ lại đối tượng khi có thay đổi thiết kế, riêng về VBA thì tôi vẫn chưa biết là có hay không !!!???
Tôi lấy VD : Ban đầu ct của tôi vẽ đoạn dầm đơn dài 3000, sau này thay đổi tkế thành 4250. Thay vì phải xóa dầm ban đầu và ra lệnh cho ct vẽ lại thì tôi muốn truy cập vào database của Cad, sửa lại các giá trị theo thay đổi mới và hình vẽ cũ tự động cập nhật theo.
Anh em nào có cao kiến thì post lên. thanks !


Bạn nghiên cứu chức năng SelectionSet của VBA. Bạn nghiên cứu thêm file điều khiển AutoCad từ Excel (thay đổi giá trị trong Excel là AutoCad tự động cập nhật): Line_Excel_AutoCad2.xls

Diễn đàn đang bị lỗi upload, xem tải ở đây
http://www.giaiphape...owthr...ẽ/page3
  • 0
Bồi dưỡng Excel & VBA cho các đơn vị ở Hà Nội và khu vực lân cận

Từng bước loại đồ Tàu ra khỏi cuộc sống!


#4 nghiautc

nghiautc

    biết lệnh copy

  • Members
  • PipPipPip
  • 112 Bài viết
Điểm đánh giá: 18 (tàm tạm)

Đã gửi 28 July 2010 - 01:26 PM

Bạn nghiên cứu chức năng SelectionSet của VBA. Bạn nghiên cứu thêm file điều khiển AutoCad từ Excel (thay đổi giá trị trong Excel là AutoCad tự động cập nhật): Line_Excel_AutoCad2.xls

Diễn đàn đang bị lỗi upload, xem tải ở đây
http://www.giaiphape...owthr...ẽ/page3


Cảm ơn bạn đã hồi âm nhưng câu hỏi được đưa ra là :
Làm sao để chỉnh sửa cơ sở dữ liệu của cad bằng VBA (mà lisp có thể làm được thông qua các hàm như assoc, cons, subst),chứ không phải
điều khiển AutoCad từ Excel .Mong sự hồi âm của các bạn
  • 0

#5 trinhvantien

trinhvantien

    Chưa sử dụng CAD

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

Đã gửi 07 August 2010 - 05:35 AM

Cảm ơn bạn đã hồi âm nhưng câu hỏi được đưa ra là :
Làm sao để chỉnh sửa cơ sở dữ liệu của cad bằng VBA (mà lisp có thể làm được thông qua các hàm như assoc, cons, subst),chứ không phải
điều khiển AutoCad từ Excel .Mong sự hồi âm của các bạn

Câu trả lời này khá chính xác về điều mà tôi muốn hỏi.Dù ở trong tphcm nhưng tôi cũng biết bác Hướng (thông qua cuốn lập trình VBA cho Excel của bác Hướng khá dày và công phu) nhưng có lẽ bác Hướng đã trả lời đi hơi chệch một chút so với câu hỏi của tôi. Dù sao cũng rất cảm ơn sự nhiệt tình của bác Hướng nhé. Thanks!!!
  • 0
______________________________________________________________________________

*** Sống hiên ngang danh lợi mãi xem thường,
Tâm bất biến giữa dòng đời vạn biến.
===========================================================
Trịnh Văn Tiến
Project Engineer
HP : 0983232765
Email : tvtien07@yahoo.com

#6 levanduy

levanduy

    biết lệnh offset

  • Members
  • PipPipPip
  • 176 Bài viết
Điểm đánh giá: 73 (tàm tạm)

Đã gửi 07 August 2010 - 08:47 AM

Tôi lấy VD : Ban đầu ct của tôi vẽ đoạn dầm đơn dài 3000, sau này thay đổi tkế thành 4250. Thay vì phải xóa dầm ban đầu và ra lệnh cho ct vẽ lại thì tôi muốn truy cập vào database của Cad, sửa lại các giá trị theo thay đổi mới và hình vẽ cũ tự động cập nhật theo.
Anh em nào có cao kiến thì post lên. thanks !

Đáp ứng mong muốn của bác Autodesk đã cho ra đời bộ phần mềm Autocad Structural Detail.
Bác xem tổng quan về nó tại đây
  • 0
Only dead fish go with the stream!

#7 nghiautc

nghiautc

    biết lệnh copy

  • Members
  • PipPipPip
  • 112 Bài viết
Điểm đánh giá: 18 (tàm tạm)

Đã gửi 11 February 2011 - 03:06 AM

Chúng ta đều biết rằng AutoCad lưu trữ dữ liệu bằng các record trong Database của nó. Mỗi khi mở file thì cad load cơ sở dữ liệu này lên thành bản vẽ mà ta nhìn thấy (tôi thấy rất ấn tượng về điều này). Bên Lisp thì có hàm để truy cập vào kho datase để chỉnh sửa trực tiếp mà không cần vẽ lại đối tượng khi có thay đổi thiết kế, riêng về VBA thì tôi vẫn chưa biết là có hay không !!!???
Tôi lấy VD : Ban đầu ct của tôi vẽ đoạn dầm đơn dài 3000, sau này thay đổi tkế thành 4250. Thay vì phải xóa dầm ban đầu và ra lệnh cho ct vẽ lại thì tôi muốn truy cập vào database của Cad, sửa lại các giá trị theo thay đổi mới và hình vẽ cũ tự động cập nhật theo.
Anh em nào có cao kiến thì post lên. thanks !

Mình có 2 ý sau:
1.Trong VBA có thể thay đổi các tính chất của
-Line như tọa độ điểm đầu, điểm cuối line thông qua đó thay đổi chiều dài của line...
-Circle như tọa độ tâm đường tròn bán kính...
-Text như điểm chèn,chiều cao, nội dung text...
khi thay đổi tính chất của 1 đối tượng thì trên màn hình cad sẽ thay đổi theo
2.Không nên dùng VBA để vẽ cái này mình nghĩ chỉ Pro dùng là thích hợp bởi khó viết cũng như không hiệu quả
nếu muốn auto vẽ đơn giản như cấu tạo dầm bạn có thể đọc thêm về dynamic block mình nghĩ sẽ rất hữu dụng nếu
bạn hiểu vẽ nó tính tự động hóa là khá cao.
  • 0