Bambu Studio 是 Bambu Lab 开发的切片软件具有专为拓竹 3D 打印机开发的自定义功能。创建项目打开Bambu Studio创建一个项目。设置昵称界面如图所示当用户修改昵称后需要解绑打印机并重新绑定Studio 也需要退出重新登陆才会展示最新的昵称。如图所示可以自由调整打印的每一层空间。设置打印机模型可对打印机模型进行相关设置。点击打印机选择框在列表中选择要使用的机型及喷嘴尺寸点击耗材丝选择框在列表中选择您要使用的耗材类型点击工艺选择框在列表中选择模型的层高。层高越小打印时间越长。对于大多数用0.4 mm 喷嘴打印的模型来说0.20 mm 的层高是合适的。导入3D模型点击该符号可以导入3D模型。导入的文件格式为3mf,stp,stl,svg,obj,amf这些是3D打印和建模中最常见的文件格式我来为你详细解释每种格式的特点、用途和区别1.STL (Stereolithography)最普及的3D打印格式几乎所有3D打印机都支持特点只包含三角面片几何信息无颜色、材质、纹理信息优点简单、兼容性强、文件处理速度快缺点文件体积大因为全是三角形、无精度信息、无法存储颜色适用场景单色原型制作、功能性零件打印2.3MF (3D Manufacturing Format)微软主推的下一代标准旨在取代STL特点基于XML的压缩格式支持完整颜色、材质、纹理、多组件、支撑结构优点文件小、信息完整、支持全彩色打印、工业级精度缺点较新的格式部分老旧设备/软件兼容性有限适用场景全彩色3D打印、复杂装配体、需要保留完整制造信息的模型3.STEP/STP (Standard for the Exchange of Product)CAD工程标准格式不是专门用于3D打印的特点参数化NURBS曲面精确数学描述非三角网格优点精度极高、可编辑参数、工业标准、文件小缺点3D打印机无法直接读取必须先转换为网格格式如STL适用场景机械设计、工程图纸交换、需要后期修改的精密零件4.OBJ (Wavefront Object)3D图形行业标准源于影视动画领域特点支持多边形网格、顶点颜色、纹理贴图、材质库(MTL)优点格式开放、支持颜色纹理、广泛兼容3D软件缺点无单位信息、精度不如STEP、颜色支持不如3MF全面适用场景彩色雕塑、艺术模型、需要纹理贴图的视觉模型5.AMF (Additive Manufacturing File Format)ASTM国际标准STL的官方继任者特点基于XML支持** curved triangles曲边三角**、颜色、材质、晶格结构优点数学精度高于STL、支持渐变材质、标准化程度高缺点普及度不如3MF和STL软件支持有限适用场景需要高精度的工业级增材制造6.SVG (Scalable Vector Graphics)2D矢量图形格式严格来说不是3D格式特点基于XML的2D路径描述在3D打印中的用途激光切割/雕刻直接用于切割机拉伸成3D在CAD软件中将2D轮廓拉伸为3D模型纹理贴图作为3D模型的表面图案限制本身没有3D信息必须转换才能3D打印盘的设置命名盘点击左上角保存符号保存文件可以命名为travelerAC。如下图所示:对于文件中的各个盘可以重新命名如下图所示添加新盘可以添加新盘。如图所示盘的切换设置完成后屏幕右上角的切片单盘。如果模型文件包含多盘可点击屏幕右上角的切片所有盘。鼠标点击盘即可对盘进行切换。即可实现操作。盘参数设置如图所示点击六边形符号可以对盘参数进行设置。导出项目导出项目为STL文件可以在专业打印机中打印。即可完成。一日一画绘画目标螺旋臂的数学建模对数螺旋线数千颗恒星的分布模拟动态旋转动画渐变色效果从核心到边缘星际尘埃和星团效果代码如下import turtle import math import random # 设置屏幕 screen turtle.Screen() screen.bgcolor(black) screen.title(银河系螺旋臂模拟) screen.setup(width1200, height800) screen.tracer(0) # 关闭自动刷新手动控制 # 创建画笔 galaxy turtle.Turtle() galaxy.hideturtle() galaxy.speed(0) # 参数设置 NUM_ARMS 3 # 螺旋臂数量 STARS_PER_ARM 800 # 每条臂的恒星数 CORE_STARS 500 # 核心区域恒星数 ARM_SPREAD 0.3 # 臂的宽度 GALAXY_RADIUS 350 # 银河系半径 def random_color(): 生成蓝白色调的恒星颜色 colors [white, lightblue, lightcyan, azure, aliceblue, powderblue, lightsteelblue, cornflowerblue] return random.choice(colors) def draw_star(x, y, size, brightness): 绘制单颗恒星 galaxy.penup() galaxy.goto(x, y) galaxy.pendown() galaxy.color(brightness) galaxy.dot(size) def spiral_arm(arm_index, total_arms): 绘制单条螺旋臂 # 每条臂的偏移角度 arm_offset (2 * math.pi * arm_index) / total_arms for i in range(STARS_PER_ARM): # 对数螺旋线公式r a * e^(b*θ) # 使用平方根分布让恒星更集中在中心 t math.sqrt(i / STARS_PER_ARM) * 4 * math.pi # 基础螺旋半径 r (i / STARS_PER_ARM) * GALAXY_RADIUS # 螺旋角度 theta arm_offset t * 0.3 # 添加臂的宽度随机分布 spread random.gauss(0, ARM_SPREAD * (1 r/GALAXY_RADIUS)) # 计算坐标 x r * math.cos(theta) spread * r * math.cos(theta math.pi/2) y r * math.sin(theta) spread * r * math.sin(theta math.pi/2) # 距离中心越远恒星越小越稀疏 distance_factor 1 - (r / GALAXY_RADIUS) size random.uniform(1, 4) * distance_factor 0.5 # 亮度也随距离变化 if distance_factor 0.8: color white elif distance_factor 0.5: color random.choice([white, lightblue, lightcyan]) else: color random.choice([lightsteelblue, cornflowerblue, slateblue]) draw_star(x, y, size, color) # 每50颗星刷新一次屏幕显示绘制过程 if i % 50 0: screen.update() def draw_galaxy_core(): 绘制银河系核心凸起部分 # 核心恒星 for i in range(CORE_STARS): # 核心区域使用高斯分布 r abs(random.gauss(0, 30)) theta random.uniform(0, 2 * math.pi) x r * math.cos(theta) y r * math.sin(theta) # 核心更亮更大 size random.uniform(2, 6) * (1 - r/80) colors [white, yellow, lightyellow, gold] color random.choice(colors) draw_star(x, y, max(size, 1), color) if i % 30 0: screen.update() def draw_background_stars(): 绘制背景恒星晕 bg turtle.Turtle() bg.hideturtle() bg.speed(0) for _ in range(200): x random.uniform(-600, 600) y random.uniform(-400, 400) # 避开银河系主要区域 if math.sqrt(x**2 y**2) GALAXY_RADIUS 50: bg.penup() bg.goto(x, y) bg.pendown() bg.color(gray) bg.dot(random.uniform(0.5, 1.5)) def draw_spiral_structure(): 绘制螺旋臂的连接线可选用于强调结构 galaxy.penup() for arm in range(NUM_ARMS): arm_offset (2 * math.pi * arm) / NUM_ARMS points [] # 生成螺旋线上的点 for i in range(0, 100, 2): t (i / 100) * 4 * math.pi r (i / 100) * GALAXY_RADIUS * 0.8 theta arm_offset t * 0.3 x r * math.cos(theta) y r * math.sin(theta) points.append((x, y)) # 绘制微弱的连接线 galaxy.penup() galaxy.color(midnightblue) galaxy.pensize(1) for i, (x, y) in enumerate(points): galaxy.goto(x, y) if i 0: galaxy.pendown() galaxy.penup() def main(): print(正在绘制银河系请稍候...) # 1. 绘制背景恒星 print(生成背景星空...) draw_background_stars() screen.update() # 2. 绘制螺旋臂结构线可选 draw_spiral_structure() screen.update() # 3. 绘制核心 print(绘制星系核心...) draw_galaxy_core() screen.update() # 4. 绘制螺旋臂 print(生成螺旋臂...) for arm in range(NUM_ARMS): print(f绘制第 {arm 1}/{NUM_ARMS} 条螺旋臂...) spiral_arm(arm, NUM_ARMS) screen.update() # 5. 添加一些特殊的亮星超巨星 print(添加亮星...) for _ in range(20): r random.uniform(50, GALAXY_RADIUS * 0.9) theta random.uniform(0, 2 * math.pi) x r * math.cos(theta) y r * math.sin(theta) draw_star(x, y, random.uniform(4, 7), white) screen.update() print(银河系绘制完成) # 保持窗口打开 turtle.done() if __name__ __main__: main()图片如下