I'm happy to announce Blake.NUI, an open-source library for multi-touch NUI development. Blake.NUI is available under the MS-PL license at CodePlex:
It is a collection of the most useful reusable code that I have created for my own projects and for my book's code samples. It currently includes code for WPF 4 and Surface, although in the future I may add Silverlight code as well.
The library is still in undergoing changes. I may add or rearrange things, but I will document changes from version to version. Here are some of the things currently included in Blake.NUI:
- ZoomCanvas - an infinite canvas control that is the heart of NaturalShow
- CircleText - layout text along the circumference of a circle
- TapGestureTrigger - a configurable Blend Trigger that fires when the user completes a tap gesture
- DoubleTapGestureTrigger - a configurable Blend Trigger that fires when the user completes a double tap gesture
- MouseTouchDevice - promotes mouse input to WPF 4 touch events
- SurfaceTouchDevice - promotes Microsoft Surface vision system input to WPF 4 touch events
- Common classes and utilities
- AnimateUtility and SurfaceAnimateUtility
- Common models, views, factories, and other classes
I'm particularly excited about SurfaceTouchDevice, since with one line of code it enables you to write multi-touch applications against the WPF 4 Touch API, including the integrated touch events and manipulations, and run it on your existing Microsoft Surface devices without modification. This also means you can, with a simple project structure, target both Win7 Touch and Surface v1 with 99% of the same code base! You do have to install .NET 4 and/or Visual Studio 2010 on your Surface.
I will be celebrating the launch of Blake.NUI all this wee by posting a series of blog posts about how to use the library. In addition, you can buy the ebook edition of Multitouch on Windows until July 23rd for 35% off through this link using coupon code blake35bl. (Disclosure: if you buy after clicking this affiliate link it gives me a few extra dollars from the sale.)
I am asking as a courtesy that if you find Blake.NUI useful, particularly for commercial projects, that you buy a copy of my book, Multitouch on Windows. The coupon code provided should help.
Please let me know what you think about Blake.NUI and whether you think you'll use it in your applications.