ОО2/Лаб 3 2022
< ОО2
Пређи на навигацију
Пређи на претрагу
Трећа лабораторијска вежба 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 секунде додаје се по један метак (повећава се број) у оружје док год има места. Оружје се може покренути, зауставити, наставити и трајно зауставити.
Свемир је активно платно (оружје капацитета 3 и произвољни број метака.Canvas
) са црном (BLACK
) позадином које садржи произвољан број небеских тела,Могуће је додати небеско тело.Кликом на миш, испаљује се метак са дна свемира, а по x-оси је једнак месту клика. Метак се може испалити само ако оружје има муниције.На сваких 100 милисекунди, свемир исцртава сва садржана небеска тела, а потом симулира кретање кроз свемир тако што свим небеским телима помера y-координату за 5 пиксела,док метке помера за по 10 пиксела по y-оси нагоре. Ако се метак судари са кометом, уништавају се и метак и комета. Ако се метак судари са звездом, завршава се игра. У горњем левом углу исцртава се број метака:Municija:
, а затим онолико кругова колико има метака. Ако је неки метак испаљен, црта се празан круг (без попуне). Празни меци се представљају на крају. У случају паузирања, преко тренутног стања екрана се исписујеPAUZA
на центру екрана, а у случају судара звезде и метка, на средини екрана се исписујеKRAJ
.Могуће је покренути,привремено зауставити, наставитии трајно завршити активност свемира.Активни генератор небеских тела се ствара са задатим свемиром. На сваких 900 милисекунди, генератор прави комету(50% вероватноће) или зведзу (50% вероватноће)чија је x- координата центра насумична вредност између 0 и 200, y-координата центра 0, а полупречник описане кружнице насумична вредност између 10 и 30, а потом је додаје у свемир. Могуће је покренути,привремено зауставити, наставити итрајно завршити активност генератора.Симулатор је главни прозор апликације ширине 200 и висине 400 пиксела који садржи свемир, панел са командама и генератор небеских тела. Панел са командама садржи дугме са натписомПритиском на дугмеPokreni!
. Притиском на дугмеPokreni!
покрећу се свемир и генератор небеских тела, након чега је дугме онемогућено.p
програм треба да се паузира. Поновним кликом програм се наставља. Уколико се игра завршила услед судара са звездом, клик је без ефекта.
В2
Задатак није дошао на лабораторијским вежбама. Поставка се може наћи на страници предмета.
Напомене
Све информације писане су по сећању студената.