1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en_US" lang="en_US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Qt 4.8: pacman.js Example File (script/context2d/scripts/pacman.js)</title>
<link rel="stylesheet" type="text/css" href="style/offline.css" />
</head>
<body>
<div class="header" id="qtdocheader">
<div class="content">
<a href="index.html" class="qtref"><span>Qt Reference Documentation</span></a>
</div>
<div class="breadcrumb toolblock">
<ul>
<li class="first"><a href="index.html">Home</a></li>
<!-- Breadcrumbs go here -->
</ul>
</div>
</div>
<div class="content mainContent">
<h1 class="title">pacman.js Example File</h1>
<span class="small-subtitle">script/context2d/scripts/pacman.js</span>
<!-- $$$script/context2d/scripts/pacman.js-description -->
<div class="descr"> <a name="details"></a>
<pre class="js"> <span class="keyword">function</span> <span class="name">roundedRect</span>(<span class="name">ctx</span>,x,y,width,height,radius){
<span class="name">ctx</span>.<span class="name">beginPath</span>();
<span class="name">ctx</span>.<span class="name">moveTo</span>(<span class="name">x</span>,<span class="name">y</span><span class="operator">+</span><span class="name">radius</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="name">x</span>,<span class="name">y</span><span class="operator">+</span><span class="name">height</span><span class="operator">-</span><span class="name">radius</span>);
<span class="name">ctx</span>.<span class="name">quadraticCurveTo</span>(<span class="name">x</span>,<span class="name">y</span><span class="operator">+</span><span class="name">height</span>,<span class="name">x</span><span class="operator">+</span><span class="name">radius</span>,<span class="name">y</span><span class="operator">+</span><span class="name">height</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="name">x</span><span class="operator">+</span><span class="name">width</span><span class="operator">-</span><span class="name">radius</span>,<span class="name">y</span><span class="operator">+</span><span class="name">height</span>);
<span class="name">ctx</span>.<span class="name">quadraticCurveTo</span>(<span class="name">x</span><span class="operator">+</span><span class="name">width</span>,<span class="name">y</span><span class="operator">+</span><span class="name">height</span>,<span class="name">x</span><span class="operator">+</span><span class="name">width</span>,<span class="name">y</span><span class="operator">+</span><span class="name">height</span><span class="operator">-</span><span class="name">radius</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="name">x</span><span class="operator">+</span><span class="name">width</span>,<span class="name">y</span><span class="operator">+</span><span class="name">radius</span>);
<span class="name">ctx</span>.<span class="name">quadraticCurveTo</span>(<span class="name">x</span><span class="operator">+</span><span class="name">width</span>,<span class="name">y</span>,<span class="name">x</span><span class="operator">+</span><span class="name">width</span><span class="operator">-</span><span class="name">radius</span>,<span class="name">y</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="name">x</span><span class="operator">+</span><span class="name">radius</span>,<span class="name">y</span>);
<span class="name">ctx</span>.<span class="name">quadraticCurveTo</span>(<span class="name">x</span>,<span class="name">y</span>,<span class="name">x</span>,<span class="name">y</span><span class="operator">+</span><span class="name">radius</span>);
<span class="name">ctx</span>.<span class="name">stroke</span>();
}
var <span class="name">canvas</span> = <span class="name">document</span>.<span class="name">getElementById</span>(<span class="string">'tutorial'</span>);
<span class="comment">// Make sure we don't execute when canvas isn't supported</span>
<span class="keyword">if</span> (<span class="name">canvas</span>.<span class="name">getContext</span>){
<span class="comment">// use getContext to use the canvas for drawing</span>
var <span class="name">ctx</span> = <span class="name">canvas</span>.<span class="name">getContext</span>(<span class="string">'2d'</span>);
<span class="comment">// Draw shapes</span>
<span class="name">roundedRect</span>(<span class="name">ctx</span>,<span class="number">12</span>,<span class="number">12</span>,<span class="number">150</span>,<span class="number">150</span>,<span class="number">15</span>);
<span class="name">roundedRect</span>(<span class="name">ctx</span>,<span class="number">19</span>,<span class="number">19</span>,<span class="number">150</span>,<span class="number">150</span>,<span class="number">9</span>);
<span class="name">roundedRect</span>(<span class="name">ctx</span>,<span class="number">53</span>,<span class="number">53</span>,<span class="number">49</span>,<span class="number">33</span>,<span class="number">10</span>);
<span class="name">roundedRect</span>(<span class="name">ctx</span>,<span class="number">53</span>,<span class="number">119</span>,<span class="number">49</span>,<span class="number">16</span>,<span class="number">6</span>);
<span class="name">roundedRect</span>(<span class="name">ctx</span>,<span class="number">135</span>,<span class="number">53</span>,<span class="number">49</span>,<span class="number">33</span>,<span class="number">10</span>);
<span class="name">roundedRect</span>(<span class="name">ctx</span>,<span class="number">135</span>,<span class="number">119</span>,<span class="number">25</span>,<span class="number">49</span>,<span class="number">10</span>);
<span class="comment">// Character 1</span>
<span class="name">ctx</span>.<span class="name">beginPath</span>();
<span class="name">ctx</span>.<span class="name">arc</span>(<span class="number">37</span>,<span class="number">37</span>,<span class="number">13</span>,<span class="name">Math</span>.<span class="name">PI</span><span class="operator">/</span><span class="number">7</span>,-<span class="name">Math</span>.<span class="name">PI</span><span class="operator">/</span><span class="number">7</span>,<span class="number">false</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="number">34</span>,<span class="number">37</span>);
<span class="name">ctx</span>.<span class="name">fill</span>();
<span class="comment">// blocks</span>
<span class="keyword">for</span>(<span class="name">i</span><span class="operator">=</span><span class="number">0</span>;<span class="name">i</span><span class="operator"><</span><span class="number">8</span>;i++){
<span class="name">ctx</span>.<span class="name">fillRect</span>(<span class="number">51</span><span class="operator">+</span><span class="name">i</span><span class="operator">*</span><span class="number">16</span>,<span class="number">35</span>,<span class="number">4</span>,<span class="number">4</span>);
}
<span class="keyword">for</span>(<span class="name">i</span><span class="operator">=</span><span class="number">0</span>;<span class="name">i</span><span class="operator"><</span><span class="number">6</span>;i++){
<span class="name">ctx</span>.<span class="name">fillRect</span>(<span class="number">115</span>,<span class="number">51</span><span class="operator">+</span><span class="name">i</span><span class="operator">*</span><span class="number">16</span>,<span class="number">4</span>,<span class="number">4</span>);
}
<span class="keyword">for</span>(<span class="name">i</span><span class="operator">=</span><span class="number">0</span>;<span class="name">i</span><span class="operator"><</span><span class="number">8</span>;i++){
<span class="name">ctx</span>.<span class="name">fillRect</span>(<span class="number">51</span><span class="operator">+</span><span class="name">i</span><span class="operator">*</span><span class="number">16</span>,<span class="number">99</span>,<span class="number">4</span>,<span class="number">4</span>);
}
<span class="comment">// character 2</span>
<span class="name">ctx</span>.<span class="name">beginPath</span>();
<span class="name">ctx</span>.<span class="name">moveTo</span>(<span class="number">83</span>,<span class="number">116</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="number">83</span>,<span class="number">102</span>);
<span class="name">ctx</span>.<span class="name">bezierCurveTo</span>(<span class="number">83</span>,<span class="number">94</span>,<span class="number">89</span>,<span class="number">88</span>,<span class="number">97</span>,<span class="number">88</span>);
<span class="name">ctx</span>.<span class="name">bezierCurveTo</span>(<span class="number">105</span>,<span class="number">88</span>,<span class="number">111</span>,<span class="number">94</span>,<span class="number">111</span>,<span class="number">102</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="number">111</span>,<span class="number">116</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="number">106.333</span>,<span class="number">111.333</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="number">101.666</span>,<span class="number">116</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="number">97</span>,<span class="number">111.333</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="number">92.333</span>,<span class="number">116</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="number">87.666</span>,<span class="number">111.333</span>);
<span class="name">ctx</span>.<span class="name">lineTo</span>(<span class="number">83</span>,<span class="number">116</span>);
<span class="name">ctx</span>.<span class="name">fill</span>();
<span class="name">ctx</span>.<span class="name">fillStyle</span> <span class="operator">=</span> <span class="string">"white"</span>;
<span class="name">ctx</span>.<span class="name">beginPath</span>();
<span class="name">ctx</span>.<span class="name">moveTo</span>(<span class="number">91</span>,<span class="number">96</span>);
<span class="name">ctx</span>.<span class="name">bezierCurveTo</span>(<span class="number">88</span>,<span class="number">96</span>,<span class="number">87</span>,<span class="number">99</span>,<span class="number">87</span>,<span class="number">101</span>);
<span class="name">ctx</span>.<span class="name">bezierCurveTo</span>(<span class="number">87</span>,<span class="number">103</span>,<span class="number">88</span>,<span class="number">106</span>,<span class="number">91</span>,<span class="number">106</span>);
<span class="name">ctx</span>.<span class="name">bezierCurveTo</span>(<span class="number">94</span>,<span class="number">106</span>,<span class="number">95</span>,<span class="number">103</span>,<span class="number">95</span>,<span class="number">101</span>);
<span class="name">ctx</span>.<span class="name">bezierCurveTo</span>(<span class="number">95</span>,<span class="number">99</span>,<span class="number">94</span>,<span class="number">96</span>,<span class="number">91</span>,<span class="number">96</span>);
<span class="name">ctx</span>.<span class="name">moveTo</span>(<span class="number">103</span>,<span class="number">96</span>);
<span class="name">ctx</span>.<span class="name">bezierCurveTo</span>(<span class="number">100</span>,<span class="number">96</span>,<span class="number">99</span>,<span class="number">99</span>,<span class="number">99</span>,<span class="number">101</span>);
<span class="name">ctx</span>.<span class="name">bezierCurveTo</span>(<span class="number">99</span>,<span class="number">103</span>,<span class="number">100</span>,<span class="number">106</span>,<span class="number">103</span>,<span class="number">106</span>);
<span class="name">ctx</span>.<span class="name">bezierCurveTo</span>(<span class="number">106</span>,<span class="number">106</span>,<span class="number">107</span>,<span class="number">103</span>,<span class="number">107</span>,<span class="number">101</span>);
<span class="name">ctx</span>.<span class="name">bezierCurveTo</span>(<span class="number">107</span>,<span class="number">99</span>,<span class="number">106</span>,<span class="number">96</span>,<span class="number">103</span>,<span class="number">96</span>);
<span class="name">ctx</span>.<span class="name">fill</span>();
<span class="name">ctx</span>.<span class="name">fillStyle</span> <span class="operator">=</span> <span class="string">"black"</span>;
<span class="name">ctx</span>.<span class="name">beginPath</span>();
<span class="name">ctx</span>.<span class="name">arc</span>(<span class="number">101</span>,<span class="number">102</span>,<span class="number">2</span>,<span class="number">0</span>,<span class="name">Math</span>.<span class="name">PI</span><span class="operator">*</span><span class="number">2</span>,<span class="number">true</span>);
<span class="name">ctx</span>.<span class="name">fill</span>();
<span class="name">ctx</span>.<span class="name">beginPath</span>();
<span class="name">ctx</span>.<span class="name">arc</span>(<span class="number">89</span>,<span class="number">102</span>,<span class="number">2</span>,<span class="number">0</span>,<span class="name">Math</span>.<span class="name">PI</span><span class="operator">*</span><span class="number">2</span>,<span class="number">true</span>);
<span class="name">ctx</span>.<span class="name">fill</span>();
}</pre>
</div>
<!-- @@@script/context2d/scripts/pacman.js -->
<div class="ft">
<span></span>
</div>
</div>
<div class="footer">
<p>
<acronym title="Copyright">©</acronym> 2012 Nokia Corporation and/or its
subsidiaries. Documentation contributions included herein are the copyrights of
their respective owners.</p>
<br />
<p>
The documentation provided herein is licensed under the terms of the
<a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation
License version 1.3</a> as published by the Free Software Foundation.</p>
<p>
Documentation sources may be obtained from <a href="http://www.qt-project.org">
www.qt-project.org</a>.</p>
<br />
<p>
Nokia, Qt and their respective logos are trademarks of Nokia Corporation
in Finland and/or other countries worldwide. All other trademarks are property
of their respective owners. <a title="Privacy Policy"
href="http://en.gitorious.org/privacy_policy/">Privacy Policy</a></p>
</div>
</body>
</html>
|