Цртање задатих цртежа - додатни примери¶
Претпостављамо да сте већ стекли одређену вештину очитавања координата и позивања функција за цртање основних облика. Зато ће се у наредним задацима појавити нови изазов.
На многим цртежима постоји нека правилност, на пример осна симетрија или део цртежа који се понавља. Ако пожелите да сами направите неки такав цртеж, да би он добро изгедао, не можете да изаберете све тачке потпуно слободно. Уместо тога, неке тачке треба да изаберете, а неке треба да израчунате.
Да бисмо се приближили прављењу слика које самостално осмишљамо, начин задавања цртежа је мало измењен. Цртежи су и даље задати помоћу програма - примера који црта слику (постоји изрека да једна слика вреди 1000 речи). Ново је то што на појединим деловима слике неће бити могуће да се очита једна или обе координате, већ је потребно да те координате израчунате на основу познатих координата.
Осим тога што је потребно и мало рачунања, цртежи у задацима који следе садрже и више детаља па је за њихову израду потребно нешто више времена.
Ограда¶
У овом задатку очитавање \(x\) координата је ограничено на прву притку ограде и први размак. Све остале потребне координате се могу израчунати.
Дат је комплетан програм, можете да га испробате и овде.
Зграда¶
Сви прозори зграде су исте величине, размаци између спратова су једнаки, а лева и десна страна зграде су симетричне једна другој (осим што симетрични прозори не морају бити исте боје). Искористите ове податке да бисте израчунали координате које не можете да очитате.
Чича Глиша¶
У овом примеру не могу да се очитају координате тачака на десној нози, али је она симетрична левој. Пошто је ширина слике позната (погледајте почетак програма), координате двеју непознатих тачака на десној страни се могу израчунати на основу познатих симетричних тачака са леве стране.
Помоћ: Нека је \(A\) тачка на левој страни слике, а \(B\) тачка на десној страни слике, симетрична тачки \(A\). Те две тачке онда имају исту \(y\) координату, а збир \(x\) координата тачака \(A\) и \(B\) једнак је ширини слике.
Мачка¶
Уши ове мачке могу да се прикажу као попуњени троуглови. Како се уши надовезују на главу, по два темена сваког троугла могу да буду изабрана са више слободе (довољно је да буду негде у глави). Осим два троугла који представљају уши, имамо још:
два круга (глава и врх њушке)
шест елипси (очи, зенице и делови њушке)
шест линија (бркови)
\(x\) координате на десној страни слике се не могу очитавати, али се могу израчунати користећи симетрију (и познату ширину слике - погледајте почетак програма).
Напомена: Поступак одређивања параметара елипсе на десној страни мало се разликује од оног за круг или дуж. Треба водити рачуна о томе да је горње лево теме правоугаоника описаног око тражене елипсе у ствари слика горњег десног темена правоугаоника описаног око познате елипсе. То значи да када одредимо параметре (x, y, w, h) елипсе на левој страни, параметри њој симемтричне елипсе на десној страни су (sirina - x - w, y, w, h), где је sirina ширина прозора, x, y су координате горњег левог темена правоугаоника око леве елипсе, а w и h су ширина и висина (обе) елипсе.
Дат је комплетан програм, можете да га испробате и овде.