SlideShare une entreprise Scribd logo
1  sur  31
Extend visualization of Microsoft Graph data to
HoloLens applications
Alexander Meijers | 16.10 | room 5
AMSTERDAM | MAY 8-9, 2018
ABOUT ME
• HoloLens Evangelist / Solutions Architect @ ETTU
• Mixed Reality Team
• Microsoft Windows Development MVP for Mixed Reality
• Founder of the Mixed Reality User Group and one of
the organizers of Global AI Bootcamp
Email: a.meijers@ettu.nl / alexander@appzinside.com
Twitter: @ameijers
Blog: http://www.appzinside.com
Slides are under Creative Common License
AGENDA
• What are we going to build?
• Mixed Reality & HoloLens
• Microsoft Graph
• Mathematical visualization
• Connecting the dots
What are we going to
build?
WHAT ARE WE GOING TO BUILD?
• Building a HoloLens application
• Getting people and related people data from Office 365
• Visualize the people and their relations in 3D
• Watch the model and interact!
Mixed Reality &
HoloLens
REALITIES EXPLAINED
Merging of real and
virtual worlds to produce
new environments and
visualizations where
physical and digital
objects co-exist and
interact in real time.
An overlay of synthetic
content on the real world
that is anchored to and
interacts with the real
world
MIXED REALITY
Direct or indirect view of a
physical, real-world
environment whose
elements
are augmented by
computer-generated
sensory input such as
sound, video, graphics
or GPS data
An overlay of content on
the real world where that
content is not anchored to
or part of it
AUGMENTED REALITY
Generation of realistic
images, sounds and other
sensations that replicate a
real environment or create
an imaginary setting
An immersive experience
created entirely from
computer-generated
Content. Also similar to
360 degree video
VIRTUAL REALITY
MICROSOFT HOLOLENS
SPECIFICATIONS
• Windows 10 device based
on 32 bit architecture
• 64GB flash
• 2GB memory
• 1GB Holographic Processor Unity (HPU)
• First of its kind
• Device is more powerful than a laptop
• No overheating due to warm air flows to the sides
• 2-3 hours active and 2 weeks standby
• Weight 579g
SENSORS, OPTICS
AND SPEAKERS
INPUT CONTROLS
SOUND
SPATIAL PERCEPTION
AND UNDERSTANDING
Immersive HoloLens
experience
Microsoft Graph
MICROSOFT GRAPH API
• Connect to Office 365
• Graph Explorer
• Allows you to use the API on
your tenant
• Administrator consent is
neccessary
App
registration
Authenticate Do API calls
Handle
returned
data
• Lots of documentation
• API delivers v1 and beta
interfaces
• https://developer.microsoft.c
om/en-us/graph
APP REGISTRATION
• Registration of an app is done in the following portal
• https://apps.dev.microsoft.com
• In the future through the Azure Portal
• For registration a personal or organizational account can be used
• When organizational account is used, apps are registrated and
managable from their tenant
• Use an organizational account when building an app for your
organization
• Select one or more platforms
SCOPES & CONSENT
• Define which scopes
• You don’t need to define them when
you registrate your app
• You specify when you authenticate
from your app
• All applications are currently multi-tenant
• Targeting specific audiences will be
available later
• Currently using specific URLs
AZURE AD AND MSAL
• Azure Active Directory (Azure AD) v2.0 endpoint
• Support OAuth 2.0 and OpenID Connect 1.0
• Converged authentication
• Azure AD v2.0 works with client libraries
• Allows native client applications to get access tokens for calling resources
like Microsoft Graph, Outlook Mail, Calendar, Contacts
• Microsoft Authentication Library (MSAL)
• MSAL supports this endpoint
• Allows to use organizational Office 365 (Azure AD) accounts or Personal
Microsoft accounts
• Not a replacement for ADAL
• MSAL.NET (in preview)
• Platforms: .NET (Framework) Client, Windows Store, Xamarin iOS and Android
• Microsoft.Identity.Client nuget package
GUIDED SETUP
• Helps you to registrate the app
• Generates code for you to
authenticate against for
example the Microsoft Graph
• Authentication uses Microsoft
Authentication Library (MSAL)
• References the
Microsoft.Identity.Client nuget
package
PEOPLE AND THEIR RELATIONS
HTTPS CALLS versus MICROSOFT.GRAPH
• Microsoft Graph Client Library allows you to call Office 365, Azure AD and other
Microsoft services through a single unified developer experience
• https://github.com/microsoftgraph/msgraph-sdk-dotnet
Getting related
people for me
Getting related
people for a specific
user
Returns
HTTP Calls https://graph.microsoft.com
/v1.0/me/People
https://graph.microsoft.com
/v1.0/Users/{GUID of user
id}/People
Json payload
Microsoft.Graph interface List<Person> persons =
new List<Person>();
var people = await
graphClient.Me.People.Re
quest().GetAsync();
persons.AddRange(people
);
List<Person> persons =
new List<Person>();
var people = await
graphClient.Users[id].Peopl
e.Request().GetAsync();
persons.AddRange(people
);
Returns C# objects
Accessing data via Graph
Explorer in Office 365
Mathematical
Visualization
FORCE DETECT GRAPH
• A number of algorithms which allows you to draw data and their underlaying
relationships in a two- or three-dimensional way
FORCE DETECT GRAPH
• Data is positioned by nodes and
relations are positioned by edges
• Algorithm assign forces between
nodes and between edges
• Edges are mostly the same length and
do have the least number of crossings
• Adding new nodes and edges will reposition the model
• Woong Gyu La – Developer from Canada
• Wrote a 2D/3D Force Directed Graph Algorithm in C#
• https://github.com/juhgiyo/EpForceDirectedGraph.cs
Show FDG model in Unity
using random nodes and
edges
Connecting the dots
CHALLENGES
• Setup a project in Unity for building a HoloLens application
• Arrange prefabs for nodes and edges
• Assets like materials, shaders and more
• Use a separate DLL to access Microsoft Graph
• Asynchronously calls
• More separation of data retrieval and data handling
• Incorporate DLL into Unity
• Incorporate depending DLLs
• Integrate Force Detect Graph code in Unity
• Add code to access DLL and
use FDG to handle data
CHALLENGES
• Add code to access DLL
• Authentication against Microsoft Graph using MSAL
• Execute of API calls to get data
• Use of #if !UNITY_EDITOR to prevent compiler issues in Unity
• Add code to generate GameObjects based on returned data
• Use of Force Detect Graph code to create model
• Use of a queue to get around the issue
that Unity objects cannot be created in
a separate non-Unity thread
• Adding Mixed Reality parts
• Gaze cursor for selection
• Gestures for handling interaction
• Interaction for selecting
person and relations
HoloLens application
accessing the Microsoft Graph
and using FDG to display data
Thank you!
email: a.meijers@ettu.nl | alexander@appzinside.com | twitter: ameijers
AMSTERDAM | MAY 8-9, 2018

Contenu connexe

Tendances

Getting started with ms graph api
Getting started with ms graph apiGetting started with ms graph api
Getting started with ms graph apiJasjit Chopra
 
Whats Possible with Mimeo Connect
Whats Possible with Mimeo ConnectWhats Possible with Mimeo Connect
Whats Possible with Mimeo ConnectKin Lane
 
Forge - DevCon 2017, Darmstadt Germany - Introduction and Roadmap
Forge - DevCon 2017, Darmstadt Germany - Introduction and RoadmapForge - DevCon 2017, Darmstadt Germany - Introduction and Roadmap
Forge - DevCon 2017, Darmstadt Germany - Introduction and RoadmapAutodesk
 
Extend Microsoft Flow Capabilities Using Microsoft Graph API
Extend Microsoft Flow Capabilities Using Microsoft Graph APIExtend Microsoft Flow Capabilities Using Microsoft Graph API
Extend Microsoft Flow Capabilities Using Microsoft Graph APISuhail Jamaldeen
 
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...NCCOMMS
 
Microsoft Flow in Real World Projects: 2 Years later & What's next
Microsoft Flow in Real World Projects: 2 Years later & What's nextMicrosoft Flow in Real World Projects: 2 Years later & What's next
Microsoft Flow in Real World Projects: 2 Years later & What's nextBIWUG
 
Forge - DevCon 2016: Free your BIM data
Forge - DevCon 2016: Free your BIM dataForge - DevCon 2016: Free your BIM data
Forge - DevCon 2016: Free your BIM dataAutodesk
 
SPS Zurich 2018 - Azure Logic Apps: the new workflow engine
SPS Zurich 2018 - Azure Logic Apps: the new workflow engineSPS Zurich 2018 - Azure Logic Apps: the new workflow engine
SPS Zurich 2018 - Azure Logic Apps: the new workflow engineDavid Schneider
 
Serverless architecture in Python with Azure Functions, Benjamin Talmard
Serverless architecture in Python with Azure Functions, Benjamin TalmardServerless architecture in Python with Azure Functions, Benjamin Talmard
Serverless architecture in Python with Azure Functions, Benjamin TalmardPôle Systematic Paris-Region
 
Machine Learning with ML.Net
Machine Learning with ML.NetMachine Learning with ML.Net
Machine Learning with ML.NetSuhail Jamaldeen
 
O365Engage17 - Microsoft graph the swiss army knife
O365Engage17 - Microsoft graph   the swiss army knifeO365Engage17 - Microsoft graph   the swiss army knife
O365Engage17 - Microsoft graph the swiss army knifeNCCOMMS
 
Forge - DevCon 2017, Darmstadt Germany: Integrating Forge Data Management API...
Forge - DevCon 2017, Darmstadt Germany: Integrating Forge Data Management API...Forge - DevCon 2017, Darmstadt Germany: Integrating Forge Data Management API...
Forge - DevCon 2017, Darmstadt Germany: Integrating Forge Data Management API...Autodesk
 
Mobile application development
Mobile application developmentMobile application development
Mobile application developmentSameera Rukshan
 
Microsoft Graph with ASP.NET MVC
Microsoft Graph with ASP.NET MVCMicrosoft Graph with ASP.NET MVC
Microsoft Graph with ASP.NET MVCBIWUG
 
2018-10-17 J1 3B - Let's build an adoption centre in Office 365 - Joanne Klein
2018-10-17 J1 3B - Let's build an adoption centre in Office 365 - Joanne Klein2018-10-17 J1 3B - Let's build an adoption centre in Office 365 - Joanne Klein
2018-10-17 J1 3B - Let's build an adoption centre in Office 365 - Joanne KleinModern Workplace Conference Paris
 
Integration with Dynamics 365 / Power Platform
Integration with Dynamics 365 / Power PlatformIntegration with Dynamics 365 / Power Platform
Integration with Dynamics 365 / Power PlatformRémy van Duijkeren
 

Tendances (19)

Getting started with ms graph api
Getting started with ms graph apiGetting started with ms graph api
Getting started with ms graph api
 
Whats Possible with Mimeo Connect
Whats Possible with Mimeo ConnectWhats Possible with Mimeo Connect
Whats Possible with Mimeo Connect
 
Forge - DevCon 2017, Darmstadt Germany - Introduction and Roadmap
Forge - DevCon 2017, Darmstadt Germany - Introduction and RoadmapForge - DevCon 2017, Darmstadt Germany - Introduction and Roadmap
Forge - DevCon 2017, Darmstadt Germany - Introduction and Roadmap
 
Extend Microsoft Flow Capabilities Using Microsoft Graph API
Extend Microsoft Flow Capabilities Using Microsoft Graph APIExtend Microsoft Flow Capabilities Using Microsoft Graph API
Extend Microsoft Flow Capabilities Using Microsoft Graph API
 
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
O365Con18 - Reach for the Cloud Build Solutions with the Power of Microsoft G...
 
Microsoft SharePoint Cloud presentation
Microsoft SharePoint Cloud presentationMicrosoft SharePoint Cloud presentation
Microsoft SharePoint Cloud presentation
 
Microsoft Flow in Real World Projects: 2 Years later & What's next
Microsoft Flow in Real World Projects: 2 Years later & What's nextMicrosoft Flow in Real World Projects: 2 Years later & What's next
Microsoft Flow in Real World Projects: 2 Years later & What's next
 
Forge - DevCon 2016: Free your BIM data
Forge - DevCon 2016: Free your BIM dataForge - DevCon 2016: Free your BIM data
Forge - DevCon 2016: Free your BIM data
 
SPS Zurich 2018 - Azure Logic Apps: the new workflow engine
SPS Zurich 2018 - Azure Logic Apps: the new workflow engineSPS Zurich 2018 - Azure Logic Apps: the new workflow engine
SPS Zurich 2018 - Azure Logic Apps: the new workflow engine
 
Serverless architecture in Python with Azure Functions, Benjamin Talmard
Serverless architecture in Python with Azure Functions, Benjamin TalmardServerless architecture in Python with Azure Functions, Benjamin Talmard
Serverless architecture in Python with Azure Functions, Benjamin Talmard
 
Machine Learning with ML.Net
Machine Learning with ML.NetMachine Learning with ML.Net
Machine Learning with ML.Net
 
O365Engage17 - Microsoft graph the swiss army knife
O365Engage17 - Microsoft graph   the swiss army knifeO365Engage17 - Microsoft graph   the swiss army knife
O365Engage17 - Microsoft graph the swiss army knife
 
Open Data Kit
Open Data KitOpen Data Kit
Open Data Kit
 
Forge - DevCon 2017, Darmstadt Germany: Integrating Forge Data Management API...
Forge - DevCon 2017, Darmstadt Germany: Integrating Forge Data Management API...Forge - DevCon 2017, Darmstadt Germany: Integrating Forge Data Management API...
Forge - DevCon 2017, Darmstadt Germany: Integrating Forge Data Management API...
 
Mobile application development
Mobile application developmentMobile application development
Mobile application development
 
Introduction to odk
Introduction to odkIntroduction to odk
Introduction to odk
 
Microsoft Graph with ASP.NET MVC
Microsoft Graph with ASP.NET MVCMicrosoft Graph with ASP.NET MVC
Microsoft Graph with ASP.NET MVC
 
2018-10-17 J1 3B - Let's build an adoption centre in Office 365 - Joanne Klein
2018-10-17 J1 3B - Let's build an adoption centre in Office 365 - Joanne Klein2018-10-17 J1 3B - Let's build an adoption centre in Office 365 - Joanne Klein
2018-10-17 J1 3B - Let's build an adoption centre in Office 365 - Joanne Klein
 
Integration with Dynamics 365 / Power Platform
Integration with Dynamics 365 / Power PlatformIntegration with Dynamics 365 / Power Platform
Integration with Dynamics 365 / Power Platform
 

Similaire à Code motion - Extend visualization of microsoft graph data to hololens applications

#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...Vincent Biret
 
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...Vincent Biret
 
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraphVincent Biret
 
How to use Microsoft Graph in your applications
How to use Microsoft Graph in your applicationsHow to use Microsoft Graph in your applications
How to use Microsoft Graph in your applicationsMohamed Ashiq Faleel
 
SPSNYC2019 - What is Common Data Model and how to use it?
SPSNYC2019 - What is Common Data Model and how to use it?SPSNYC2019 - What is Common Data Model and how to use it?
SPSNYC2019 - What is Common Data Model and how to use it?Nicolas Georgeault
 
2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile ServicesMarco Parenzan
 
Develop business apps cross-platform development using visual studio with x...
Develop business apps   cross-platform development using visual studio with x...Develop business apps   cross-platform development using visual studio with x...
Develop business apps cross-platform development using visual studio with x...Alexander Meijers
 
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...NCCOMMS
 
SharePoint Saturday Cape Town - Introduction to AngularJS with the Microsoft ...
SharePoint Saturday Cape Town - Introduction to AngularJS with the Microsoft ...SharePoint Saturday Cape Town - Introduction to AngularJS with the Microsoft ...
SharePoint Saturday Cape Town - Introduction to AngularJS with the Microsoft ...Sébastien Levert
 
Windows Azure Active Directory: Identity Management in the Cloud
Windows Azure Active Directory: Identity Management in the CloudWindows Azure Active Directory: Identity Management in the Cloud
Windows Azure Active Directory: Identity Management in the CloudChris Dufour
 
With Automated ML, is Everyone an ML Engineer?
With Automated ML, is Everyone an ML Engineer?With Automated ML, is Everyone an ML Engineer?
With Automated ML, is Everyone an ML Engineer?Dan Sullivan, Ph.D.
 
O365 & SP Connect 2018: Innovate - Connecting bleeding edge technologies
O365 & SP Connect 2018: Innovate - Connecting bleeding edge technologiesO365 & SP Connect 2018: Innovate - Connecting bleeding edge technologies
O365 & SP Connect 2018: Innovate - Connecting bleeding edge technologiesSjoukje Zaal
 
SPS Vancouver 2018 - What is CDM and CDS
SPS Vancouver 2018 - What is CDM and CDSSPS Vancouver 2018 - What is CDM and CDS
SPS Vancouver 2018 - What is CDM and CDSNicolas Georgeault
 
Architecture of Dynamics CRM with Office 365 and Azure
Architecture of Dynamics CRM with Office 365 and AzureArchitecture of Dynamics CRM with Office 365 and Azure
Architecture of Dynamics CRM with Office 365 and AzurePedro Azevedo
 
HCL Rtist: Stateful, Event-driven, Real-time applications Tool
HCL Rtist: Stateful, Event-driven, Real-time applications ToolHCL Rtist: Stateful, Event-driven, Real-time applications Tool
HCL Rtist: Stateful, Event-driven, Real-time applications ToolHCLSoftware
 
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)TIMETOACT GROUP
 

Similaire à Code motion - Extend visualization of microsoft graph data to hololens applications (20)

#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
#SPFestSea azr302 The SharePoint Framework and the #MicrosoftGraph under ster...
 
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...
SPFestDc AZR204 Microsoft Graph and SharePoint Framework under steroids with ...
 
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph
#Techorama belgium 2018 vincent biret deep dive with the #MicrosoftGraph
 
How to use Microsoft Graph in your applications
How to use Microsoft Graph in your applicationsHow to use Microsoft Graph in your applications
How to use Microsoft Graph in your applications
 
SPSNYC2019 - What is Common Data Model and how to use it?
SPSNYC2019 - What is Common Data Model and how to use it?SPSNYC2019 - What is Common Data Model and how to use it?
SPSNYC2019 - What is Common Data Model and how to use it?
 
2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services2015.04.23 Azure Mobile Services
2015.04.23 Azure Mobile Services
 
Develop business apps cross-platform development using visual studio with x...
Develop business apps   cross-platform development using visual studio with x...Develop business apps   cross-platform development using visual studio with x...
Develop business apps cross-platform development using visual studio with x...
 
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
O365Con18 - Innovate, Connecting Bleeding Edge Technologies - Sjoukje Zaal & ...
 
Azure Logic Apps
Azure Logic AppsAzure Logic Apps
Azure Logic Apps
 
SharePoint Saturday Cape Town - Introduction to AngularJS with the Microsoft ...
SharePoint Saturday Cape Town - Introduction to AngularJS with the Microsoft ...SharePoint Saturday Cape Town - Introduction to AngularJS with the Microsoft ...
SharePoint Saturday Cape Town - Introduction to AngularJS with the Microsoft ...
 
LUIS and Bots
LUIS and BotsLUIS and Bots
LUIS and Bots
 
Windows Azure Active Directory: Identity Management in the Cloud
Windows Azure Active Directory: Identity Management in the CloudWindows Azure Active Directory: Identity Management in the Cloud
Windows Azure Active Directory: Identity Management in the Cloud
 
With Automated ML, is Everyone an ML Engineer?
With Automated ML, is Everyone an ML Engineer?With Automated ML, is Everyone an ML Engineer?
With Automated ML, is Everyone an ML Engineer?
 
O365 & SP Connect 2018: Innovate - Connecting bleeding edge technologies
O365 & SP Connect 2018: Innovate - Connecting bleeding edge technologiesO365 & SP Connect 2018: Innovate - Connecting bleeding edge technologies
O365 & SP Connect 2018: Innovate - Connecting bleeding edge technologies
 
Microsoft Graph
Microsoft GraphMicrosoft Graph
Microsoft Graph
 
SPS Gulf : SharePoint 2013 Cloud Business App
SPS Gulf : SharePoint 2013 Cloud Business AppSPS Gulf : SharePoint 2013 Cloud Business App
SPS Gulf : SharePoint 2013 Cloud Business App
 
SPS Vancouver 2018 - What is CDM and CDS
SPS Vancouver 2018 - What is CDM and CDSSPS Vancouver 2018 - What is CDM and CDS
SPS Vancouver 2018 - What is CDM and CDS
 
Architecture of Dynamics CRM with Office 365 and Azure
Architecture of Dynamics CRM with Office 365 and AzureArchitecture of Dynamics CRM with Office 365 and Azure
Architecture of Dynamics CRM with Office 365 and Azure
 
HCL Rtist: Stateful, Event-driven, Real-time applications Tool
HCL Rtist: Stateful, Event-driven, Real-time applications ToolHCL Rtist: Stateful, Event-driven, Real-time applications Tool
HCL Rtist: Stateful, Event-driven, Real-time applications Tool
 
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
Integrate Applications into IBM Connections Cloud and On Premises (AD 1632)
 

Plus de Alexander Meijers

Microsoft ignite tour - Create an immersive experience with office 365 data ...
Microsoft ignite tour  - Create an immersive experience with office 365 data ...Microsoft ignite tour  - Create an immersive experience with office 365 data ...
Microsoft ignite tour - Create an immersive experience with office 365 data ...Alexander Meijers
 
Microsoft ignite tour empower your workers using remote assist - theater se...
Microsoft ignite tour   empower your workers using remote assist - theater se...Microsoft ignite tour   empower your workers using remote assist - theater se...
Microsoft ignite tour empower your workers using remote assist - theater se...Alexander Meijers
 
O365 and SharePoint Connect - Create an immersive experience with office 365...
O365 and SharePoint Connect  - Create an immersive experience with office 365...O365 and SharePoint Connect  - Create an immersive experience with office 365...
O365 and SharePoint Connect - Create an immersive experience with office 365...Alexander Meijers
 
Modern workplace conference create an immersive experience with office 365 ...
Modern workplace conference   create an immersive experience with office 365 ...Modern workplace conference   create an immersive experience with office 365 ...
Modern workplace conference create an immersive experience with office 365 ...Alexander Meijers
 
Code europe holobasics - develop your mixed reality hololens app with unity...
Code europe   holobasics - develop your mixed reality hololens app with unity...Code europe   holobasics - develop your mixed reality hololens app with unity...
Code europe holobasics - develop your mixed reality hololens app with unity...Alexander Meijers
 
Code europe holoadvanced - building more advanced mixed reality apps for ho...
Code europe   holoadvanced - building more advanced mixed reality apps for ho...Code europe   holoadvanced - building more advanced mixed reality apps for ho...
Code europe holoadvanced - building more advanced mixed reality apps for ho...Alexander Meijers
 
Azure thursday HoloLens and cognitive services a powerful combination
Azure thursday HoloLens and cognitive services a powerful combinationAzure thursday HoloLens and cognitive services a powerful combination
Azure thursday HoloLens and cognitive services a powerful combinationAlexander Meijers
 
It next summit - holobasics - develop your mixed reality hololens app with un...
It next summit - holobasics - develop your mixed reality hololens app with un...It next summit - holobasics - develop your mixed reality hololens app with un...
It next summit - holobasics - develop your mixed reality hololens app with un...Alexander Meijers
 
SharePoint Unite - Build business applications with HoloLens and Cloud
SharePoint Unite - Build business applications with HoloLens and CloudSharePoint Unite - Build business applications with HoloLens and Cloud
SharePoint Unite - Build business applications with HoloLens and CloudAlexander Meijers
 
HoloLens inspiration session
HoloLens inspiration sessionHoloLens inspiration session
HoloLens inspiration sessionAlexander Meijers
 
Holo basics develop your mixed reality hololens app with unity and visual s...
Holo basics   develop your mixed reality hololens app with unity and visual s...Holo basics   develop your mixed reality hololens app with unity and visual s...
Holo basics develop your mixed reality hololens app with unity and visual s...Alexander Meijers
 
Build business applications with HoloLens and Cloud
Build business applications with HoloLens and CloudBuild business applications with HoloLens and Cloud
Build business applications with HoloLens and CloudAlexander Meijers
 
Achmea technight - HoloLens development
Achmea technight  - HoloLens developmentAchmea technight  - HoloLens development
Achmea technight - HoloLens developmentAlexander Meijers
 
Spsbe2016 extend your office 365 environement to cross-platform apps
Spsbe2016   extend your office 365 environement to cross-platform appsSpsbe2016   extend your office 365 environement to cross-platform apps
Spsbe2016 extend your office 365 environement to cross-platform appsAlexander Meijers
 
Implementation of azure active directory authentication with cross platform d...
Implementation of azure active directory authentication with cross platform d...Implementation of azure active directory authentication with cross platform d...
Implementation of azure active directory authentication with cross platform d...Alexander Meijers
 
Build your own yammer app @ Collab365
Build your own yammer app @ Collab365Build your own yammer app @ Collab365
Build your own yammer app @ Collab365Alexander Meijers
 
SharePoint 2013 for internet websites
SharePoint 2013 for internet websitesSharePoint 2013 for internet websites
SharePoint 2013 for internet websitesAlexander Meijers
 
Sp24 design a share point 2013 architecture – the basics
Sp24   design a share point 2013 architecture – the basicsSp24   design a share point 2013 architecture – the basics
Sp24 design a share point 2013 architecture – the basicsAlexander Meijers
 

Plus de Alexander Meijers (20)

Microsoft ignite tour - Create an immersive experience with office 365 data ...
Microsoft ignite tour  - Create an immersive experience with office 365 data ...Microsoft ignite tour  - Create an immersive experience with office 365 data ...
Microsoft ignite tour - Create an immersive experience with office 365 data ...
 
Microsoft ignite tour empower your workers using remote assist - theater se...
Microsoft ignite tour   empower your workers using remote assist - theater se...Microsoft ignite tour   empower your workers using remote assist - theater se...
Microsoft ignite tour empower your workers using remote assist - theater se...
 
O365 and SharePoint Connect - Create an immersive experience with office 365...
O365 and SharePoint Connect  - Create an immersive experience with office 365...O365 and SharePoint Connect  - Create an immersive experience with office 365...
O365 and SharePoint Connect - Create an immersive experience with office 365...
 
Modern workplace conference create an immersive experience with office 365 ...
Modern workplace conference   create an immersive experience with office 365 ...Modern workplace conference   create an immersive experience with office 365 ...
Modern workplace conference create an immersive experience with office 365 ...
 
Code europe holobasics - develop your mixed reality hololens app with unity...
Code europe   holobasics - develop your mixed reality hololens app with unity...Code europe   holobasics - develop your mixed reality hololens app with unity...
Code europe holobasics - develop your mixed reality hololens app with unity...
 
Code europe holoadvanced - building more advanced mixed reality apps for ho...
Code europe   holoadvanced - building more advanced mixed reality apps for ho...Code europe   holoadvanced - building more advanced mixed reality apps for ho...
Code europe holoadvanced - building more advanced mixed reality apps for ho...
 
Azure thursday HoloLens and cognitive services a powerful combination
Azure thursday HoloLens and cognitive services a powerful combinationAzure thursday HoloLens and cognitive services a powerful combination
Azure thursday HoloLens and cognitive services a powerful combination
 
It next summit - holobasics - develop your mixed reality hololens app with un...
It next summit - holobasics - develop your mixed reality hololens app with un...It next summit - holobasics - develop your mixed reality hololens app with un...
It next summit - holobasics - develop your mixed reality hololens app with un...
 
SharePoint Unite - Build business applications with HoloLens and Cloud
SharePoint Unite - Build business applications with HoloLens and CloudSharePoint Unite - Build business applications with HoloLens and Cloud
SharePoint Unite - Build business applications with HoloLens and Cloud
 
HoloLens inspiration session
HoloLens inspiration sessionHoloLens inspiration session
HoloLens inspiration session
 
Holo basics develop your mixed reality hololens app with unity and visual s...
Holo basics   develop your mixed reality hololens app with unity and visual s...Holo basics   develop your mixed reality hololens app with unity and visual s...
Holo basics develop your mixed reality hololens app with unity and visual s...
 
Build business applications with HoloLens and Cloud
Build business applications with HoloLens and CloudBuild business applications with HoloLens and Cloud
Build business applications with HoloLens and Cloud
 
Achmea technight - HoloLens development
Achmea technight  - HoloLens developmentAchmea technight  - HoloLens development
Achmea technight - HoloLens development
 
Spsbe2016 extend your office 365 environement to cross-platform apps
Spsbe2016   extend your office 365 environement to cross-platform appsSpsbe2016   extend your office 365 environement to cross-platform apps
Spsbe2016 extend your office 365 environement to cross-platform apps
 
Implementation of azure active directory authentication with cross platform d...
Implementation of azure active directory authentication with cross platform d...Implementation of azure active directory authentication with cross platform d...
Implementation of azure active directory authentication with cross platform d...
 
Build your own yammer app @ Collab365
Build your own yammer app @ Collab365Build your own yammer app @ Collab365
Build your own yammer app @ Collab365
 
An introduction to DevOps
An introduction to DevOpsAn introduction to DevOps
An introduction to DevOps
 
SharePoint 2013 for internet websites
SharePoint 2013 for internet websitesSharePoint 2013 for internet websites
SharePoint 2013 for internet websites
 
Build you own yammer app
Build you own yammer appBuild you own yammer app
Build you own yammer app
 
Sp24 design a share point 2013 architecture – the basics
Sp24   design a share point 2013 architecture – the basicsSp24   design a share point 2013 architecture – the basics
Sp24 design a share point 2013 architecture – the basics
 

Dernier

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 

Dernier (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 

Code motion - Extend visualization of microsoft graph data to hololens applications

  • 1. Extend visualization of Microsoft Graph data to HoloLens applications Alexander Meijers | 16.10 | room 5 AMSTERDAM | MAY 8-9, 2018
  • 2. ABOUT ME • HoloLens Evangelist / Solutions Architect @ ETTU • Mixed Reality Team • Microsoft Windows Development MVP for Mixed Reality • Founder of the Mixed Reality User Group and one of the organizers of Global AI Bootcamp Email: a.meijers@ettu.nl / alexander@appzinside.com Twitter: @ameijers Blog: http://www.appzinside.com Slides are under Creative Common License
  • 3. AGENDA • What are we going to build? • Mixed Reality & HoloLens • Microsoft Graph • Mathematical visualization • Connecting the dots
  • 4. What are we going to build?
  • 5. WHAT ARE WE GOING TO BUILD? • Building a HoloLens application • Getting people and related people data from Office 365 • Visualize the people and their relations in 3D • Watch the model and interact!
  • 7. REALITIES EXPLAINED Merging of real and virtual worlds to produce new environments and visualizations where physical and digital objects co-exist and interact in real time. An overlay of synthetic content on the real world that is anchored to and interacts with the real world MIXED REALITY Direct or indirect view of a physical, real-world environment whose elements are augmented by computer-generated sensory input such as sound, video, graphics or GPS data An overlay of content on the real world where that content is not anchored to or part of it AUGMENTED REALITY Generation of realistic images, sounds and other sensations that replicate a real environment or create an imaginary setting An immersive experience created entirely from computer-generated Content. Also similar to 360 degree video VIRTUAL REALITY
  • 8. MICROSOFT HOLOLENS SPECIFICATIONS • Windows 10 device based on 32 bit architecture • 64GB flash • 2GB memory • 1GB Holographic Processor Unity (HPU) • First of its kind • Device is more powerful than a laptop • No overheating due to warm air flows to the sides • 2-3 hours active and 2 weeks standby • Weight 579g
  • 11. SOUND
  • 15. MICROSOFT GRAPH API • Connect to Office 365 • Graph Explorer • Allows you to use the API on your tenant • Administrator consent is neccessary App registration Authenticate Do API calls Handle returned data • Lots of documentation • API delivers v1 and beta interfaces • https://developer.microsoft.c om/en-us/graph
  • 16. APP REGISTRATION • Registration of an app is done in the following portal • https://apps.dev.microsoft.com • In the future through the Azure Portal • For registration a personal or organizational account can be used • When organizational account is used, apps are registrated and managable from their tenant • Use an organizational account when building an app for your organization • Select one or more platforms
  • 17. SCOPES & CONSENT • Define which scopes • You don’t need to define them when you registrate your app • You specify when you authenticate from your app • All applications are currently multi-tenant • Targeting specific audiences will be available later • Currently using specific URLs
  • 18. AZURE AD AND MSAL • Azure Active Directory (Azure AD) v2.0 endpoint • Support OAuth 2.0 and OpenID Connect 1.0 • Converged authentication • Azure AD v2.0 works with client libraries • Allows native client applications to get access tokens for calling resources like Microsoft Graph, Outlook Mail, Calendar, Contacts • Microsoft Authentication Library (MSAL) • MSAL supports this endpoint • Allows to use organizational Office 365 (Azure AD) accounts or Personal Microsoft accounts • Not a replacement for ADAL • MSAL.NET (in preview) • Platforms: .NET (Framework) Client, Windows Store, Xamarin iOS and Android • Microsoft.Identity.Client nuget package
  • 19. GUIDED SETUP • Helps you to registrate the app • Generates code for you to authenticate against for example the Microsoft Graph • Authentication uses Microsoft Authentication Library (MSAL) • References the Microsoft.Identity.Client nuget package
  • 20. PEOPLE AND THEIR RELATIONS
  • 21. HTTPS CALLS versus MICROSOFT.GRAPH • Microsoft Graph Client Library allows you to call Office 365, Azure AD and other Microsoft services through a single unified developer experience • https://github.com/microsoftgraph/msgraph-sdk-dotnet Getting related people for me Getting related people for a specific user Returns HTTP Calls https://graph.microsoft.com /v1.0/me/People https://graph.microsoft.com /v1.0/Users/{GUID of user id}/People Json payload Microsoft.Graph interface List<Person> persons = new List<Person>(); var people = await graphClient.Me.People.Re quest().GetAsync(); persons.AddRange(people ); List<Person> persons = new List<Person>(); var people = await graphClient.Users[id].Peopl e.Request().GetAsync(); persons.AddRange(people ); Returns C# objects
  • 22. Accessing data via Graph Explorer in Office 365
  • 24. FORCE DETECT GRAPH • A number of algorithms which allows you to draw data and their underlaying relationships in a two- or three-dimensional way
  • 25. FORCE DETECT GRAPH • Data is positioned by nodes and relations are positioned by edges • Algorithm assign forces between nodes and between edges • Edges are mostly the same length and do have the least number of crossings • Adding new nodes and edges will reposition the model • Woong Gyu La – Developer from Canada • Wrote a 2D/3D Force Directed Graph Algorithm in C# • https://github.com/juhgiyo/EpForceDirectedGraph.cs
  • 26. Show FDG model in Unity using random nodes and edges
  • 28. CHALLENGES • Setup a project in Unity for building a HoloLens application • Arrange prefabs for nodes and edges • Assets like materials, shaders and more • Use a separate DLL to access Microsoft Graph • Asynchronously calls • More separation of data retrieval and data handling • Incorporate DLL into Unity • Incorporate depending DLLs • Integrate Force Detect Graph code in Unity • Add code to access DLL and use FDG to handle data
  • 29. CHALLENGES • Add code to access DLL • Authentication against Microsoft Graph using MSAL • Execute of API calls to get data • Use of #if !UNITY_EDITOR to prevent compiler issues in Unity • Add code to generate GameObjects based on returned data • Use of Force Detect Graph code to create model • Use of a queue to get around the issue that Unity objects cannot be created in a separate non-Unity thread • Adding Mixed Reality parts • Gaze cursor for selection • Gestures for handling interaction • Interaction for selecting person and relations
  • 30. HoloLens application accessing the Microsoft Graph and using FDG to display data
  • 31. Thank you! email: a.meijers@ettu.nl | alexander@appzinside.com | twitter: ameijers AMSTERDAM | MAY 8-9, 2018

Notes de l'éditeur

  1. Always look from a .NET point of view
  2. 16.15
  3. 16.25
  4. https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-v2-libraries https://www.kompozure.com/blog/azure-ad-v2-and-msal-from-developers-point-of-view/
  5. 16.35
  6. 16.40