160 likes | 280 Views
CS320n – Elements of Visual Programming. Lists Mike Scott (Slides 9-1). Thanks to Wanda Dann, Steve Cooper, and Susan Rodger for slide ideas. Collections. In some animations, several objects must perform the same actions Example: Cars in lanes from Frogger
E N D
CS320n – Elements of Visual Programming Lists Mike Scott (Slides 9-1) Thanks to Wanda Dann, Steve Cooper, and Susan Rodger for slide ideas.
Collections • In some animations, several objects must perform the same actions • Example: • Cars in lanes from Frogger • In such situations, it is convenient to collect all the objects into a group (a collection) • Major benefit of Lists is we can write code for each object in the list • rather than separate code for each object Animation Programs
List • One way to organize objects into a collection is to use a list. • We use lists to help us organize things. For example, • assignments list • shopping list • email inbox • In programming, a list is known as a data structure. • an object that is used to group other objects together Animation Programs
Types of Lists • In Alice, a list can be a list of numbers or a list of objects, colors, or other type …. • In this session, we will use an example of a list of objects. Animation Programs
Example • Create a List of chickens • add 5 chicken objects to the world Animation Programs
Creating a list: Step 1 Create the initial world and add five chicken objects to the world. Then, create a new world-level variable in the properties panel. (Why should it be world-level rather than class-level?) Animation Programs
Creating a list: Step 2 In the popup dialog box, type in a name select Object type check “make a List” box click new item button 5 times to select each of the 5 chickens, one at a time Animation Programs
Resulting List • No change in the scene • We have simply added them to a list variable Animation Programs
Programming with a list • Now that a list has been created, how do we use the list in a program? • One of the most powerful operations with a list is to repeatedly perform some action with each item in the list. • This is called iteration or "iterating througha list." Animation Programs
Iterating through a list • Iteration can be done in two ways: • in order (one at a time) • all together (simultaneously) Animation Programs
Example/Demo: Iteration in Order • Have each chicken say hello • Have each chicken kicks its legs Animation Programs
The “Object’s part named X” function • One problem when passing Objects as parameters is how do I affect a sub part? • If the parameter type is simply Object subparts are unknown • Same problem with elements of a list • Use the Object’s part named X function Animation Programs
Part named function • Get "in order" operation for list • Drop in a Chicken object • Pick functions for Chicken Object and drag the part named function to replace the Chicken object Animation Programs
Part Named Function • Select which part • Pick other and type in name of sub part Animation Programs
Part Named function • Replace Chicken object with item_from_chickens • Final version Animation Programs
Example / Demo: Iteration Together • Change the previous animation so that the chickens move their legs together Animation Programs