Нотатки лінгвомана

Блог про подорожі, країни, мови, програмування, музику, книги та купу інших речей, які мене захоплюють

Category: Програмування (page 2 of 2)

30 Day Processing Programming Challenge – День 3.

Сьогодні я вирішив надихнутися книгою “Generative Design” і гортаючи її зупинився на одному зі скетчів на тему паттернів із геометричних фігур.
Цей скетч я взяв за основу, прибрав все зайве, додав код, який відповідає за відмальовку прямокутників, застовував поступову зміну кольору для кожного наступного прямокутника. Вийшов силует мегаполісу 🙂

generative city

Те, що було в процесі: Continue reading

30 Day Processing Programming Challenge – Day 2.

Другий день експериментів із Processing та generative art виявився важчим, першу годину мені взагалі не подобався результат, тому доводилося видаляти код і писати наново. Десь під кінець другої години картинка почала подобатись, я захопився і забув про час. Фінальний результат — генератор спіралей утворених із квадратів різного кольору та розміру. Якщо ще трохи погратися з кодом і анімувати зображення, то можна досягти гіпнотичного ефекту: sketch Нижче те, що виходило в процесі: Continue reading

30 Day Processing Programming Challenge – Day 1.

Нещодавно я почав працювати над освітнім курсом з мови програмування Processing. Курс буде призначений для людей, у яких взагалі немає досвіду у програмуванні, але яким це цікаво і яким не терпиться одразу бачити результати. В рамках підготовки я вирішив “заточити інструмент” і протягом наступних 30 днів щодня писати невеличкий скетч у процесингу, публікувати результат в блозі, а код на Github.

Я не знаю якими будуть ці скетчі. Швидше за все буде повний експромт. Головна вимога — витрачати на кожен не більше 2-х годин, ще краще — не більше години. Сьогодні загалом я витратив на скетч близько 1,5 години, бо мене затягнув цей код і різнокольорові прямокутники.

Сьогодні вийшов досить простий generative art з прямокутниками та rotation. Поки додаю лише зображення та код, а надалі, можливо, додам веб-версію скетчів. processing skecth Нижче те, що виходило в процесі: Continue reading

Як зациклити анімацію CABasicAnimaton чи CAKeyframeAnimation у iOS

Отже, припустимо, що ви створили анімацію за допомогою CABasicAnimation чи CAKeyframeAnimation і вам знадобилося її зациклити. Я нещодавно працював над такою, наче простою задачею, намагаючись робити зациклення через одне місце 🙂

Все виявилося простіше, варто було просто почитати документацію. У будь-якої CAAnimation є властивість repeatCount. Я танцював навколо неї, пробував делегатські методи на зразок animationDidStop, але, ще раз повторюю, треба було просто подивитися у документацію і вказати значенням repeatCount константу HUGE_VALF. Ця чарівна константа зациклює вашу анімацію навіки.

Приклад реалізації:

NSArray * animationValues = @[@0.0, @1.0, @1.0, @0.0];

CAKeyframeAnimation * smallCircleAnimation = [CAKeyframeAnimation animationWithKeyPath:@"opacity"];
smallCircleAnimation.duration = 3.0;
smallCircleAnimation.values = animationValues;
smallCircleAnimation.keyTimes = @[@0.0, @0.76, @0.86, @1.0];
smallCircleAnimation.repeatCount = HUGE_VALF; //ключовий момент де встановлюється вічна зацииклена анімація
smallCircleAnimation.removedOnCompletion = NO;

// Після створення анімації ми просто додаємо її до потрібної в’юшки (View) чи лейера (CALayer, CAShapeLayer)
[self.smallCircleLayer addAnimation:smallCircleAnimation forKey:nil];

Сподіваюся, що розкрив тему максимально розуміло. Якщо маєте питання з приводу анімації — пишіть, коментуйте, відповім якнайшвидше.

The way of Xcoder. Назад шляху нема.

В черговий раз пишу після тривалої перерви, і вкотре кажу собі, що потрібно зробити блоґ основним майданчиком для думок, ідеї та пам’яток собі й людям на майбутнє.

Цього разу причина написання посту проста — я вкотре змінив сферу діяльності і повернув життя у кардинально новий напрям — розробку під iOS, а можливо, в майбутньому і під Mac OS. В цей момент якраз минає 60 днів з початку стажування iOS-девелопером у Petcube.  І цей пост я пишу більше для себе як пам’ятку про те, чому я встиг навчитись за ці 2 місяці.

До початку стажування у Petcube я протягом року у вільний час вчив Objective-C та основи розробки під iOS, але все ж ці 2 місяці інтенсивної роботи виявилися просто безцінними.

objective-c code

Можливо, у майбутньому я розкрию детальніше кожен з пунктів, а тут просто їх перерахую: Continue reading

Послідовність Фібоначчі — приклад коду для Processing.

Щоб не забути публікую тут шматок коду послідовності Фібоначчі для мови програмування Processing. Даний код — лише приклад, який малює прямокутники за даною послідовністю.

fibonacci example

 

Digital Art за допомогою Creative Programming

Зайшовши на Coursera в очікуванні третього тижня занять, я натрапив на додаток, який зробив один зі студентів. Це був досить невеликий шмат коду, який робить дуже гарні візуально речі — премальовує будь-яке фото у цікавому стилі за допомогою ліній, виходить такий собі кльовий Digital Art.  Машина створює малюнки.

Тут можна погратися з його прикладом: http://thelucre.com/test/drawer/

А нижче версії малюнків за допомогою трохи допиляної мною програми. Все це колись були фотки.

digital art Continue reading

Newer posts

Copyright © 2022 Нотатки лінгвомана

Theme by Anders NorenUp ↑