top of page

Micro-Project 1

January 2019

OBJECTIVES

These small scale projects are meant to demonstrate my understanding of Objective C as well as Xcode through single or multifunctional applications. My following code demonstrates the use of a simple NSArray.

Screen Shot 2019-01-24 at 3.04.49 AM.png

I knew from the start that I wanted to display a series of images through an image view controller to create some sort of visual composition. But in order to do that in the most efficient way possible, I needed to store them in an array. While there are several ways to do this, I chose to simply name a UIImage object that would correspond to an image file. Then, I populated my

array (displayArray) with the images and set them to display a different one on the press of a button.

At this point, I needed to showcase images to users that displayed an overall sense of rhythm and balance. To do so, I utilized one of them more visually intense phenomenons out there: optical illusions.

By combining the two, my goal was to give the user a visual experience that could both fascinate and create a sense of nausea. Some illusions that are shown can be focused on and taken in. Others seem to move despite being static images, causing the user to (most likely) go to the next illusion. After a cycling through them a bit, I found that the user picks up speed and develops a rhythm that changes with every image. This however, did eventually lead to an issue. 

The most glaring issue that I came across was that although my first array worked correctly, the number of setups, loops, and other methods that I had were forced to run each and every time the button was pressed to change the image. After continuous usage, this wore down the device/simulator resources and slowed down my application heavily. It also brought up the issue of utilizing a random function without duplicate image protection. Pressing the button just to see the same static image broke the intended rhythm.

Screen Shot 2019-01-24 at 2.33.50 AM.png

To circumvent these issues, the code seen above utilizes that second array, (altArray)  in conjunction with the primary array. I then cut down on the number of paths needed to reach all methods, and utilized a do...while loop to prevent the image viewer from displaying the same image twice. I needed this specific loop over a regular while loop due to the fact that it is guaranteed to execute at least once.

Scale and hierarchy

Feburary 2019

OBJECTIVES

This next micro-project is meant to convey a sense of both scale and hierarchy with a rudimentary setup within an AR scenekit. The objects seen are in a three dimensional space, with attention paid to where they are positioned. The animation is done through a method that is applied to the parent node.

Screen Shot 2019-02-10 at 12.28.48 PM.pn

One of the most glaring challenges of using AR scenekit for the first time was the concept of nodes and how they worked in a three dimensional environment. After setting up the parent node, i decided to create my sense of scale around it. In order to do so, I set up one parent node and applied a rotation function to it.

Screen Shot 2019-02-10 at 1.43.15 PM.png

A key objective for this project was to completely forgo any extra UI Object elements on the storyboard (relating to the subject matter), as well as to use only primitive object types with no images attached. In order to do so, any and all design elements aside from the background must be done within the code. 

One of the most glaring challenges of using AR scenekit for the first time was the concept of nodes and how they worked in a three dimensional environment. After setting up the parent node, i decided to create my sense of scale around it. In order to do so, I set up one parent node and applied a rotation function to it.

Screen Shot 2019-02-10 at 1.03.10 PM.png

The resulting child nodes became increasingly larger in size to create a degree of scale, while the colors increased on a gradient level to convey hierarchy.

Screen Shot 2019-02-10 at 1.02.01 PM.png
bottom of page