Reinventing Visio in 2023, A Blazor Project
summary
A Visio-like drawing system is implemented in Blazor using HTML5 canvas and threejs, with the ShapeSheet concept replaces the Visio ShapeSheet by a C# object model (inheritance, composition, functional closures) and a clear separation of presentation and business models. It supports glue for 1D/2D shapes, quad-tree hit testing, parametric geometry, menu-as-shape, tree layout, and a Boyds flocking stress test; 3D GLB models load and the demo sustains interactive frame rates (30–70fps) while Blazor and SignalR collaboration syncs live edits across clients.
AI-written summary · about
chapters (50)
- 0:00Intro
- 2:14Blazor
- 4:00Project Plan
- 4:39Wiring
- 5:43Legal Decision Management
- 6:42SolidWorks Integration
- 7:33Web Technologies
- 8:16Learning Approach
- 8:38Implementation Focused Learning
- 9:35Current Visio Reinvention Challenge
- 10:18Blazor Advantage
- 11:40Demo
- 15:27Montage
- 17:55Geometry
- 18:33Code
- 19:33Drawing and Rendering
- 22:46Glue
- 23:57Stencils
- 24:23PubSub
- 24:45Rules of Rendering
- 26:50The Ultimate Goal
- 28:00Demos
- 29:24Quad Tree in Action
- 31:043D Modeling
- 31:51Open Source Code
- 32:44The 3D World
- 33:20Bringing in GLB Models
- 33:49Load 1500 Jet Fighters
- 34:33Build 3D Shape
- 35:21Boyds
- 35:33Birds
- 38:00Individual Voids
- 39:29Menus
- 40:01Menu API
- 40:20Menu Demo
- 41:52Tree Layout
- 42:30Demo Demo
- 45:45Recalculation
- 46:55Glue Test
- 47:25Coating Samples
- 47:43Pattern Matching
- 48:26Collaboration
- 48:44Command Service
- 50:14SignalHub
- 50:27Marble Event Diagram
- 51:06Second Layer Language
- 51:28Collaboration Demo
- 52:01Signal Heart Demo
- 52:22Working with a Partner
- 54:13Tug of War
related talks
43mThe Internet of Shapes
36mCreative Coding with React & SVG
17mCreating Immersive 3D Solutions with Microsoft Mesh
31mMakepad - Rethinking Web UI's with WebGL
40mSketch-n-Sketch: Interactive SVG Programming with Direct Manipulation
35mVisualizations using SVG, Canvas, and WebGL in Vue
41mCreate stunning 3D web experiences with Babylon.js
16mIntersection between art and technology
