mbcp/api/presets/model/index.html

66 lines
27 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="zh-Hans" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>mbcp.presets.model.\n\ninit\n\n | MBCP docs</title>
<meta name="description" content="一个用于Minecraft粒子计算和生成的库">
<meta name="generator" content="VitePress v1.3.4">
<link rel="preload stylesheet" href="/assets/style.Bb0QBJmh.css" as="style">
<script type="module" src="/assets/app.l1Ut0uce.js"></script>
<link rel="preload" href="/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
<link rel="modulepreload" href="/assets/chunks/theme.BPuUWxkA.js">
<link rel="modulepreload" href="/assets/chunks/framework.BV61Qrc0.js">
<link rel="modulepreload" href="/assets/api_presets_model_index.md.D1iZ1qEr.lean.js">
<script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
<script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
</head>
<body>
<div id="app"><div class="Layout" data-v-8e016544><!--[--><!--]--><!--[--><span tabindex="-1" data-v-efdf7a7d></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-efdf7a7d> Skip to content </a><!--]--><!----><header class="VPNav" data-v-8e016544 data-v-0c3b3583><div class="VPNavBar top" data-v-0c3b3583 data-v-af8d762d><div class="wrapper" data-v-af8d762d><div class="container" data-v-af8d762d><div class="title" data-v-af8d762d><div class="VPNavBarTitle" data-v-af8d762d data-v-73c882b0><a class="title" href="/" data-v-73c882b0><!--[--><!--]--><!----><span data-v-73c882b0>MBCP docs</span><!--[--><!--]--></a></div></div><div class="content" data-v-af8d762d><div class="content-body" data-v-af8d762d><!--[--><!--]--><div class="VPNavBarSearch search" data-v-af8d762d><!----></div><!----><div class="VPFlyout VPNavBarTranslations translations" data-v-af8d762d data-v-ba521018 data-v-6d56b0ed><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="Change language" data-v-6d56b0ed><span class="text" data-v-6d56b0ed><span class="vpi-languages option-icon" data-v-6d56b0ed></span><!----><span class="vpi-chevron-down text-icon" data-v-6d56b0ed></span></span></button><div class="menu" data-v-6d56b0ed><div class="VPMenu" data-v-6d56b0ed data-v-36a6a4be><!----><!--[--><!--[--><div class="items" data-v-ba521018><p class="title" data-v-ba521018>简体中文</p><!--[--><div class="VPMenuLink" data-v-ba521018 data-v-a9b5eada><a class="VPLink link" href="/en/api/presets/model/" data-v-a9b5eada><!--[-->English<!--]--></a></div><!--]--></div><!--]--><!--]--></div></div></div><div class="VPNavBarAppearance appearance" data-v-af8d762d data-v-fd625bab><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="Switch to dark theme" aria-checked="false" data-v-fd625bab data-v-38c704f2 data-v-793caf05><span class="check" data-v-793caf05><span class="icon" data-v-793caf05><!--[--><span class="vpi-sun sun" data-v-38c704f2></span><span class="vpi-moon moon" data-v-38c704f2></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-af8d762d data-v-9b3d2141 data-v-0ada25a4><!--[--><a class="VPSocialLink no-icon" href="https://github.com/snowykami/mbcp" aria-label="github" target="_blank" rel="noopener" data-v-0ada25a4 data-v-36d54f99><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-af8d762d data-v-8ac0e455 data-v-6d56b0ed><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-6d56b0ed><span class="vpi-more-horizontal icon" data-v-6d56b0ed></span></button><div class="menu" data-v-6d56b0ed><div class="VPMenu" data-v-6d56b0ed data-v-36a6a4be><!----><!--[--><!--[--><div class="group translations" data-v-8ac0e455><p class="trans-title" data-v-8ac0e455>简体中文</p><!--[--><div class="VPMenuLink" data-v-8ac0e455 data-v-a9b5eada><a class="VPLink link" href="/en/api/presets/model/" data-v-a9b5eada><!--[-->English<!--]--></a></div><!--]--></div><div class="group" data-v-8ac0e455><div class="item appearance" data-v-8ac0e455><p class="label" data-v-8ac0e455>Appearance</p><div class="appearance-action" data-v-8ac0e455><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="Switch to dark theme" aria-checked="false" data-v-8ac0e455 data-v-38c704f2 data-v-793caf05><span class="check" data-v-793caf05><span class="icon" data-v-793caf05><!--[--><span class="vpi-sun sun" data-v-38c704f2></span><span class="vpi-moon moon" data-v-38c704f2></span><!--]--></span></span></button></div></div></div><div class="group" data-v-8ac0e455><div class="item social-links" data-v-8ac0e455><div class="VPSocialLinks social-links-list" data-v-8ac0e455 data-v-0ada25a4><!--[--><a class="VPSocialLink no-icon" href="https://github.com/snowykami/mbcp" aria-label="github" target="_blank" rel="noopener" data-v-0ada25a4 data-v-36d54f99><span class="vpi-social-github" /></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-af8d762d data-v-9b302893><span class="container" data-v-9b302893><span class="top" data-v-9b302893></span><span class="middle" data-v-9b302893></span><span class="bottom" data-v-9b302893></span></span></button></div></div></div></div><div class="divider" data-v-af8d762d><div class="divider-line" data-v-af8d762d></div></div></div><!----></header><div class="VPLocalNav empty fixed" data-v-8e016544 data-v-513d39e6><div class="container" data-v-513d39e6><!----><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-513d39e6 data-v-c4b0adf9><button data-v-c4b0adf9>Return to top</button><!----></div></div></div><!----><div class="VPContent" id="VPContent" data-v-8e016544 data-v-4fa77a91><div class="VPDoc has-aside" data-v-4fa77a91 data-v-aa782c77><!--[--><!--]--><div class="container" data-v-aa782c77><div class="aside" data-v-aa782c77><div class="aside-curtain" data-v-aa782c77></div><div class="aside-container" data-v-aa782c77><div class="aside-content" data-v-aa782c77><div class="VPDocAside" data-v-aa782c77 data-v-9030d96a><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-9030d96a data-v-e9eccece><div class="content" data-v-e9eccece><div class="outline-marker" data-v-e9eccece></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-e9eccece>On this page</div><ul class="VPDocOutlineItem root" data-v-e9eccece data-v-f55eb20b><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-9030d96a></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-aa782c77><div class="content-container" data-v-aa782c77><!--[--><!--]--><main class="main" data-v-aa782c77><div style="position:relative;" class="vp-doc _api_presets_model_" data-v-aa782c77><div><h3 id="def-sphere-radius-float-density-float-none" tabindex="-1"><em><strong>def</strong></em> <code>sphere(radius: float, density: float) -&gt; None</code> <a class="header-anchor" href="#def-sphere-radius-float-density-float-none" aria-label="Permalink to &quot;***def*** `sphere(radius: float, density: float) -&gt; None`&quot;"></a></h3><p>生成球体上的点集。</p><p>Args:</p><pre><code>radius:
density:
</code></pre><p>Returns:</p><pre><code>List[Point3]: 球体上的点集。
</code></pre><details><summary>源代码</summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">@</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">staticmethod</span></span>
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> sphere</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(radius: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">float</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, density: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">float</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &quot;&quot;&quot;</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 生成球体上的点集。</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> Args:</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> radius:</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> density:</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> Returns:</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> List[Point3]: 球体上的点集。</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &quot;&quot;&quot;</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> area </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> *</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.pi </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> radius </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">**</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> num </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> int</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(area </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> density)</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> phi_list </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.arccos([clamp(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> +</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> *</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _ </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> num, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _ </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> range</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(num)])</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> theta_list </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.sqrt(num </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.pi) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> phi_list</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x_array </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> radius </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.sin(phi_list) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.cos(theta_list)</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> y_array </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> radius </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.sin(phi_list) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.sin(theta_list)</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> z_array </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> radius </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.cos(phi_list)</span></span>
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> [Point3(x_array[i], y_array[i], z_array[i]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> i </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> range</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(num)]</span></span></code></pre></div></details><h3 id="class-geometricmodels" tabindex="-1"><em><strong>class</strong></em> <code>GeometricModels</code> <a class="header-anchor" href="#class-geometricmodels" aria-label="Permalink to &quot;***class*** `GeometricModels`&quot;"></a></h3><h3 id="emsp-staticmethod" tabindex="-1"> <em><strong>@staticmethod</strong></em> <a class="header-anchor" href="#emsp-staticmethod" aria-label="Permalink to &quot;&amp;emsp; ***@staticmethod***&quot;"></a></h3><h3 id="emsp-def-sphere-radius-float-density-float-none" tabindex="-1"> <em><strong>def</strong></em> <code>sphere(radius: float, density: float) -&gt; None</code> <a class="header-anchor" href="#emsp-def-sphere-radius-float-density-float-none" aria-label="Permalink to &quot;&amp;emsp; ***def*** `sphere(radius: float, density: float) -&gt; None`&quot;"></a></h3><p> 生成球体上的点集。</p><p>Args:</p><pre><code>radius:
density:
</code></pre><p>Returns:</p><pre><code>List[Point3]: 球体上的点集。
</code></pre><details><summary>源代码</summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">@</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">staticmethod</span></span>
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> sphere</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(radius: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">float</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, density: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">float</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &quot;&quot;&quot;</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 生成球体上的点集。</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> Args:</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> radius:</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> density:</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> Returns:</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> List[Point3]: 球体上的点集。</span></span>
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &quot;&quot;&quot;</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> area </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 4</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> *</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.pi </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> radius </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">**</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> num </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> int</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(area </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> density)</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> phi_list </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.arccos([clamp(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> +</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2.0</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> *</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _ </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 1.0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> num, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _ </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> range</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(num)])</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> theta_list </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.sqrt(num </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.pi) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> phi_list</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x_array </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> radius </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.sin(phi_list) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.cos(theta_list)</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> y_array </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> radius </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.sin(phi_list) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.sin(theta_list)</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> z_array </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> radius </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.cos(phi_list)</span></span>
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> [Point3(x_array[i], y_array[i], z_array[i]) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> i </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> range</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(num)]</span></span></code></pre></div></details><h3 id="var-area-4-np-pi-radius-2" tabindex="-1"><em><strong>var</strong></em> <code>area = 4 * np.pi * radius ** 2</code> <a class="header-anchor" href="#var-area-4-np-pi-radius-2" aria-label="Permalink to &quot;***var*** `area = 4 * np.pi * radius ** 2`&quot;"></a></h3><h3 id="var-num-int-area-density" tabindex="-1"><em><strong>var</strong></em> <code>num = int(area * density)</code> <a class="header-anchor" href="#var-num-int-area-density" aria-label="Permalink to &quot;***var*** `num = int(area * density)`&quot;"></a></h3><h3 id="var-phi-list-np-arccos-clamp-1-2-0-1-0-num-1-1-for-in-range-num" tabindex="-1"><em><strong>var</strong></em> <code>phi_list = np.arccos([clamp(-1 + (2.0 * _ - 1.0) / num, -1, 1) for _ in range(num)])</code> <a class="header-anchor" href="#var-phi-list-np-arccos-clamp-1-2-0-1-0-num-1-1-for-in-range-num" aria-label="Permalink to &quot;***var*** `phi_list = np.arccos([clamp(-1 + (2.0 * _ - 1.0) / num, -1, 1) for _ in range(num)])`&quot;"></a></h3><h3 id="var-theta-list-np-sqrt-num-np-pi-phi-list" tabindex="-1"><em><strong>var</strong></em> <code>theta_list = np.sqrt(num * np.pi) * phi_list</code> <a class="header-anchor" href="#var-theta-list-np-sqrt-num-np-pi-phi-list" aria-label="Permalink to &quot;***var*** `theta_list = np.sqrt(num * np.pi) * phi_list`&quot;"></a></h3><h3 id="var-x-array-radius-np-sin-phi-list-np-cos-theta-list" tabindex="-1"><em><strong>var</strong></em> <code>x_array = radius * np.sin(phi_list) * np.cos(theta_list)</code> <a class="header-anchor" href="#var-x-array-radius-np-sin-phi-list-np-cos-theta-list" aria-label="Permalink to &quot;***var*** `x_array = radius * np.sin(phi_list) * np.cos(theta_list)`&quot;"></a></h3><h3 id="var-y-array-radius-np-sin-phi-list-np-sin-theta-list" tabindex="-1"><em><strong>var</strong></em> <code>y_array = radius * np.sin(phi_list) * np.sin(theta_list)</code> <a class="header-anchor" href="#var-y-array-radius-np-sin-phi-list-np-sin-theta-list" aria-label="Permalink to &quot;***var*** `y_array = radius * np.sin(phi_list) * np.sin(theta_list)`&quot;"></a></h3><h3 id="var-z-array-radius-np-cos-phi-list" tabindex="-1"><em><strong>var</strong></em> <code>z_array = radius * np.cos(phi_list)</code> <a class="header-anchor" href="#var-z-array-radius-np-cos-phi-list" aria-label="Permalink to &quot;***var*** `z_array = radius * np.cos(phi_list)`&quot;"></a></h3></div></div></main><footer class="VPDocFooter" data-v-aa782c77 data-v-f33b051d><!--[--><!--]--><!----><!----></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
<script>window.__VP_HASH_MAP__=JSON.parse("{\"api-ex.md\":\"DOsKaL8H\",\"api_index.md\":\"CsKClHFh\",\"api_mp_math_angle.md\":\"9eUTSIe4\",\"api_mp_math_const.md\":\"Bhz27OPg\",\"api_mp_math_equation.md\":\"xiyFVY1c\",\"api_mp_math_index.md\":\"DTIfeUA1\",\"api_mp_math_line.md\":\"BybnyRUL\",\"api_mp_math_mp_math_typing.md\":\"DXaadYgy\",\"api_mp_math_plane.md\":\"Cdj0PlKB\",\"api_mp_math_point.md\":\"D3f-vzVt\",\"api_mp_math_segment.md\":\"DIViBThe\",\"api_mp_math_utils.md\":\"CDwq4icO\",\"api_mp_math_vector.md\":\"BgK1TmFY\",\"api_particle_index.md\":\"BqH-w2FR\",\"api_presets_index.md\":\"CvgR5vOS\",\"api_presets_model_index.md\":\"D1iZ1qEr\",\"index.md\":\"CJvRmMfL\",\"md-ex.md\":\"BX0WqOqv\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"MBCP docs\",\"description\":\"MBCP library docs\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/snowykami/mbcp\"}]},\"locales\":{\"root\":{\"label\":\"简体中文\",\"lang\":\"zh-Hans\",\"description\":\"一个用于Minecraft粒子计算和生成的库\",\"themeConfig\":{}},\"en\":{\"label\":\"English\",\"lang\":\"en-US\",\"description\":\"A library made for Minecraft particle generation\",\"themeConfig\":{}}},\"scrollOffset\":134,\"cleanUrls\":false}");</script>
</body>
</html>