silverlight and nui

20
SILVERLIGHT IN NUI Andrej Tozon (ANT Andrej Tozon s.p.)

Upload: andrej-tozon

Post on 28-May-2015

2.466 views

Category:

Technology


3 download

DESCRIPTION

My Silverlight and NUI talk from the recent NT konference in Portorož, Slovenia. In Slovenian language. References: * Camdoodle (http://camdoodle.codeplex.com/) * PuzzleTouch (http://www.puzzletouch.com/) * Silverlight 4, WPF 4 and Windows Phone 7 Multi-Touch Manipulation (http://multitouch.codeplex.com/) * Bug Smash (http://adamkinney.com/labs/bugcamsmash/) * SLAR Toolkit (http://slartoolkit.codeplex.com/)

TRANSCRIPT

Page 1: Silverlight and NUI

SILVERLIGHT IN NUI

Andrej Tozon (ANT Andrej Tozon s.p.)

Page 2: Silverlight and NUI

SILVERLIGHT IN NUI

Andrej Tozon (ANT Andrej Tozon s.p.)

Page 3: Silverlight and NUI

PRI 14 MESECIH

Page 4: Silverlight and NUI

PRI ~2 LETIH

Page 5: Silverlight and NUI

PRI ~2,5 LETIH

Page 6: Silverlight and NUI

PRI ~2,5 LETIHPRI ~2 LETIHPRI 14 MESECIH

Telefon Tablica Miška0

5

10

15

20

25

30

Page 7: Silverlight and NUI

CAMDOODLE

SILVERLIGHTINNUI

Page 8: Silverlight and NUI

PUZZLETOUCH

Page 9: Silverlight and NUI

SILVERLIGHT IN NUI

• Touch• Multi-Touch

• Zelo low-level• Knjižnice

• Microsoft Surface Silverlight Manipulations and Interia

• Full-Screen Keyboard• Silverlight 4 – omejeno• Silverlight 5 – poln nabor

• WebCam• Kinect?

Page 10: Silverlight and NUI

SILVERLIGHT: MULTITOUCH

• Podpora je prišla s Silverlight 3

Touch.FrameReported += OnFrameReported;

Page 11: Silverlight and NUI

SILVERLIGHT: MULTITOUCH

private void OnFrameReported(object sender,  TouchFrameEventArgs e) {}

public class TouchFrameEventArgs{ TouchPoint GetPrimaryTouchPoint(UIElement relativeTo);  TouchPointCollection GetTouchPoints(UIElement relativeTo); void SuspendMousePromotionUntilTouchUp(); int Timestamp { get; }}

Page 12: Silverlight and NUI

SILVERLIGHT: MULTITOUCH

public class TouchPoint{    public TouchAction Action { get; } public Point Position { get; }    public Size Size { get; } public TouchDevice TouchDevice { get; }}

public enum TouchAction{ Down, Move, Up}

public class TouchDevice{ public int Id { get; }  public UIElement DirectlyOver { get; }}

Page 13: Silverlight and NUI

DEMO

Microsoft Surface Silverlight Manipulations and Inertia

Multitouch Behaviors

Page 14: Silverlight and NUI

SILVERLIGHT: WEBCAM

public static class CaptureDeviceConfiguration{ static bool AllowedDeviceAccess { get; }    static bool RequestDeviceAccess();    static ReadOnlyCollection<VideoCaptureDevice>  GetAvailableVideoCaptureDevices();    static ReadOnlyCollection<AudioCaptureDevice>  GetAvailableAudioCaptureDevices();    static VideoCaptureDevice GetDefaultVideoCaptureDevice();    static AudioCaptureDevice GetDefaultAudioCaptureDevice();}

Page 15: Silverlight and NUI

SILVERLIGHT: WEBCAM

public class CaptureSource{ VideoCaptureDevice VideoCaptureDevice { get; set; }    AudioCaptureDevice AudioCaptureDevice { get; set; }    CaptureState State { get; }    void Start();    void Stop();    event EventHandler<ExceptionRoutedEventArgs>  CaptureFailed;    void CaptureImageAsync();    event EventHandler<CaptureImageCompletedEventArgs>  CaptureImageCompleted;}

VideoBrush brush = new VideoBrush();brush.SetSource(captureSource);Rectangle.Fill = brush;

Page 16: Silverlight and NUI

SILVERLIGHT: WEBCAM

CompositionTarget.Rendering += CompositionTarget_Rendering;

void CompositionTarget_Rendering(object sender, EventArgs e){    captureSource.CaptureImageAsync();}

void OnCaptureImageCompleted(object sender,  CaptureImageCompletedEventArgs e){ ImageBrush brush = new ImageBrush(); brush.ImageSource = e.Result;    rectangle.Fill = brush;}

Page 18: Silverlight and NUI

POVZETEK

• Naravni uporabniški vmesniki• Silverlight omogoča:

• Podporo (multi) touch aplikacijam• Dostop do video kamere• Dostop do mikrofona

• Za lažjo uporabo posežemo po že izdelanih knjižnicah

• Medtem pa čakamo na podporo za Kinect

Page 19: Silverlight and NUI

POVEZAVE

• Microsoft Surface Manipulations and Inertia Sample for Microsoft Silverlight• http://to3.si/jO8ktN

• Silverlight 4, WPF 4 and Windows Phone 7 Multi-Touch Manipulation• http://multitouch.codeplex.com/

• Bug Smash• http://adamkinney.com/labs/bugcamsmash/

• SLAR Toolkit• http://slartoolkit.codeplex.com/

Page 20: Silverlight and NUI

VPRAŠANJA?Po zaključku predavanja prosim izpolnite vprašalnik.

Vprašalniki bodo poslani na vaš e-naslov, dostopni pa bodo tudi preko profila na spletnem portalu konference. www.ntk.si.

Z izpolnjevanjem le tega pripomorete k izboljšanju konference.

Hvala!

Andrej TozonANT Andrej Tozon s.p.Microsoft MVP: Silverlight

[email protected]@andrejt

http://tozon.info/blog