Kig (dasturiy ta'minot) - Kig (software)

Kig
Kig icon.svg
Kig-screenshot.png
Tuzuvchi (lar)KDE
Dastlabki chiqarilish2006 yil 2-avgust (2006-08-02)
Barqaror chiqish
1.0
Ombor Buni Vikidatada tahrirlash
YozilganC ++ (Qt )
Operatsion tizimUnixga o'xshash, Mac OS X, Windows
TuriInteraktiv geometriya dasturi
LitsenziyaGPL
Veb-saytedu.kde.org/ kig/kig.git

Kig bu bepul va ochiq manbali interaktiv geometriya dasturi, bu qismi KDE ta'lim loyihasi. Bu erda skriptlarni yozish uchun ba'zi imkoniyatlar mavjud Python, shuningdek, mavjud konstruktsiyalardan makroslarni yaratish.

Import va eksport

Kig tomonidan yaratilgan fayllarni import qilishi mumkin DrGeo va Kabri geometriyasi shuningdek, o'z fayl formatini, ya'ni XML - kodlangan. Kig raqamlarni eksport qilishi mumkin LaTeX format va kabi SVG (vektorli grafikalar) fayllari.

Ob'ektlar

Kig dinamik geometriyaning har qanday klassik ob'ektini boshqarishi mumkin, shuningdek:

  1. The egrilik markazi va tebranish doirasi egri chiziq;
  2. The kengayish, umumiy qarindoshlik, inversiya, proektsion dastur, homografiya va harmonik homologiya;
  3. The giperbola berilgan bilan asimptotlar;
  4. The Bézier egri chiziqlari (2 va 3 daraja);
  5. The qutb chizig'i nuqta va qutb a chiziq a ga nisbatan konus bo'limi;
  6. The asimptotlar a giperbola;
  7. The kub egri 9 ball orqali;
  8. A bilan kubik egri ikki nuqta 6 ball orqali;
  9. A bilan kubik egri pog'ona 4 ball orqali.

Ssenariy tili

Shakl ichida

Kig ichida yana bir ob'ekt mavjud, u a Python tili skript. U Kig moslamalarini o'zgaruvchi sifatida qabul qilishi va har doim bitta ob'ektni qaytarishi mumkin.

Masalan, agar rasm ichida raqamli ob'ekt bo'lsa, masalan 3, quyidagi Python ob'ekti o'z kvadratini (9) berishi mumkin:

def kvadrat(arg1):    qaytish DoubleObject(arg1.qiymat() ** 2)

O'zgaruvchilar har doim chaqiriladi arg1, arg2 ular bosilgan tartibda va boshqalar. Bu erda faqat bitta o'zgaruvchi mavjud arg1 va uning soni qiymati bilan olinadi arg1.value ().

Agar endi kompleks sonning kvadratini (ichida nuqta bilan ifodalangan) amalga oshirmoqchi bo'lsa Argand diagrammasi ), skriptni yaratishda tanlanishi kerak bo'lgan ob'ekt, albatta, nuqta bo'lishi kerak va skript shunday bo'ladi

def kvadrat(arg1):    x = arg1.muvofiqlashtirish().x    y = arg1.muvofiqlashtirish().y    z = x * x - y * y    y = 2 * x * y    x = z    qaytish Nuqta(Muvofiqlashtirish(x, y))

The abstsissa kvadratini ifodalaydigan nuqtaning murakkab raqam bu kengaytirish orqali ko'rish mumkin . Koordinata (x, y) yangi nuqtaning ikkita koordinatasidan tuzilgan Python ro'yxatini yaratadi. Va Nuqta qaysi nuqtani yaratadi koordinatalar ushbu ro'yxat tomonidan aniq berilgan.

Ammo rasm ichidagi Python ob'ekti faqat bitta ob'ektni yaratishi mumkin va yanada murakkab figuralar uchun skript bilan figurani qurish kerak:

Skript yordamida yaratilgan rasm

Kig kichik dasturni (Pythonda yozilgan) chaqiradi pykig.py mumkin

  1. Python skriptini yuklang, masalan. MyScript.py
  2. ushbu skriptda tasvirlangan Kig figurasini qurish
  3. Kigni oching va raqamni ko'rsating.

Masalan, a Sierpinski uchburchagi amalga oshirilishi mumkin (sifatida IFS ) bilan pykig:

dan tasodifiy Import *kigdokument.yashirin ob'ektlar()A = Nuqta(0, 2)A.ko'rsatish()B = Nuqta(-2, -1)B.ko'rsatish()C = Nuqta(2, -1)C.ko'rsatish()M = Nuqta(.1, .1)uchun men yilda oralig'i(1, 1000):    d = randrange(3)    agar d == 0:        s = Segment(A, M)        M = s.o'rta nuqta()    agar d == 1:        s = Segment(B, M)        M = s.o'rta nuqta()    agar d == 2:        s = Segment(C, M)        M = s.o'rta nuqta()    M.ko'rsatish()

Tashqi havolalar