WEBVTT 00:00:00.960 --> 00:00:03.029 მოდით, უკეთ გავერკვეთ ხატვაში. 00:00:03.029 --> 00:00:05.270 რა შეგვიძლია გავაკეთოთ მართკუთხედების გარდა? 00:00:05.270 --> 00:00:07.716 შეგვიძლია გავაკეთოთ ოვალები ellipse-ს გამოყენებით, 00:00:07.716 --> 00:00:09.966 რაც კიდევ ერთი კომპიუტერული ბრძანებაა. 00:00:09.966 --> 00:00:14.751 ბრძანებებისთვის პროგრამირებაში სპეციალური სახელი არსებობს - ფუნქციები. 00:00:14.751 --> 00:00:18.510 ამიერიდან "ბრძანების" ნაცვლად სიტყვა "ფუნქცია"-ს გამოვიყენებ. 00:00:18.510 --> 00:00:23.000 დავწეროთ ფუნქცია სახელად ellipse, შემდეგ () და ბოლოს ; 00:00:23.000 --> 00:00:24.005 არ მუშაობს. 00:00:24.005 --> 00:00:27.367 შეტყობინება გვეუბნება, რომ გვაკლია პარამეტრები. 00:00:27.367 --> 00:00:30.922 შეგიძლიათ მიხვდეთ რა გვაკლია ამ ფუნქციის rect-თან შედარებით? 00:00:30.922 --> 00:00:35.030 როცა ვწერთ ellipse-ს, უნდა მივუთითოთ რიცხვებიც, ისე როგორც rect-ის შემთხვევაში. 00:00:35.030 --> 00:00:37.550 ამ რიცხვებს პარამეტრები ეწოდებათ. 00:00:37.550 --> 00:00:40.500 ვამბობთ, რომ ფუნქციას გადავცემთ პარამეტრებს 00:00:40.500 --> 00:00:45.470 ისინი კი აკონტროლებენ თუ რას იზამს ფუნქცია. 00:00:45.470 --> 00:00:50.211 პარამტერების გარეშე პროგრამამ არ იცის სად და რამხელა უნდა იყოს ელიფსი. 00:00:50.211 --> 00:00:52.530 გასაგებია თუ რატომ მივიღეთ შეტყობინება. 00:00:52.530 --> 00:00:54.717 გადავცეთ ამ ფუნქციას ოთხი პარამეტრი, 00:00:54.717 --> 00:01:00.753 რათა გავაკონტროლოთ თუ სად, რა სიმაღლის და რა სიგრძის უნდა დაიხატება ელიფსი. 00:01:00.753 --> 00:01:08.205 წინანდელივით, შეგვიძლია ელიფსი ვამოძრაოთ და ზომაშიც ვცვალოთ. 00:01:08.205 --> 00:01:14.012 რადგან გავერკვიეთ, დავხაზოთ ელიფსი ზუსტად ფანჯრის შუაში. 00:01:14.012 --> 00:01:17.505 ალბათ გინდათ გაიხსენოთ თუ სადაა შუა. 00:01:17.505 --> 00:01:22.899 ზედა მარცხენა წერტილი არის ნული, მარჯვენა კი 400. 00:01:22.899 --> 00:01:25.490 ზემოდან ქვემოთ დაშორებაც არის 400. 00:01:25.490 --> 00:01:27.761 რა იქნება შუა? 00:01:27.761 --> 00:01:31.285 პირველი ვარაუდით, უნდა იყოს 400-ის ნახევარი, ანუ 200. 00:01:31.285 --> 00:01:33.759 სიმაღლეშიც იგივე, 400-ის ნახევარი ანუ 200. 00:01:33.759 --> 00:01:36.746 მოდით დავხატოთ ამ ადგილას, დავწეროთ ellipse ბრძანება, 00:01:36.746 --> 00:01:41.468 გადავცეთ პარამეტრები და დიდი ზომის დავხატოთ. 00:01:41.468 --> 00:01:43.480 ესეც ასე. 00:01:43.480 --> 00:01:46.242 მოდით მართკუთედიც ჩავსვათ. 00:01:46.242 --> 00:01:50.216 დავწეროთ rect(200, 200 -- და უფრო მცირე იყოს -- 100, 100); 00:01:50.216 --> 00:01:55.243 საინტერესოა, რას გვიჩვენებს ჩვენი ექსპერიმენტი? 00:01:55.243 --> 00:02:01.767 როგორც ვხედავთ, ელიფსის შემთხვევაში 200, 200 გვიჩვენებს ცენტრის მდებარეობას, 00:02:01.767 --> 00:02:05.708 მართკუთხედისთვის კი ეს განსხვავებულია, და გვეუბნება, 00:02:05.708 --> 00:02:09.969 თუ სად უნდა მოვათავსოთ მართკუთხედის მარცხენა ზედა წერტილი. 00:02:09.969 --> 00:02:14.752 ამისი ცოდნა აუცილებელია ფიგურების დახატვისას. 00:02:14.752 --> 00:02:16.825 ახლა გადავიდეთ მონაკვეთებზე. 00:02:16.825 --> 00:02:19.478 მონაკვეთის ფუნქციას ეწოდება line. 00:02:19.478 --> 00:02:21.773 შეგვიძლია ისევ გადავცეთ პარამეტრები, 00:02:21.773 --> 00:02:25.234 თუმცა, მონაკვეთს ზომა არ აქვს როგორც მართკუთხედს არა? 00:02:25.234 --> 00:02:28.485 მაშინ რა რიცხვები უნდა მივუთითოთ? 00:02:28.485 --> 00:02:31.270 პირველი და მეორე პარამეტრები იგივე იქნება, 00:02:31.270 --> 00:02:34.545 რა სიმაღლესა და სიგანეზე უნდა დაიწყოს მონაკვეთი, 00:02:34.545 --> 00:02:36.981 პარამეტრების მეორე წყვილი კი -- 00:02:36.981 --> 00:02:40.077 -- უკაცრავად, მეორე წყვილი, ანუ 90 და 200 -- 00:02:40.077 --> 00:02:46.523 გვიჩვენებს თუ რა სიმაღლესა და სიგანაზე დასრულდება მონაკვეთი. 00:02:46.523 --> 00:02:48.242 რადგან გვესმის თუ ეს როგორ მუშაობს, 00:02:48.242 --> 00:02:52.501 მოდით ახლა ვნახოთ რაღაც, რაც თავიდან უცნაური იქნება. 00:02:52.501 --> 00:03:00.533 რა მოხდება თუ მართკუთხედს ზედა მარცხენა კუთხეში დავიწყებ? 00:03:00.533 --> 00:03:03.991 -- დიდი იყოს -- 00:03:03.991 --> 00:03:07.777 შეგვიძლია უფრო გავზარდოთ, მაგრამ ალბათ ზედმეტი იქნება. 00:03:07.777 --> 00:03:11.910 როგორც ხედავთ, ნელნელა ელიფსი გაქრობას იწყებს. 00:03:11.910 --> 00:03:14.760 შეგვიძლია მთლიანად გავაქროთ. 00:03:14.760 --> 00:03:17.773 საინტერესოა, სად წავიდა? 00:03:17.773 --> 00:03:21.502 საქმე ისაა, რომ კომპიუტერი ფიგურებს თანმიმდევრულად ხატავს. 00:03:21.502 --> 00:03:24.702 ჯერ დახატა ელიფსი, შემდეგ კი ზემოდან მართკუთხედი დაახატა. 00:03:24.702 --> 00:03:26.502 ახლა კი დაემატა მონაკვეთიც. 00:03:26.502 --> 00:03:30.772 ელიფსი ისევ თავის ადგილასაა, უბრალოდ ფიგურებს ქვემოთ. 00:03:30.772 --> 00:03:32.500 ეს მნიშვნელოვანია გვახსოვდეს. 00:03:32.500 --> 00:03:36.498 რა მოხდებოდა ჯერ რომ მონაკვეთი დაგვეხაზა? 00:03:36.498 --> 00:03:38.520 მთლიანად ვერ დავინახავდით, ასე არაა? 00:03:38.520 --> 00:03:41.730 შეიძლება ეს თქვენს პროგრამაში მოხდეს და გაგიკვირდეთ. 00:03:41.740 --> 00:03:45.023 სინამდვილეში ნახატი თავის ადგილზეა, მაგრამ 00:03:45.023 --> 00:03:50.250 ამჯერად მას ელიფსი და მართკუთხედი ფარავენ. 00:03:50.250 --> 00:03:53.501 შეგვიძლია ვაკონტროლოთ რომელი ფიგურა რომლის თავზე დაიხატოს, 00:03:53.501 --> 00:03:58.592 ამისთვის საკმარისია ფუნქციების თანმიმდევრობის კონტროლი. 00:03:58.592 --> 00:04:02.550 სანამ დავასრულებთ, მინდა რამდენიმე ტექნიკური ტერმინი გაგაცნოთ. 00:04:02.550 --> 00:04:04.512 ალბათ როგორც მათემატიკაში გისწავლიათ, 00:04:04.512 --> 00:04:09.216 შეგვიძლია ასო x გამოვიყენოთ იმისთვის, რომ აღვნიშნოთ სიგანე 00:04:09.216 --> 00:04:11.528 და y, რომ აღვნიშნოთ სიმაღლე. 00:04:11.528 --> 00:04:14.001 შესაძლოა ეს ცოტა უცნაურად ჟღერს თუ არ მიჩვენულხართ, 00:04:14.001 --> 00:04:19.493 მაგრამ უფრო მარტივია ასე თქმა: რამდენად მარჯვნივ და რამდენად ქვემოთ" 00:04:19.493 --> 00:04:22.216 ჩვენი ელიფსის პირველი ორი პარამეტრი, მაგალითად, 00:04:22.216 --> 00:04:28.968 გვეუბნება, რომ x უდრის 200-ს, y კი - 229-ს. 00:04:28.968 --> 00:04:33.982 ესეც ასე. იგივეა რაც "რამდენად მარჯვნივ" და "რამდენად ქვემოთ". 00:04:33.982 --> 00:04:36.034 მეორე საკმაოდ კარგი კითხვა ასეთია, 00:04:36.034 --> 00:04:38.794 რა ერთეულებს ვიყენებდით მთელი ამ დროის განმავლობაში? 00:04:38.794 --> 00:04:42.763 200 სანტიმეტრი? ინჩი? იქნებ მილი? 00:04:42.763 --> 00:04:45.260 ჩვენ ვიყენებთ ერთეულებს, სახელად "პიქსელი". 00:04:45.260 --> 00:04:48.477 პიქსელი არის პატარა წერტილი თქვენს ეკრანზე. 00:04:48.477 --> 00:04:52.287 ეს სახატავი ტილო სიგანეში 400 პიქსელია, 00:04:52.287 --> 00:04:56.497 ამიტომ ვამბობთ რომ მარცხენა კუთხე ნულია, მარჯვენა კი 400, 00:04:56.497 --> 00:05:01.508 ანუ 400 პიქსელი. 00:05:01.508 --> 00:05:04.784 იგივენაირად, როცა ვამბობთ 200-ს, ვგულისხმობთ 200 პიქსელს. 00:05:04.784 --> 00:05:07.180 ალბათ გასაგებია. 00:05:07.180 --> 00:05:08.303 ძალიან კარგი! 00:05:08.303 --> 00:05:12.253 ახლა უკვე ყველაფერი ვიცით line, ellipse და line-სა და მათ პარამეტრებზე. 00:05:12.253 --> 00:05:16.461 მართალია სულ ახლახან დავიწყეთ სწავლა, მაგრამ თუ იმუშავებთ, მარტივად მიეჩვევით.