Bisakah salah satu guru ArcObjects memberi tahu saya, apa saja garis-garis hijau pada Layout Halaman saya dan apa yang harus dilakukan, atau tidak dilakukan, sehingga tidak muncul? Lihat gambar terlampir.
Saya menggunakan ArcObjects dari Python. Script saya mengubah grid dan graticules data frame menjadi grafik. Sebagai hasilnya, saya menerima Elemen Grup dari mana saya perlu mengekstraksi elemen tunggal (teks, garis, dll.) Untuk bermain dengannya. Namun, setelah operasi ini (yang dilakukan untuk 3 grid terpisah) saya menerima garis hijau misterius itu, yang bukan bagian dari GraphicContainer. Sebenarnya, garis hijau muncul hanya setelah konversi dan ekstraksi dari one-graticule (WGS).
Ada beberapa panduan di sini tentang cara menghilangkannya, yang berfungsi (potong dan tempel atau hapus dan hapus semua elemen halaman). Namun, saya masih ingin menghindari mereka sejak awal. Juga, setelah beberapa konfigurasi pemotongan dan tempel saya pikir bahwa garis hijau menghilang ketika 3 elemen gambar (sudut kanan bawah) dihapus dan dipulihkan.
Kode yang diduga bertanggung jawab untuk ini:
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()
Saya tahu ada beberapa diskusi yang sedang berlangsung, apakah GIS.SE adalah tempat yang tepat untuk pertanyaan spesifik teknis dan perangkat lunak tersebut. Saya minta maaf untuk ini, namun, saya tidak menemukan jawaban yang memuaskan di tempat lain.
Jawaban:
Baris ini terlihat mencurigakan bagi saya:
Jika Anda menghapus elemen ke-i dari grup, maka menambahkan saya ke elemen berikutnya tidak benar-benar elemen i + 1. Ini dapat menyebabkan kebingungan.
Untuk mengatasi hal ini, cobalah perulangan mundur, mulai dari pGE_no, dan pengurangan i.
Memperbarui
Juga, karena Anda mengulang-ulang semua elemen dalam wadah grafis, menambahkan elemen baru ke tingkat atas wadah saat Anda berikutnya mungkin menjadi penyebab kebingungan lainnya. Sebaliknya, mungkin membuat daftar semua grouplements, maka loop melalui daftar (bukan graphicscontainer) memanggil
MoveElementFromGroup
. Jika Anda memiliki grup bersarang, hal-hal menjadi sedikit lebih rumit, Anda harus mulai dengan daun dan memangkasnya terlebih dahulu.sumber
Itu terlihat mirip dengan panduan dan penguasa.
namun tidak mungkin untuk membuatnya berhenti dan miring. (ray).
Apakah garis tetap ada jika Anda beralih ke tampilan data?
Itu mungkin memberi tahu Anda apakah itu sesuatu "pada" tampilan tata letak atau dalam data Anda.
Saya memiliki beberapa anomally yang melakukan sesuatu yang mirip ketika pasangan yang tidak valid (koordinat) adalah bagian dari fitur garis.
Anda bisa mencoba menjalankan perbaikan geomtery pada data Anda untuk melihat apakah itu menghapusnya.
sumber