ОО2/Лаб 3 2022

Извор: SI Wiki
< ОО2
Датум измене: 9. фебруар 2023. у 11:00; аутор: KockaAdmiralac (разговор | доприноси) (V1)
(разл) ← Старија измена | Тренутна верзија (разл) | Новија измена → (разл)
Пређи на навигацију Пређи на претрагу

Трећа лабораторијска вежба 2022. године одржана је 31. маја године заједно за СИ и РТИ.

В1

Л3

Задатак се појавио на јунској трећој лабораторијској вежби у оба термина. Поставка основног задатка је доступна на страници предмета.

  • Објекат у свемиру се ствара са задатим целобројним координатама центра у дводимензионалном простору које могу да се дохвате и бојом (Color). Могуће је појединачно променити сваку од координата центра за задати померај. Може се одредити растојање између центара два објекта у свемиру. Могуће је исцртати објекат у свемиру над задатим графичким контекстом (Graphics).
  • Летелица је објекат светло плаве боје (CYAN) који се додатно ствара дужином основице и висином. Може се проверити да ли се летелица преклапа са другим небеским телом. Преклапа се уколико је полупречник описане кружнице мањи од збира половине основице и висине. Летелица се исцртава око центра као једнакокраки троугао.[1]
  • Небеско тело је објекат у свемиру који се ствара са додатно задатим полупречником описане кружнице у пикселима.
  • Комета је небеско тело сиве боје (GRAY). Комета се око центра исцртава као правилни петоугао са насумичном оријентацијом.
  • Планета је небеско тело које се ствара са једном од следећих боја: зелена (GREEN), плава (BLUE), жута (YELLOW) или црвена (RED), свака са 25% вероватноће. Додатно планета може садржати прстен са 25% вероватноће. Планета се ицртава као круг око центра задате боје. Уколико садржи прстен, он се исцртава као кружница око истог центра дупло већег полупречника.
  • Свемир је активно платно (Canvas) са црном (BLACK) позадином које садржи произвољан број небеских тела, једну летелицу и целобројни идентификатор истражености свемира. Могуће је додати небеско тело. На сваких 100 милисекунди, свемир исцртава сва садржана небеска тела, летелицу и истраженост свемира, а потом симулира кретање кроз свемир тако што свим небеским телима помера y-координату за 5 пиксела, повећава истраженост за 1 и проверава да ли је дошло до преклапања летелице и небеских тела. Уколико је дошло до преклапања са кометом, свемир се зауставља, а уколико је дошло до преклапања са планетом, истраженост се повећава за још 100. Могуће је покренути, привремено зауставити, наставити и трајно завршити активност свемира.
  • Активни генератор небеских тела се ствара са задатим свемиром. На сваких 900 милисекунди, генератор прави комету (75% вероватноће) или планету (25% вероватноће) чија је x- координата центра насумична вредност између 0 и 200, y-координата центра 0, а полупречник описане кружнице насумична вредност између 10 и 30, а потом је додаје у свемир. Могуће је покренути, привремено зауставити, наставити и трајно завршити активност генератора.
  • Симулатор је главни прозор апликације ширине 200 и висине 400 пиксела који садржи свемир, панел са командама и генератор небеских тела. Панел са командама садржи дугме са натписом Pokreni!, дугме са натписом Zaustavi и дугме са натписом Nastavi. Притиском на дугме Pokreni! покрећу се свемир и генератор небеских тела, након чега је дугме онемогућено. Притиском на дугме Zaustavi привремено се заустављају свемир и генератор. Притиском на дугме Nastavi, генератор и свемир настављају са радом. При стварању прозора омогућено је само дугме Pokreni!. Притиском на дугме покрени омогућава се дугме Zaustavi, док су остала два онемогућена. Притиском на дугме Zaustavi, омогућава се дугме Nastavi, док су остала два онемогућена. Притиском на дугме Nastavi, омогућава се дугме Zaustavi док су остала два онемогућена.
Табела за оцењивање
Класа/Група Опис функционалности Поени
Летелица Одговарајућа боја 5
Одговарајући облик 10
Одговарајући положај 5
Генерално се помера 10
Не помера се ван граница екрана 5
Померање при заустављеној/некативној игри 5
Планета Правилно исцртавање уз различите боје 10
Неке планете имају прстен 5
Постоји више комета него планета 5
Свемир У случају колизије са планетом истраженост се повећава за 100 5
У случају колизије са кометом крај игре 5
Исписивање текста за истраженост 5
Текст се ажурира на сваких 100ms 5
Симулатор Постоје дугме за заустављање и настављање 5
Симулација се зауставља 5
Симулација се наставља 5
Активно је једно дугме у једном тренутку 5

ЛП

Задатак се појавио на поправној лабораторијској вежби. Поставка основног задатка је доступна на страници предмета.

  • Објекат у свемиру се ствара са задатим целобројним координатама центра у дводимензионалном простору које могу да се дохвате и бојом (Color). Могуће је појединачно променити сваку од координата центра за задати померај. Може се одредити растојање између центара два објекта у свемиру. Могуће је исцртати објекат у свемиру над задатим графичким контекстом (Graphics).
  • Небеско тело је објекат у свемиру који се ствара са додатно задатим полупречником описане кружнице у пикселима.
  • Метак је објекат црвене боје (RED) који се додатно ствара полупречником. Може се проверити да ли је метак урадирио у неко небеско тело. Ударио је уколико је растојање између њих мање од већег полупречника. Метак се исцртава као круг црвене броје. [2]
  • Комета је небеско тело сиве боје (GRAY). Комета се око центра исцртава као правилни петоугао са насумичном оријентацијом.
  • Звезда је небеско тело које се ицртава као петокрака звезда око центра. Боја је насумична између жуте и црвене[3].
  • Активно оружје се ствара максималним целобројним бројем муниције, а садржи и тренутни број муниције који може да се дохвати. Тренутни број муницјије при стварању је једнак максималном броју муниције. Може да се испалити 1 метак док год има муниције. На сваких 2 секунде додаје се по један метак (повећава се број) у оружје док год има места. Оружје се може покренути, зауставити, наставити и трајно зауставити.
  • Свемир је активно платно (Canvas) са црном (BLACK) позадином које садржи произвољан број небеских тела, оружје капацитета 3 и произвољни број метака. Могуће је додати небеско тело. Кликом на миш, испаљује се метак са дна свемира, а по x-оси је једнак месту клика. Метак се може испалити само ако оружје има муниције. На сваких 100 милисекунди, свемир исцртава сва садржана небеска тела, а потом симулира кретање кроз свемир тако што свим небеским телима помера y-координату за 5 пиксела, док метке помера за по 10 пиксела по y-оси нагоре. Ако се метак судари са кометом, уништавају се и метак и комета. Ако се метак судари са звездом, завршава се игра. У горњем левом углу исцртава се број метака: Municija: , а затим онолико кругова колико има метака. Ако је неки метак испаљен, црта се празан круг (без попуне). Празни меци се представљају на крају. У случају паузирања, преко тренутног стања екрана се исписује PAUZA на центру екрана, а у случају судара звезде и метка, на средини екрана се исписује KRAJ. Могуће је покренути, привремено зауставити, наставити и трајно завршити активност свемира.
  • Активни генератор небеских тела се ствара са задатим свемиром. На сваких 900 милисекунди, генератор прави комету (50% вероватноће) или зведзу (50% вероватноће) чија је x- координата центра насумична вредност између 0 и 200, y-координата центра 0, а полупречник описане кружнице насумична вредност између 10 и 30, а потом је додаје у свемир. Могуће је покренути, привремено зауставити, наставити и трајно завршити активност генератора.
  • Симулатор је главни прозор апликације ширине 200 и висине 400 пиксела који садржи свемир, панел са командама и генератор небеских тела. Панел са командама садржи дугме са натписом Pokreni!. Притиском на дугме Pokreni! покрећу се свемир и генератор небеских тела, након чега је дугме онемогућено. Притиском на дугме p програм треба да се паузира. Поновним кликом програм се наставља. Уколико се игра завршила услед судара са звездом, клик је без ефекта.
Приказ екрана (нацртано уз помоћ Paint-а, по сећању).

В2

Задатак није дошао на лабораторијским вежбама. Поставка се може наћи на страници предмета.

Напомене

Све информације писане су по сећању студената.

  1. Приликом обиласка, асистент је рекао да се за полупречник описане кружнице приликом цртања може узети да је половина висине.
  2. При обиласку асистент је рекао да се круг ствара полупречником од 5px.
  3. Асистент је нагласио приликом обиласка да се за ово користи RGB представа боја.