Chuyển đến nội dung
Diễn đàn CADViet
ssg

LandCadViet Utility

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

Chuyên mục này là sự nối tiếp từ các ý tưởng ở topic sau:

 

http://www.cadviet.com/forum/index.php?sho...40&start=40

 

Cám ơn bạn tnmtpc, ssg đã “sáng” ra được đôi chút. Về tổng quan thì được rồi, nhưng để triển khai thì cần phải cụ thể hơn nữa.

Quan điểm chung: tận dụng tối đa các công cụ của Excel để nhập, xử lý và lưu trữ dữ liệu, không nên nhập số liệu thô từ Acad. Chương trình sẽ là “cầu nối” giữa Acad với Excel và có các chức năng cơ bản sau:

1) Đọc dữ liệu từ Excel, tự động vẽ các đối tượng Acad cho từng trường hợp ứng dụng cụ thể

2) Đọc dữ liệu từ Acad, xuất sang Excel theo những quy cách định trước

3) Thực hiện tự động các tác vụ chuyên môn, có tính lặp lại, mất nhiều thời gian trong Acad

4) Thực hiện các tiện ích thông thường, chung nhất của người dùng Acad, không phân biệt chuyên ngành

 

Với mỗi mảng chức năng nêu trên, cần phải chia nhỏ ra thành từng trường hợp cụ thể (tạm gọi là module) với những mô tả chi tiết hơn. Mình đã nói rồi, về chuyên môn mình không rành nên nhờ các bạn trong ngành lập giúp “Bảng tổng hợp các yêu cầu” theo mẫu ví dụ sau (riêng chức năng 4 mình tự làm cũng được):

Module 1:

1) Chức năng: Vẽ bản đồ địa chính, lấy số liệu từ Excel

2) Dữ liệu đầu vào: bảng Excel với các cột Name, X, Y, Code, Note. Ví dụ minh họa bằng file *.xls

3) Kết quả đầu ra:

- Vẽ points theo tọa độ X, Y

- Viết texts theo Name, Code và Note

- Nối các points bằng lines theo Code (như chương trình anh Hoành vừa làm)

- Ví dụ minh họa bằng file *.dwg với kết quả bằng số liệu cụ thể, tương ứng với file *.xls trên

4) Các chú thích thêm để rõ ý hơn (nếu có)

 

Module 2: (như trên)

v.v…

 

Lưu ý: quy định viết text cao độ với dấu chấm thập phân nằm đúng vị trí point có bắt buộc không? Cái này hơi khó cho lập trình. Đối tượng text trong Acad được định vị bằng điểm Insert của nó, tức là điểm có hình vuông nhỏ (mặc định màu blue) khi bạn bấm select vào đối tượng text. Hiện mình vẫn chưa nghĩ ra cách gì để lấy tọa độ dấu chấm thập phân của text vì nó phụ thuộc quá nhiều thứ: font, độ dài số, kích thước các chữ số khác nhau (số 1 hẹp hơn số 2, 3…). Có thể thay bằng điểm Insert của Text đúng vị trí Point được không?

 

Một chương trình ứng dụng tổng hợp, không chỉ đơn giản là phép cộng số học các trình đơn lẻ có sẵn đã post trên diễn đàn. Chúng phải được biên tập và xử lý lại thành một thể thống nhất, có tính tổ chức tốt hơn, giao diện được chăm chút hơn, thuận tiện hơn cho người dùng, dễ dàng chỉnh lý, bổ sung, phát triển… Để hoàn thành chương trình, phải cần nhiều thời gian và công sức của nhiều người (xin nhấn mạnh, một mình ssg không kham nổi!). Nếu có bạn nào vừa có chuyên môn Trắc địa, vừa biết về lập trình hỗ trợ với ssg thì hay quá?

 

Kế hoạch thực hiện đề nghị như sau:

1) Hoàn thành “Bảng tổng hợp các yêu cầu”. Theo ssg, bạn tnmtpc chủ động lập trước, các bạn khác trong ngành góp ý bổ sung

2) Căn cứ vào bảng tổng hợp trên, xây dựng nên cái khung chương trình và đưa ra bản dùng thử (có thể chưa có đủ các module dự kiến). Ssg sẽ cố gắng hoàn thành trong thời gian sớm nhất có thể. Mục đích: có cái cụ thể để các bạn phân tích và góp ý thêm.

3) Chỉnh sửa và bổ sung, công bố version 1.0 của chương trình. Về chỗ này, chương trình cần 1 cái tên chính thức, các bạn cũng đề xuất luôn (ví dụ như LandCadViet Utility, viết tắt là LCV có được không?)

4) Không ngừng bổ sung và hoàn thiện thêm trong quá trình sử dụng

 

Rất mong sự đóng góp tích cực của tất cả các bạn.

  • Vote tăng 5

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
Chuyên mục này là sự nối tiếp từ các ý tưởng ở topic sau:

 

http://www.cadviet.com/forum/index.php?sho...40&start=40

 

Cám ơn bạn tnmtpc, ssg đã “sáng” ra được đôi chút. Về tổng quan thì được rồi, nhưng để triển khai thì cần phải cụ thể hơn nữa.

Quan điểm chung: tận dụng tối đa các công cụ của Excel để nhập, xử lý và lưu trữ dữ liệu, không nên nhập số liệu thô từ Acad. Chương trình sẽ là “cầu nối” giữa Acad với Excel và có các chức năng cơ bản sau:

1) Đọc dữ liệu từ Excel, tự động vẽ các đối tượng Acad cho từng trường hợp ứng dụng cụ thể

2) Đọc dữ liệu từ Acad, xuất sang Excel theo những quy cách định trước

3) Thực hiện tự động các tác vụ chuyên môn, có tính lặp lại, mất nhiều thời gian trong Acad

4) Thực hiện các tiện ích thông thường, chung nhất của người dùng Acad, không phân biệt chuyên ngành

 

Với mỗi mảng chức năng nêu trên, cần phải chia nhỏ ra thành từng trường hợp cụ thể (tạm gọi là module) với những mô tả chi tiết hơn. Mình đã nói rồi, về chuyên môn mình không rành nên nhờ các bạn trong ngành lập giúp “Bảng tổng hợp các yêu cầu” theo mẫu ví dụ sau (riêng chức năng 4 mình tự làm cũng được):

Module 1:

1) Chức năng: Vẽ bản đồ địa chính, lấy số liệu từ Excel

2) Dữ liệu đầu vào: bảng Excel với các cột Name, X, Y, Code, Note. Ví dụ minh họa bằng file *.xls

3) Kết quả đầu ra:

- Vẽ points theo tọa độ X, Y

- Viết texts theo Name, Code và Note

- Nối các points bằng lines theo Code (như chương trình anh Hoành vừa làm)

- Ví dụ minh họa bằng file *.dwg với kết quả bằng số liệu cụ thể, tương ứng với file *.xls trên

4) Các chú thích thêm để rõ ý hơn (nếu có)

 

Module 2: (như trên)

v.v…

 

Lưu ý: quy định viết text cao độ với dấu chấm thập phân nằm đúng vị trí point có bắt buộc không? Cái này hơi khó cho lập trình. Đối tượng text trong Acad được định vị bằng điểm Insert của nó, tức là điểm có hình vuông nhỏ (mặc định màu blue) khi bạn bấm select vào đối tượng text. Hiện mình vẫn chưa nghĩ ra cách gì để lấy tọa độ dấu chấm thập phân của text vì nó phụ thuộc quá nhiều thứ: font, độ dài số, kích thước các chữ số khác nhau (số 1 hẹp hơn số 2, 3…). Có thể thay bằng điểm Insert của Text đúng vị trí Point được không?

 

Một chương trình ứng dụng tổng hợp, không chỉ đơn giản là phép cộng số học các trình đơn lẻ có sẵn đã post trên diễn đàn. Chúng phải được biên tập và xử lý lại thành một thể thống nhất, có tính tổ chức tốt hơn, giao diện được chăm chút hơn, thuận tiện hơn cho người dùng, dễ dàng chỉnh lý, bổ sung, phát triển… Để hoàn thành chương trình, phải cần nhiều thời gian và công sức của nhiều người (xin nhấn mạnh, một mình ssg không kham nổi!). Nếu có bạn nào vừa có chuyên môn Trắc địa, vừa biết về lập trình hỗ trợ với ssg thì hay quá?

 

Kế hoạch thực hiện đề nghị như sau:

1) Hoàn thành “Bảng tổng hợp các yêu cầu”. Theo ssg, bạn tnmtpc chủ động lập trước, các bạn khác trong ngành góp ý bổ sung

2) Căn cứ vào bảng tổng hợp trên, xây dựng nên cái khung chương trình và đưa ra bản dùng thử (có thể chưa có đủ các module dự kiến). Ssg sẽ cố gắng hoàn thành trong thời gian sớm nhất có thể. Mục đích: có cái cụ thể để các bạn phân tích và góp ý thêm.

3) Chỉnh sửa và bổ sung, công bố version 1.0 của chương trình. Về chỗ này, chương trình cần 1 cái tên chính thức, các bạn cũng đề xuất luôn (ví dụ như LandCadViet Utility, viết tắt là LCV có được không?)

4) Không ngừng bổ sung và hoàn thiện thêm trong quá trình sử dụng

 

Rất mong sự đóng góp tích cực của tất cả các bạn.

Nhất trí với Ssg và ủng hộ hết mình. Tnmtpc sẽ cố trong thời gian sớm nhất gửi bảng tổng hợp các yêu cầu và hai file *.dwg và *.xls để có cơ sở nghiên cứu chương trình

Giá như Ssg Ssg am tường về trắc địa hoặc tnmtpc có được kiến thức về lisp như Bác Ssg nhỉ. Mà sao các Bác trắc địa không ai lên tiếng vậy cà?

  • Vote giảm 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
Nhất trí với Ssg và ủng hộ hết mình. Tnmtpc sẽ cố trong thời gian sớm nhất gửi bảng tổng hợp các yêu cầu và hai file *.dwg và *.xls để có cơ sở nghiên cứu chương trình

Giá như Ssg Ssg am tường về trắc địa hoặc tnmtpc có được kiến thức về lisp như Bác Ssg nhỉ. Mà sao các Bác trắc địa không ai lên tiếng vậy cà?

Thấy a e có ý tưởng rất hay và thực tế, e cũng từng ấp ủ sẽ viết hẳn 1 chương trình về trắc địa nho nhỏ bao gồm đầy đủ các nhu cầu cần thiết của a e trắc địa -bản đồ hay dùng, nhưng do trình độ lập trình có hạn nên chỉ mới viết được 1 số module nho nhỏ (VBA) thui như trích xuất tọa độ sang excel (chọn đối tượng, pick điểm), phun điểm từ các file dữ liệu thông dụng vào cad.

Nay biết được ý tưởng của a e nên e ủng hộ cả 2 tay 2 chân luôn... :)

Về việc tổng hợp yêu cầu thì e thấy trước tiên hãy đưa ra 1 bảng ban đầu , có thể đơn giản cũng được, rùi a e sẽ dựa vào đó mà đóng góp, thay đổi ý kiến dựa trên bảng đó.

Còn về kiến thức chuyên ngành thì e giúp đuựơc gì sẽ gíup vì e cũng trong ngà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
Nhất trí với Ssg và ủng hộ hết mình. Tnmtpc sẽ cố trong thời gian sớm nhất gửi bảng tổng hợp các yêu cầu và hai file *.dwg và *.xls để có cơ sở nghiên cứu chương trình

Giá như Ssg Ssg am tường về trắc địa hoặc tnmtpc có được kiến thức về lisp như Bác Ssg nhỉ. Mà sao các Bác trắc địa không ai lên tiếng vậy cà?

 

mình sẵn sàng đợi tnmtpc phân công đây

  • 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
mình sẵn sàng đợi tnmtpc phân công đây

Hôm nay mới chính thức tiếp kiến với Vbao, rất mong sự nhiệt tình của các bạn để ý tưởng của Bác Ssg và các thành viên khác trong diễn đàn sớm thành "chánh quả", trước hết mình post file mẫu để các bạn trong nghề tham khảo trước, có thông tin phản hồi, tu chỉnh lại rồi mới "đệ trình" lên trên chớ! Trong file, mình tạo riêng hai mảng địa chính và địa hình, mỗi mảng có file .xls và .dwg tương ứng. Sau khi tu chỉnh rồi mình mới đề ra các hành tự, tổng hợp thành các yêu cầu theo ý Bác Ssg

http://www.cadviet.com/upfiles/mau_2.rar

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
Hôm nay mới chính thức tiếp kiến với Vbao, rất mong sự nhiệt tình của các bạn để ý tưởng của Bác Ssg và các thành viên khác trong diễn đàn sớm thành "chánh quả", trước hết mình poss file mẫu để các bạn trong nghề tham khảo trước, có thông tin phản hồi, tu chỉnh lại rồi mới "đệ trình" lên trên chớ! Trong file, mình tạo riêng hai mảng địa chính và địa hình, mỗi mảng có file .xls và .dwg tương ứng. Sau khi tu chỉnh rồi mình mới đề ra các hành tự, tổng hợp thành các yêu cầu theo ý Bác Ssg

http://www.cadviet.com/upfiles/mau_2.rar

 

một số nhận xét:

- trong excel chỉ nên có 1 sheet dữ liệu nhập, dùng chung cho địa chính và địa hình, sau khi tính toán X Y Z (theo quan điểm của từng cá nhân), sẽ link và xuất qua sheet 2 theo yêu cầu từng ngành (ex: địa chính không sử dụng cao độ, địa hình có sử dụng . . .)

người lập trình chỉ cần lưu ý các điểm sau :

- save file *.xls theo định dạng nào? comma hay tab delimited ? để dễ lập trình, trong file *.txt bao gồm các dữ liệu nào?

(số TT điểm - X - Y - Z - ghi chú - mã điểm) sau đó import vào cad

- trong *.dwg nên sử dụng font .shx, các dữ liệu như số TT, ghi chú, mã điểm có text height = 1/2 text cao độ (dễ quan sát khi có nhiều điểm mia gần nhau)

- text cao độ ghi trong bản vẽ là text 2D hay là block có Att (giải quyết điểm point nằm trùng với dấu phân cách thập phân)

- point là 2D hay 3D? (điều này ành hưởng đến cách vẽ đường đồng mức)

- các yếu tố trên (point, text, block có att . . .dạng 2D hoặc 3D) nếu xuất ngược lại về excel dễ dàng hay không? (dùng để thêm "mắm muối" vào dữ liệu cho . . .phong phú) :)

một vài ý kiến xin đóng góp. Thanks

  • 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
một số nhận xét:

- trong excel chỉ nên có 1 sheet dữ liệu nhập, dùng chung cho địa chính và địa hình, sau khi tính toán X Y Z (theo quan điểm của từng cá nhân), sẽ link và xuất qua sheet 2 theo yêu cầu từng ngành (ex: địa chính không sử dụng cao độ, địa hình có sử dụng . . .)

người lập trình chỉ cần lưu ý các điểm sau :

- save file *.xls theo định dạng nào? comma hay tab delimited ? để dễ lập trình, trong file *.txt bao gồm các dữ liệu nào?

(số TT điểm - X - Y - Z - ghi chú - mã điểm) sau đó import vào cad

- trong *.dwg nên sử dụng font .shx, các dữ liệu như số TT, ghi chú, mã điểm có text height = 1/2 text cao độ (dễ quan sát khi có nhiều điểm mia gần nhau)

- text cao độ ghi trong bản vẽ là text 2D hay là block có Att (giải quyết điểm point nằm trùng với dấu phân cách thập phân)

- point là 2D hay 3D? (điều này ành hưởng đến cách vẽ đường đồng mức)

- các yếu tố trên (point, text, block có att . . .dạng 2D hoặc 3D) nếu xuất ngược lại về excel dễ dàng hay không? (dùng để thêm "mắm muối" vào dữ liệu cho . . .phong phú) :)

một vài ý kiến xin đóng góp. Thanks

Ok! "dự án Land Cadviet Utility " khởi động rồi đấy! Vbao góp ý rất thực tế, nhưng địa chính và địa hình là hai anh hòan tòan độc lập nhau, rất hiếm có sự kết hợp này, nếu có thì vẫn phải có hai sản phẩm bản vẽ riêng. Vấn đề đặt ra ở đây là dự án Land Cadviet Utility (cứ gọi thế cho nó óach) là cầu nối giữa Excel và Cad, do đó dữ liệu để từ Excel sang Cad phải được các nhà trắc địa xử lý hòan chỉnh. Đối với bản vẽ địa hình thì dữ liệu phải gồm: tên điểm, tọa độ X,Y,Z, code và ghi chú, đối với địa chính gồm có tọa độ X,Y, code, ghi chú, còn các thông tin khác như chủ sử dụng phải được sử lý bên Cad (hai file mẫu trang sổ đo .xls nên xem là hai file độc lập). Thống nhất với Vbao là định dạng kiểu file txt trong hộp thọai chọn dữ liệu để nhập nên đa dạng (*.CSV, *.TXT ...), đối với Font, text height nên là tùy chọn trong hộp thọai nhập, kể cả layer chứa đối tượng, text mình nghĩ nên là 2D thì hay hơn, vấn đề dấu chấm thập phân trùng với point có lẽ Bác Ssg giải quyết được vì độ cao điểm chi tiết luôn lấy hai số lẻ, nếu không trùng thì cũng chẳng sao. Đối với địa hình thì đương nhiên point phải là 3D (vì khả năng còn giao tiếp với các chương trình 3D khác nữa chớ

Xuất ra file báo cáo: chủ yếu dành cho bản vẽ địa chính, sau khi nối điểm tạo thành thửa đất, chương trình phải đánh số thửa tự động, tính diện tích, còn lọai đất và tên chủ sử dụng mình nghĩ là phải nhập bằng thủ công thôi. Sau khi hòan chỉnh bản vẽ, xuất ra file báo cáo có các thông tin sau : mảnh bản đồ, số thửa, diện tích, lọai đất, tên chủ sử dụng

Có gì trao đổi tiếp 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

Xin có ý kiến:

Trong CAD nên sử dụng Block-Att kg nên dùng text vì dễ dàng truy xuất mà kg bị ảnh hưởng bởi các đối tượng text khác trong bản vẽ, và có thể view hoặc ẩn các cột dữ liệu khi cần. Còn về vị trí chính là điểm chèn của Block-Att

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
Xin có ý kiến:

Trong CAD nên sử dụng Block-Att kg nên dùng text vì dễ dàng truy xuất mà kg bị ảnh hưởng bởi các đối tượng text khác trong bản vẽ, và có thể view hoặc ẩn các cột dữ liệu khi cần. Còn về vị trí chính là điểm chèn của Block-Att

Hơi khó xử một chút là nếu tạo các đối tượng là Block, các text, kể cả point đều là thành phần của block giống như cogo point trong Land desktop. khi in bản vẽ có một số thành phần phải ẩn đi như code hoặc ghi chú, nếu các đối tượng là text nằm trên các layer riêng biệt, khi in, tắt layer chứa đối tượng không cần in sẽ tiện hơn, còn tạo riêng mỗi text là một block thì có nên không? mọi người cùng bàn kỹ thử nhé, để tìm ra giải pháp tối ưu

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
Hơi khó xử một chút là nếu tạo các đối tượng là Block, các text, kể cả point đều là thành phần của block giống như cogo point trong Land desktop. khi in bản vẽ có một số thành phần phải ẩn đi như code hoặc ghi chú, nếu các đối tượng là text nằm trên các layer riêng biệt, khi in, tắt layer chứa đối tượng không cần in sẽ tiện hơn, còn tạo riêng mỗi text là một block thì có nên không? mọi người cùng bàn kỹ thử nhé, để tìm ra giải pháp tối ưu

Thực ra block hay text cũng đều có thể ẩn được các đối tượng không cần thiết (theo layer)

nhưng theo mình thì có ai đó có thể chỉ giúp nếu nổ các block thì các att được lấy theo vađuwợc gán cho nó (tức là biến cao độ cd nhưng khi nổ ra là số 200.30 chẵn hạn

mình có một lisp vẽ điểm đo bằng máy kinh vĩ bán điện tử dt5s nếu có ai có nhu cầu thì mình sẽ post lên nhưng mà hơi thô thiển một chú đấy 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
nhưng theo mình thì có ai đó có thể chỉ giúp nếu nổ các block thì các att được lấy theo vađuwợc gán cho nó (tức là biến cao độ cd nhưng khi nổ ra là số 200.30 chẵn hạn
Chưa hiểu câu hỏi của bạn!

 

mình có một lisp vẽ điểm đo bằng máy kinh vĩ bán điện tử dt5s nếu có ai có nhu cầu thì mình sẽ post lên nhưng mà hơi thô thiển một chú đấy nhé
Rất vui nếu bạn chia sẻ lisp này cùng mọi người.

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
Thực ra block hay text cũng đều có thể ẩn được các đối tượng không cần thiết (theo layer)

nhưng theo mình thì có ai đó có thể chỉ giúp nếu nổ các block thì các att được lấy theo vađuwợc gán cho nó (tức là biến cao độ cd nhưng khi nổ ra là số 200.30 chẵn hạn

mình có một lisp vẽ điểm đo bằng máy kinh vĩ bán điện tử dt5s nếu có ai có nhu cầu thì mình sẽ post lên nhưng mà hơi thô thiển một chú đấy nhé

 

chọn Express - Blocks - Explode - Attributes to text

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
Hơi khó xử một chút là nếu tạo các đối tượng là Block, các text, kể cả point đều là thành phần của block giống như cogo point trong Land desktop. khi in bản vẽ có một số thành phần phải ẩn đi như code hoặc ghi chú, nếu các đối tượng là text nằm trên các layer riêng biệt, khi in, tắt layer chứa đối tượng không cần in sẽ tiện hơn, còn tạo riêng mỗi text là một block thì có nên không? mọi người cùng bàn kỹ thử nhé, để tìm ra giải pháp tối ưu

 

Tôi cho rằng nên sử dụng text 2D (tận dụng các lệnh hiệu chỉnh khác của accad như : find, mo . . hoặc các lisp tiện ích khác)

Block + att nếu tôi nhớ không lầm chỉ hiển thị được 256 ký tự ! ( hihi cái này phải hỏi lại anh Hoành) trong khi các anh em đi mia nhiều khi báo ghi chú điểm nhiều hơn số ký tự này, muốn hiệu chỉnh thuộc tính, sẽ khó hơn cho người mới học cad (bạn thử tượng tượng nếu tôi cần nâng hoặc hạ cao độ điểm mia hàng loạt do có sai sót , nếu dùng text thuần túy tôi có thể sử dụng tiện ích caltext.lsp của cadviet hiệu chỉnh một cách dễ dàng)

Layer không nên phân biệt : caodo, code, tendiem, ghichu. . .vì trong một bản vẽ (nhất là các bản vẽ tổng thể diện tích khảo sát lớn) sẽ có nhiều trạm máy, nếu vẽ một đối tượng địa vật do nhiều trạm máy đọc tới, các text cao độ nằm chồng đè lên nhau dày đặc, nếu tôi muốn tắt layer caodo của trạm máy 1 để dễ quan sát các đối tượng của trạm máy 2 sẽ khó khăn vì layer caodo có cả trong 2 trạm máy ! do đó tôi đề nghị :

dòng 1 : text cao độ

dòng 2 (text height = ½ text cao độ) : số TT - ghi chú điểm – mã điểm (có ký hiệu đặc biệt để phân biệt )

tất cả sẽ cùng trên 1 layer của trạm máy do

điểm chèn text nên để mặc định (Justify = left) sau này nếu cần move về dấu chấm thập phân của text cao độ ta sử dụng lệnh fi của acad đễ thực hiện

 

http://www.cadviet.com/upfiles/diahinhRE.dwg

  • 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
Chưa hiểu câu hỏi của bạn!

 

Rất vui nếu bạn chia sẻ lisp này cùng mọi người.

Ý của dnhqs là giá trị thuộc tính của khối (ví dụ cd là 20.15) khi bung khối , tất cả text hiển thị là cd, không phải là 20.15

phải vậy không dnhqs? Đó là nhược điểm khi tạo block

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ôi cho rằng nên sử dụng text 2D (tận dụng các lệnh hiệu chỉnh khác của accad như : find, mo . . hoặc các lisp tiện ích khác)

Block + att nếu tôi nhớ không lầm chỉ hiển thị được 256 ký tự ! ( hihi cái này phải hỏi lại anh Hoành) trong khi các anh em đi mia nhiều khi báo ghi chú điểm nhiều hơn số ký tự này, muốn hiệu chỉnh thuộc tính, sẽ khó hơn cho người mới học cad (bạn thử tượng tượng nếu tôi cần nâng hoặc hạ cao độ điểm mia hàng loạt do có sai sót , nếu dùng text thuần túy tôi có thể sử dụng tiện ích caltext.lsp của cadviet hiệu chỉnh một cách dễ dàng)

Layer không nên phân biệt : caodo, code, tendiem, ghichu. . .vì trong một bản vẽ (nhất là các bản vẽ tổng thể diện tích khảo sát lớn) sẽ có nhiều trạm máy, nếu vẽ một đối tượng địa vật do nhiều trạm máy đọc tới, các text cao độ nằm chồng đè lên nhau dày đặc, nếu tôi muốn tắt layer caodo của trạm máy 1 để dễ quan sát các đối tượng của trạm máy 2 sẽ khó khăn vì layer caodo có cả trong 2 trạm máy ! do đó tôi đề nghị :

dòng 1 : text cao độ

dòng 2 (text height = ½ text cao độ) : số TT - ghi chú điểm – mã điểm (có ký hiệu đặc biệt để phân biệt )

tất cả sẽ cùng trên 1 layer của trạm máy do

điểm chèn text nên để mặc định (Justify = left) sau này nếu cần move về dấu chấm thập phân của text cao độ ta sử dụng lệnh fi của acad đễ thực hiện

 

http://www.cadviet.com/upfiles/diahinhRE.dwg

Nếu không tạo layer riêng sẽ rất bất tiện, vì khi in bản vẽ địa hình chỉ cần in các địa vật, cao độ. điểm mia,ghi chú (nếu cần thiết), trong khi đó mã điểm không ẩn được thì gay lắm, bản vẽ khi in ra "nặng lắm"

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
Nếu không tạo layer riêng sẽ rất bất tiện, vì khi in bản vẽ địa hình chỉ cần in các địa vật, cao độ. điểm mia,ghi chú (nếu cần thiết), trong khi đó mã điểm không ẩn được thì gay lắm, bản vẽ khi in ra "nặng lắm"

tôi chưa thấy bản vẽ có thể hiện điểm mia + ghi chú (vì bản thân điểm mia khi nối thành các đối tượng, được căn cứ trên ghi chú điểm) do đó, tôi thường biên tập khi xuất bản vẽ giao chủ đầu tư tất cả các trạm máy đều qui về một layer caodo (dung lượng file nhẹ, ít layer đỡ gặp error. . .) còn muốn dùng layer để quản lý từng đối tượng, tôi thường dùng tiện ích group trong acad.

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ôi chưa thấy bản vẽ có thể hiện điểm mia + ghi chú (vì bản thân điểm mia khi nối thành các đối tượng, được căn cứ trên ghi chú điểm) do đó, tôi thường biên tập khi xuất bản vẽ giao chủ đầu tư tất cả các trạm máy đều qui về một layer caodo (dung lượng file nhẹ, ít layer đỡ gặp erro. . .) còn muốn dùng layer để quản lý từng đối tượng, tôi thường dùng tiện ích group trong acad.

Ý của Vbao là đúng rồi, như tnmtpc đã đề cập, ghi chú chỉ áp dụng khi cần thiết, không phải điểm mia nào cũng có ghi chú, chẳng hạn, điểm mia đại diện cho điểm lỗ khoan, mà trong khu vực đo có nhiều lỗ khoan, mỗi lỗ khoan có một tên gọi riêng mà không thể lấy tên điểm mia để thay thế tên lỗ khoan được, yêu cầu sản phẩm phải có ghi chú tên kèm theo, do vậy có thể ghép tên điểm và code chung một layer, nhưng những ghi chú đặc biệt như trên phải nằm trên một layer. như vậy đằng nào cũng quản lý theo lớp, thêm một lớp nữa cũng không là vấn đề. Mình nghĩ như vậy, các bạn thấy thế nào?

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

Cám ơn nhiệt tình của tất cả các bạn.

Ssg có vài ý kiến chung như sau:

1) Mỗi người, mỗi cơ quan có thể có cách làm khác nhau. Sự chuẩn hóa, thống nhất cách thiết lập bản vẽ là "chuyện dài nhiều tập". Trong phạm vi anh em CadViet, nếu thống nhất được cái nào hay cái đó. Còn lại, phải chấp nhận sự đa dạng trong cách làm. Các trường hợp này, chương trình có thể xử lý linh hoạt bằng cách đưa ra các tùy chọn cho người dùng. Về mặt lập trình, có thể là code dài hơn một chút nhưng về nguyên tắc không có gì khó khăn. Tuy vậy cũng không nên lạm dụng, dù sao thì có được sự thống nhất vẫn hơn.

2) Chương trình truy xuất thông tin từ text hay attribute block không gặp phải vấn đề gì, các bạn thấy cái nào tiện hơn thì dùng thôi. Theo ssg, dùng text có vẻ linh hoạt hơn khi cần edit (như ý kiến của vbao).

3) Có thể còn vài điểm bất đồng, nhưng về cơ bản mình thấy các bạn đã nhất trí. Theo mình, bạn tnmtpc có thể hoàn thiện bảng tổng hợp và đưa ra luôn đi. Có cái cụ thể, mọi người dễ góp ý hơn và ssg cũng dễ hình dung hơn để định hình sơ bộ cái khung cho chương trình.

  • 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
Cám ơn nhiệt tình của tất cả các bạn.

Ssg có vài ý kiến chung như sau:

1) Mỗi người, mỗi cơ quan có thể có cách làm khác nhau. Sự chuẩn hóa, thống nhất cách thiết lập bản vẽ là "chuyện dài nhiều tập". Trong phạm vi anh em CadViet, nếu thống nhất được cái nào hay cái đó. Còn lại, phải chấp nhận sự đa dạng trong cách làm. Các trường hợp này, chương trình có thể xử lý linh hoạt bằng cách đưa ra các tùy chọn cho người dùng. Về mặt lập trình, có thể là code dài hơn một chút nhưng về nguyên tắc không có gì khó khăn. Tuy vậy cũng không nên lạm dụng, dù sao thì có được sự thống nhất vẫn hơn.

2) Chương trình truy xuất thông tin từ text hay attribute block không gặp phải vấn đề gì, các bạn thấy cái nào tiện hơn thì dùng thôi. Theo ssg, dùng text có vẻ linh hoạt hơn khi cần edit (như ý kiến của vbao).

3) Có thể còn vài điểm bất đồng, nhưng về cơ bản mình thấy các bạn đã nhất trí. Theo mình, bạn tnmtpc có thể hoàn thiện bảng tổng hợp và đưa ra luôn đi. Có cái cụ thể, mọi người dễ góp ý hơn và ssg cũng dễ hình dung hơn để định hình sơ bộ cái khung cho chương trình.

 

hoàn toàn nhất trí với anh ssg, chính vì vậy tôi mới có ý kiến file *.xls sẽ được thiết lập với quan điểm của từng cá nhân, định dạng theo từng cơ quan qui định, trang thiết bị cấp phát . . . chương trình chỉ nhận file dữ liệu xuất (*.txt hoặc *csv) theo định dạng chung, do đó tôi đề nghị file *txt định dạng như sau:

số TT - X - Y - Z - code điểm - ghi chú điểm

áp dụng cho đo vẽ địa hình, với địa chính chỉ cần hide tọa độ Z (trong file *.xls trước khi xuất sang file *.txt) là có thể sử dụng

- trong file *dwg sử dụng đối tượng cao độ điểm mia sẽ là text, tôi cho rằng không nhất thiết phải tạo nhiều layer như :caodo, code_diem, ghichu, các anh có thể tham khảo file http://www.cadviet.com/upfiles/diahinhRE.dwg và cho ý kiến cách thể hiện điểm mia cùng ghi chú.

  • 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
Chưa hiểu câu hỏi của bạn!

 

Rất vui nếu bạn chia sẻ lisp này cùng mọi người.

mình không up được nhưng sẽ tiếp tục cố gắng (hình như lỗi gì đó) các pác qt xem lại tí đi

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
mình không up được nhưng sẽ tiếp tục cố gắng (hình như lỗi gì đó) các pác qt xem lại tí đi

cũng không được thôi thì có ai cần cứ đưa địa chỉ mail mình send cho

ừ mình send cho bác hoanh nhờ bác úp giúp nhé

  • Vote tăng 2

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
Một chương trình ứng dụng tổng hợp, không chỉ đơn giản là phép cộng số học các trình đơn lẻ có sẵn đã post trên diễn đàn. Chúng phải được biên tập và xử lý lại thành một thể thống nhất, có tính tổ chức tốt hơn, giao diện được chăm chút hơn, thuận tiện hơn cho người dùng, dễ dàng chỉnh lý, bổ sung, phát triển… Để hoàn thành chương trình, phải cần nhiều thời gian và công sức của nhiều người (xin nhấn mạnh, một mình ssg không kham nổi!). Nếu có bạn nào vừa có chuyên môn Trắc địa, vừa biết về lập trình hỗ trợ với ssg thì hay quá?

 

Hiện tôi đang làm bên đo đạc địa chính nên rất ủng hộ cùng góp tay chung với các bạn thực hiện ý tưởng này. Trước kia tôi có viết 1 số tool để thực hiện các tác vụ mà topic này đang thảo luận và hiện CQ tôi vẫn dùng tuy nhiên đó là một số tool trên DOS cũ và chẳng liên quan gì tới Lisp cả vì vậy hy vọng cùng các bạn chia sẻ các kinh nghiệm đã có để cùng thực hiện ý tưởng lisp này. Tôi chẳng biết lisp chứ biết thì đã làm rồi.

 

Tôi xin đóng góp 1 số ý kiến

 

Quan điểm chung: tận dụng tối đa các công cụ của Excel để nhập, xử lý và lưu trữ dữ liệu, không nên nhập số liệu thô từ Acad.

 

Không dùng Acad để nhập liệu nhưng cũng ko nên dùng excel để nhập liệu mà chỉ cần dùng *.TXT file vì lý do sau :

Tất cả các máy đo đạc điện tử hiện nay đều xuất số liệu ra text file hoặc cvs file nên ko nên tự dưng lại lôi thêm 1 ông trung gian excel vào để cho nó phức tạp và nhiều công đoạn mà dùng bất kỳ 1 trình editor nào có thể biên tập được text file hay csv file.

 

dưới đây là mẫu file số liệu từ 1 máy đo điện tử (Leica thuỵ sỹ)

110001+A1A20000 21.104+00000000 22.104+09005500 31..00+00116936 81..00+00000000 83..00+00001300 87..10+00001510

110002+A1A20001 21.104+35827400 22.104+09004400 31..00+00070306 81..00+00001887 83..00+00001300 87..10+00001510

110003+A1A20002 21.104+35853400 22.104+09000400 31..00+00067032 81..00+00001293 83..00+00001300 87..10+00001510

 

và đây là mẫu đo của máy topcon

GTS-700 v3.0

STN QOII-23,1.839,

BS QOII-24,2.000,

SD 0.00000,90.11100,342.6610

SS 1,2.000,

SD 0.00000,90.11100,342.6650

SS 2,1.500,

SD 184.23500,90.12400,103.7380

SS 3,1.500,

SD 186.40450,90.09300,111.0350

SS 4,1.500,

SD 187.22450,90.22050,110.8210

 

mẫu của máy Sokia

13PCP.C. mm Applied: 0.000

02TP00322325535.08507888.956 HN.32

13CJPoint taken from KC.TU

08KI00302325525.67507917.971 HN.30

13TLHDist tol. error: Pt: 0030 0.008

07TP00320030107.9597220.00000000

09F10032003030.564000093.43888880.00000000HN.30

09F1003210005.3710000091.688888849.7069444N

09F10032100119.903000089.59027775.32083333N

09F1003210028.4990000089.901388867.8083333N

09F10032100317.149000091.82083336.29166667N

09F10032100412.423000089.269444475.3055555N

09F10032100516.888000091.43888886.49166667N

09F1003210065.3760000091.722222256.3166666N

 

Thực ra mấy mẫu trên là số liệu đo thô cần phải được xử lý trước khi đưa vào acad nên cần phải có 1 vài mô đun để chuyển về dạng thông dụng nhất của đo đạc. VD 1 - Xử lý bình sai lưới (cái này tôi ko tham vọng vì rất khó); 2 - Xử lý số liệu thô đo ngoại nghiệp; 3 - Tính toạ độ cực và tạo file kq theo mẫu để lưu hồ sơ đo; 4 - In ấn kết quả TĐ cực và chuyển điểm vào acad từ kết quả tọa độ cực; 5 - Chuyển điểm vào acad từ kết quả X,Y,Z vân vân... Việc này chúng ta sẽ bàn sau.

Cái cần nhất bây giờ phải đưa ra được một mẫu số liệu thống nhất và CHUẨN HOÁ để từ mẫu file này xuất sang acad, theo tôi với bản đồ địa chính thì nên như sau (còn địa hình thì phải thêm cột code nữa nhưng một số máy đo cũ ko nhập đc code mà):

 

1 2323231.505 567345.725 8.176 nha

2 2323233.909 567346.431 8.006 cau

3 2323229.684 567344.761 7.889 ao

A 2323227.315 567347.709 0.000

6 2323222.540 567348.424 8.112 dg

trong đó :

cột 1 - tên điểm

cột 2 - x (trắc địa)

cột 3 - y (trắc địa)

cột 4 - cao độ điểm mia

cột 5 - ghi chú

Khi chuyển số liệu sang acad thì sẽ tạo thành các layer cơ bản đại loại như sau (có thể mỗi người đặt khác nhau) :

layer: Diem - là point object có vị trí chèn là giá trị X, Y

layer: Tendiem - là Text object có vị trí chèn là giá trị X, Y và giá trị Text là giá trị của cột 1 cột tênđiểm :1, 2, 3, A... (Left text - (strcat " " tendiem))

layer: Caodo - là Text object có vị trí chèn là giá trị X, Y và giá trị Text là giá trị của cột 4 - (Bottom Center text)

layer: Ghichu - là Text object có vị trí chèn chính là giá trị X, Y và giá trị Text chính là giá trị của cột 5 (Mid left text)

 

Trước tôi làm để đơn giản thì chỉ cần có 4 cột là (Tendiem, x, y, caodo) tương ứng chỉ cần tạo có 3 layer (Diem, TenDiem, Caodo) thế là đã đưa vào acad hoặc MicroStation nối vẽ ầm ầm vì dù sao trong đo đạc cơ bản ông nào cũng đều có sơ đồ phác họa ngoài thực địa cả, chỉ cầm cái đó để biên tập thêm cho đủ y/c.

 

Còn nhiều lắm sẽ dần dần bàn tiếp, chúng ta cứ thống nhất về phương hướng đã.

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
hoàn toàn nhất trí với anh ssg, chính vì vậy tôi mới có ý kiến file *.xls sẽ được thiết lập với quan điểm của từng cá nhân, định dạng theo từng cơ quan qui định, trang thiết bị cấp phát . . . chương trình chỉ nhận file dữ liệu xuất (*.txt hoặc *csv) theo định dạng chung, do đó tôi đề nghị file *txt định dạng như sau:

số TT - X - Y - Z - code điểm - ghi chú điểm

áp dụng cho đo vẽ địa hình, với địa chính chỉ cần hide tọa độ Z (trong file *.xls trước khi xuất sang file *.txt) là có thể sử dụng

- trong file *dwg sử dụng đối tượng cao độ điểm mia sẽ là text, tôi cho rằng không nhất thiết phải tạo nhiều layer như :caodo, code_diem, ghichu, các anh có thể tham khảo file http://www.cadviet.com/upfiles/diahinhRE.dwg và cho ý kiến cách thể hiện điểm mia cùng ghi

Ui đừng thế chứ, địa chính thì cũng có lúc phải đo địa hình chứ bác, theo tôi cứ tạo ra tất cả các layer đó, không dùng đến thì chỉ tắt cái layer đó đi là đc mà

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
Ui đừng thế chứ, địa chính thì cũng có lúc phải đo địa hình chứ bác, theo tôi cứ tạo ra tất cả các layer đó, không dùng đến thì chỉ tắt cái layer đó đi là đc mà

Thống nhất với elleHCSC, cứ tạo các layer cho nó rạch ròi, dễ xử lý, khi cần thì tắt. về các quan điểm khác cũng thống nhất cơ bản, ý tưởng của chương trình là nhập dữ liệu từ các file *.txt, riêng với Excel là phòng cho các máy kinh vĩ thông thường( vẫn còn nhiều anh trắc địa con nhà nghèo mà) để xử lý số liệu thô sau đó lưu định dạng *.csv để xuất sang Cad

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
Cám ơn nhiệt tình của tất cả các bạn.

Ssg có vài ý kiến chung như sau:

1) Mỗi người, mỗi cơ quan có thể có cách làm khác nhau. Sự chuẩn hóa, thống nhất cách thiết lập bản vẽ là "chuyện dài nhiều tập". Trong phạm vi anh em CadViet, nếu thống nhất được cái nào hay cái đó. Còn lại, phải chấp nhận sự đa dạng trong cách làm. Các trường hợp này, chương trình có thể xử lý linh hoạt bằng cách đưa ra các tùy chọn cho người dùng. Về mặt lập trình, có thể là code dài hơn một chút nhưng về nguyên tắc không có gì khó khăn. Tuy vậy cũng không nên lạm dụng, dù sao thì có được sự thống nhất vẫn hơn.

2) Chương trình truy xuất thông tin từ text hay attribute block không gặp phải vấn đề gì, các bạn thấy cái nào tiện hơn thì dùng thôi. Theo ssg, dùng text có vẻ linh hoạt hơn khi cần edit (như ý kiến của vbao).

3) Có thể còn vài điểm bất đồng, nhưng về cơ bản mình thấy các bạn đã nhất trí. Theo mình, bạn tnmtpc có thể hoàn thiện bảng tổng hợp và đưa ra luôn đi. Có cái cụ thể, mọi người dễ góp ý hơn và ssg cũng dễ hình dung hơn để định hình sơ bộ cái khung cho chương trình.

Qua ý kiến Của Ssg, cơ bản cũng đã có những ý kiến tương đồng nhau, để có cơ sở xây dựng chương trình, tnmtpc xin phát họa tiến trình nhập xuất dữ liệu giữa các file .txt và Cad, các bạn tham gia thêm để hòan thiện yêu cầu

1/ Về cơ sở dữ liệu để xuất qua Cad (file *.csv, *.tab, *.xyh, và các định dạng file phù hợp khác):

-Đối với địa hình có các trường: tendiem-X-Y-Z-code-ghichu

-Đối với địa chính có các trường tendiem-X-Y-code-ghichu

2/Thực hiện nhập dữ liệu vào Cad: trong hộp thọai nhập có các nội dung:

-Chọn kiểu file, tên file

-Chọn layer chứa đối tượng : Layer phải được tạo ra trước khi nhập dữ liệu, cách bố trí layer nhiều hay ít, đối tượng nào thuộc layer nào, do người sử dụng quyết định (trường hợp này giải quyết được ý kiến khác nhau giữa tnmtpcVbao)

3/Code điều khiển: có hai lọai

-Code nối điểm( giống chương trình Bác Hòanh đã viết)

-Code hiển thị các ký hiệu địa vật: chèn các symbol theo mã ( ví dụ LK là code lỗ khoan)

Trong hộp thọai chọn Symbol có các nội dung: editbox dùng để nhập code cần hiển thị ký hiệu, nút Browse để duyệt đến thư viện chứa symbol (thư viện này chứa các symbol do người dùng tạo ra)

4/Biên tập bản vẽ:

Bản vẽ địa hình:

xác định đường bao khu vực-tạo tam giác bề mặt-vẽ đường bình độ:Hộp thọai có các tùy chọn: Xmax,Xmin-Ymax,Ymin-Hmax,Hmin; khỏang cao đều bình độ con, bình độ cái; Màu bình độ con, bình độ cái; chiều cao nhãn ghi độ cao của bình độ cái, số chữ số thập phân của nhãn

Bản vẽ địa chính: tạo vùng cho thửa, đánh số thửa, tính diện tích để ghi vào thửa đất, nhập lọai đất, tên chủ sử dụng

tạo khung, ghi chú, khung tên

5/Tạo file đầu ra:

-Trong hộp thọai xuất, nhập tên file, chọn định dạng file đầu ra như trên (giống file mẫu ”thongke solieu” )

-Tạo file hồ sơ kỹ thuật thửa đất (file *.dwg): có file mẫu đính kèm. Chọn thửa đất cần tạo file hồ sơ kỹ thuật  lưu file

6/Các chức năng hỗ trợ khác: tìm kiếm thông tin theo lớp và zoom tới màn hình, ví dụ tìm điểm mia trên layer “tendiem”,tìm số thửa trên layer “ sothua”…

Đính kèm các file mẫu :

http://www.cadviet.com/upfiles/mau_2.rar

Xin phép hỏi Bác Ssg nhé, Bác đã khái niệm tọa độ X,Y trong trắc địa chưa? X là bắc, Y là đông

Riêng phần vẽ bình đồ, mình nghĩ là khó, hay là Bác Ssg nghiên cứu viết modul cho cái anh địa chính, chạy thử rồi viết tiếp.

Mời các bạn cùng tham gia góp ý bổ sung để nội dung được hòan thiện. Trên đây mới chỉ là khúc dạo đầu, còn nhiều việc phải làm lắm

Cám ơn tất cả các bạn

  • 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

×