Files
esengine/source/docs/classes/_physics_spatialhash_.es.spatialhash.html
2020-11-20 14:07:34 +08:00

736 lines
41 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html>
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>SpatialHash | @esengine/egret-framework</title>
<meta name="description" content="Documentation for @esengine/egret-framework">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="../assets/js/search.json" data-base="..">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</div>
<ul class="results">
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">@esengine/egret-framework</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
<input type="checkbox" id="tsd-filter-externals" checked />
<label class="tsd-widget" for="tsd-filter-externals">Externals</label>
<input type="checkbox" id="tsd-filter-only-exported" />
<label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../globals.html">Globals</a>
</li>
<li>
<a href="../modules/_physics_spatialhash_.html">&quot;Physics/SpatialHash&quot;</a>
</li>
<li>
<a href="../modules/_physics_spatialhash_.es.html">es</a>
</li>
<li>
<a href="_physics_spatialhash_.es.spatialhash.html">SpatialHash</a>
</li>
</ul>
<h1>Class SpatialHash</h1>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-8 col-content">
<section class="tsd-panel tsd-hierarchy">
<h3>Hierarchy</h3>
<ul class="tsd-hierarchy">
<li>
<span class="target">SpatialHash</span>
</li>
</ul>
</section>
<section class="tsd-panel-group tsd-index-group">
<h2>Index</h2>
<section class="tsd-panel tsd-index-panel">
<div class="tsd-index-content">
<section class="tsd-index-section ">
<h3>Constructors</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-constructor tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#constructor" class="tsd-kind-icon">constructor</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Properties</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-property tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#_celldict" class="tsd-kind-icon">_cell<wbr>Dict</a></li>
<li class="tsd-kind-property tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#_cellsize" class="tsd-kind-icon">_cell<wbr>Size</a></li>
<li class="tsd-kind-property tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#_inversecellsize" class="tsd-kind-icon">_inverse<wbr>Cell<wbr>Size</a></li>
<li class="tsd-kind-property tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#_overlaptestcircle" class="tsd-kind-icon">_overlap<wbr>Test<wbr>Circle</a></li>
<li class="tsd-kind-property tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#_raycastparser" class="tsd-kind-icon">_raycast<wbr>Parser</a></li>
<li class="tsd-kind-property tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#_temphashset" class="tsd-kind-icon">_temp<wbr>Hash<wbr>Set</a></li>
<li class="tsd-kind-property tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#gridbounds" class="tsd-kind-icon">grid<wbr>Bounds</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Methods</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#aabbbroadphase" class="tsd-kind-icon">aabb<wbr>Broadphase</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="_physics_spatialhash_.es.spatialhash.html#cellatposition" class="tsd-kind-icon">cell<wbr>AtPosition</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="_physics_spatialhash_.es.spatialhash.html#cellcoords" class="tsd-kind-icon">cell<wbr>Coords</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#clear" class="tsd-kind-icon">clear</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#debugdraw" class="tsd-kind-icon">debug<wbr>Draw</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="_physics_spatialhash_.es.spatialhash.html#debugdrawcelldetails" class="tsd-kind-icon">debug<wbr>Draw<wbr>Cell<wbr>Details</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#linecast" class="tsd-kind-icon">linecast</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#overlapcircle" class="tsd-kind-icon">overlap<wbr>Circle</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#register" class="tsd-kind-icon">register</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#remove" class="tsd-kind-icon">remove</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="_physics_spatialhash_.es.spatialhash.html#removewithbruteforce" class="tsd-kind-icon">remove<wbr>With<wbr>Brute<wbr>Force</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Constructors</h2>
<section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class">
<a name="constructor" class="tsd-anchor"></a>
<h3>constructor</h3>
<ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">new <wbr>Spatial<wbr>Hash<span class="tsd-signature-symbol">(</span>cellSize<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="_physics_spatialhash_.es.spatialhash.html" class="tsd-signature-type">SpatialHash</a></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L25">src/Physics/SpatialHash.ts:25</a></li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> cellSize: <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 100</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="_physics_spatialhash_.es.spatialhash.html" class="tsd-signature-type">SpatialHash</a></h4>
</li>
</ul>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Properties</h2>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
<a name="_celldict" class="tsd-anchor"></a>
<h3>_cell<wbr>Dict</h3>
<div class="tsd-signature tsd-kind-icon">_cell<wbr>Dict<span class="tsd-signature-symbol">:</span> <a href="_physics_spatialhash_.es.numberdictionary.html" class="tsd-signature-type">NumberDictionary</a><span class="tsd-signature-symbol"> = new NumberDictionary()</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L21">src/Physics/SpatialHash.ts:21</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>保存所有数据的字典</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
<a name="_cellsize" class="tsd-anchor"></a>
<h3>_cell<wbr>Size</h3>
<div class="tsd-signature tsd-kind-icon">_cell<wbr>Size<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L9">src/Physics/SpatialHash.ts:9</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>散列中每个单元格的大小</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
<a name="_inversecellsize" class="tsd-anchor"></a>
<h3>_inverse<wbr>Cell<wbr>Size</h3>
<div class="tsd-signature tsd-kind-icon">_inverse<wbr>Cell<wbr>Size<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L13">src/Physics/SpatialHash.ts:13</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>1除以单元格大小。缓存结果因为它被大量使用。</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
<a name="_overlaptestcircle" class="tsd-anchor"></a>
<h3>_overlap<wbr>Test<wbr>Circle</h3>
<div class="tsd-signature tsd-kind-icon">_overlap<wbr>Test<wbr>Circle<span class="tsd-signature-symbol">:</span> <a href="_physics_shapes_circle_.es.circle.html" class="tsd-signature-type">Circle</a><span class="tsd-signature-symbol"> = new Circle(0)</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L17">src/Physics/SpatialHash.ts:17</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>缓存的循环用于重叠检查</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
<a name="_raycastparser" class="tsd-anchor"></a>
<h3>_raycast<wbr>Parser</h3>
<div class="tsd-signature tsd-kind-icon">_raycast<wbr>Parser<span class="tsd-signature-symbol">:</span> <a href="_physics_spatialhash_.es.raycastresultparser.html" class="tsd-signature-type">RaycastResultParser</a></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L5">src/Physics/SpatialHash.ts:5</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
<a name="_temphashset" class="tsd-anchor"></a>
<h3>_temp<wbr>Hash<wbr>Set</h3>
<div class="tsd-signature tsd-kind-icon">_temp<wbr>Hash<wbr>Set<span class="tsd-signature-symbol">:</span> <a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = []</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L25">src/Physics/SpatialHash.ts:25</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>用于返回冲突信息的共享HashSet</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
<a name="gridbounds" class="tsd-anchor"></a>
<h3>grid<wbr>Bounds</h3>
<div class="tsd-signature tsd-kind-icon">grid<wbr>Bounds<span class="tsd-signature-symbol">:</span> <a href="_math_rectangle_.es.rectangle.html" class="tsd-signature-type">Rectangle</a><span class="tsd-signature-symbol"> = new Rectangle()</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L3">src/Physics/SpatialHash.ts:3</a></li>
</ul>
</aside>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Methods</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="aabbbroadphase" class="tsd-anchor"></a>
<h3>aabb<wbr>Broadphase</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">aabb<wbr>Broadphase<span class="tsd-signature-symbol">(</span>bounds<span class="tsd-signature-symbol">: </span><a href="_math_rectangle_.es.rectangle.html" class="tsd-signature-type">Rectangle</a>, excludeCollider<span class="tsd-signature-symbol">: </span><a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a>, layerMask<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a><span class="tsd-signature-symbol">[]</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L116">src/Physics/SpatialHash.ts:116</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>返回边框与单元格相交的所有对象</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>bounds: <a href="_math_rectangle_.es.rectangle.html" class="tsd-signature-type">Rectangle</a></h5>
</li>
<li>
<h5>excludeCollider: <a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a></h5>
</li>
<li>
<h5>layerMask: <span class="tsd-signature-type">number</span></h5>
<div class="tsd-comment tsd-typography">
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a><span class="tsd-signature-symbol">[]</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-private">
<a name="cellatposition" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagPrivate">Private</span> cell<wbr>AtPosition</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-private">
<li class="tsd-signature tsd-kind-icon">cell<wbr>AtPosition<span class="tsd-signature-symbol">(</span>x<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, y<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, createCellIfEmpty<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a><span class="tsd-signature-symbol">[]</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L272">src/Physics/SpatialHash.ts:272</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>获取世界空间x,y值的单元格。
如果单元格为空且createCellIfEmpty为true则会创建一个新的单元格</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>x: <span class="tsd-signature-type">number</span></h5>
</li>
<li>
<h5>y: <span class="tsd-signature-type">number</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> createCellIfEmpty: <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> = false</span></h5>
<div class="tsd-comment tsd-typography">
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a><span class="tsd-signature-symbol">[]</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-private">
<a name="cellcoords" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagPrivate">Private</span> cell<wbr>Coords</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-private">
<li class="tsd-signature tsd-kind-icon">cell<wbr>Coords<span class="tsd-signature-symbol">(</span>x<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, y<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="_math_vector2_.es.vector2.html" class="tsd-signature-type">Vector2</a></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L261">src/Physics/SpatialHash.ts:261</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>获取单元格的x,y值作为世界空间的x,y值</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>x: <span class="tsd-signature-type">number</span></h5>
</li>
<li>
<h5>y: <span class="tsd-signature-type">number</span></h5>
<div class="tsd-comment tsd-typography">
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="_math_vector2_.es.vector2.html" class="tsd-signature-type">Vector2</a></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="clear" class="tsd-anchor"></a>
<h3>clear</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">clear<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L91">src/Physics/SpatialHash.ts:91</a></li>
</ul>
</aside>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="debugdraw" class="tsd-anchor"></a>
<h3>debug<wbr>Draw</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">debug<wbr>Draw<span class="tsd-signature-symbol">(</span>secondsToDisplay<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, textScale<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L100">src/Physics/SpatialHash.ts:100</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>debug绘制空间散列的内容</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>secondsToDisplay: <span class="tsd-signature-type">number</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> textScale: <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 1</span></h5>
<div class="tsd-comment tsd-typography">
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-private">
<a name="debugdrawcelldetails" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagPrivate">Private</span> debug<wbr>Draw<wbr>Cell<wbr>Details</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-private">
<li class="tsd-signature tsd-kind-icon">debug<wbr>Draw<wbr>Cell<wbr>Details<span class="tsd-signature-symbol">(</span>x<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, y<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, cellCount<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, secondsToDisplay<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span>, textScale<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L283">src/Physics/SpatialHash.ts:283</a></li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>x: <span class="tsd-signature-type">number</span></h5>
</li>
<li>
<h5>y: <span class="tsd-signature-type">number</span></h5>
</li>
<li>
<h5>cellCount: <span class="tsd-signature-type">number</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> secondsToDisplay: <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 0.5</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagDefault value">Default value</span> textScale: <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 1</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="linecast" class="tsd-anchor"></a>
<h3>linecast</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">linecast<span class="tsd-signature-symbol">(</span>start<span class="tsd-signature-symbol">: </span><a href="_math_vector2_.es.vector2.html" class="tsd-signature-type">Vector2</a>, end<span class="tsd-signature-symbol">: </span><a href="_math_vector2_.es.vector2.html" class="tsd-signature-type">Vector2</a>, hits<span class="tsd-signature-symbol">: </span><a href="_physics_raycasthit_.es.raycasthit.html" class="tsd-signature-type">RaycastHit</a><span class="tsd-signature-symbol">[]</span>, layerMask<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L154">src/Physics/SpatialHash.ts:154</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>通过空间散列强制执行一行并用该行命中的任何碰撞器填充hits数组。</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>start: <a href="_math_vector2_.es.vector2.html" class="tsd-signature-type">Vector2</a></h5>
</li>
<li>
<h5>end: <a href="_math_vector2_.es.vector2.html" class="tsd-signature-type">Vector2</a></h5>
</li>
<li>
<h5>hits: <a href="_physics_raycasthit_.es.raycasthit.html" class="tsd-signature-type">RaycastHit</a><span class="tsd-signature-symbol">[]</span></h5>
</li>
<li>
<h5>layerMask: <span class="tsd-signature-type">number</span></h5>
<div class="tsd-comment tsd-typography">
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="overlapcircle" class="tsd-anchor"></a>
<h3>overlap<wbr>Circle</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">overlap<wbr>Circle<span class="tsd-signature-symbol">(</span>circleCenter<span class="tsd-signature-symbol">: </span><a href="_math_vector2_.es.vector2.html" class="tsd-signature-type">Vector2</a>, radius<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, results<span class="tsd-signature-symbol">: </span><a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a><span class="tsd-signature-symbol">[]</span>, layerMask<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L221">src/Physics/SpatialHash.ts:221</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>获取位于指定圆内的所有碰撞器</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>circleCenter: <a href="_math_vector2_.es.vector2.html" class="tsd-signature-type">Vector2</a></h5>
</li>
<li>
<h5>radius: <span class="tsd-signature-type">number</span></h5>
</li>
<li>
<h5>results: <a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a><span class="tsd-signature-symbol">[]</span></h5>
</li>
<li>
<h5>layerMask: <span class="tsd-signature-type">any</span></h5>
<div class="tsd-comment tsd-typography">
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="register" class="tsd-anchor"></a>
<h3>register</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">register<span class="tsd-signature-symbol">(</span>collider<span class="tsd-signature-symbol">: </span><a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L37">src/Physics/SpatialHash.ts:37</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>将对象添加到SpatialHash</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>collider: <a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a></h5>
<div class="tsd-comment tsd-typography">
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="remove" class="tsd-anchor"></a>
<h3>remove</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">remove<span class="tsd-signature-symbol">(</span>collider<span class="tsd-signature-symbol">: </span><a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L66">src/Physics/SpatialHash.ts:66</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>从SpatialHash中删除对象</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>collider: <a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a></h5>
<div class="tsd-comment tsd-typography">
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
<a name="removewithbruteforce" class="tsd-anchor"></a>
<h3>remove<wbr>With<wbr>Brute<wbr>Force</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">remove<wbr>With<wbr>Brute<wbr>Force<span class="tsd-signature-symbol">(</span>obj<span class="tsd-signature-symbol">: </span><a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/esengine/egret-framework/blob/562bacb/source/src/Physics/SpatialHash.ts#L87">src/Physics/SpatialHash.ts:87</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>使用蛮力方法从SpatialHash中删除对象</p>
</div>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>obj: <a href="_ecs_components_physics_colliders_collider_.es.collider.html" class="tsd-signature-type">Collider</a></h5>
<div class="tsd-comment tsd-typography">
</div>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
</section>
</div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<nav class="tsd-navigation primary">
<ul>
<li class="globals ">
<a href="../globals.html"><em>Globals</em></a>
</li>
<li class="current tsd-kind-module">
<a href="../modules/_physics_spatialhash_.html">&quot;<wbr>Physics/<wbr>Spatial<wbr>Hash&quot;</a>
<ul>
<li class="current tsd-kind-namespace tsd-parent-kind-module">
<a href="../modules/_physics_spatialhash_.es.html">es</a>
</li>
</ul>
</li>
</ul>
</nav>
<nav class="tsd-navigation secondary menu-sticky">
<ul class="before-current">
<li class=" tsd-kind-class tsd-parent-kind-namespace">
<a href="_physics_spatialhash_.es.numberdictionary.html" class="tsd-kind-icon">Number<wbr>Dictionary</a>
</li>
<li class=" tsd-kind-class tsd-parent-kind-namespace">
<a href="_physics_spatialhash_.es.raycastresultparser.html" class="tsd-kind-icon">Raycast<wbr>Result<wbr>Parser</a>
</li>
</ul>
<ul class="current">
<li class="current tsd-kind-class tsd-parent-kind-namespace">
<a href="_physics_spatialhash_.es.spatialhash.html" class="tsd-kind-icon">Spatial<wbr>Hash</a>
<ul>
<li class=" tsd-kind-constructor tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#constructor" class="tsd-kind-icon">constructor</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#_celldict" class="tsd-kind-icon">_cell<wbr>Dict</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#_cellsize" class="tsd-kind-icon">_cell<wbr>Size</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#_inversecellsize" class="tsd-kind-icon">_inverse<wbr>Cell<wbr>Size</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#_overlaptestcircle" class="tsd-kind-icon">_overlap<wbr>Test<wbr>Circle</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#_raycastparser" class="tsd-kind-icon">_raycast<wbr>Parser</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#_temphashset" class="tsd-kind-icon">_temp<wbr>Hash<wbr>Set</a>
</li>
<li class=" tsd-kind-property tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#gridbounds" class="tsd-kind-icon">grid<wbr>Bounds</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#aabbbroadphase" class="tsd-kind-icon">aabb<wbr>Broadphase</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class tsd-is-private">
<a href="_physics_spatialhash_.es.spatialhash.html#cellatposition" class="tsd-kind-icon">cell<wbr>AtPosition</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class tsd-is-private">
<a href="_physics_spatialhash_.es.spatialhash.html#cellcoords" class="tsd-kind-icon">cell<wbr>Coords</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#clear" class="tsd-kind-icon">clear</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#debugdraw" class="tsd-kind-icon">debug<wbr>Draw</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class tsd-is-private">
<a href="_physics_spatialhash_.es.spatialhash.html#debugdrawcelldetails" class="tsd-kind-icon">debug<wbr>Draw<wbr>Cell<wbr>Details</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#linecast" class="tsd-kind-icon">linecast</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#overlapcircle" class="tsd-kind-icon">overlap<wbr>Circle</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#register" class="tsd-kind-icon">register</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#remove" class="tsd-kind-icon">remove</a>
</li>
<li class=" tsd-kind-method tsd-parent-kind-class">
<a href="_physics_spatialhash_.es.spatialhash.html#removewithbruteforce" class="tsd-kind-icon">remove<wbr>With<wbr>Brute<wbr>Force</a>
</li>
</ul>
</li>
</ul>
<ul class="after-current">
</ul>
</nav>
</div>
</div>
</div>
<footer class="with-border-bottom">
<div class="container">
<h2>Legend</h2>
<div class="tsd-legend-group">
<ul class="tsd-legend">
<li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li>
<li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
<li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
<li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-namespace"><span class="tsd-kind-icon">Namespace</span></li>
<li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-interface tsd-has-type-parameter"><span class="tsd-kind-icon">Interface with type parameter</span></li>
</ul>
<ul class="tsd-legend">
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li>
</ul>
</div>
</div>
</footer>
<div class="container tsd-generator">
<p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p>
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
<script>if (location.protocol == 'file:') document.write('<script src="../assets/js/search.js"><' + '/script>');</script>
</body>
</html>