mirror of
https://github.com/snowykami/mbcp.git
synced 2024-11-27 08:45:03 +08:00
211 lines
113 KiB
HTML
211 lines
113 KiB
HTML
<!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.mp_math.vector | MBCP 文档</title>
|
||
<meta name="description" content="MBCP 粒子计算和生成库文档">
|
||
<meta name="generator" content="VitePress v1.3.4">
|
||
<link rel="preload stylesheet" href="/assets/style.C6qVLbET.css" as="style">
|
||
|
||
<script type="module" src="/assets/app.DSCSdM_3.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.CIS5wKR_.js">
|
||
<link rel="modulepreload" href="/assets/chunks/framework.C94oF1kp.js">
|
||
<link rel="modulepreload" href="/assets/api_mp_math_vector.md.BeAN7TkI.lean.js">
|
||
<link rel="icon" type="image/svg+xml" href="/mbcp-logo.svg">
|
||
<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-22f859ac><!--[--><!--]--><!--[--><span tabindex="-1" data-v-3e86afbf></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-3e86afbf> Skip to content </a><!--]--><!----><header class="VPNav" data-v-22f859ac data-v-2a4e514e><div class="VPNavBar has-sidebar top" data-v-2a4e514e data-v-1303e283><div class="wrapper" data-v-1303e283><div class="container" data-v-1303e283><div class="title" data-v-1303e283><div class="VPNavBarTitle has-sidebar" data-v-1303e283 data-v-10b95b50><a class="title" href="/" data-v-10b95b50><!--[--><!--]--><!--[--><img class="VPImage logo" src="/mbcp-logo.svg" alt data-v-f925500d><!--]--><span data-v-10b95b50>MBCP 文档</span><!--[--><!--]--></a></div></div><div class="content" data-v-1303e283><div class="content-body" data-v-1303e283><!--[--><!--]--><div class="VPNavBarSearch search" data-v-1303e283><!----></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-1303e283 data-v-0fb289c1><span id="main-nav-aria-label" class="visually-hidden" data-v-0fb289c1> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/guide/" tabindex="0" data-v-0fb289c1 data-v-ad4a8b64><!--[--><span data-v-ad4a8b64>快速开始</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/refer.html" tabindex="0" data-v-0fb289c1 data-v-ad4a8b64><!--[--><span data-v-ad4a8b64>参考</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/api/" tabindex="0" data-v-0fb289c1 data-v-ad4a8b64><!--[--><span data-v-ad4a8b64>API引用</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/demo/" tabindex="0" data-v-0fb289c1 data-v-ad4a8b64><!--[--><span data-v-ad4a8b64>实例</span><!--]--></a><!--]--><!--]--></nav><div class="VPFlyout VPNavBarTranslations translations" data-v-1303e283 data-v-cd7b67e8 data-v-ec8c49bc><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="Change language" data-v-ec8c49bc><span class="text" data-v-ec8c49bc><span class="vpi-languages option-icon" data-v-ec8c49bc></span><!----><span class="vpi-chevron-down text-icon" data-v-ec8c49bc></span></span></button><div class="menu" data-v-ec8c49bc><div class="VPMenu" data-v-ec8c49bc data-v-9990563e><!----><!--[--><!--[--><div class="items" data-v-cd7b67e8><p class="title" data-v-cd7b67e8>简体中文</p><!--[--><div class="VPMenuLink" data-v-cd7b67e8 data-v-79776a7a><a class="VPLink link" href="/en/api/mp_math/vector.html" data-v-79776a7a><!--[-->English<!--]--></a></div><div class="VPMenuLink" data-v-cd7b67e8 data-v-79776a7a><a class="VPLink link" href="/ja/api/mp_math/vector.html" data-v-79776a7a><!--[-->日本語<!--]--></a></div><div class="VPMenuLink" data-v-cd7b67e8 data-v-79776a7a><a class="VPLink link" href="/zht/api/mp_math/vector.html" data-v-79776a7a><!--[-->繁體中文<!--]--></a></div><!--]--></div><!--]--><!--]--></div></div></div><div class="VPNavBarAppearance appearance" data-v-1303e283 data-v-2a6692f8><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="Switch to dark theme" aria-checked="false" data-v-2a6692f8 data-v-3a50aa5c data-v-d82e607b><span class="check" data-v-d82e607b><span class="icon" data-v-d82e607b><!--[--><span class="vpi-sun sun" data-v-3a50aa5c></span><span class="vpi-moon moon" data-v-3a50aa5c></span><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-1303e283 data-v-f3b91b3a data-v-fa18fe49><!--[--><a class="VPSocialLink no-icon" href="https://github.com/snowykami/mbcp" aria-label="github" target="_blank" rel="noopener" data-v-fa18fe49 data-v-b0526bd7><span class="vpi-social-github" /></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-1303e283 data-v-2fc967b6 data-v-ec8c49bc><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-ec8c49bc><span class="vpi-more-horizontal icon" data-v-ec8c49bc></span></button><div class="menu" data-v-ec8c49bc><div class="VPMenu" data-v-ec8c49bc data-v-9990563e><!----><!--[--><!--[--><div class="group translations" data-v-2fc967b6><p class="trans-title" data-v-2fc967b6>简体中文</p><!--[--><div class="VPMenuLink" data-v-2fc967b6 data-v-79776a7a><a class="VPLink link" href="/en/api/mp_math/vector.html" data-v-79776a7a><!--[-->English<!--]--></a></div><div class="VPMenuLink" data-v-2fc967b6 data-v-79776a7a><a class="VPLink link" href="/ja/api/mp_math/vector.html" data-v-79776a7a><!--[-->日本語<!--]--></a></div><div class="VPMenuLink" data-v-2fc967b6 data-v-79776a7a><a class="VPLink link" href="/zht/api/mp_math/vector.html" data-v-79776a7a><!--[-->繁體中文<!--]--></a></div><!--]--></div><div class="group" data-v-2fc967b6><div class="item appearance" data-v-2fc967b6><p class="label" data-v-2fc967b6>Appearance</p><div class="appearance-action" data-v-2fc967b6><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title="Switch to dark theme" aria-checked="false" data-v-2fc967b6 data-v-3a50aa5c data-v-d82e607b><span class="check" data-v-d82e607b><span class="icon" data-v-d82e607b><!--[--><span class="vpi-sun sun" data-v-3a50aa5c></span><span class="vpi-moon moon" data-v-3a50aa5c></span><!--]--></span></span></button></div></div></div><div class="group" data-v-2fc967b6><div class="item social-links" data-v-2fc967b6><div class="VPSocialLinks social-links-list" data-v-2fc967b6 data-v-fa18fe49><!--[--><a class="VPSocialLink no-icon" href="https://github.com/snowykami/mbcp" aria-label="github" target="_blank" rel="noopener" data-v-fa18fe49 data-v-b0526bd7><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-1303e283 data-v-be64de2d><span class="container" data-v-be64de2d><span class="top" data-v-be64de2d></span><span class="middle" data-v-be64de2d></span><span class="bottom" data-v-be64de2d></span></span></button></div></div></div></div><div class="divider" data-v-1303e283><div class="divider-line" data-v-1303e283></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-22f859ac data-v-8af612ea><div class="container" data-v-8af612ea><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-8af612ea><span class="vpi-align-left menu-icon" data-v-8af612ea></span><span class="menu-text" data-v-8af612ea>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-8af612ea data-v-b418bf42><button data-v-b418bf42>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-22f859ac data-v-edd7de80><div class="curtain" data-v-edd7de80></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-edd7de80><span class="visually-hidden" id="sidebar-aria-label" data-v-edd7de80> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-c3eaeb1a><section class="VPSidebarItem level-0 has-active" data-v-c3eaeb1a data-v-9035698b><div class="item" role="button" tabindex="0" data-v-9035698b><div class="indicator" data-v-9035698b></div><h2 class="text" data-v-9035698b>MBCP</h2><!----></div><div class="items" data-v-9035698b><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/api.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-1 collapsible is-link has-active" data-v-9035698b data-v-9035698b><div class="item" tabindex="0" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/mp_math.html" data-v-9035698b><!--[--><h3 class="text" data-v-9035698b>mbcp.mp_math</h3><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-9035698b><span class="vpi-chevron-right caret-icon" data-v-9035698b></span></div></div><div class="items" data-v-9035698b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/angle.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math.angle</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/const.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math.const</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/equation.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math.equation</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/function.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math.function</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/line.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math.line</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/mp_math_typing.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math.mp_math_typing</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/plane.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math.plane</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/point.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math.point</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/segment.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math.segment</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/utils.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math.utils</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/mp_math/vector.html" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.mp_math.vector</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1 collapsible collapsed is-link" data-v-9035698b data-v-9035698b><div class="item" tabindex="0" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/particle/particle.html" data-v-9035698b><!--[--><h3 class="text" data-v-9035698b>mbcp.particle</h3><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-9035698b><span class="vpi-chevron-right caret-icon" data-v-9035698b></span></div></div><div class="items" data-v-9035698b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/particle/" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.particle</p><!--]--></a><!----></div><!----></div><!--]--></div></section><section class="VPSidebarItem level-1 collapsible collapsed is-link" data-v-9035698b data-v-9035698b><div class="item" tabindex="0" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/presets/presets.html" data-v-9035698b><!--[--><h3 class="text" data-v-9035698b>mbcp.presets</h3><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-9035698b><span class="vpi-chevron-right caret-icon" data-v-9035698b></span></div></div><div class="items" data-v-9035698b><!--[--><div class="VPSidebarItem level-2 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/presets/" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.presets</p><!--]--></a><!----></div><!----></div><section class="VPSidebarItem level-2 collapsible collapsed is-link" data-v-9035698b data-v-9035698b><div class="item" tabindex="0" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/presets/model/model.html" data-v-9035698b><!--[--><h4 class="text" data-v-9035698b>mbcp.presets.model</h4><!--]--></a><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-9035698b><span class="vpi-chevron-right caret-icon" data-v-9035698b></span></div></div><div class="items" data-v-9035698b><!--[--><div class="VPSidebarItem level-3 is-link" data-v-9035698b data-v-9035698b><div class="item" data-v-9035698b><div class="indicator" data-v-9035698b></div><a class="VPLink link link" href="/api/presets/model/" data-v-9035698b><!--[--><p class="text" data-v-9035698b>mbcp.presets.model</p><!--]--></a><!----></div><!----></div><!--]--></div></section><!--]--></div></section><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-22f859ac data-v-ec7dbf3e><div class="VPDoc has-sidebar has-aside" data-v-ec7dbf3e data-v-40342069><!--[--><!--]--><div class="container" data-v-40342069><div class="aside" data-v-40342069><div class="aside-curtain" data-v-40342069></div><div class="aside-container" data-v-40342069><div class="aside-content" data-v-40342069><div class="VPDocAside" data-v-40342069 data-v-0ff3c77f><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-0ff3c77f data-v-e7b12e6e><div class="content" data-v-e7b12e6e><div class="outline-marker" data-v-e7b12e6e></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-e7b12e6e>页面内容</div><ul class="VPDocOutlineItem root" data-v-e7b12e6e data-v-51c2c770><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-0ff3c77f></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-40342069><div class="content-container" data-v-40342069><!--[--><!--]--><main class="main" data-v-40342069><div style="position:relative;" class="vp-doc _api_mp_math_vector" data-v-40342069><div><h1 id="mbcp-mp-math-vector" tabindex="-1">mbcp.mp_math.vector <a class="header-anchor" href="#mbcp-mp-math-vector" aria-label="Permalink to "mbcp.mp_math.vector""></a></h1><p><strong>说明</strong>: 本模块定义了3维向量的类Vector3,以及一些常用的向量。</p><h3 id="class-vector3" tabindex="-1"><em><strong>class</strong></em> <code>Vector3</code> <a class="header-anchor" href="#class-vector3" aria-label="Permalink to "***class*** `Vector3`""></a></h3><h4 id="def-init-self-x-float-y-float-z-float" tabindex="-1"><em><strong>def</strong></em> <code>__init__(self, x: float, y: float, z: float)</code> <a class="header-anchor" href="#def-init-self-x-float-y-float-z-float" aria-label="Permalink to "***def*** `__init__(self, x: float, y: float, z: float)`""></a></h4><p><strong>说明</strong>: 3维向量</p><p><strong>参数</strong>:</p><blockquote><ul><li>x: x轴分量</li><li>y: y轴分量</li><li>z: z轴分量</li></ul></blockquote><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L18" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, x: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">float</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, y: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">float</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, z: </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;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 3维向量</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;"> x: x轴分量</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> y: y轴分量</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> z: z轴分量</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> x</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> y</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> z</span></span></code></pre></div></details><h4 id="def-approx-self-other-vector3-epsilon-float-approx-bool" tabindex="-1"><em><strong>def</strong></em> <code>approx(self, other: Vector3, epsilon: float = APPROX) -> bool</code> <a class="header-anchor" href="#def-approx-self-other-vector3-epsilon-float-approx-bool" aria-label="Permalink to "***def*** `approx(self, other: Vector3, epsilon: float = APPROX) -> bool`""></a></h4><p><strong>说明</strong>: 判断两个向量是否近似相等。</p><p><strong>参数</strong>:</p><blockquote><ul><li>other:</li><li>epsilon:</li></ul></blockquote><p><strong>返回</strong>: 是否近似相等</p><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L30" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> approx</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, epsilon: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">float</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">APPROX</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</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;"> 判断两个向量是否近似相等。</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;"> other:</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> epsilon:</span></span>
|
||
<span class="line"></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;"> 是否近似相等</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> all</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">abs</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> epsilon, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">abs</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.y) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> epsilon, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">abs</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.z) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> epsilon])</span></span></code></pre></div></details><h4 id="def-cal-angle-self-other-vector3-anyangle" tabindex="-1"><em><strong>def</strong></em> <code>cal_angle(self, other: Vector3) -> AnyAngle</code> <a class="header-anchor" href="#def-cal-angle-self-other-vector3-anyangle" aria-label="Permalink to "***def*** `cal_angle(self, other: Vector3) -> AnyAngle`""></a></h4><p><strong>说明</strong>: 计算两个向量之间的夹角。</p><p><strong>参数</strong>:</p><blockquote><ul><li>other: 另一个向量</li></ul></blockquote><p><strong>返回</strong>: 夹角</p><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L42" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> cal_angle</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'AnyAngle'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</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;"> 计算两个向量之间的夹角。</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;"> other: 另一个向量</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;"> 夹角</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> AnyAngle(math.acos(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> @</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other </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;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.length </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.length)), </span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">is_radian</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">True</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div></details><h4 id="def-cross-self-other-vector3-vector3" tabindex="-1"><em><strong>def</strong></em> <code>cross(self, other: Vector3) -> Vector3</code> <a class="header-anchor" href="#def-cross-self-other-vector3-vector3" aria-label="Permalink to "***def*** `cross(self, other: Vector3) -> Vector3`""></a></h4><p><strong>说明</strong>: 向量积 叉乘:v1 cross v2 -> v3</p><p>叉乘为0,则两向量平行。 其余结果的模为平行四边形的面积。</p><p><strong>参数</strong>:</p><blockquote><ul><li>other:</li></ul></blockquote><p><strong>返回</strong>: 行列式的结果</p><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L52" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> cross</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</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;"> 向量积 叉乘:v1 cross v2 -> v3</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 叉乘为0,则两向量平行。</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 其余结果的模为平行四边形的面积。</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 返回如下行列式的结果:</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ``i j k``</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ``x1 y1 z1``</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ``x2 y2 z2``</span></span>
|
||
<span class="line"></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;"> other:</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;"> 行列式的结果</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Vector3(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.y, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.z, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.x)</span></span></code></pre></div></details><h4 id="def-is-approx-parallel-self-other-vector3-epsilon-float-approx-bool" tabindex="-1"><em><strong>def</strong></em> <code>is_approx_parallel(self, other: Vector3, epsilon: float = APPROX) -> bool</code> <a class="header-anchor" href="#def-is-approx-parallel-self-other-vector3-epsilon-float-approx-bool" aria-label="Permalink to "***def*** `is_approx_parallel(self, other: Vector3, epsilon: float = APPROX) -> bool`""></a></h4><p><strong>说明</strong>: 判断两个向量是否近似平行。</p><p><strong>参数</strong>:</p><blockquote><ul><li>other: 另一个向量</li><li>epsilon: 允许的误差</li></ul></blockquote><p><strong>返回</strong>: 是否近似平行</p><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L76" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> is_approx_parallel</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, epsilon: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">float</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">APPROX</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</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;"> 判断两个向量是否近似平行。</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;"> other: 另一个向量</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> epsilon: 允许的误差</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;"> 是否近似平行</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.cross(other).length </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> epsilon</span></span></code></pre></div></details><h4 id="def-is-parallel-self-other-vector3-bool" tabindex="-1"><em><strong>def</strong></em> <code>is_parallel(self, other: Vector3) -> bool</code> <a class="header-anchor" href="#def-is-parallel-self-other-vector3-bool" aria-label="Permalink to "***def*** `is_parallel(self, other: Vector3) -> bool`""></a></h4><p><strong>说明</strong>: 判断两个向量是否平行。</p><p><strong>参数</strong>:</p><blockquote><ul><li>other: 另一个向量</li></ul></blockquote><p><strong>返回</strong>: 是否平行</p><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L87" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> is_parallel</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</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;"> 判断两个向量是否平行。</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;"> other: 另一个向量</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;"> 是否平行</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.cross(other).approx(zero_vector3)</span></span></code></pre></div></details><h4 id="def-normalize-self" tabindex="-1"><em><strong>def</strong></em> <code>normalize(self)</code> <a class="header-anchor" href="#def-normalize-self" aria-label="Permalink to "***def*** `normalize(self)`""></a></h4><p><strong>说明</strong>: 将向量归一化。</p><p>自体归一化,不返回值。</p><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L97" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> normalize</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self):</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;"> 将向量归一化。</span></span>
|
||
<span class="line"></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;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> length </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.length</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> length</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> length</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> length</span></span></code></pre></div></details><p><code>@property</code></p><h4 id="def-np-array-self-np-ndarray" tabindex="-1"><em><strong>def</strong></em> <code>np_array(self) -> np.ndarray</code> <a class="header-anchor" href="#def-np-array-self-np-ndarray" aria-label="Permalink to "***def*** `np_array(self) -> np.ndarray`""></a></h4><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L109" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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;">property</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> np_array</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'np.ndarray'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</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;"> 返回numpy数组</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;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> np.array([</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z])</span></span></code></pre></div></details><p><code>@property</code></p><h4 id="def-length-self-float" tabindex="-1"><em><strong>def</strong></em> <code>length(self) -> float</code> <a class="header-anchor" href="#def-length-self-float" aria-label="Permalink to "***def*** `length(self) -> float`""></a></h4><p><strong>说明</strong>: 向量的模。</p><p><strong>返回</strong>: 模</p><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L118" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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;">property</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> length</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self) -> </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;"> """</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;"> Returns:</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;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> math.sqrt(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">**</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> +</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">**</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> +</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">**</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div></details><p><code>@property</code></p><h4 id="def-unit-self-vector3" tabindex="-1"><em><strong>def</strong></em> <code>unit(self) -> Vector3</code> <a class="header-anchor" href="#def-unit-self-vector3" aria-label="Permalink to "***def*** `unit(self) -> Vector3`""></a></h4><p><strong>说明</strong>: 获取该向量的单位向量。</p><p><strong>返回</strong>: 单位向量</p><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L127" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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;">property</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> unit</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</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;"> 获取该向量的单位向量。</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;"> 单位向量</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> /</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.length</span></span></code></pre></div></details><h4 id="def-abs-self" tabindex="-1"><em><strong>def</strong></em> <code>__abs__(self)</code> <a class="header-anchor" href="#def-abs-self" aria-label="Permalink to "***def*** `__abs__(self)`""></a></h4><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L135" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __abs__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.length</span></span></code></pre></div></details><p><code>@overload</code></p><h4 id="def-self-other-vector3-vector3" tabindex="-1"><em><strong>def</strong></em> <code>self + other: Vector3 => Vector3</code> <a class="header-anchor" href="#def-self-other-vector3-vector3" aria-label="Permalink to "***def*** `self + other: Vector3 => Vector3`""></a></h4><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L139" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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;">@overload</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __add__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ...</span></span></code></pre></div></details><p><code>@overload</code></p><h4 id="def-self-other-point3-point3" tabindex="-1"><em><strong>def</strong></em> <code>self + other: Point3 => Point3</code> <a class="header-anchor" href="#def-self-other-point3-point3" aria-label="Permalink to "***def*** `self + other: Point3 => Point3`""></a></h4><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L143" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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;">@overload</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __add__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Point3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Point3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ...</span></span></code></pre></div></details><h4 id="def-self-other" tabindex="-1"><em><strong>def</strong></em> <code>self + other</code> <a class="header-anchor" href="#def-self-other" aria-label="Permalink to "***def*** `self + other`""></a></h4><p><strong>说明</strong>: V + P -> P</p><p>V + V -> V</p><p><strong>参数</strong>:</p><blockquote><ul><li>other:</li></ul></blockquote><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L146" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __add__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other):</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;"> V + P -> P</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> V + V -> V</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;"> other:</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> Returns:</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other, Vector3):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Vector3(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">+</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.x, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">+</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.y, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">+</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.z)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> elif</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other, Point3):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Point3(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">+</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.x, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">+</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.y, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">+</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.z)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> else</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> raise</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> TypeError</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"unsupported operand type(s) for +: 'Vector3' and '</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{type</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other)</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div></details><h4 id="def-eq-self-other" tabindex="-1"><em><strong>def</strong></em> <code>__eq__(self, other)</code> <a class="header-anchor" href="#def-eq-self-other" aria-label="Permalink to "***def*** `__eq__(self, other)`""></a></h4><p><strong>说明</strong>: 判断两个向量是否相等。</p><p><strong>参数</strong>:</p><blockquote><ul><li>other:</li></ul></blockquote><p><strong>返回</strong>: 是否相等</p><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L162" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __eq__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other):</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;"> 判断两个向量是否相等。</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;"> other:</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;"> 是否相等</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> approx(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x, other.x) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">and</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> approx(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y, other.y) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">and</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> approx(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z, other.z)</span></span></code></pre></div></details><h4 id="def-self-other-point3-point3-1" tabindex="-1"><em><strong>def</strong></em> <code>self + other: Point3 => Point3</code> <a class="header-anchor" href="#def-self-other-point3-point3-1" aria-label="Permalink to "***def*** `self + other: Point3 => Point3`""></a></h4><p><strong>说明</strong>: P + V -> P</p><p>别去点那边实现了。 :param other: :return:</p><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L172" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __radd__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Point3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Point3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</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;"> P + V -> P</span></span>
|
||
<span class="line"></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;"> :param other:</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> :return:</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Point3(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">+</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.x, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">+</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.y, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">+</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.z)</span></span></code></pre></div></details><p><code>@overload</code></p><h4 id="def-self-other-vector3-vector3-1" tabindex="-1"><em><strong>def</strong></em> <code>self - other: Vector3 => Vector3</code> <a class="header-anchor" href="#def-self-other-vector3-vector3-1" aria-label="Permalink to "***def*** `self - other: Vector3 => Vector3`""></a></h4><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L182" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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;">@overload</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __sub__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ...</span></span></code></pre></div></details><p><code>@overload</code></p><h4 id="def-self-other-point3-point3-2" tabindex="-1"><em><strong>def</strong></em> <code>self - other: Point3 => Point3</code> <a class="header-anchor" href="#def-self-other-point3-point3-2" aria-label="Permalink to "***def*** `self - other: Point3 => Point3`""></a></h4><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L186" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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;">@overload</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __sub__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Point3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Point3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ...</span></span></code></pre></div></details><h4 id="def-self-other-1" tabindex="-1"><em><strong>def</strong></em> <code>self - other</code> <a class="header-anchor" href="#def-self-other-1" aria-label="Permalink to "***def*** `self - other`""></a></h4><p><strong>说明</strong>: V - P -> P</p><p>V - V -> V</p><p><strong>参数</strong>:</p><blockquote><ul><li>other:</li></ul></blockquote><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L189" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __sub__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other):</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;"> V - P -> P</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> V - V -> V</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;"> other:</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;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other, Vector3):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Vector3(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.x, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.y, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.z)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> elif</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other, Point3):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Point3(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.x, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.y, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.z)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> else</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> raise</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> TypeError</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'unsupported operand type(s) for -: "Vector3" and "</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{type</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other)</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div></details><h4 id="def-self-other-point3" tabindex="-1"><em><strong>def</strong></em> <code>self - other: Point3</code> <a class="header-anchor" href="#def-self-other-point3" aria-label="Permalink to "***def*** `self - other: Point3`""></a></h4><p><strong>说明</strong>: P - V -> P</p><p><strong>参数</strong>:</p><blockquote><ul><li>other:</li></ul></blockquote><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L204" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __rsub__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Point3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</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;"> P - V -> P</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;"> other:</span></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> Returns:</span></span>
|
||
<span class="line"></span>
|
||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other, Point3):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Point3(other.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x, other.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y, other.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> else</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> raise</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> TypeError</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"unsupported operand type(s) for -: '</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{type</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other)</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">' and 'Vector3'"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div></details><p><code>@overload</code></p><h4 id="def-self-other-vector3-vector3-2" tabindex="-1"><em><strong>def</strong></em> <code>self * other: Vector3 => Vector3</code> <a class="header-anchor" href="#def-self-other-vector3-vector3-2" aria-label="Permalink to "***def*** `self * other: Vector3 => Vector3`""></a></h4><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L219" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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;">@overload</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __mul__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ...</span></span></code></pre></div></details><p><code>@overload</code></p><h4 id="def-self-other-realnumber-vector3" tabindex="-1"><em><strong>def</strong></em> <code>self * other: RealNumber => Vector3</code> <a class="header-anchor" href="#def-self-other-realnumber-vector3" aria-label="Permalink to "***def*** `self * other: RealNumber => Vector3`""></a></h4><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L223" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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;">@overload</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __mul__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: RealNumber) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> ...</span></span></code></pre></div></details><h4 id="def-self-other-int-float-vector3-vector3" tabindex="-1"><em><strong>def</strong></em> <code>self * other: int | float | Vector3 => Vector3</code> <a class="header-anchor" href="#def-self-other-int-float-vector3-vector3" aria-label="Permalink to "***def*** `self * other: int | float | Vector3 => Vector3`""></a></h4><p><strong>说明</strong>: 数组运算 非点乘。点乘使用@,叉乘使用cross。</p><p><strong>参数</strong>:</p><blockquote><ul><li>other:</li></ul></blockquote><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L226" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __mul__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'int | float | Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</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;"> 数组运算 非点乘。点乘使用@,叉乘使用cross。</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;"> other:</span></span>
|
||
<span class="line"></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;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other, Vector3):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Vector3(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.x, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.y, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.z)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> elif</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other, (</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">float</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">int</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Vector3(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other)</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> else</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> raise</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> TypeError</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"unsupported operand type(s) for *: 'Vector3' and '</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{type</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other)</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div></details><h4 id="def-self-other-realnumber-vector3-1" tabindex="-1"><em><strong>def</strong></em> <code>self * other: RealNumber => Vector3</code> <a class="header-anchor" href="#def-self-other-realnumber-vector3-1" aria-label="Permalink to "***def*** `self * other: RealNumber => Vector3`""></a></h4><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L242" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __rmul__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'RealNumber'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">__mul__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(other)</span></span></code></pre></div></details><h4 id="def-self-other-vector3-realnumber" tabindex="-1"><em><strong>def</strong></em> <code>self @ other: Vector3 => RealNumber</code> <a class="header-anchor" href="#def-self-other-vector3-realnumber" aria-label="Permalink to "***def*** `self @ other: Vector3 => RealNumber`""></a></h4><p><strong>说明</strong>: 点乘。</p><p><strong>参数</strong>:</p><blockquote><ul><li>other:</li></ul></blockquote><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L245" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __matmul__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'RealNumber'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</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;"> 点乘。</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;"> other:</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;"> """</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">+</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">+</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other.z</span></span></code></pre></div></details><h4 id="def-self-other-realnumber-vector3-2" tabindex="-1"><em><strong>def</strong></em> <code>self / other: RealNumber => Vector3</code> <a class="header-anchor" href="#def-self-other-realnumber-vector3-2" aria-label="Permalink to "***def*** `self / other: RealNumber => Vector3`""></a></h4><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L254" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __truediv__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, other: RealNumber) -> </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Vector3'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Vector3(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">/</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> other)</span></span></code></pre></div></details><h4 id="def-self" tabindex="-1"><em><strong>def</strong></em> <code>- self</code> <a class="header-anchor" href="#def-self" aria-label="Permalink to "***def*** `- self`""></a></h4><details><summary><b>源代码</b></summary><p><a href="https://github.com/snowykami/mbcp/tree/main/mbcp/mp_math/vector.py#L257" target="_blank" rel="noreferrer">在GitHub上查看</a></p><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:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __neg__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self):</span></span>
|
||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Vector3(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.x, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.y, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.z)</span></span></code></pre></div></details><h3 id="var-zero-vector3-vector3-0-0-0" tabindex="-1">var <code>zero_vector3</code> = <code>Vector3(0, 0, 0)</code> <a class="header-anchor" href="#var-zero-vector3-vector3-0-0-0" aria-label="Permalink to "var `zero_vector3` = `Vector3(0, 0, 0)`""></a></h3><ul><li><p><strong>类型</strong>: <code>Vector3</code></p></li><li><p><strong>说明</strong>: 零向量</p></li></ul><h3 id="var-x-axis-vector3-1-0-0" tabindex="-1">var <code>x_axis</code> = <code>Vector3(1, 0, 0)</code> <a class="header-anchor" href="#var-x-axis-vector3-1-0-0" aria-label="Permalink to "var `x_axis` = `Vector3(1, 0, 0)`""></a></h3><ul><li><p><strong>类型</strong>: <code>Vector3</code></p></li><li><p><strong>说明</strong>: x轴单位向量</p></li></ul><h3 id="var-y-axis-vector3-0-1-0" tabindex="-1">var <code>y_axis</code> = <code>Vector3(0, 1, 0)</code> <a class="header-anchor" href="#var-y-axis-vector3-0-1-0" aria-label="Permalink to "var `y_axis` = `Vector3(0, 1, 0)`""></a></h3><ul><li><p><strong>类型</strong>: <code>Vector3</code></p></li><li><p><strong>说明</strong>: y轴单位向量</p></li></ul><h3 id="var-z-axis-vector3-0-0-1" tabindex="-1">var <code>z_axis</code> = <code>Vector3(0, 0, 1)</code> <a class="header-anchor" href="#var-z-axis-vector3-0-0-1" aria-label="Permalink to "var `z_axis` = `Vector3(0, 0, 1)`""></a></h3><ul><li><p><strong>类型</strong>: <code>Vector3</code></p></li><li><p><strong>说明</strong>: z轴单位向量</p></li></ul></div></div></main><footer class="VPDocFooter" data-v-40342069 data-v-a4b38bd6><!--[--><!--]--><!----><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-a4b38bd6><span class="visually-hidden" id="doc-footer-aria-label" data-v-a4b38bd6>Pager</span><div class="pager" data-v-a4b38bd6><a class="VPLink link pager-link prev" href="/api/mp_math/utils.html" data-v-a4b38bd6><!--[--><span class="desc" data-v-a4b38bd6>上一页</span><span class="title" data-v-a4b38bd6>mbcp.mp_math.utils</span><!--]--></a></div><div class="pager" data-v-a4b38bd6><a class="VPLink link pager-link next" href="/api/particle/particle.html" data-v-a4b38bd6><!--[--><span class="desc" data-v-a4b38bd6>下一页</span><span class="title" data-v-a4b38bd6>mbcp.particle</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><footer class="VPFooter has-sidebar" data-v-22f859ac data-v-e3ca6860><div class="container" data-v-e3ca6860><p class="message" data-v-e3ca6860>文档由 <a href="https://vitepress.dev/">VitePress</a> 构建 | API引用由 <a href="https://github.com/LiteyukiStudio/litedoc">litedoc</a> 生成</p><p class="copyright" data-v-e3ca6860>Copyright (C) 2020-2024 SnowyKami. All Rights Reserved</p></div></footer><!--[--><!--]--></div></div>
|
||
<script>window.__VP_HASH_MAP__=JSON.parse("{\"api_api.md\":\"D_B0Hlcp\",\"api_index.md\":\"C_wESrrY\",\"api_mp_math_angle.md\":\"bQbgL5rc\",\"api_mp_math_const.md\":\"BAf8mK4W\",\"api_mp_math_equation.md\":\"hWRUu0yD\",\"api_mp_math_function.md\":\"C9eBzKgT\",\"api_mp_math_index.md\":\"BNf7bQqL\",\"api_mp_math_line.md\":\"DDkzT0e0\",\"api_mp_math_mp_math.md\":\"GlFMkWiQ\",\"api_mp_math_mp_math_typing.md\":\"DlnJmkos\",\"api_mp_math_plane.md\":\"DCL3lFbz\",\"api_mp_math_point.md\":\"Y0Sc19zU\",\"api_mp_math_segment.md\":\"B-ptCnQ0\",\"api_mp_math_utils.md\":\"mUQ56HGQ\",\"api_mp_math_vector.md\":\"BeAN7TkI\",\"api_particle_index.md\":\"Cm3Vk-es\",\"api_particle_particle.md\":\"yD6tcNSr\",\"api_presets_index.md\":\"CD62I2gv\",\"api_presets_model_index.md\":\"BGeoOSCd\",\"api_presets_model_model.md\":\"D34eFRNH\",\"api_presets_presets.md\":\"4R0VRbQo\",\"demo_index.md\":\"D-H9zRUE\",\"en_api_api.md\":\"BSgrCX1d\",\"en_api_index.md\":\"Dj_5nFTt\",\"en_api_mp_math_angle.md\":\"Cj4ayIet\",\"en_api_mp_math_const.md\":\"gGpXUShq\",\"en_api_mp_math_equation.md\":\"BihILJCI\",\"en_api_mp_math_function.md\":\"BR29hv60\",\"en_api_mp_math_index.md\":\"BEjLBMpH\",\"en_api_mp_math_line.md\":\"CIOnk8LF\",\"en_api_mp_math_mp_math.md\":\"D6ihYPav\",\"en_api_mp_math_mp_math_typing.md\":\"Dnl2aJQ4\",\"en_api_mp_math_plane.md\":\"Cbmy4F0P\",\"en_api_mp_math_point.md\":\"szYqVNff\",\"en_api_mp_math_segment.md\":\"CqlcAra1\",\"en_api_mp_math_utils.md\":\"CigCGgjm\",\"en_api_mp_math_vector.md\":\"CF4kCv-W\",\"en_api_particle_index.md\":\"BfyNQiRg\",\"en_api_particle_particle.md\":\"BNkfEyJn\",\"en_api_presets_index.md\":\"BWb2fpTg\",\"en_api_presets_model_index.md\":\"Cnn4t_P0\",\"en_api_presets_model_model.md\":\"BZpQe5Li\",\"en_api_presets_presets.md\":\"CCUzsYog\",\"en_guide_index.md\":\"DrDHTYCZ\",\"en_index.md\":\"BSTSOH39\",\"en_refer_index.md\":\"alw4L-bp\",\"guide_index.md\":\"Cfmzk2IH\",\"index.md\":\"CNF8LJa0\",\"ja_api_api.md\":\"CPz58qIw\",\"ja_api_index.md\":\"CnUeuifx\",\"ja_api_mp_math_angle.md\":\"D0ChdV9L\",\"ja_api_mp_math_const.md\":\"DGXAgDfn\",\"ja_api_mp_math_equation.md\":\"ksLzfPHD\",\"ja_api_mp_math_function.md\":\"S4mlhSEl\",\"ja_api_mp_math_index.md\":\"CTZZ-p9Z\",\"ja_api_mp_math_line.md\":\"C6_h0EEF\",\"ja_api_mp_math_mp_math.md\":\"D-prC0UO\",\"ja_api_mp_math_mp_math_typing.md\":\"BNymgrCT\",\"ja_api_mp_math_plane.md\":\"CVfLX9sr\",\"ja_api_mp_math_point.md\":\"21gM893G\",\"ja_api_mp_math_segment.md\":\"Dji9_vOI\",\"ja_api_mp_math_utils.md\":\"DhvjDskn\",\"ja_api_mp_math_vector.md\":\"DyGgurm4\",\"ja_api_particle_index.md\":\"Jr41Y3TS\",\"ja_api_particle_particle.md\":\"exTt46pq\",\"ja_api_presets_index.md\":\"CQqdQbIZ\",\"ja_api_presets_model_index.md\":\"Dbt3LFNK\",\"ja_api_presets_model_model.md\":\"ti1HKQyY\",\"ja_api_presets_presets.md\":\"DwzXdDqR\",\"ja_guide_index.md\":\"BxGnZYwR\",\"ja_index.md\":\"DCWiTENz\",\"ja_refer_index.md\":\"CODW6iMX\",\"refer_function_curry.md\":\"DwKZawp5\",\"refer_function_function.md\":\"D3IgfZX2\",\"refer_index.md\":\"CczYTl3j\",\"zht_api_api.md\":\"DyUSHA0S\",\"zht_api_index.md\":\"CgZH6aHQ\",\"zht_api_mp_math_angle.md\":\"ByT5Hatc\",\"zht_api_mp_math_const.md\":\"xwQvuYck\",\"zht_api_mp_math_equation.md\":\"C9JJo8Tj\",\"zht_api_mp_math_function.md\":\"CUiziArf\",\"zht_api_mp_math_index.md\":\"mmeMMriu\",\"zht_api_mp_math_line.md\":\"TSJBrHTa\",\"zht_api_mp_math_mp_math.md\":\"C302rxKc\",\"zht_api_mp_math_mp_math_typing.md\":\"CNiSnuMw\",\"zht_api_mp_math_plane.md\":\"CO3Dxqtg\",\"zht_api_mp_math_point.md\":\"hahZSaSv\",\"zht_api_mp_math_segment.md\":\"BVxd03II\",\"zht_api_mp_math_utils.md\":\"Dz7jYC2A\",\"zht_api_mp_math_vector.md\":\"26fppi_c\",\"zht_api_particle_index.md\":\"8GaGB1ul\",\"zht_api_particle_particle.md\":\"huuRTEb9\",\"zht_api_presets_index.md\":\"DvOViSox\",\"zht_api_presets_model_index.md\":\"BN6GzTiL\",\"zht_api_presets_model_model.md\":\"pUtH2Ds8\",\"zht_api_presets_presets.md\":\"CsDHjRbK\",\"zht_guide_index.md\":\"CsuFVFxu\",\"zht_index.md\":\"VMjJ0lpj\",\"zht_refer_index.md\":\"Bz6voxEQ\"}");function deserializeFunctions(r){return Array.isArray(r)?r.map(deserializeFunctions):typeof r=="object"&&r!==null?Object.keys(r).reduce((t,n)=>(t[n]=deserializeFunctions(r[n]),t),{}):typeof r=="string"&&r.startsWith("_vp-fn_")?new Function(`return ${r.slice(7)}`)():r};window.__VP_SITE_DATA__=deserializeFunctions(JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"VitePress\",\"description\":\"A VitePress site\",\"base\":\"/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"logo\":\"/mbcp-logo.svg\",\"sidebar\":{\"/api/\":{\"base\":\"/api/\",\"items\":[{\"text\":\"MBCP\",\"items\":[{\"text\":\"mbcp\",\"link\":\"api\"},{\"text\":\"mbcp.mp_math\",\"link\":\"mp_math/mp_math\",\"items\":[{\"text\":\"mbcp.mp_math.angle\",\"link\":\"mp_math/angle\"},{\"text\":\"mbcp.mp_math.const\",\"link\":\"mp_math/const\"},{\"text\":\"mbcp.mp_math.equation\",\"link\":\"mp_math/equation\"},{\"text\":\"mbcp.mp_math.function\",\"link\":\"mp_math/function\"},{\"text\":\"mbcp.mp_math\",\"link\":\"mp_math/\"},{\"text\":\"mbcp.mp_math.line\",\"link\":\"mp_math/line\"},{\"text\":\"mbcp.mp_math.mp_math_typing\",\"link\":\"mp_math/mp_math_typing\"},{\"text\":\"mbcp.mp_math.plane\",\"link\":\"mp_math/plane\"},{\"text\":\"mbcp.mp_math.point\",\"link\":\"mp_math/point\"},{\"text\":\"mbcp.mp_math.segment\",\"link\":\"mp_math/segment\"},{\"text\":\"mbcp.mp_math.utils\",\"link\":\"mp_math/utils\"},{\"text\":\"mbcp.mp_math.vector\",\"link\":\"mp_math/vector\"}],\"collapsed\":true},{\"text\":\"mbcp.particle\",\"link\":\"particle/particle\",\"items\":[{\"text\":\"mbcp.particle\",\"link\":\"particle/\"}],\"collapsed\":true},{\"text\":\"mbcp.presets\",\"link\":\"presets/presets\",\"items\":[{\"text\":\"mbcp.presets\",\"link\":\"presets/\"},{\"text\":\"mbcp.presets.model\",\"link\":\"presets/model/model\",\"items\":[{\"text\":\"mbcp.presets.model\",\"link\":\"presets/model/\"}],\"collapsed\":true}],\"collapsed\":true}]}]},\"/refer/\":{\"base\":\"/refer/\",\"items\":[{\"text\":\"MBCP\",\"items\":[{\"text\":\"函数\",\"link\":\"function/function\",\"items\":[{\"text\":\"柯里化\",\"link\":\"function/curry\"}],\"collapsed\":true}]}]},\"/guide/\":{\"base\":\"/guide/\",\"items\":[{\"text\":\"MBCP\",\"items\":[]}]},\"/en/api/\":{\"base\":\"/en/api/\",\"items\":[{\"text\":\"MBCP\",\"items\":[{\"text\":\"mbcp\",\"link\":\"api\"},{\"text\":\"mbcp.mp_math\",\"link\":\"mp_math/mp_math\",\"items\":[{\"text\":\"mbcp.mp_math.angle\",\"link\":\"mp_math/angle\"},{\"text\":\"mbcp.mp_math.const\",\"link\":\"mp_math/const\"},{\"text\":\"mbcp.mp_math.equation\",\"link\":\"mp_math/equation\"},{\"text\":\"mbcp.mp_math.function\",\"link\":\"mp_math/function\"},{\"text\":\"mbcp.mp_math\",\"link\":\"mp_math/\"},{\"text\":\"mbcp.mp_math.line\",\"link\":\"mp_math/line\"},{\"text\":\"mbcp.mp_math.mp_math_typing\",\"link\":\"mp_math/mp_math_typing\"},{\"text\":\"mbcp.mp_math.plane\",\"link\":\"mp_math/plane\"},{\"text\":\"mbcp.mp_math.point\",\"link\":\"mp_math/point\"},{\"text\":\"mbcp.mp_math.segment\",\"link\":\"mp_math/segment\"},{\"text\":\"mbcp.mp_math.utils\",\"link\":\"mp_math/utils\"},{\"text\":\"mbcp.mp_math.vector\",\"link\":\"mp_math/vector\"}],\"collapsed\":true},{\"text\":\"mbcp.particle\",\"link\":\"particle/particle\",\"items\":[{\"text\":\"mbcp.particle\",\"link\":\"particle/\"}],\"collapsed\":true},{\"text\":\"mbcp.presets\",\"link\":\"presets/presets\",\"items\":[{\"text\":\"mbcp.presets\",\"link\":\"presets/\"},{\"text\":\"mbcp.presets.model\",\"link\":\"presets/model/model\",\"items\":[{\"text\":\"mbcp.presets.model\",\"link\":\"presets/model/\"}],\"collapsed\":true}],\"collapsed\":true}]}]},\"/en/refer/\":{\"base\":\"/en/refer/\",\"items\":[{\"text\":\"MBCP\",\"items\":[]}]},\"/en/guide/\":{\"base\":\"/en/guide/\",\"items\":[{\"text\":\"MBCP\",\"items\":[]}]},\"/ja/api/\":{\"base\":\"/ja/api/\",\"items\":[{\"text\":\"MBCP\",\"items\":[{\"text\":\"mbcp\",\"link\":\"api\"},{\"text\":\"mbcp.mp_math\",\"link\":\"mp_math/mp_math\",\"items\":[{\"text\":\"mbcp.mp_math.angle\",\"link\":\"mp_math/angle\"},{\"text\":\"mbcp.mp_math.const\",\"link\":\"mp_math/const\"},{\"text\":\"mbcp.mp_math.equation\",\"link\":\"mp_math/equation\"},{\"text\":\"mbcp.mp_math.function\",\"link\":\"mp_math/function\"},{\"text\":\"mbcp.mp_math\",\"link\":\"mp_math/\"},{\"text\":\"mbcp.mp_math.line\",\"link\":\"mp_math/line\"},{\"text\":\"mbcp.mp_math.mp_math_typing\",\"link\":\"mp_math/mp_math_typing\"},{\"text\":\"mbcp.mp_math.plane\",\"link\":\"mp_math/plane\"},{\"text\":\"mbcp.mp_math.point\",\"link\":\"mp_math/point\"},{\"text\":\"mbcp.mp_math.segment\",\"link\":\"mp_math/segment\"},{\"text\":\"mbcp.mp_math.utils\",\"link\":\"mp_math/utils\"},{\"text\":\"mbcp.mp_math.vector\",\"link\":\"mp_math/vector\"}],\"collapsed\":true},{\"text\":\"mbcp.particle\",\"link\":\"particle/particle\",\"items\":[{\"text\":\"mbcp.particle\",\"link\":\"particle/\"}],\"collapsed\":true},{\"text\":\"mbcp.presets\",\"link\":\"presets/presets\",\"items\":[{\"text\":\"mbcp.presets\",\"link\":\"presets/\"},{\"text\":\"mbcp.presets.model\",\"link\":\"presets/model/model\",\"items\":[{\"text\":\"mbcp.presets.model\",\"link\":\"presets/model/\"}],\"collapsed\":true}],\"collapsed\":true}]}]},\"/ja/refer/\":{\"base\":\"/ja/refer/\",\"items\":[{\"text\":\"MBCP\",\"items\":[]}]},\"/ja/guide/\":{\"base\":\"/ja/guide/\",\"items\":[{\"text\":\"MBCP\",\"items\":[]}]},\"/zht/api/\":{\"base\":\"/zht/api/\",\"items\":[{\"text\":\"MBCP\",\"items\":[{\"text\":\"mbcp\",\"link\":\"api\"},{\"text\":\"mbcp.mp_math\",\"link\":\"mp_math/mp_math\",\"items\":[{\"text\":\"mbcp.mp_math.angle\",\"link\":\"mp_math/angle\"},{\"text\":\"mbcp.mp_math.const\",\"link\":\"mp_math/const\"},{\"text\":\"mbcp.mp_math.equation\",\"link\":\"mp_math/equation\"},{\"text\":\"mbcp.mp_math.function\",\"link\":\"mp_math/function\"},{\"text\":\"mbcp.mp_math\",\"link\":\"mp_math/\"},{\"text\":\"mbcp.mp_math.line\",\"link\":\"mp_math/line\"},{\"text\":\"mbcp.mp_math.mp_math_typing\",\"link\":\"mp_math/mp_math_typing\"},{\"text\":\"mbcp.mp_math.plane\",\"link\":\"mp_math/plane\"},{\"text\":\"mbcp.mp_math.point\",\"link\":\"mp_math/point\"},{\"text\":\"mbcp.mp_math.segment\",\"link\":\"mp_math/segment\"},{\"text\":\"mbcp.mp_math.utils\",\"link\":\"mp_math/utils\"},{\"text\":\"mbcp.mp_math.vector\",\"link\":\"mp_math/vector\"}],\"collapsed\":true},{\"text\":\"mbcp.particle\",\"link\":\"particle/particle\",\"items\":[{\"text\":\"mbcp.particle\",\"link\":\"particle/\"}],\"collapsed\":true},{\"text\":\"mbcp.presets\",\"link\":\"presets/presets\",\"items\":[{\"text\":\"mbcp.presets\",\"link\":\"presets/\"},{\"text\":\"mbcp.presets.model\",\"link\":\"presets/model/model\",\"items\":[{\"text\":\"mbcp.presets.model\",\"link\":\"presets/model/\"}],\"collapsed\":true}],\"collapsed\":true}]}]},\"/zht/refer/\":{\"base\":\"/zht/refer/\",\"items\":[{\"text\":\"MBCP\",\"items\":[]}]},\"/zht/guide/\":{\"base\":\"/zht/guide/\",\"items\":[{\"text\":\"MBCP\",\"items\":[]}]}},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/snowykami/mbcp\"}],\"outline\":[2,6]},\"locales\":{\"root\":{\"label\":\"简体中文\",\"lang\":\"zh-Hans\",\"title\":\"MBCP 文档\",\"description\":\"MBCP 粒子计算和生成库文档\",\"themeConfig\":{\"nav\":[{\"text\":\"快速开始\",\"link\":\"/guide/\"},{\"text\":\"参考\",\"link\":\"/refer\"},{\"text\":\"API引用\",\"link\":\"/api/\"},{\"text\":\"实例\",\"link\":\"/demo/\"}],\"docFooter\":{\"prev\":\"上一页\",\"next\":\"下一页\"},\"editLink\":{\"pattern\":\"_vp-fn_({ filePath }) => {\\n const regex = /^[^\\\\/]+\\\\/api/;\\n if (regex.test(filePath)) {\\n filePath = filePath.replace(regex, \\\"\\\").replace(\\\"index.md\\\", \\\"__init__.py\\\").replace(\\\".md\\\", \\\".py\\\");\\n return `https://github.com/snowykami/mbcp/tree/main/mbcp/${filePath}`;\\n } else {\\n return `https://github.com/snowykami/mbcp/tree/main/docs/${filePath}`;\\n }\\n }\",\"text\":\"在 GitHub 上编辑此页\"},\"footer\":{\"message\":\"文档由 <a href=\\\"https://vitepress.dev/\\\">VitePress</a> 构建 | API引用由 <a href=\\\"https://github.com/LiteyukiStudio/litedoc\\\">litedoc</a> 生成\",\"copyright\":\"Copyright (C) 2020-2024 SnowyKami. All Rights Reserved\"},\"outline\":{\"label\":\"页面内容\",\"level\":[2,6]}}},\"en\":{\"label\":\"English\",\"lang\":\"en-US\",\"title\":\"MBCP docs\",\"description\":\"MBCP library docs\",\"themeConfig\":{\"nav\":[{\"text\":\"Get Start\",\"link\":\"/en/guide/\"},{\"text\":\"Reference\",\"link\":\"/en/refer\"},{\"text\":\"API Reference\",\"link\":\"/en/api/\"},{\"text\":\"Demo\",\"link\":\"/en/demo/\"}],\"docFooter\":{\"prev\":\"Prev Page\",\"next\":\"Next Page\"},\"editLink\":{\"pattern\":\"_vp-fn_({ filePath }) => {\\n const regex = /^[^\\\\/]+\\\\/api/;\\n if (regex.test(filePath)) {\\n filePath = filePath.replace(regex, \\\"\\\").replace(\\\"index.md\\\", \\\"__init__.py\\\").replace(\\\".md\\\", \\\".py\\\");\\n return `https://github.com/snowykami/mbcp/tree/main/mbcp/${filePath}`;\\n } else {\\n return `https://github.com/snowykami/mbcp/tree/main/docs/${filePath}`;\\n }\\n }\",\"text\":\"Edit this page on GitHub\"},\"footer\":{\"message\":\"Documentation built with <a href=\\\"https://vitepress.dev/\\\">VitePress</a> | API references generated by <a href=\\\"https://github.com/LiteyukiStudio/litedoc\\\">litedoc</a>\",\"copyright\":\"Copyright (C) 2020-2024 SnowyKami. All Rights Reserved\"},\"outline\":{\"label\":\"On this page\",\"level\":[2,6]}}},\"ja\":{\"label\":\"日本語\",\"lang\":\"ja-JP\",\"title\":\"MBCP ドキュメント\",\"description\":\"MBCP ライブラリ ドキュメント\",\"themeConfig\":{\"nav\":[{\"text\":\"スタート\",\"link\":\"/ja/guide/\"},{\"text\":\"リファレンス\",\"link\":\"/ja/refer\"},{\"text\":\"APIリファレンス\",\"link\":\"/ja/api/\"},{\"text\":\"インスタンス\",\"link\":\"/ja/demo/\"}],\"docFooter\":{\"prev\":\"前のページ\",\"next\":\"次のページ\"},\"editLink\":{\"pattern\":\"_vp-fn_({ filePath }) => {\\n const regex = /^[^\\\\/]+\\\\/api/;\\n if (regex.test(filePath)) {\\n filePath = filePath.replace(regex, \\\"\\\").replace(\\\"index.md\\\", \\\"__init__.py\\\").replace(\\\".md\\\", \\\".py\\\");\\n return `https://github.com/snowykami/mbcp/tree/main/mbcp/${filePath}`;\\n } else {\\n return `https://github.com/snowykami/mbcp/tree/main/docs/${filePath}`;\\n }\\n }\",\"text\":\"このページをGitHubで編集する\"},\"footer\":{\"message\":\"<a href=\\\"https://vitepress.dev/\\\">VitePress</a> で構築されたドキュメント | <a href=\\\"https://github.com/LiteyukiStudio/litedoc\\\">litedoc</a> によって生成されたAPIリファレンス\",\"copyright\":\"Copyright (C) 2020-2024 SnowyKami. All Rights Reserved\"},\"outline\":{\"label\":\"このページについて\",\"level\":[2,6]}}},\"zht\":{\"label\":\"繁體中文\",\"lang\":\"zh-Hant\",\"title\":\"MBCP 文檔\",\"description\":\"MBCP 粒子計算和生成庫文檔\",\"themeConfig\":{\"nav\":[{\"text\":\"指引\",\"link\":\"/zht/guide/\"},{\"text\":\"參考\",\"link\":\"/zht/refer\"},{\"text\":\"API引用\",\"link\":\"/zht/api/\"},{\"text\":\"示範\",\"link\":\"/zht/demo/\"}],\"docFooter\":{\"prev\":\"上一頁\",\"next\":\"下一頁\"},\"editLink\":{\"pattern\":\"_vp-fn_({ filePath }) => {\\n const regex = /^[^\\\\/]+\\\\/api/;\\n if (regex.test(filePath)) {\\n filePath = filePath.replace(regex, \\\"\\\").replace(\\\"index.md\\\", \\\"__init__.py\\\").replace(\\\".md\\\", \\\".py\\\");\\n return `https://github.com/snowykami/mbcp/tree/main/mbcp/${filePath}`;\\n } else {\\n return `https://github.com/snowykami/mbcp/tree/main/docs/${filePath}`;\\n }\\n }\",\"text\":\"於 GitHub 上編輯這頁\"},\"footer\":{\"message\":\"文檔由 <a href=\\\"https://vitepress.dev/\\\">VitePress</a> 構建 | API引用由 <a href=\\\"https://github.com/LiteyukiStudio/litedoc\\\">litedoc</a> 生成\",\"copyright\":\"Copyright (C) 2020-2024 SnowyKami. All Rights Reserved\"},\"outline\":{\"label\":\"頁面內容\",\"level\":[2,6]}}}},\"scrollOffset\":134,\"cleanUrls\":false}"));</script>
|
||
|
||
</body>
|
||
</html> |