Các dòng màu xanh lá cây bí ẩn trong Giao diện bố cục được tạo trong quá trình thực thi tập lệnh ArcObjects là gì?


8

Bất kỳ guru ArcObjects nào có thể cho tôi biết, những dòng màu xanh lá cây này trên Bố cục trang của tôi là gì và phải làm gì hoặc không làm gì để chúng không xuất hiện? Xem hình ảnh đính kèm.

Tôi đã sử dụng ArcObjects từ Python. Kịch bản của tôi là chuyển đổi lưới khung dữ liệu và lưới thành đồ họa. Kết quả là tôi nhận được Nhóm phần tử mà từ đó tôi cần trích xuất các phần tử đơn (văn bản, dòng, v.v.) để chơi với chúng. Tuy nhiên, sau thao tác này (được thực hiện trong 3 lưới riêng biệt) tôi nhận được những đường màu xanh lá cây bí ẩn đó, không phải là một phần của GraphicContainer. Trên thực tế, các đường màu xanh lá cây chỉ xuất hiện sau khi chuyển đổi và trích xuất từ ​​một chuỗi (WGS).

Có một số hướng dẫn ở đây về cách loại bỏ chúng, hoạt động (cắt và dán hoặc xóa và xóa tất cả các thành phần trang). Tuy nhiên, tôi vẫn muốn tránh chúng ngay từ đầu. Ngoài ra, sau một số cấu hình cắt và dán, tôi thấy rằng các đường màu xanh lá cây sẽ biến mất khi 3 yếu tố hình ảnh đó (góc dưới bên phải) bị xóa và khôi phục.

Mã bị nghi ngờ chịu trách nhiệm cho việc này:

pGCL.Reset() #reset graphics containere
pElem = pGCL.Next()
while pElem:
 pEP3 = CType(pElem, esriCarto.IElementProperties3)
 if pEP3.Name == '' and pEP3.Type == 'Group':
  pGE = CType(pElem, esriCarto.IGroupElement3)
  pGE_no = pGE.ElementCount
  for i in range(pGE_no):
   if pGE.ElementCount > 0:
    pGEe = pGE.Element[0]
    pGCL.MoveElementFromGroup(pGE, pGEe, 0)
   else: break
 pElem = pGCL.Next()

Tôi biết có một số cuộc thảo luận đang diễn ra, liệu GIS.SE có phải là nơi thích hợp cho các câu hỏi cụ thể về phần mềm, kỹ thuật như vậy không. Tôi xin lỗi vì điều này, tuy nhiên, tôi không tìm thấy câu trả lời thỏa đáng ở bất cứ nơi nào khác.

Đường màu xanh lục trong Bố cục trang


1
Câu hỏi tuyệt vời. Đối với diễn đàn này. Dòng này có in không?
Brad Nesom

Đáng ngạc nhiên- không, họ không in. Ở mức thu nhỏ nhất định, chúng có thể biến mất, nhưng sau khi phóng to chúng lại hiện diện. Tôi đã lo lắng, tập lệnh đó đã làm hỏng .mxd của tôi, nhưng sau các thao tác "cắt-dán" hoặc "xóa-hoàn tác" được đề cập ở trên, chúng sẽ biến mất hoàn toàn. Vì vậy, tôi giả sử .mxd không bị hỏng. Thực sự, tôi muốn nghe một số giải thích.
Tomek

Đây có phải là tái sản xuất trên các máy trạm khác? Tôi đã có một vấn đề tương tự (mặc dù nguyên nhân & giải pháp khác nhau) và tôi có các máy trạm khác không có vấn đề gì (và một số đã xảy ra). gis.stackexchange.com/questions35346/ Mạnh
Jay Cummins

Tôi đã thử trên 3 máy trạm với ArcGIS 10 và 10.1. Sinh sản.
Tomek

Bạn nhận được gì với Chọn tất cả các yếu tố, Thu phóng đến các yếu tố được chọn? Nó phóng to waaaaay ra? Tôi đã có một hình ảnh biến mất vào một điểm luôn không thể tiếp cận. Tôi kỳ diệu (không tái tạo) được chọn và xóa.
gm70560

Câu trả lời:


5

Dòng này có vẻ đáng ngờ đối với tôi:

for i in range(pGE_no):

Nếu bạn xóa phần tử thứ i khỏi nhóm, thì tăng i phần tử tiếp theo không thực sự là phần tử i + 1. Điều này có thể gây nhầm lẫn.

Để khắc phục điều này, hãy thử lặp lại, bắt đầu tại pGE_no và giảm i.

Cập nhật

Ngoài ra, vì bạn đang lặp qua tất cả các yếu tố trong bộ điều khiển đồ họa, việc thêm một yếu tố mới vào cấp cao nhất của vùng chứa trong khi bạn ở bên cạnh có thể là một nguyên nhân gây nhầm lẫn khác. Thay vào đó, có lẽ tạo một danh sách tất cả các nhóm, sau đó lặp qua danh sách (thay vì bộ điều khiển đồ họa) gọi MoveElementFromGroup. Nếu bạn có các nhóm lồng nhau, mọi thứ sẽ phức tạp hơn một chút, bạn sẽ cần bắt đầu với những chiếc lá và tỉa chúng lại trước.


Tôi đã không kiểm tra lời khuyên từ cập nhật. Vòng lặp ngược không thay đổi bất cứ điều gì. Tôi sẽ cố gắng lặp lại danh sách thay vì đồ họa.
Tomek

Trong chứng thư, việc thêm phần tử mới vào thùng chứa trong khi tiếp theo là nguyên nhân. Cảm ơn Kirk.
Tomek

Kirk, bất kỳ con trỏ làm thế nào để trích xuất nhóm từ nhóm theo đúng cách (hoặc nhóm mẫu yếu tố TỪ nhóm)? Mọi thứ đều ổn với bất kỳ yếu tố nào khác nhưng yếu tố nhóm không muốn hợp tác. Bất kì manh mối nào?
Tomek

0

Nó trông giống như hướng dẫn và người cai trị.
tuy nhiên không thể làm cho chúng dừng lại và góc cạnh. (ray).

những cây thước

Dòng có tồn tại nếu bạn chuyển sang xem dữ liệu?
Điều đó có thể cho bạn biết nếu đó là một cái gì đó "trên" chế độ xem bố cục hoặc trong dữ liệu của bạn.

xem dữ liệu
Tôi đã có một số bất thường đã làm một cái gì đó tương tự mà một cặp (tọa độ) không hợp lệ là một phần của tính năng đường.
Bạn có thể thử chạy địa lý sửa chữa trên dữ liệu của mình để xem có xóa nó không.

sửa


Tôi đã cố gắng sửa chữa tất cả các hình học ở đó mà không có thay đổi. Màu xanh vẫn còn xuất hiện. Tôi không nghĩ rằng những điều đó được liên quan đến các hướng dẫn. Tôi không thể can thiệp với họ, họ chỉ xuất hiện.
Tomek
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.