
Recent Posts

Recent Comments
 Draw an image circle in C#  C# HelperC# Helper on Draw an image spiral in C#
 Dean on Use a TreeView to display property pages or option pages in C#
 RodStephens on Format an XML file so it looks nice in C#
 Andre R on Format an XML file so it looks nice in C#
 AndrĂ© R on Format an XML file so it looks nice in C#
Archives
 February 2020
 January 2020
 December 2019
 November 2019
 October 2019
 September 2019
 August 2019
 July 2019
 June 2019
 May 2019
 April 2019
 March 2019
 February 2019
 January 2019
 December 2018
 November 2018
 October 2018
 September 2018
 August 2018
 July 2018
 June 2018
 May 2018
 April 2018
 March 2018
 February 2018
 January 2018
 December 2017
 November 2017
 October 2017
 September 2017
 August 2017
 July 2017
 June 2017
 May 2017
 April 2017
 March 2017
 February 2017
 January 2017
 December 2016
 November 2016
 October 2016
 September 2016
 August 2016
 July 2016
 June 2016
 May 2016
 April 2016
 March 2016
 February 2016
 January 2016
 December 2015
 November 2015
 October 2015
 September 2015
 August 2015
 July 2015
 June 2015
 May 2015
 April 2015
 March 2015
 February 2015
 January 2015
 December 2014
 November 2014
 October 2014
 September 2014
 August 2014
 July 2014
 June 2014
 May 2014
 February 2014
 January 2014
 December 2013
 October 2013
 August 2013
 June 2013
 December 2012
 September 2012
 July 2012
 June 2012
 November 2011
 May 2011
 April 2011
 February 2011
 December 2010
Categories
 .NET
 3D
 3D graphics
 ADO.NET
 algorithms
 animation
 API
 arrays
 attributes
 audio
 books
 C#
 C# programming
 calculations
 challenges
 classes
 clipboard
 coding
 combinatorics
 console
 controls
 cryptography
 curve fitting
 database
 debugging
 dialogs
 directories
 Drag and Drop
 drawing
 drawings
 enums
 Event
 events
 example program
 Excel
 extension methods
 extensions
 files
 finance
 fonts
 formatting
 forms
 fractals
 ftp
 games
 GDI+
 generic
 geometry
 globalization
 graphics
 html
 IDE
 image processing
 inheritance
 interfaces
 internationalization
 internet
 interoperability
 LINQ
 lists
 localization
 mathematics
 memory
 menus
 MessageBox
 methods
 miscellany
 multimedia
 network
 Office
 OOP
 operators
 parsing
 performance
 phone
 PowerPoint
 printers
 printing
 productivity
 programs
 puzzles
 recursion
 reflection
 registry
 regular expressions
 serialization
 settings
 SQL
 stories
 strings
 syntax
 system
 threading
 threedimensional graphics
 tips
 tools
 transformations
 Uncategorized
 user interface
 variables
 VBA
 web
 Windows Forms programming
 WMI
 Word
 wpf
 XAML
 XML
Meta
Tag Archives: tetrahedron
Easily draw platonic solids in WPF and C#
This example basically combines and rearranges the techniques used by previous threedimensional examples to make them easier to use. Its methods let you build platonic solids, geodesic spheres, and stellate spheres relatively easily. One real change in this example is … Continue reading
Posted in algorithms, graphics, mathematics, wpf
Tagged 3D, algorithms, C#, C# programming, cube, dodecahedron, example, example program, graphics, icosahedron, mathematics, octahedron, platonic solids, sphere, stellate sphere, tetrahedron, Windows Forms programming, WPF
Leave a comment
Platonic Solids Part 8: Icosahedron and dodecahedron
Understanding the Duals You may recall from the first article in this series (Platonic Solids Part 1: What are the Platonic solids?) that each platonic solid has a dual. You saw in the post Platonic Solids Part 5: Cube and … Continue reading
Posted in algorithms, graphics, mathematics, wpf
Tagged 3D, algorithms, C#, C# programming, cube, dodecahedron, duals, example, example program, graphics, hexahedron, icosahedron, mathematics, octahedron, polytopes, regular polytopes, regular solids, tetrahedron, Windows Forms programming, WPF
1 Comment
Platonic Solids Part 7: The dodecahedron
If you enjoyed calculating the coordinates of the vertices in an icosahedron, you’re in for a treat! Finding the vertices for a dodecahedron is even harder, largely because a dodecahedron has more vertices. An icosahedron has 20 triangular faces and … Continue reading
Posted in algorithms, graphics, mathematics, wpf
Tagged 3D, algorithms, C#, C# programming, cube, dodecahedron, example, example program, graphics, hexahedron, icosaahedron, mathematics, octahedron, polytopes, regular polytopes, regular solids, tetrahedron, Windows Forms programming, WPF
Leave a comment
Platonic Solids Part 6: The icosahedron
Finding the Icosahedron’s Vertices Figure 1 shows an icosahedron with its hidden surfaces removed. Figure 2 shows the same icosahedron with hidden surfaces drawn in dashed lines and its vertices labeled a through l. The icosahedron is centered at the … Continue reading
Posted in algorithms, graphics, mathematics, wpf
Tagged 3D, algorithms, C#, C# programming, cube, dodecahedron, example, example program, graphics, hexahedron, icosahedron, mathematics, octahedron, polytopes, regular polytopes, regular solids, tetrahedron, Windows Forms programming, WPF
12 Comments
Platonic Solids Part 5: Cube and octahedron
You may recall from the first article in this series (Platonic Solids Part 1: What are the Platonic solids?) that each platonic solid has a dual. The cube and octahedron are duals of each other. To make a dual from … Continue reading
Posted in algorithms, graphics, mathematics, wpf
Tagged 3D, algorithms, C#, C# programming, cube, dodecahedron, duals, example, example program, graphics, hexahedron, icosahedron, mathematics, octahedron, polytopes, regular polytopes, regular solids, tetrahedron, Windows Forms programming, WPF
Leave a comment
Platonic Solids Part 4: The octahedron
Finding the Octahedron’s Vertices A platonic octahedron has six triangular faces. Because the edges of the triangles all have the same length, the triangles are equilateral triangles. If an equilateral triangle has edges of length 1, then its height is … Continue reading
Posted in algorithms, graphics, mathematics, wpf
Tagged 3D, algorithms, C#, C# programming, cube, dodecahedron, example, example program, graphics, hexahedron, icosahedron, mathematics, octahedron, polytopes, regular polytopes, regular solids, tetrahedron, Windows Forms programming, WPF
Leave a comment
Platonic Solids Part 3: The cube
A platonic cube has six square faces. The cube’s symmetry makes it easy to find the coordinates of its vertices. For a cube with edge lengths of 1, the vertex coordinates are (±0.5, ±0.5, ±0.5) as shown in Figure 1. … Continue reading
Posted in algorithms, graphics, mathematics, wpf
Tagged 3D, algorithms, C#, C# programming, cube, dodecahedron, example, example program, graphics, hexahedron, icosahedron, mathematics, octahedron, polytopes, regular polytopes, regular solids, tetrahedron, Windows Forms programming, WPF
5 Comments
Platonic Solids Part 2: The tetrahedron
A tetrahedron has four faces that are equilateral triangles. In an equilateral triangle, the sides have the same lengths and they meet at 60 degree angles. Figure 1 shows a tetrahedron. Finding the Tetrahedron’s Vertices It is a trigonometric fact … Continue reading
Posted in algorithms, graphics, mathematics, wpf
Tagged 3D, algorithms, C#, C# programming, cube, dodecahedron, example, example program, graphics, hexahedron, icosahedron, mathematics, octahedron, polytopes, regular polytopes, regular solids, tetrahedron, Windows Forms programming, WPF
5 Comments
Platonic Solids Part 1: What are the Platonic solids?
This is the first in a series of posts about the Platonic solids. These posts will show how to find the corners of six Platonic solids: tetrahedron, cube (hexahedron), octahedron, dodecahedron, and icosahedron. Deriving these values requires only algebra and … Continue reading
Posted in algorithms, graphics, mathematics, wpf
Tagged 3D, algorithms, C#, C# programming, cube, dodecahedron, dual, dual solids, example, example program, geometry, graphics, hexahedron, icosahedron, mathematics, octahedron, platonic solids, polygon, polytope, polytopes, regular polygon, regular polytopes, regular solids, solids, tetrahedron, Windows Forms programming, WPF
2 Comments
Perform hit testing in a 3D program that uses WPF, XAML, and C#
Many threedimensional programs need to perform hit testing to determine when the user clicks on something. This example draws two interlocked tetrahedrons inside a cage. When you click on one of the objects, the program displays information about the object … Continue reading
Posted in algorithms, drawing, geometry, graphics, mathematics, wpf, XAML
Tagged 3D, 3D graphics, 3D hit testing, algorithms, C#, C# programming, drawing, example, example program, geometry, graphics, hit test, hit testing, HitTestResult, mathematics, tetrahedron, threedmensional graphics, VisualTreeHelper, Windows Forms programming, wireframe, WPF, XAML
15 Comments