Daha çox

GUI ilə çoxbucaqlı çəkin


Bir çoxbucaq çəkmək üçün ArcMap üçün bir python vasitəsi əlavə etmək istəyirəm. Nəhayət, alətin ərazini və bir çox şeyi hesablamasını istəyirəm, amma indiyə qədər hər bir uc üçün siçanı tıklayaraq və bağlamaq üçün iki dəfə tıklayaraq düzensiz bir çoxbucaq çəkməkdən məmnun olaram. Kodlaşdırmaqda qorxunc olduğum üçün nəyə bənzəyəcəyinə dair şablonu varmı?

Sihirbazdakı əlavə tərəfindən yaradılan ümumi kod aşağıdakıları verir:

sinif ToolClass3 (obyekt): "" "Testin tətbiqi Addin_addin.tool (Alət)" "" __ ___ __ (özünü): self.enabled = True self.shape = "NONE" # "Xətt", "Dairə" olaraq təyin edilə bilər və ya "Düzbucaqlı" interaktiv forma çəkmək və onLine/Polygon/Circle hadisəsi yuyulmasını aktivləşdirmək üçün. def onMouseDown (özünü, x, y, düymə, sürüşmə): def def onMouseDownMap (özünü, x, y, düymə, shift): def onMouseUp (özünü, x, y, düymə, sürüşmə) keçir: def onMouseUpMap (özünü, x, y, düymə, shift): pass def onMouseMove (özünü, x, y, düymə, sürüşmə): pass def onMouseMoveMap (özünü, x, y, düymə, keçid): pass def onDblClick (özünü): keçid onKeyDown ( self, keycode, shift): pass def onKeyUp (self, keycode, shift): pass def deactivate (self): pass def on onCircle (öz, dairə_geometri): pass def onLine (öz, xətt_geometriyası): ötürmə def onDördbucaq (özünü, düzbucaqlı_geometriya) ): keçmək

Başımın üstündən iki şey düşünə bilərəm. Bir əlavə ilə qalmaq istəyirsinizsə, istifadə edə bilərsinizonlaynmetodu və istifadəçinin yaratdığı xətlərin həndəsəsi ilə təkrarlayın və bu nöqtələri bir sıra halına keçirin və bunu çoxbucağa çevirin. İki dəfə tıklayarak seqmentlər və bitirmələr əlavə edə bilərsiniz.

Və ya başqa bir seçim bir skript vasitəsi etməkdir. Bir skript vasitəsi ilə FeatureSet -i giriş olaraq istifadə edə bilərsiniz. İstifadəçi alət interfeysindən bu şəkildə interaktiv olaraq çoxbucaqlı çəkə bilər.


Videoya baxın: java GUI 18. actions - الواجهات الرسومية في جافا (Sentyabr 2021).