Category: 

What Is a Triangle Fan?

Article Details
  • Written By: Alex Newth
  • Edited By: Angela B.
  • Last Modified Date: 20 August 2016
  • Copyright Protected:
    2003-2016
    Conjecture Corporation
  • Print this Article
Free Widgets for your Site/Blog
In late 19th-century London, mail was delivered to residential addresses up to twelve times each day.   more...

September 28 ,  1924 :  Two US military planes complete the first flights around the world.  more...

A triangle fan is a collection of triangles grouped around a main vertex and used in three-dimensional (3D) graphics to build computer models and meshes. The triangle fan is considered a primitive, like a line or dot, because it is used to build complex shapes. Most polygons used to make a polygon mesh are — or can be — separated into a fan, which makes it easier on programmers to control and manipulate a polygon. Aside from control, the biggest advantage to using this fan is that the computer can process the shape faster, and storage is much easier because of the conservation of lines.

The triangle fan is aptly named, because the shape looks like a fan. It starts with a main vertex, and all the triangles are connected to this vertex. If any triangle is connected to another triangle instead of the vertex, then the shape is considered a triangle strip.

In computer graphics, there are shapes known as primitives; this is not because the shapes are old and not used anymore, but because they are capable of building up other shapes. While most primitives are very simple shapes, such as a line or dot, the triangle fan is slightly more complex than most primitives. This allows programmers to create shapes that otherwise would be impossible — or at least difficult — to code.

Ad

Polygon mesh structures are used in low-level designs, typically as a skeleton on which to place high-level graphics or the graphics users see. While a polygon mesh looks like a jumble of polygons, each polygon can be separated into a triangle fan. One point of the polygon is used as the main vertex, and several triangles form around this vertex. By using triangles instead of the entire polygon, programmers can easily manipulate the size and shape of the polygon. This makes programming time slightly longer but allows for very precise measurements.

A major benefit to using a triangle fan instead of other shapes is that a fan can load much faster. The computer has to load fewer lines, because the lines next to each other are counted as one line. For example, if two triangles are against each other, the computer will have to render six lines; however, with the fan, the butting lines are combined and only four lines are rendered. Storage also is improved, because the conservation of lines means the computer has to expend less memory.

Ad

You might also Like

Recommended

Discuss this Article

Post your comments

exception 'Exception' with message 'error writing captcha: Duplicate entry '2147483647' for key 'PRIMARY'' in /ssd/www/wisegeek/public_html/_core/classes/public/Captcha.php:44
Stack trace:
#0 /ssd/www/wisegeek/public_html/_core/controls/public/ControlDiscussionPostBox.php(324): Captcha->createCaptcha()
#1 /ssd/www/wisegeek/public_html/framework/classes/Control.php(104): ControlDiscussionPostBox->preRender(false)
#2 /ssd/www/wisegeek/public_html/framework/classes/Control.php(149): Control->render()
#3 /ssd/www/wisegeek/public_html/tpl/default-nocustom-lu/pages/public/article/article.htm(526): Control->__toString()
#4 /ssd/www/wisegeek/public_html/framework/classes/Control.php(300): require('/ssd/www/wisege...')
#5 /ssd/www/wisegeek/public_html/framework/classes/Control.php(309): Control->requireTpl('pages/public/ar...', Object(PageArticleCom), true)
#6 /ssd/www/wisegeek/public_html/framework/classes/Control.php(131): Control->renderTpl('pages/public/ar...', Object(PageArticleCom))
#7 /ssd/www/wisegeek/public_html/framework/classes/FormDataControl.php(87): Control->renderTemplate()
#8 /ssd/www/wisegeek/public_html/framework/classes/Control.php(109): FormDataControl->renderTemplate()
#9 /ssd/www/wisegeek/public_html/framework/classes/ScriptPage.php(50): Control->render(false)
#10 /ssd/www/wisegeek/public_html/framework/classes/Control.php(149): ScriptPage->render()
#11 /ssd/www/wisegeek/public_html/framework/classes/Page.php(97): Control->__toString()
#12 /ssd/www/wisegeek/public_html/_core/classes/public/PublicFrontController.php(443): Page->processRequest()
#13 /ssd/www/wisegeek/public_html/_core/classes/public/PublicFrontController.php(7): PublicFrontController->renderPage()
#14 /ssd/www/wisegeek/public_html/index.php(11): PublicFrontController::run()
#15 {main}