diff --git a/Leo/科学/Gravity – 以物理为基础的太阳系模拟器.md b/Leo/科学/Gravity – 以物理为基础的太阳系模拟器.md new file mode 100644 index 00000000..c4495fd3 --- /dev/null +++ b/Leo/科学/Gravity – 以物理为基础的太阳系模拟器.md @@ -0,0 +1,63 @@ +--- +title: Gravity – 以物理为基础的太阳系模拟器|如果家里有喜欢问“为什么”的孩子,推荐收藏 +source: https://www.appinn.com/gravity-the-solar-system/ +author: + - "[[青小蛙]]" +published: 2026-06-14 +created: 2026-06-19 +description: Gravity 是一个开源的太阳系模拟器,通过 24 个交互式动画,让小朋友了解整个太阳系,包括什么是引力?引力构建太阳/地球、为什么地球不会掉进太阳?火箭如何发射才不会掉下来等问题。 +tags: +--- +孩子们总会问一些看似简单、却很难解释的问题: + +- 为什么地球不会掉进太阳里? +- 月亮为什么不会掉到地球上? +- 太阳那么大,为什么不会把所有行星都吸过去? +- 火箭为什么能飞上太空? +- 为什么火箭飞上去之后不会掉下来? + +如果干巴巴的直接解释,似乎毫无吸引力。 + +但如果配合这个可以动的 Gravity: + + + +就很赞了。 +## Gravity:开源太阳系模拟器 + +![Gravity – 以物理为基础的太阳系模拟器|如果家里有喜欢问“为什么”的孩子,推荐收藏 1](https://www.appinn.com/wp-content/uploads/2026/06/Copy-of-appinn-homework-2026-06-14T162924.412.jpg) + +Gravity – 以物理为基础的太阳系模拟器|如果家里有喜欢问“为什么”的孩子,推荐收藏 1 + +Gravity 是一个开源的太阳系模拟器,通过 24 个交互式动画,让小朋友了解整个太阳系,包括什么是引力?引力构建太阳/地球、为什么地球不会掉进太阳?火箭如何发射才不会掉下来等问题。 + + +注意:一切都由真实的观测数据驱动;渲染器唯一进行“伪造”的是 **比例** ,使用了 **SpaceX 风格 UI** 。 + +![Gravity – 以物理为基础的太阳系模拟器|如果家里有喜欢问“为什么”的孩子,推荐收藏 2](https://www.appinn.com/wp-content/uploads/2026/06/Screenshot-2026-06-14-09.24.57-2x.avif) + +Gravity – 以物理为基础的太阳系模拟器|如果家里有喜欢问“为什么”的孩子,推荐收藏 2 + +1. **什么是引力?** (`#what-is-gravity`) —— 展示两个质量体及其之间相等且相反的力矢量(牛顿第三定律);同样的力,产生不等的效应。 +2. **引力构建太阳** (`#birth-of-sun`) —— 尘埃云坍缩并旋转形成太阳(吸积动画)。 +3. **引力构建地球** (`#birth-of-earth`) —— 在剩余的圆盘中发生同样的微观过程;初生的地球在形成时闪烁着熔融的光芒。 +4. **运动的物体保持运动** (`#inertia`) —— 移除太阳;地球以恒定速度沿直线漂移(牛顿第一定律)。纯粹的惯性。 +5. **为什么地球不会掉进太阳** (`#why-no-fall`) —— 速度矢量 + 引力矢量 + 虚线的“无引力直线路径”。引力将直线弯曲成闭合环 —— 轨道就是持续坠落并始终错过。 …(及其他 19 个步骤) + +## 真实性说明 + +- **大小** —— 每个天体都使用其真实的平均半径(太阳 696,340 公里 → 冥王星 1,188 公里)和质量。 +- **轨道** —— 使用来自 JPL/IAU 近似根数表的真实 J2000.0 日心开普勒根数(半长轴、离心率、倾角、升交点黄经、近日点黄经、平黄经)。每帧都会求解开普勒方程。 +- **日期** —— 时钟是真实的:T=0 对应 J2000 历元(2000-01-01 12:00)。 + +最后,还有一个自由探索功能: +## 获取 + +- 直接用: [https://gravity.appinn.com](https://gravity.appinn.com/) +- 代码在 [GitHub](https://github.com/scavin/Gravity/) + +--- + +原文:https://www.appinn.com/gravity-the-solar-system/ + +最后,青小蛙和小朋友一起看了这个 Gravity,没想到他居然耐着性子把 24 个问题看完了。 \ No newline at end of file diff --git a/knowledgebase/启用 Microsoft Azure TTS 免费语音服务 (F0层).md b/knowledgebase/启用 Microsoft Azure TTS 免费语音服务 (F0层).md new file mode 100644 index 00000000..2f8a823e --- /dev/null +++ b/knowledgebase/启用 Microsoft Azure TTS 免费语音服务 (F0层).md @@ -0,0 +1,79 @@ +#Azure #tts #speech-service +### 启用 Microsoft Azure TTS 免费语音服务 (F0层) + +**目标**:注册并配置 Azure 免费语音服务 (F0层),用于文本转语音 (TTS) 的开发与测试。 + +#### 1. 服务概览与免费额度 + +- **服务名称**:Azure AI Speech Service (语音服务)。 +- **免费层 (F0) 额度**:每月 **50万字符** 的文本转语音 (TTS) 免费额度。 +- **主要限制**:每分钟最多 20 个并发请求 (TPS)。 +- **适用场景**:开发测试、原型验证、个人项目。 + +> **重要**:免费额度仅在创建资源时明确选择 **`F0` (免费层)** 时生效。标准层 (S0) 不包含免费额度。 + +--- + +#### 2. 注册与配置步骤 + +1. **准备 Azure 账号** + - 访问 [Azure 官网](https://azure.microsoft.com/en-us/free/cognitive-services/) 注册免费账户。 + - **注**:注册需绑定信用卡验证身份,但只要不升级付费且用量在免费额度内,**不会产生费用**。 + +2. **创建语音服务资源** + - 登录 [Azure 门户 (portal.azure.com)](https://portal.azure.com/)。 + - 在顶部搜索栏输入 **“Speech Services”** 或 **“语音服务”**,进入后点击 **“创建” (Create)**。 + +3. **配置关键参数(重点)** + - **订阅 (Subscription)**:选择你的订阅。 + - **资源组 (Resource group)**:可新建,如 `SpeechService_RG`。 + - **区域 (Region)**:选择地理位置。**若下拉菜单无 F0 选项,请更换区域重试**(如 `East US`)。 + - **名称 (Name)**:取一个唯一名称,如 `MyFreeSpeechService`。 + - **定价层 (Pricing tier)**:**关键步骤**,务必选择 **`F0` (免费层)**。 + +4. **获取 API 密钥和区域** + - 确认配置后点击 **“查看 + 创建”**,然后 **“创建”**。 + - 部署完成后,点击 **“转到资源” (Go to resource)**。 + - 在左侧菜单找到并点击 **“密钥和终结点” (Keys and Endpoint)**。 + - 在此页面: + - 复制 **KEY 1** 或 **KEY 2**(任选其一)——此为 **API 密钥**。 + - 记下 **“位置/区域” (Location/Region)**(如 `eastus`)——此为 **区域代码**。 + +> **安全提醒**:请妥善保管 API 密钥,切勿硬编码到代码或上传至公开仓库。 + +--- + +#### 3. 使用语音服务 + +获得密钥和区域后,可通过以下方式调用 TTS 服务: + +| 调用方式 | 说明 | +| :------------- | :------------------------------------------- | +| **Speech SDK** | 推荐。在代码中创建 `SpeechConfig` 对象,传入密钥和区域。 | +| **REST API** | 在请求头 `Ocp-Apim-Subscription-Key` 中传递 API 密钥。 | + +##### 示例:Python (SDK) +```python +import azure.cognitiveservices.speech as speechsdk + +speech_key = "你的API密钥" +service_region = "你的区域,如 eastus" + +# 使用密钥和区域创建配置 +speech_config = speechsdk.SpeechConfig(subscription=speech_key, region=service_region) +``` + +--- + +#### 4. 为英语书选择朗读声音 + +推荐方式:**直接指定具体声音名称**,服务会自动匹配正确语言。 + +| 口音 | 推荐声音 (可直接使用) | +| :--- | :--- | +| **美式英语** | 女声:`en-US-AriaNeural` / `en-US-JennyNeural`
男声:`en-US-GuyNeural` | +| **英式英语** | 女声:`en-GB-SoniaNeural`
男声:`en-GB-RyanNeural` | +| **澳大利亚英语**| 女声:`en-AU-NatashaNeural`
男声:`en-AU-WilliamNeural` | +| **多语言 (推荐)** | 女声:`en-US-AvaMultilingualNeural`
(可自然朗读多种语言,读非英文内容时可能带轻微口音) | + +> 完整声音列表请参考 [官方文档](https://learn.microsoft.com/en-us/azure/ai-services/speech-service/language-support?tabs=tts)。 \ No newline at end of file