乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 12|回复: 9

[编程交流] 指定材质

[复制链接]

6

主题

22

帖子

16

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-5 13:20:36 | 显示全部楼层 |阅读模式
一些lisp可以自动和随机地将材质指定给不同的3D元素。
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 13:33:23 | 显示全部楼层
我对3d做的不多,但提供的信息很少。
 
对象类型
材料清单5、7、25?
 
回复

使用道具 举报

6

主题

22

帖子

16

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-5 13:34:43 | 显示全部楼层
三维图元是实体。
回复

使用道具 举报

2

主题

261

帖子

20

银币

初来乍到

Rank: 1

铜币
8
发表于 2022-7-5 13:42:48 | 显示全部楼层
你的最终目标是什么?
回复

使用道具 举报

6

主题

22

帖子

16

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-5 13:53:11 | 显示全部楼层
1.-通过颜色区分不同的固体。
2.-将其导出到Autodesk Inventor时,它们保留指定材料的颜色。
 
非常感谢您的关注。
回复

使用道具 举报

6

主题

22

帖子

16

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-5 13:57:23 | 显示全部楼层
另一种选择是为每个层指定材质
 
回复

使用道具 举报

2

主题

261

帖子

20

银币

初来乍到

Rank: 1

铜币
8
发表于 2022-7-5 14:03:57 | 显示全部楼层
为什么是这种材料?也许你需要换一下颜色?
回复

使用道具 举报

6

主题

22

帖子

16

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-5 14:10:04 | 显示全部楼层
导出时,Autodesk inventor不会识别颜色,而是识别材质。
回复

使用道具 举报

2

主题

261

帖子

20

银币

初来乍到

Rank: 1

铜币
8
发表于 2022-7-5 14:16:02 | 显示全部楼层
 
 
 
我们需要一份所有可能材料的清单。
 
 
  1. Option Explicit
  2. Public Sub test()
  3.     Dim mat As AcadMaterial
  4.     Dim matName As String
  5.     For Each mat In ThisDrawing.Materials
  6.         ''MsgBox mat.Name
  7.         If UCase(mat.Name) = "SITEWORK.PLANTING.GRASS.SHORT" Then
  8.             matName = mat.Name
  9.             Exit For
  10.         End If
  11.     Next
  12.    
  13.     If Len(matName) > 0 Then
  14.         Dim ent As AcadEntity
  15.         For Each ent In ThisDrawing.ModelSpace
  16.             If TypeOf ent Is AcadSolid Then
  17.                 ent.Material = matName
  18.             End If
  19.         Next
  20.     End If
  21. End Sub
  22. Sub AddMaterialToLibrary()
  23.     ' This example finds the name of the block associated with a layout.
  24.    Dim material As acadMaterial
  25.    Dim count As Integer
  26.    count = 0
  27.    For Each material In ThisDrawing.Materials
  28.    
  29.         If (StrComp(material.Name, "Bamboo", vbTextCompare) = 0) Then
  30.          MsgBox "The  Bamboo  material Exists"
  31.          count = count + 1
  32.          Exit For
  33.         End If
  34.    Next
  35.       
  36.     If (count < 1) Then
  37.        ThisDrawing.Materials.Add ("Bamboo")
  38.     End If
  39.     MsgBox "Done"
  40. End Sub
回复

使用道具 举报

6

主题

22

帖子

16

银币

初来乍到

Rank: 1

铜币
30
发表于 2022-7-5 14:22:07 | 显示全部楼层
建议列表如下:

木材
混凝土


青铜
不锈钢
铸造厂
塑料
玻璃
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-15 00:49 , Processed in 2.515512 second(s), 73 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表