Sunting
Permintaan maaf atas keumuman sebelumnya!
Saya dengan ini mencoba untuk menjadi lebih jelas. Saya sedang menguji sebuah gambar, jadi saya menulis sejumlah metode yang akan dijalankan untuk menganalisis gambar tersebut. Tidak semua gambar yang diuji akan sama, jadi saya menginginkan objek untuk setiap gambar. Banyak metode yang saya tulis tidak berjalan di seluruh gambar. Misalnya, saya memiliki metode yang mengembalikan jarak titik array dari pusat gambar, menggunakan konstanta jarak piksel yang merupakan atribut gambar. Di sini saya punya contoh, saya membaca gambar dan dengan demikian membuat objek gambar, dan beberapa atribut yang akan berguna bagi saya. Tapi objek titik saya, yang termasuk dalam gambar itu, tidak akan memiliki akses ke atribut tersebut jika mereka memiliki kelasnya sendiri; Hal ini berguna untuk memiliki kelas poin, karena analisis lain juga menggunakan poin, dan menggunakan metode yang sama.
class image(object):
def __init__(self, filepath)
#creates an instance of the image from filepath
xscale = self.read_header(xspacing)
xscale = self.read_header(yspacing) #pixels per mm property of image
class point(object):
def __init__(slef, i,j)
self.i = i # array position in image.
self.j = j
self.x = self.i * xscale #real position in mm in image
self.y = self.i * yscale ##but xscale and y scale are not in scope here.
Jadi pertanyaannya adalah... bagaimana cara memberikan atribut objek titik seperti jarak yang bergantung pada atribut gambar seperti xscale dan yscale. Dalam pikiran saya, saya ingin image.point.x diizinkan, di mana image.point.x bergantung pada image.xscale. Kerumitan kecilnya, yang menurut saya mungkin dapat kita abaikan untuk saat ini, adalah bahwa suatu titik tidak boleh ada di luar konteks suatu gambar, karena tidak ada gunanya memiliki suatu titik tanpa atribut gambar, seperti skala. Saya harap ini lebih jelas, dan secara umum lebih bermanfaat. Terima kasih.
Pertanyaan asli.
Saya ingin memiliki gambar terbuka. Gambar harus berupa objek, karena banyak metode yang dikaitkan dengannya.. mis. membaca info header dan memberi objek banyak atribut seperti title, sizex, sizey...
Kemudian gambarnya terdiri dari titik-titik, tentunya = jadi saya pikir saya akan memiliki kelas poin. Saya kemudian dapat mendefinisikan objek Titik, dan objek tersebut dapat memiliki atribut, seperti posisi (tergantung pada beberapa konstanta jarak piksel dari header gambar). Dan kelas ini akan memiliki banyak metode titik, seperti jarak, perubahan nilai, perpindahan, skala, titik antara dua titik.... dll
Masalah saya ada dua. Pembuatan objek titik harus benar-benar bergantung pada keberadaan objek gambar tersebut. Saya tidak tahu bagaimana python menangani pembuatan objek bersyarat semacam ini. Dan kedua, Objek titik harus menyadari objek gambar yang relevan dengannya. Idealnya, saya akan memiliki Image.Point(x,y) dan itu berarti bahwa titik x,y ada di dalam gambar, sehingga dapat memiliki akses ke semua varialbe yang dibuat saat objek gambar diinisialisasi. Saya harap semua itu masuk akal. Saya telah mencoba super, tetapi sepertinya tidak melakukan sedikit persyaratan, dan menjalankan metode di kelas dasar, di mana saya benar-benar hanya ingin beberapa variabel tersedia.
Terima kasih atas bantuannya.
Image
membuat objekPoint
sendiri saat inisialisasi. Apakah Anda yakin Anda memerlukan kelas poin? Bagaimana dengan:(x, y)
untuk mewakili suatu titik? - person phant0m   schedule 02.07.2011