Origami XML

As I mentioned last week, I feel inspired to dust off my origami software, the Foldinator, and try and move its development along towards a release version. I brief recap: I first conceptualized Foldinator as an application to author origami diagrams, since there is no such purpose-built software out there. As I thought about it I realized it would in fact have to be something of an origami simulation, with the steps of the diagrams working an actual animated simulation of the paper.

I started with the application design, concentrating particularly on the user interface and authoring tools. I wrote a paper on the subject with I delivered at 3OSME a few years back. I was writing it in Flash, which in those days meant ActionScript 1, which is a bit of a kludgey language without proper objects or data types. Around this time I was out of work for a while after the dotcom crash and made a good start on a prototype since I was able to give it some serious focus for a few months. The prototype could record and playback steps, and execute several operations including Rotate, Turn Over, (Valley) Fold and Fold, and Valley Fold.

When I got to the point where I had to grok a sequence of valley folds, I knew I had gotten to the heart of the problem. I had to figure out how to model this algorithmically to proceed, how to break the paper into a bunch of inter-related parts with hinged and/or joined edges. This made harder by the limitations of ActionScript as a language, which was not really designed for serious application development. I considered rewriting the whole thing in Java, but that would have meant a completely new approach and implementation of the drawing engine. A related problem was how to represent the data that comprised a sequence of steps. At the time I was using generic objects with properties, again due to AS1 limitations.

Around this time I got a new job and the amount of time and energy I was able to put into the project waned. After long days of writing software, it was hard to come home and work on a whole ‘nuther project at night, and besides, I wanted to put more of my origami time into actually designing and folding models.

Well things have changed since then and I figure it’s time to give it another shot. For a while I was trying to get some kind of R&D funding so I could work on this full time. But that does not look like it’s likely to happen, so I might as well get on with it.

One thing that that’s changed is ActionScript has grown up into a full-fledged Java-style object oriented language, and Flex into a professional grade authoring platform for web applications, built on Eclipse. Flex is a superset of Flash and includes the Flash vector drawing and animation engine. So the platform for Foldinator 2.0 is Flex.

Another thing that’s changed is I’ve figured out over the years how to be productive in small focused efforts that accumulate over time. (Having kids kind of forces you to get good at using your time wisely.) The key is to have a discreet and achievable goal every for every session that you sit down to work at something, whether it’s a few hours of even just an hour or less. Sometimes the goal can be just to think about it or come up with a plan for something, but I try and do my thinking offline, so when I sit down to work there’s a short-term goal. The first thing I did was create a new Flex project and set up the basic framework, and import my old Flash code to pick over and see what can be ported and what should be scrapped.

The other thing I did was to start to work out the data representation side. The first prototype focused on the authoring and interface side of things. This comes at it from the opposite end. Naturally, the logical choice is to use XML, so I thought coming up with an XML schema to represent an origami model would be an important step. Having googled “Origami XML” it does not appear that anyone has done any work on this. I told my idea to Brian Webb and he said “That sounds like a trip to Singapore right there,” referring to the upcoming 5OSME. I’m not sure I want to this, but I’m thinking of going to this year’s PCOC, because it’s in San Francisco and I used to live there and it’d probably be a lot of fun. Maybe there will be an opportunity to present a paper there, like the Monday sessions at the OUSA convention in New York.

In any event, the design goal of OrigamiXML is to represent a model by its folding sequence, in a way that’s application agnostic, in other words independent of Foldinator. I’d like to make OrigamiXML a standard that can be shared with the origami and software communities, so that Foldinator can share documents with other applications. I ran this idea by my brother Martin, who is thinking of developing an origami themed computer game in SilverLight.

I have started with a few examples of traditional and simple models expressed in Origami XML. They are: Picture Frame, a pureland model invented by my daughter Elizabeth a few years back (for those of you who are not folders, pureland means the model has only mountain and valley folds), the traditional Swan, the Waterbomb Base, and the Preliminary Fold. These bring up the issue of reverse folds, which it looks like I’ll have to get to sooner rather than later.

In the offing I have a few more models partially specified: The bird base and traditional crane, which will necessitate working out how to specify and execute a petal fold, the frog base, which will do the same for a squash fold, and a funny little thing I made up and call the bird-dog base, which is half a bird base on one side and half of Montroll’s dog base on the other.

If you look at the XML, there is some meta data at the top, including things like the title of the model, the author, and copyright info. Then there’s information about the paper: it’s proportions, whether it ought to be two-color and so on. Although I am mainly focused on single-sheet models, it supports specifications for multiple sheets. How to put multiple sheets together into a model is a bride to cross when we get there.

The heart of the document is the sequence of steps. Each step includes an action, which indicates the kind of step usually “fold”. It also has an annotation, which is a human readable description of the step, like those that typically appear in published diagrams.

Then there is room for any number of creases. At first I thought I would have just one crease per step, but then I realized it is necessary to have multiple crease to support reverse folds, squash folds, petal folds, and sinks. This means too that the OrigamiXML can support arbitrarily complex compound folds that collapse all at once, that are common in box-pleated models and other advanced modern styles.

A crease is specified by several parameters. First is the location, which can be either an end point and an angle or two end points. I’m not sure yet whether these coordinates are relative to the unfolded sheet as in a crease pattern, or to the current view of the folded model as in conventional diagramming. I’d prefer that latter, but have not yet worked out if this is possible, or if it will introduces too many cases of unsolvable ambiguities.

Other parameters include Swing, which specifies which way the folded paper moves (Left, Right), as well as Parity (“Mountain” or “Valley”), Type (Inside Reverse, Outside Reverse, etc., although I’m not sure if this belongs with the step of the crease), and an optional value for the number of layers to fold thru, which defaults to “all”.

Another feature is that steps can be nested, so a step can contain multiple sub-steps. The intent of this is to handle common diagramming situations such as “Repeat steps 19 -24 on the left side” or “Petal fold, repeat behind.” In the second case, this simple instruction actually breaks down into four steps. First the petal fold (which itself involves three creases). The next step is to turn the model over. Third is another petal fold, and last is to turn it over again. Having to make this into four steps in a diagram would be tedious to the diagrammer and bothersome to the folder, so I’m hoping to be able to automate this out.

That’s as far as I’ve gotten so far. I’d like to figure out a way to vet this to the origami community and get some feedback. Probably a simple post to the O-list ought to do it. Meanwhile I’ll start development on Foldinator 2.0 and by having it read in these XML files and parse them, and build the logic in the engine ones action at a time until it can execute these models. I fully expect there will be some back’n’forth between the XML and the engine to get the kinks ironed out. We’ll see how it goes. Wish me luck.

OUSA ’09 Pictures

Here are a bunch of pictures from the convention. Get ready, there are a lot of ‘em. First up, a few personal favorites among the many, many models on exhibit.

Seth Friedman’s Blue Bar Pigeon. Perhaps my favorite model this year. I think birds are the new bugs in origami. Over the past few years I’ve seen ever more detailed and more sculptural birds. This is one of the best yet. Pigeons are an animal I know intimately, and this one really captures the essence of the animal. Very moving.

Marc Kirshenbaum’s “Blue Sky”. Marc is known for complex models including insects and musicians, and for his whimsical sense of humor. This year he brought that all together in his “Original Beatle”, a beetle playing a guitar. But to me Blue Sky demonstrates such a simple and fresh approach, and ends up being very evocative, so here it is.

Joseph Wu always does such amazing work. He has just the right sculptural touch to bring a subject to life. Here are some of his pigs and an octopus.

Brian Chan is a virtuoso folder who loves to tackle supercomplex subjects. His work transcends mere technique. Here is the anime heroine Rei.

Michelle’s candy box was selected for this year’s Origami by children exhibit.

Here’s a bunch of photos of my exhibit. I hope you don’t find it too indulgent, but what the heck, it’s my blog.

Every year the girls like to fold Laura Kruskal’s Convention Crown.

Here’s T.J. Norville and I folding my U.F.O for the oversized folding competition. It was awesome fun.

My origami Sphere, inspired by Thelonious Monk. Not too battered after spending a whole day bouncing around my backpack. It’s made from a frog base in a way roughly analogous to the way a Waterbomb comes from its base. I’ve been carrying this idea around with me for a while, but had no idea if it would worked until I tried it, particularly the way the paper goes in around the equator. This also is a proof of concept for the tail and fins for my work-in-progress Zeppelin model. I’m now working on a second, rounder, version of the Sphere with 72 rather than 32 facets.

My Pyramid/Sphinx, spontaneously invented in response to a conversation with John Montroll and Won Park.

Paper Jam, Part II

I had a great time at this year’s origami convention. Jeannie and the girls went and had a great time too. A lot of my origami friends were there: John, Brian, T.J., Brian, Kenny, and the list goes on. (You know who you are!) Met a few new friends too, (Hi Susan!) and a few from the west coast and beyond who only make it every few years (Hi Won and Joseph).

As I mentioned before, I put a good amount of effort into my exhibit this year, so it was really gratifying to have folders I admire and respect complement on particular models. I think someone had something to say about every single piece. Michael Lafosse like my reptiles, and Joseph Wu and Brian Chan liked my Oliphaunt.

I taught my first class on Saturday morning, first session. Everyone in the family went on Saturday and we were all in good shape to turn up early. This class was the set of diagrams I had completed, 14 in all. It was a very full class, so I’m glad I made a second set of printouts. Overall they were well received and the class did quite well. A few models had a few specific sequences that seemed to need clarification, so that was valuable feedback.

My second class was Sunday afternoon. I taught my Luv Bug. I only had one period, and I ran out of time. I was a bit surprised because I can fold it by myself in 20 minutes, so I thought an hour would be enough. It was graded as intermediate, although it probably should have been high intermediate, and the class was very full and I had to walk around a lot showing people a couple of particular tricky steps. But people liked it well enough that I taught the conclusion (about 10 minutes more) to a few groups and individuals in the hospitality area later that evening.

There were a few unique things year. On Saturday night there was a screening of the movie “Between the Folds” a documentary about origami that profiles about a dozen top folders today, with an emphasis on the mathematical side of things. It was very well made, if (like origami itself) a bit idiosyncratic as per the choice of subjects. I really enjoyed seeing the interviews with Eric Joisel, whom I’ve never met, and Yoshizawa Sensei, whom I will never meet. Very nice soundtrack too.

Sunday night there was a giant fold completion. June Sokimoto, who owns a paper store in San Francisco, donated a few rolls of nine foot paper typically used for theatrical backdrops. It was a total blast, with everyone folding like mad. We worked in teams. Lizzy and her friend Michael made a swan. T. J. Norville and I got together and folded one of my U.F.O.s. He had asked me to teach him that model the day before, so he knew what he was doing and we were able to finish it in the allotted hour. When we started we didn’t know if it would work at all, but it came out awesome. I’m going to burn it for the 4th of July, or maybe when we go camping.

Sunday was also the first, last and only day in the month of June without rain this year.

Monday was a day seminars or origami related topics. The highlight for me was Toshi Tohiro from Tokyo talking about his origami software. It’s pretty specific to meshes, but it’s still pretty mind blowing. In fact it inspired me to dust off the Foldinator (my own origami software) and work on developing it again toward a releasable product. That’s a big topic, so more on that in a future post. For now I’ll say I’m staring with defining and XML schema.

I also folded a few new original models over the weekend. One is a sphere (yes that’s right, out of a square of paper), which worked out surprisingly well on the first try. Also, riffing on a theme, an orb UFO (maybe I can turn it into a Sputnik. For that matter, using my polar folding technique, I could make Mercury, Gemini and Apollo capsule. Jeannie suggested should fold a Space shuttle, complete with external tank and solid rocket boosters. I probably could, but that might be carrying things a bit to far.)

At the Monday night dinner I was sitting with John Montroll and Won Park, and they were discussing dollar folds, because John is coming out with a new dollar book and dollar folds are Won’s specialty. I came up with a neat little dollar fold of my own. It’s a pyramid, where the pyramid on the great seal on the bill lines of with the folded pyramid. This only took up half the paper, so out of the other half I made a Sphinx.

So it was a great convention on many levels. As always, now I’m really jazzed up about folding and wish I had more time to fold. One last thing — John has a fan site on the internet:

johnmontrollcandividebyzero.info.

Up next: pictures.

Paper Jam, Part I

Another Origami USA annual convention has come on gone. This year was an especially productive weekend and fun time for me. I meant to write a post last week when I was preparing for the convention, but I was too busy and ran out of time. So I’ll rewind a bit.

I’ve been busy folding new models and diagramming the past few weeks. A week ago Friday I had planned to take the day off from work and finish folding a whole bunch of works-in-progress. But I had to go in to the office to manage a group of contractors who are taking over the codebase of a project from another group, a project which I will be overseeing going forward. And as it turns out the codebase is sort of a fixer-upper. So it goes.

I had some good origami time on Sunday, but I had to choose between finishing models and finishing diagrams. I already had completed several new models for my exhibit this year and went back and wet-folded a few others, so I decided to concentrate on the diagrams. (More on the uncompleted models soon, as the they will be completed.) I went thru all the diagrams I had made in the last year -– fourteen in all — and proofread them. A few were mistake-free, several had one or two minor mistakes, several more had a sequence of steps that needed to be redrawn for clarity and/or accuracy. And then the last few — the Moose, Adirondack Chair, and U.F.O. needed to be finished. The ending steps of each of these models are fully three-dimensional so every step requires a new, highly detailed drawing. So that took up all of my free time and late into the night the rest of the week.

Last Thursday there was a happy hour event after work for the people in my group. I was vacillating on whether to go, being tempted to skip it to go home and fold. But there has been alot of turmoil lately in my group, and people will speak the kind of truth after work with a beer in their hand that the won’t in the office in the daytime, so I went along to hang out and encourage my colleagues to have another drink and see if there was anything to learn. The place was way downtown in SoHo, a neighborhood that I haven’t been to in years.

The bar was right across the street from where I used to live way back in 1993-94 with my friend Levitt when the area was pretty sketchy. I was in a third story walk-up loft that have a living space in one half and a studio full of stage lighting equipment in the other, and we were (among other things) working on software to automate the control of the lights thru MIDI. The stairway always smelled like machine oil and your were always light headed when you reached the flat. We suspected poor ventilation and carbon monoxide. The neighborhood changed a lot in the time I was there. There used to be some crack bum sleeping up the block, in a doorway that became an Armani store. Guess he had to find another place. Sometimes there were movie shoots on the streets and was able to grab breakfast on my way to work from a catering cart.  Now the building that where my loft was is no longer there, but a new high-rent luxury apartment is standing in its place.

When I got home that night I was too tired mentally to do any folding, so I went to bed early, which turned out the be a good move. I was able to get all my weekend chores done by midday Friday and had some time to finish preparing my exhibit and tweak some of the models I had. Each year my exhibit gets better and this was the best one yet.

More on the conference itself in part 2…

Origami Castle Complete

Weather update: it’s now been eight days in a row of rain, although the sun came out for a few hours yesterday afternoon, just in time for us to have a nice barbecue. And it looks like we get some sunshine again this afternoon.

I completed an exhibit quality origami castle based on my Armory configuration. It’s made from a 19″ square of Wyndstone, the same as my War Elephant. I tweaked the proportions to make the main square larger in proportion to the towers. In my prototype I started by dividing the paper into eighths, but for this one I divided it into ninths.

In other news I updated my main music page and the page for my work-in-progress album, Face The Heat, as well as the lyrics page. At this point I have seven songs done, and want to take a break from recording to concentrate on origami before I start in on a new song. Of the three or four songs I might start in on next, all are only semi-written, and in particular the lyrics and melody need to be finished and fitted to the music. This process can take a while, so I think rather than try and power thru it, I’ll sit back and see if inspiration comes to me to propel the process forward. Meanwhile I’ll take a step back from the songs I have and just listen a while and see how the mixes sit.

Origami Castle Explorations

And so castles made of sand fall to the sea eventually.

Forget what I said about the nice weather. We had a beautiful weekend but it’s been raining for four days straight now. Also it turns out that that plant in our yard is a mountain laurel, not a rhododendron. Ah well. To top it off there’s been more turmoil at the office the last few weeks, culminating in my boss, a VP of technology, resigning yesterday. And so it goes.

After I designed my origami tower I realized I could combine several towers on one sheet to form a castle. And so I’ve been experimenting in that direction. I came up with a bunch of prototypes with several successful layouts. The first was what I’m now calling the Grand Castle. The idea was to have one large central tower surrounded by a wall with four smaller towers at the corners. Once I started folding it I realized that I would also have a tower in the center of each edge wall, resulting in a total of nine towers. These middle towers would be rectangular rather than square and I would have to work out how to finish them. So I made a second version, called the Armory. It’s a single block of a building with four towers in a square with no central tower. This one seemed promising so I tried a few layouts with different proportions. The third one is called the Classic Castle. It consists of six towers in two groups. In the front is a gatehouse flanked by two small towers. In the back is a keep consisting of a large tower with a hall on each side. In between is a central courtyard.

This seems like maybe the best layout, but a lot of work to fold. So I went with the Armory to do as an exhibit-level model because it’s alot less complicated. Also I found it’s symmetry appealing, and thought it’d easier to finish neatly. Once I began I realized the base itself would make a really nice tessellation.

Now I’m thinking I can combine the castle technology with some ideas from the Origami from Space series to create all kinds of domes and spires, and virtually any kind of architectural structure. I have my plate full for this year, but look for more of this stuffs for the 2010 exhibition.

Origami War Elephant

I’m sure you if you read this blog regularly you’ve been wondering how is that origami War Elephant coming along? Well, I’m pleased to announce here it is!

When I started designing this, Jeannie commented that I was aspiring to Brian Chan (http://chosetec.darkclan.net/origami/) territory. Making models at that level of complexity requires some R&D. I folded quite a number of prototypes, mostly out of larger (15″) foil paper, to work thru the placement and proportion of the tower with respect to the elephant body. The other major issue to solve was what to do with all the pleats that ended up at the edges of the sheet. Some of them were tucked inside, but I was to use the ones near the back to make more complete hind feet. The ones in the front were transformed in into multiple tusks in the spirit of Peter Jackson’s Oliphaunt.

Which is cool because I originally got the idea to design this model after seeing Lord of the Rings, thinking a fantastic Elephant would make a nice complement to my Dragon. The concept and design changed as it developed, but it’s nice that I was able to keep that original detail, and that the insight about the relationship between the castle and the tusks turned out to be correct.

The last issue had to do with thickness of the paper.  It’s easy to make pretty much anything out of foil, which is why it’s good for prototyping, cuz you can just crush it into shape. But for exhibit quality models, I tend to use thicker papers like Wyndstone and Canson, and the layers can add up fast and produce a tendency for the model to spring open. In the past I’ve tended to solve this problem by refining my designs to use the paper tension as a feature just where I want it in the model. But for this subject it just couldn’t be simplified out.

So I ended up wet-folding the model. This has been a technique that has been around for years and alot of complex folders use it. But I’ve resisted up until now, feeling that it’s a bit of a cheat. But it works so fantastically, now I’m a believer! You just dampen the parts of the model that you would crush it were foil, and clamp it in place with a paperclip and wait for it to dry. Then the paper is held in place stiffly in the desired position.

In fact I like it so much I went back and touched up some of my older models with this technique!

The model shown here is folded from a 19″ square of Wyndstone Elephant Hide paper.  Coming soon: new origami galleries!

Origami Tower

I’ve had the idea for some time to make an origami War Elephant, basically an elephant with a castle on its back, and maybe some bigger tougher tusks and other scary-looking armaments.  The main design challenge is how to integrate the castle with the rest of model and still make it out of a single uncut square.  The two main options are it would come out of one corner – probably the where the tail would be, or to make it come out of the middle.  I’ve been investigating the  middle way.

There is a good base for this as it turns out. I don’t know the name of it, but it’s a simple, elegant classic tessellation. Jeanie folded one a few years back and it’s been decorating our sideboard ever since.  The tower I had in mind had crenulated battlements ringing the top, and something resembling arches on the sides.  I had tried a few other approaches to the tower but none of them was very good.  This time I started with just the simple base, and it worked out really well.  In this simple tower all the edges of the paper are along the bottom edge, so it should be fairly straightforward to embed it in a larger square.

In fact the cool thing about using a tessellation as a base is that it basically gives you a small square in the middle of your main square.  The number, size and position of the small square can be manipulated, so it is very flexible.  It also gives these gussets that run along the major axes, effectively giving you four extra points.  I might be able to use this make a LotR-style Oliphaunt with four tusks!  It also means I can make a bunch of towers together on the same sheet and link them with walls, forming a Castle.  I’m thinking of one larger central tower surrounded by four smaller ones.

I hope to finish these experiments this spring.  BTW, my book is coming along.  I have twelve models diagrammed now, and hope to get to sixteen by the convention in June.

Origami For Children

It’s that time again. For the third year in a row the kids folded models to submit to Origami USA’s Origami By Children exhibition. This year Lizzy took an interest in modular boxes. This is outside my sphere of interest, so Jeannie went ahead and showed her some basic modules and how to put them together. Lizzy also folded a cute panda but preferred the box and made a few of them. Meanwhile Michelle had no problem with the units but couldn’t get the assembly part of it together. So she folded a few things, and finally settled on a traditional Candy Dish nicely folded from some printed Washi paper. With her the main thing is always encouraging her to be slow and careful and make sharp creases, especially with the first few steps of the model. She also folded a Star from John Montroll’s Teach Yourself Origami. This is a pretty advanced model which uses sinks, petal folds and rabbit ears. We decided not to submit it to OFC, however, cuz I helped her a bit with neatening up and completing the sink. Interestingly, the kids are not really into folding representational subjects like animals, but mostly prefer thinks like boxes and vases.

Origami Sunday

Last weekend I taught an origami special folding session at the Natural History Museum. I taught my Elephant and Moose. The class did really well considering it was two complex models and we went pretty fast. One of my students was a seven-year-old kid who did fantastic. I taught the Elephant first. It has only about half the number of steps of the Moose, but it’s a far more subtle and complex model because there’s no base per se, but there’s lots of compound folds and 3-D sculpting. The Moose is based on an older design style (uses a variation of the stretched bird base) and has mostly simpler folds, but lots more of them. This is proving to be a very popular model, maybe because there aren’t alot of origami mooses out there and almost no-one (myself included) has the patience to fold Robert Lang’s.

I’ve diagrammed both of these models for my book and it’s interesting to see how much communication is really necessary to get a model across and how much of that can be captured in diagrams. The really skilled folders have no problem with anything, and are helpful in pointing out mistakes in my diagrams. But I feel that making the models and diagrams good enough to reach out to intermediate folders so they can tackle something above their level and succeed is an important goal, not just for the sake of reaching a broader audience but for origami in general as an art form. I never had any origami people in my life when I was growing up, and learned solely from books, mainly John Montroll’s.

Speaking of which, John came up for a visit over the weekend, which is always a fun time. He’s got loads of new polyhedra models that he’s arranging into a sequel to his forthcoming Polyhedra book with A. K. Peters. He also has a brand new book out with Dover called Storytime Origami which includes among other things a very cool wolf.

The girls came to the museum with me. We had enough time to take a quick tour of the outer space hall and the dinosaurs. Lizzy really like the dinosaurs but Michelle thought they were a bit creepy (she never has before). I told her not to worry because it’s very rare that the dinosaur ghosts find their bones and reanimate as undead dino-skeletons. This didn’t seem to reassure her. When we got home that evening we watched the Space Shuttle launch, which tied in nicely to the theme of the day. The kids had never seen a shuttle launch, and apart from the sheer spectacle of it, they were pretty blown away that after just a few minutes the shuttle was 50 miles high and hundreds of miles away, and going at the thousands of miles per hour and just getting faster.