1<html lang="en"> 2 3<head> 4 <title>About :: Cinder</title> 5 6 <meta charset="utf-8"> 7 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 8 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 9 10 <link rel="stylesheet" type="text/css" href="/static/styles/styles.css"> 11 12 <link rel="shortcut icon" href="/static/favicon.png"> 13 <link href='//fonts.googleapis.com/css?family=Open+Sans:400,300,600' rel='stylesheet' type='text/css'> 14 15
15<script src="/static/scripts/jquery.min.js"></script>
15 16
16<script src="/static/scripts/modernizr.min.js"></script>
16 17
17<script src="/static/scripts/bootstrap.min.js"></script>
17 18
18<script src="/static/scripts/libcinder.js"></script>
18 19 20 <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries --> 21 <!--[if lt IE 9]> 22
22<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
22 23
23<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
23 24 <![endif]--> 25 26
26<script>
vendor: 369 bytes, lines 26-32
26 27 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 28 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 29 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 30 })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 31 32 ga('create', '
32UA-68329198-1
vendor: 48 bytes, lines 32-34
32', 'auto'); 33 ga('send', 'pageview'); 34
34</script>
34 35</head> 36 37<body> 38 39
40<script> 41$( function() { 42 var featureTabs = { 43 collapseSize: 996, 44 tabEls: '#platform-core-tab, #threed-graphics-tab , #twod-graphics-tab, #media-tab, #mathematics-tab', 45 panes: '#platform-core, #3d-graphics , #2d-graphics, #media, #mathematics', 46 47 copyElements: function() { 48 $('#platform-core').clone().attr('id', '').addClass('accordion-view').appendTo('.li-platform-core').hide(); 49 $('#3d-graphics').clone().attr('id', '').addClass('accordion-view').appendTo('.li-threed-graphics').hide(); 50 $('#2d-graphics').clone().attr('id', '').addClass('accordion-view').appendTo('.li-twod-graphics').hide(); 51 $('#mathematics').clone().attr('id', '').addClass('accordion-view').appendTo('.li-mathematics').hide(); 52 $('#media').clone().attr('id', '').addClass('accordion-view').appendTo('.li-media').hide(); 53 }, 54 55 removeActive: function() { 56 if (window.outerWidth < this.collapseSize) { 57 $(this.panes).removeClass('active'); 58 $('.li-platform-core').removeClass('active'); 59 } 60 } 61 }; 62 63 featureTabs.copyElements(); 64 //featureTabs.removeActive(); 65 66 $(window).on('resize', function() { 67 if (window.outerWidth < featureTabs.collapseSize) { 68 featureTabs.removeActive(); 69 } 70 else { 71 var activeTabContent = $('li.active').children('a').eq(0).attr('href'); 72 $(activeTabContent).addClass('active'); 73 } 74 }); 75 76 $(featureTabs.tabEls).on('click', function(e) { 77 var that = this; 78 if (window.outerWidth < featureTabs.collapseSize) { 79 setTimeout(function() { 80 $(featureTabs.panes).removeClass('active'); 81 $('html, body').animate({ 82 scrollTop: $('#' + $(that).attr('id')).offset().top 83 }, 0); 84 }, 100); 85 } 86 }); 87 88 $('h4.faq-question').on('click', function(e) { 89 var that = this; 90 setTimeout(function() { 91 $('html, body').animate({ 92 scrollTop: $(that).parent().parent().offset().top 93 }, 0); 94 }, 200); 95 }); 96 97 $('div.feature-faqs h4.panel-title').on('click', function(e) { 98 $('div.feature-faqs h4.panel-title').removeClass('active'); 99 $(this).addClass('active'); 100 return true; 101 }); 102}); 103</script>
103 104 105<div class="features"> 106 107 <div class="nav-frontpage"> 108 <div class="navbar navbar-inverse" role="navigation"> 109 <div class="container"> 110 <div class="navbar-header"> 111 <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> 112 <span class="sr-only">Toggle navigation</span> 113 <span class="icon-bar"></span> 114 <span class="icon-bar"></span> 115 <span class="icon-bar"></span> 116 </button> 117 <a class="navbar-brand" href="/">Cinder</a> 118 </div> 119 <div class="navbar-collapse collapse"> 120 <ul class="nav navbar-nav"> 121 <li><a href="/about" class="active">About</a></li> 122 <li><a href="/gallery">Gallery</a></li> 123 <li><a href="/learn">Learn</a></li> 124 <li><a href="/docs">Docs</a></li> 125 <li><a href="http://discourse.libcinder.org">Forum</a></li> 126 <li><a href="/download">Download</a></li> 127 </ul> 128 </div> 129 </div> 130 </div> 131</div> 132 133 <!-- Main jumbotron for a primary marketing message or call to action --> 134 <div class="jumbotron jumbotron-nonindex"> 135 <div class="container" style="padding-bottom: 20px;"> 136 <div class="row row-top"> 137 <div class="col-md-12" style="max-width: 950px;"> 138 <p style="font-size: 20px;"><span class="italic-orange">Cinder is a C++ library</span> for programming with aesthetic intent - the sort of development often called <em>creative coding</em>. This includes domains like graphics, audio, video, and computational geometry. Cinder is cross-platform, with official support for <span style="white-space: nowrap;">macOS</span>, Windows, Linux, iOS, and Windows UWP.</p> 139 140 <p style="font-size: 20px;">Cinder is production-proven, powerful enough to be the primary tool for professionals, but still suitable for learning and experimentation.</p> 141 142 <p style="font-size: 20px;">Cinder is released under the <a href="http://opensource.org/licenses/BSD-2-Clause">2-Clause BSD License</a>.</p> 143 </div> 144 </div> 145 </div> 146 </div> 147 148 <div class="container feature-tabs-container" style="padding-bottom: 30px;"> 149 <div class="row"> 150 151 <hr> 152 153 <!-- Nav tabs --> 154 <ul class="nav nav-tabs feature-tabs"> 155 <li class="active li-platform-core"><a href="#platform-core" data-toggle="tab" id="platform-core-tab" class="nav-tab">Platform Core</a><div class="border-right"></div><div class="border-bottom"></div></li> 156 <li class="li-threed-graphics"><a href="#3d-graphics" data-toggle="tab" id="threed-graphics-tab" class="nav-tab">3D Graphics</a><div class="border-right"></div><div class="border-bottom"></div></li> 157 <li class="li-mathematics"><a href="#mathematics" data-toggle="tab" id="mathematics-tab" class="nav-tab">Mathematics</a><div class="border-right"></div><div class="border-bottom"></div></li> 158 <li class="li-twod-graphics"><a href="#2d-graphics" data-toggle="tab" id="twod-graphics-tab" class="nav-tab">2D Graphics</a><div class="border-right"></div><div class="border-bottom"></div></li> 159 <li class="li-media"><a href="#media" data-toggle="tab" id="media-tab" class="nav-tab">Media</a><div class="border-bottom"></div></li> 160 </ul> 161 162 <div class="tab-content"> 163 <div class="tab-pane active" id="platform-core"> 164 <div class="row"> 165 <div class="col-md-6 col"> 166 <h4>Standalone Applications</h4> 167 <p>Platform-native windowing and event handling</p> 168 </div> 169 <div class="col-md-5 col-md-offset-1 col"> 170 <h4>Full I/O Abstraction</h4> 171 <p>Seamless I/O from flat files, memory, resources and networks</p> 172 </div> 173 </div> 174 175 <div class="row"> 176 <div class="col-md-6 col"> 177 <h4>Screensavers</h4> 178 <p>Native macOS and Windows screensavers</p> 179 </div> 180 <div class="col-md-5 col-md-offset-1 col"> 181 <h4>C++ Core</h4> 182 <p>Designed around idiomatic C++11 features such as shared_ptr</p> 183 </div> 184 </div> 185 186 <div class="row"> 187 <div class="col-md-6 col"> 188 <h4>Internet I/O</h4> 189 <p>Load media via HTTP and FTP natively</p> 190 </div> 191 <div class="col-md-5 col-md-offset-1 col"> 192 <h4>UI Events</h4> 193 <p>Full keyboard, mouse (including scroll wheel), window, and file drag and drop</p> 194 </div> 195 </div> 196 197 <div class="row"> 198 <div class="col-md-6 col"> 199 <h4>Platform-Specific APIs</h4> 200 <p>Convenient access to power management, display and network adapter iteration</p> 201 </div> 202 <div class="col-md-5 col-md-offset-1 col"> 203 <h4>Multitouch</h4> 204 <p>Consistent multitouch APIs for Windows 7+, iOS and macOS</p> 205 </div> 206 </div> 207 208 <div class="row"> 209 <div class="col-md-6 col"> 210 <h4>XML & JSON Parsers</h4> 211 <p>
211Built-in object oriented XML & JSON parsing API</p> 212 </div> 213 <div class="col-md-5 col-md-offset-1 col"> 214 <h4>Communication APIs</h4> 215 <p>Serial port (enabling Arduino applications), OSC and TUIO</p> 216 </div> 217 </div> 218 219 </div> 220 <div class="tab-pane" id="3d-graphics"> 221 <div class="row"> 222 <div class="col-md-6 col"> 223 <h4>Core Classes</h4> 224 <p>Perspective and orthographic cameras, triangle meshes, OBJ loading, geometric primitives</p> 225 </div> 226 <div class="col-md-5 col-md-offset-1 col"> 227 <h4>Geometry Synthesis</h4> 228 <p>API's for creating and manipulating common 3D primitives.</p> 229 </div> 230 </div> 231 232 <div class="row"> 233 <div class="col-md-6 col"> 234 <h4>OpenGL Core</h4> 235 <p>Multisampled antialiasing, dynamic switching between full-screen & windowed modes, convenience methods for rapid development</p> 236 </div> 237 <div class="col-md-5 col-md-offset-1 col"> 238 <h4>GUI Parameters</h4> 239 <p>GL-based GUI for powerful, convenient manipulation of parameters</p> 240 </div> 241 </div> 242 243 <div class="row"> 244 <div class="col-md-6 col"> 245 <h4>OpenGL Classes</h4> 246 <p>Full-featured classes for textures, FBOs, GLSL, VBOs, lights, materials and display lists</p> 247 </div> 248 </div> 249 </div> 250 <div class="tab-pane" id="mathematics"> 251 <div class="row"> 252 <div class="col-md-6 col"> 253 <h4>GLM Math Primitives</h4> 254 <p>Full-featured matrix, vector and quaternion classes via industry-standard <a href="http://glm.g-truc.net/">GLM</a> library.</p> 255 </div> 256 <div class="col-md-5 col-md-offset-1 col"> 257 <h4>Geometric Primitives</h4> 258 <p>Poly-bezier paths, polygons, axis-aligned bounding boxes, B-splines, least-squares B-Spline curve fitting</p> 259 </div> 260 </div> 261 262 <div class="row"> 263 <div class="col-md-6 col"> 264 <h4>Utilities</h4> 265 <p>Colors, random numbers, Perlin noise (up to 4D, with analytical derivatives)</p> 266 </div> 267 </div> 268 </div> 269 <div class="tab-pane" id="2d-graphics"> 270 <div class="row"> 271 <div class="col-md-6 col"> 272 <h4>Robust Image I/O</h4> 273 <p>PNG, JPEG, TIFF, BMP, OpenEXR & others. Preservation of premultiplication and high dynamic range information</p> 274 </div> 275 <div class="col-md-5 col-md-offset-1 col"> 276 <h4>Powerful 2D Rasterizer via Cairo</h4> 277 <p>Full featured vector renderer exports to SVG, PDF, Postscript, EPS, CoreGraphics, GDI and a pixel-based antialiasing rasterizer</p> 278 </div> 279 </div> 280 281 <div class="row"> 282 <div class="col-md-6 col"> 283 <h4>2D Image Processing</h4> 284 <p>High quality image resizing, edge detection, desaturation, adaptive thresholding</p> 285 </div> 286 <div class="col-md-5 col-md-offset-1 col"> 287 <h4>Fonts & Text</h4> 288 <p>Font enumeration, glyph path extraction, Unicode text layout and rasterization, custom fonts via flat files or resources</p> 289 </div> 290 </div> 291 292 <div class="row"> 293 <div class="col-md-6 col"> 294 <h4>High Dynamic Range Imaging</h4> 295 <p>Full support for floating point HDR pixel processing in image I/O, OpenGL and s
295oftware</p> 296 </div> 297 </div> 298 </div> 299 <div class="tab-pane" id="media"> 300 <div class="row"> 301 <div class="col-md-6 col"> 302 <h4>Video Capture</h4> 303 <p>Webcam support via platform native libraries on OS X, iOS and Windows</p> 304 </div> 305 <div class="col-md-5 col-md-offset-1 col"> 306 <h4>Audio I/O</h4> 307 <p>Decoding WAV, MP3, Ogg Vorbis and others; encoding at 24 and 32-bit precision. Microphone input, multichannel output, and selection of non-default devices</p> 308 </div> 309 </div> 310 311 <div class="row"> 312 <div class="col-md-6 col"> 313 <h4>OpenCV</h4> 314 <p>Object-oriented lightweight wrapper for OpenCV 3.0</p> 315 </div> 316 <div class="col-md-5 col-md-offset-1 col"> 317 <h4>Modular Audio Nodes</h4> 318 <p>Generators and effects including band-limited wavetable synthesis, buffer playback, filtering, panning, routing and delay. Precise, sample-accurate parameter interpolation</p> 319 </div> 320 </div> 321 322 <div class="row"> 323 <div class="col-md-6 col"> 324 <h4>Full-Featured QuickTime</h4> 325 <p>Frame extraction, native accelerated OpenGL path, audio playback, asynchronous network loading</p> 326 </div> 327 <div class="col-md-5 col-md-offset-1 col"> 328 <h4>Audio Processing</h4> 329 <p>Low level, high performance cross-platform DSP tools for FFT, high quality samplerate conversion, non-blocking ringbuffer, biquad filters, and vector based math operations</p> 330 </div> 331 </div> 332 </div> 333 </div> 334 </div> <!-- row --> 335 </div> 336 337 <!-- Contributing & Authors --> 338 <div class="grey-wrapper"> 339 <div class="container" style="padding-bottom: 40px; padding-top: 30px;"> 340 <!--<hr>--> 341 <div class="row row-top"> 342 <div class="col-md-12"> 343 <h2 id="responsive_headline"><span style="margin-top:0px;margin-bottom:0px;letter-spacing:0px;font-size:16pt">Contributing</span></h2> 344 </div> 345 <div class="col-md-12" style="max-width: 950px; padding-top: 10px;"> 346 <p>Cinder is developed through <a href="http://github.com/Cinder/cinder">Github</a>, and discussion is conducted primarily via <a href="https://forum.libcinder.org/#allForums">its forums</a>. Code contributions, issue reports, and support requests are welcome through these two avenues.</p> 347 </div> 348 349 <div class="col-md-12" style="padding-top: 10px;"> 350 <h2 id="responsive_headline"><span style="margin-top:0px;margin-bottom:0px;letter-spacing:0px;font-size:16pt">Authors</span></h2> 351 </div> 352 <div class="col-md-12" style="max-width: 950px; padding-top: 10px; padding-bottom: 20px;"> 353 <p>Cinder's original author and current lead architect is <a href="http://drawnline.net/">Andrew Bell</a>. Significant portions of Cinder were derived from code coauthored with <a href="http://sayinghai.com/">Hai Nguyen</a>, who continues to help steward the project along with <a href="http://richardeakin.com">Rich Eakin</a>, <a href="https://github.com/paulhoux">Paul Houx</a>, and a growing, global community of users.</p> 354 </div> 355 </div> 356 </div> 357 </div> 358</div> 359 360<footer> 361 <div class="container"> 362 <p>© Copyright 2020. All Rights Reserved.</p> 363 </div> 364</footer> 365 366</body> 367 368</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.