/bin-release/srcview/source/away3d/primitives/Plane.as.html

https://github.com/davidcoleman007/AS3MazeSolver · HTML · 208 lines · 176 code · 31 blank · 1 comment · 0 complexity · 557b1e5c3f83db5860cb1d54b6de446a MD5 · raw file

  1. <!-- saved from url=(0014)about:internet -->
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  6. <title>Plane.as</title>
  7. <link rel="stylesheet" type="text/css" href="../../../SourceStyles.css"/>
  8. </head>
  9. <body><pre><span class="ActionScriptpackage">package</span> <span class="ActionScriptDefault_Text">away3d</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">primitives</span>
  10. <span class="ActionScriptBracket/Brace">{</span>
  11. <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">away3d</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">arcane</span>;
  12. <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">away3d</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">core</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">base</span><span class="ActionScriptOperator">.</span><span class="ActionScriptOperator">*</span>;
  13. <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">away3d</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">materials</span><span class="ActionScriptOperator">.</span><span class="ActionScriptOperator">*</span>;
  14. <span class="ActionScriptReserved">use</span> <span class="ActionScriptReserved">namespace</span> <span class="ActionScriptDefault_Text">arcane</span>;
  15. <span class="ActionScriptASDoc">/**
  16. * Creates a 3d plane primitive.
  17. */</span>
  18. <span class="ActionScriptReserved">public</span> <span class="ActionScriptclass">class</span> <span class="ActionScriptDefault_Text">Plane</span> <span class="ActionScriptReserved">extends</span> <span class="ActionScriptDefault_Text">AbstractPrimitive</span>
  19. <span class="ActionScriptBracket/Brace">{</span>
  20. <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">grid</span>:<span class="ActionScriptDefault_Text">Array</span>;
  21. <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_width</span>:<span class="ActionScriptDefault_Text">Number</span>;
  22. <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_height</span>:<span class="ActionScriptDefault_Text">Number</span>;
  23. <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_segmentsW</span>:<span class="ActionScriptDefault_Text">int</span>;
  24. <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_segmentsH</span>:<span class="ActionScriptDefault_Text">int</span>;
  25. <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_yUp</span>:<span class="ActionScriptDefault_Text">Boolean</span>;
  26. <span class="ActionScriptASDoc">/**
  27. * @inheritDoc
  28. */</span>
  29. <span class="ActionScriptReserved">protected</span> <span class="ActionScriptReserved">override</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">buildPrimitive</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
  30. <span class="ActionScriptBracket/Brace">{</span>
  31. <span class="ActionScriptReserved">super</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">buildPrimitive</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>;
  32. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">i</span>:<span class="ActionScriptDefault_Text">int</span>;
  33. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">j</span>:<span class="ActionScriptDefault_Text">int</span>;
  34. <span class="ActionScriptDefault_Text">grid</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">Array</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_segmentsW</span><span class="ActionScriptOperator">+</span>1<span class="ActionScriptBracket/Brace">)</span>;
  35. <span class="ActionScriptReserved">for</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">i</span> <span class="ActionScriptOperator">=</span> 0; <span class="ActionScriptDefault_Text">i</span> <span class="ActionScriptOperator">&lt;=</span> <span class="ActionScriptDefault_Text">_segmentsW</span>; <span class="ActionScriptOperator">++</span><span class="ActionScriptDefault_Text">i</span><span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptBracket/Brace">{</span>
  36. <span class="ActionScriptDefault_Text">grid</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">i</span><span class="ActionScriptBracket/Brace">]</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">Array</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_segmentsH</span><span class="ActionScriptOperator">+</span>1<span class="ActionScriptBracket/Brace">)</span>;
  37. <span class="ActionScriptReserved">for</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">j</span> <span class="ActionScriptOperator">=</span> 0; <span class="ActionScriptDefault_Text">j</span> <span class="ActionScriptOperator">&lt;=</span> <span class="ActionScriptDefault_Text">_segmentsH</span>; <span class="ActionScriptOperator">++</span><span class="ActionScriptDefault_Text">j</span><span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptBracket/Brace">{</span>
  38. <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_yUp</span><span class="ActionScriptBracket/Brace">)</span>
  39. <span class="ActionScriptDefault_Text">grid</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">i</span><span class="ActionScriptBracket/Brace">]</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">j</span><span class="ActionScriptBracket/Brace">]</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">createVertex</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">i</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsW</span> <span class="ActionScriptOperator">-</span> 0.5<span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptOperator">*</span> <span class="ActionScriptDefault_Text">_width</span><span class="ActionScriptOperator">,</span> 0<span class="ActionScriptOperator">,</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">j</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsH</span> <span class="ActionScriptOperator">-</span> 0.5<span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptOperator">*</span> <span class="ActionScriptDefault_Text">_height</span><span class="ActionScriptBracket/Brace">)</span>;
  40. <span class="ActionScriptReserved">else</span>
  41. <span class="ActionScriptDefault_Text">grid</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">i</span><span class="ActionScriptBracket/Brace">]</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">j</span><span class="ActionScriptBracket/Brace">]</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">createVertex</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">i</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsW</span> <span class="ActionScriptOperator">-</span> 0.5<span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptOperator">*</span> <span class="ActionScriptDefault_Text">_width</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">j</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsH</span> <span class="ActionScriptOperator">-</span> 0.5<span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptOperator">*</span> <span class="ActionScriptDefault_Text">_height</span><span class="ActionScriptOperator">,</span> 0<span class="ActionScriptBracket/Brace">)</span>;
  42. <span class="ActionScriptBracket/Brace">}</span>
  43. <span class="ActionScriptBracket/Brace">}</span>
  44. <span class="ActionScriptReserved">for</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">i</span> <span class="ActionScriptOperator">=</span> 0; <span class="ActionScriptDefault_Text">i</span> <span class="ActionScriptOperator">&lt;</span> <span class="ActionScriptDefault_Text">_segmentsW</span>; <span class="ActionScriptOperator">++</span><span class="ActionScriptDefault_Text">i</span><span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptBracket/Brace">{</span>
  45. <span class="ActionScriptReserved">for</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">j</span> <span class="ActionScriptOperator">=</span> 0; <span class="ActionScriptDefault_Text">j</span> <span class="ActionScriptOperator">&lt;</span> <span class="ActionScriptDefault_Text">_segmentsH</span>; <span class="ActionScriptOperator">++</span><span class="ActionScriptDefault_Text">j</span><span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptBracket/Brace">{</span>
  46. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">a</span>:<span class="ActionScriptDefault_Text">Vertex</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">grid</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">i</span> <span class="ActionScriptBracket/Brace">]</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">j</span> <span class="ActionScriptBracket/Brace">]</span>;
  47. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">b</span>:<span class="ActionScriptDefault_Text">Vertex</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">grid</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">i</span><span class="ActionScriptOperator">+</span>1<span class="ActionScriptBracket/Brace">]</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">j</span> <span class="ActionScriptBracket/Brace">]</span>;
  48. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">c</span>:<span class="ActionScriptDefault_Text">Vertex</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">grid</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">i</span> <span class="ActionScriptBracket/Brace">]</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">j</span><span class="ActionScriptOperator">+</span>1<span class="ActionScriptBracket/Brace">]</span>;
  49. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">d</span>:<span class="ActionScriptDefault_Text">Vertex</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">grid</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">i</span><span class="ActionScriptOperator">+</span>1<span class="ActionScriptBracket/Brace">]</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">j</span><span class="ActionScriptOperator">+</span>1<span class="ActionScriptBracket/Brace">]</span>;
  50. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">uva</span>:<span class="ActionScriptDefault_Text">UV</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">createUV</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">i</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsW</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">j</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsH</span><span class="ActionScriptBracket/Brace">)</span>;
  51. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">uvb</span>:<span class="ActionScriptDefault_Text">UV</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">createUV</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">i</span><span class="ActionScriptOperator">+</span>1<span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsW</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">j</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsH</span><span class="ActionScriptBracket/Brace">)</span>;
  52. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">uvc</span>:<span class="ActionScriptDefault_Text">UV</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">createUV</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">i</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsW</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">j</span><span class="ActionScriptOperator">+</span>1<span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsH</span><span class="ActionScriptBracket/Brace">)</span>;
  53. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">uvd</span>:<span class="ActionScriptDefault_Text">UV</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">createUV</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">i</span><span class="ActionScriptOperator">+</span>1<span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsW</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">j</span><span class="ActionScriptOperator">+</span>1<span class="ActionScriptBracket/Brace">)</span> <span class="ActionScriptOperator">/</span> <span class="ActionScriptDefault_Text">_segmentsH</span><span class="ActionScriptBracket/Brace">)</span>;
  54. <span class="ActionScriptDefault_Text">addFace</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">createFace</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">a</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">b</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">c</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptReserved">null</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">uva</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">uvb</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">uvc</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptBracket/Brace">)</span>;
  55. <span class="ActionScriptDefault_Text">addFace</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">createFace</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">d</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">c</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">b</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptReserved">null</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">uvd</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">uvc</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">uvb</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptBracket/Brace">)</span>;
  56. <span class="ActionScriptBracket/Brace">}</span>
  57. <span class="ActionScriptBracket/Brace">}</span>
  58. <span class="ActionScriptBracket/Brace">}</span>
  59. <span class="ActionScriptASDoc">/**
  60. * Defines the width of the plane. Defaults to 100, or the width of the uv material (if one is applied).
  61. */</span>
  62. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">get</span> <span class="ActionScriptDefault_Text">width</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptDefault_Text">Number</span>
  63. <span class="ActionScriptBracket/Brace">{</span>
  64. <span class="ActionScriptReserved">return</span> <span class="ActionScriptDefault_Text">_width</span>;
  65. <span class="ActionScriptBracket/Brace">}</span>
  66. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">set</span> <span class="ActionScriptDefault_Text">width</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">val</span>:<span class="ActionScriptDefault_Text">Number</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
  67. <span class="ActionScriptBracket/Brace">{</span>
  68. <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_width</span> <span class="ActionScriptOperator">==</span> <span class="ActionScriptDefault_Text">val</span><span class="ActionScriptBracket/Brace">)</span>
  69. <span class="ActionScriptReserved">return</span>;
  70. <span class="ActionScriptDefault_Text">_width</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">val</span>;
  71. <span class="ActionScriptDefault_Text">_primitiveDirty</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">true</span>;
  72. <span class="ActionScriptBracket/Brace">}</span>
  73. <span class="ActionScriptASDoc">/**
  74. * Defines the height of the plane. Defaults to 100, or the height of the uv material (if one is applied).
  75. */</span>
  76. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">get</span> <span class="ActionScriptDefault_Text">height</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptDefault_Text">Number</span>
  77. <span class="ActionScriptBracket/Brace">{</span>
  78. <span class="ActionScriptReserved">return</span> <span class="ActionScriptDefault_Text">_height</span>;
  79. <span class="ActionScriptBracket/Brace">}</span>
  80. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">set</span> <span class="ActionScriptDefault_Text">height</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">val</span>:<span class="ActionScriptDefault_Text">Number</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
  81. <span class="ActionScriptBracket/Brace">{</span>
  82. <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_height</span> <span class="ActionScriptOperator">==</span> <span class="ActionScriptDefault_Text">val</span><span class="ActionScriptBracket/Brace">)</span>
  83. <span class="ActionScriptReserved">return</span>;
  84. <span class="ActionScriptDefault_Text">_height</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">val</span>;
  85. <span class="ActionScriptDefault_Text">_primitiveDirty</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">true</span>;
  86. <span class="ActionScriptBracket/Brace">}</span>
  87. <span class="ActionScriptASDoc">/**
  88. * Defines the number of horizontal segments that make up the plane. Defaults to 1.
  89. */</span>
  90. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">get</span> <span class="ActionScriptDefault_Text">segmentsW</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptDefault_Text">Number</span>
  91. <span class="ActionScriptBracket/Brace">{</span>
  92. <span class="ActionScriptReserved">return</span> <span class="ActionScriptDefault_Text">_segmentsW</span>;
  93. <span class="ActionScriptBracket/Brace">}</span>
  94. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">set</span> <span class="ActionScriptDefault_Text">segmentsW</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">val</span>:<span class="ActionScriptDefault_Text">Number</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
  95. <span class="ActionScriptBracket/Brace">{</span>
  96. <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_segmentsW</span> <span class="ActionScriptOperator">==</span> <span class="ActionScriptDefault_Text">val</span><span class="ActionScriptBracket/Brace">)</span>
  97. <span class="ActionScriptReserved">return</span>;
  98. <span class="ActionScriptDefault_Text">_segmentsW</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">val</span>;
  99. <span class="ActionScriptDefault_Text">_primitiveDirty</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">true</span>;
  100. <span class="ActionScriptBracket/Brace">}</span>
  101. <span class="ActionScriptASDoc">/**
  102. * Defines the number of vertical segments that make up the plane. Defaults to 1.
  103. */</span>
  104. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">get</span> <span class="ActionScriptDefault_Text">segmentsH</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptDefault_Text">Number</span>
  105. <span class="ActionScriptBracket/Brace">{</span>
  106. <span class="ActionScriptReserved">return</span> <span class="ActionScriptDefault_Text">_segmentsH</span>;
  107. <span class="ActionScriptBracket/Brace">}</span>
  108. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">set</span> <span class="ActionScriptDefault_Text">segmentsH</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">val</span>:<span class="ActionScriptDefault_Text">Number</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
  109. <span class="ActionScriptBracket/Brace">{</span>
  110. <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_segmentsH</span> <span class="ActionScriptOperator">==</span> <span class="ActionScriptDefault_Text">val</span><span class="ActionScriptBracket/Brace">)</span>
  111. <span class="ActionScriptReserved">return</span>;
  112. <span class="ActionScriptDefault_Text">_segmentsH</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">val</span>;
  113. <span class="ActionScriptDefault_Text">_primitiveDirty</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">true</span>;
  114. <span class="ActionScriptBracket/Brace">}</span>
  115. <span class="ActionScriptASDoc">/**
  116. * Defines whether the coordinates of the plane points use a yUp orientation (true) or a zUp orientation (false). Defaults to true.
  117. */</span>
  118. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">get</span> <span class="ActionScriptDefault_Text">yUp</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptDefault_Text">Boolean</span>
  119. <span class="ActionScriptBracket/Brace">{</span>
  120. <span class="ActionScriptReserved">return</span> <span class="ActionScriptDefault_Text">_yUp</span>;
  121. <span class="ActionScriptBracket/Brace">}</span>
  122. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptReserved">set</span> <span class="ActionScriptDefault_Text">yUp</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">val</span>:<span class="ActionScriptDefault_Text">Boolean</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
  123. <span class="ActionScriptBracket/Brace">{</span>
  124. <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_yUp</span> <span class="ActionScriptOperator">==</span> <span class="ActionScriptDefault_Text">val</span><span class="ActionScriptBracket/Brace">)</span>
  125. <span class="ActionScriptReserved">return</span>;
  126. <span class="ActionScriptDefault_Text">_yUp</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">val</span>;
  127. <span class="ActionScriptDefault_Text">_primitiveDirty</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">true</span>;
  128. <span class="ActionScriptBracket/Brace">}</span>
  129. <span class="ActionScriptASDoc">/**
  130. * Creates a new &lt;code&gt;Plane&lt;/code&gt; object.
  131. *
  132. * @param init [optional] An initialisation object for specifying default instance properties.
  133. */</span>
  134. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">Plane</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">init</span>:<span class="ActionScriptDefault_Text">Object</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">null</span><span class="ActionScriptBracket/Brace">)</span>
  135. <span class="ActionScriptBracket/Brace">{</span>
  136. <span class="ActionScriptReserved">super</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">)</span>;
  137. <span class="ActionScriptDefault_Text">_width</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">ini</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">getNumber</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"width"</span><span class="ActionScriptOperator">,</span> 100<span class="ActionScriptOperator">,</span> <span class="ActionScriptBracket/Brace">{</span><span class="ActionScriptDefault_Text">min</span>:0<span class="ActionScriptBracket/Brace">}</span><span class="ActionScriptBracket/Brace">)</span>;
  138. <span class="ActionScriptDefault_Text">_height</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">ini</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">getNumber</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"height"</span><span class="ActionScriptOperator">,</span> 100<span class="ActionScriptOperator">,</span> <span class="ActionScriptBracket/Brace">{</span><span class="ActionScriptDefault_Text">min</span>:0<span class="ActionScriptBracket/Brace">}</span><span class="ActionScriptBracket/Brace">)</span>;
  139. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">segments</span>:<span class="ActionScriptDefault_Text">int</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">ini</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">getInt</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"segments"</span><span class="ActionScriptOperator">,</span> 1<span class="ActionScriptOperator">,</span> <span class="ActionScriptBracket/Brace">{</span><span class="ActionScriptDefault_Text">min</span>:1<span class="ActionScriptBracket/Brace">}</span><span class="ActionScriptBracket/Brace">)</span>;
  140. <span class="ActionScriptDefault_Text">_segmentsW</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">ini</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">getInt</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"segmentsW"</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">segments</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptBracket/Brace">{</span><span class="ActionScriptDefault_Text">min</span>:1<span class="ActionScriptBracket/Brace">}</span><span class="ActionScriptBracket/Brace">)</span>;
  141. <span class="ActionScriptDefault_Text">_segmentsH</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">ini</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">getInt</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"segmentsH"</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">segments</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptBracket/Brace">{</span><span class="ActionScriptDefault_Text">min</span>:1<span class="ActionScriptBracket/Brace">}</span><span class="ActionScriptBracket/Brace">)</span>;
  142. <span class="ActionScriptDefault_Text">_yUp</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">ini</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">getBoolean</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"yUp"</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptReserved">true</span><span class="ActionScriptBracket/Brace">)</span>;
  143. <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">width</span><span class="ActionScriptOperator">*</span><span class="ActionScriptDefault_Text">height</span> <span class="ActionScriptOperator">==</span> 0<span class="ActionScriptBracket/Brace">)</span>
  144. <span class="ActionScriptBracket/Brace">{</span>
  145. <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">material</span> <span class="ActionScriptReserved">is</span> <span class="ActionScriptDefault_Text">BitmapMaterial</span><span class="ActionScriptBracket/Brace">)</span>
  146. <span class="ActionScriptBracket/Brace">{</span>
  147. <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">uvm</span>:<span class="ActionScriptDefault_Text">BitmapMaterial</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">material</span> <span class="ActionScriptReserved">as</span> <span class="ActionScriptDefault_Text">BitmapMaterial</span>;
  148. <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">width</span> <span class="ActionScriptOperator">==</span> 0<span class="ActionScriptBracket/Brace">)</span>
  149. <span class="ActionScriptDefault_Text">width</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">uvm</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">width</span>;
  150. <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">height</span> <span class="ActionScriptOperator">==</span> 0<span class="ActionScriptBracket/Brace">)</span>
  151. <span class="ActionScriptDefault_Text">height</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">uvm</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">height</span>;
  152. <span class="ActionScriptBracket/Brace">}</span>
  153. <span class="ActionScriptReserved">else</span>
  154. <span class="ActionScriptBracket/Brace">{</span>
  155. <span class="ActionScriptDefault_Text">width</span> <span class="ActionScriptOperator">=</span> 100;
  156. <span class="ActionScriptDefault_Text">height</span> <span class="ActionScriptOperator">=</span> 100;
  157. <span class="ActionScriptBracket/Brace">}</span>
  158. <span class="ActionScriptBracket/Brace">}</span>
  159. <span class="ActionScriptDefault_Text">type</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">"Plane"</span>;
  160. <span class="ActionScriptDefault_Text">url</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">"primitive"</span>;
  161. <span class="ActionScriptBracket/Brace">}</span>
  162. <span class="ActionScriptASDoc">/**
  163. * Returns the vertex object specified by the grid position of the mesh.
  164. *
  165. * @param w The horizontal position on the primitive mesh.
  166. * @param h The vertical position on the primitive mesh.
  167. */</span>
  168. <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">vertex</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">w</span>:<span class="ActionScriptDefault_Text">int</span><span class="ActionScriptOperator">,</span> <span class="ActionScriptDefault_Text">h</span>:<span class="ActionScriptDefault_Text">int</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptDefault_Text">Vertex</span>
  169. <span class="ActionScriptBracket/Brace">{</span>
  170. <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_primitiveDirty</span><span class="ActionScriptBracket/Brace">)</span>
  171. <span class="ActionScriptDefault_Text">updatePrimitive</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>;
  172. <span class="ActionScriptReserved">return</span> <span class="ActionScriptDefault_Text">grid</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">h</span><span class="ActionScriptBracket/Brace">]</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">w</span><span class="ActionScriptBracket/Brace">]</span>;
  173. <span class="ActionScriptBracket/Brace">}</span>
  174. <span class="ActionScriptBracket/Brace">}</span>
  175. <span class="ActionScriptBracket/Brace">}</span>
  176. </pre></body>
  177. </html>