import bpy # 定义咖啡馆的尺寸 cafe_width = 10 # 宽度,单位:米 cafe_length = 15 # 长度,单位:米 cafe_height = 3 # 高度,单位:米 # 创建咖啡馆的主体(立方体) bpy.ops.mesh.primitive_cube_add(size=10, enter_editmode=False, location=(0, 0, 0)) # 获取新创建的立方体对象 cafe_body = bpy.context.selected_objects[0] print("first") print(cafe_body) cafe_body.name = "CafeBody" # 重命名立方体为“CafeBody” # 设置咖啡馆主体的尺寸 cafe_body.dimensions = (cafe_width, cafe_length, cafe_height) # 模拟 "全部变换" 功能 bpy.ops.object.transform_apply(location=True, rotation=True, scale=True) # 定义窗户的尺寸 window_width = 0.1 # 窗户宽度,单位:米 window_height = 1 # 窗户高度,单位:米 window_depth = 1.5 # 窗户深度,单位:米 # 计算窗户的位置 window_location = (cafe_width/2,0,0) # 创建窗户 bpy.ops.mesh.primitive_cube_add(size=1.5, enter_editmode=False, location=window_location) # 获取新创建的窗户对象 window_object = bpy.context.selected_objects[0] window_object.name = "Window" # 重命名立方体为“Window” # 设置窗户主体的尺寸 window_object.dimensions = (window_width,window_height,window_depth) # 模拟 "全部变换" 功能 bpy.ops.object.transform_apply(location=True, rotation=True, scale=True) # 将窗户对象设为咖啡馆主体的子对象 #window_object.parent = cafe_body print("sec") print(cafe_body) #选中名为"CafeBody"的对象 #for i in bpy.data.objects: # if i.name == "CafeBody": # # 找到对象后,执行相应的操作 # print("找到名为 CafeBody 的对象") # i.select_set(state=True) #进入编辑模式 #bpy.ops.object.mode_set(mode='EDIT') # 将窗户对象设为咖啡馆主体的子对象 #window_object.parent = cafe_body
1.建模
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | import bpy import math # 导入 math 模块 def jianMo(l,w,h,name = 'CafeBody' ): # 定义咖啡馆的尺寸 cafe_length = l # 长度,单位:米 cafe_width = w # 宽度,单位:米 cafe_height = h # 高度,单位:米 # 创建咖啡馆的主体(立方体) bpy.ops.mesh.primitive_cube_add(size = cafe_height, enter_editmode = False , location = ( 0 , 0 , 0 )) cafe_body = bpy.context.selected_objects[ 0 ] cafe_body.name = name # 设置咖啡馆主体的尺寸 cafe_body.dimensions = (cafe_width, cafe_length, cafe_height) # 应用变换到咖啡馆主体 bpy.ops. object .transform_apply(location = True , rotation = True , scale = True ) if __name__ = = '__main__' : # 定义咖啡馆的尺寸 cafe_length = 20 # 长度,单位:米 cafe_width = 10 # 宽度,单位:米 cafe_height = 6 # 高度,单位:米 cafe_name = 'CafeBody' jianMo(l = cafe_length, w = cafe_width, h = cafe_height, name = cafe_name) |
table_length = 0.7 # 桌面长度,单位:米
table_width = 0.7 # 桌面宽度,单位:米
table_thickness = 0.05 # 桌面厚度,单位:米
table_name = 'Desktop' # 桌面厚度,单位:米
jianMo(l=table_length,
w=table_width ,
h=table_thickness,
name=cafe_name)
2.上材质
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
2023-04-14 python word 转pdf