Skip to content
On this page

mxcad3d中绘制的模型可以设置其材质,自然界中存在各种各样不同的材质,如金属(铜、铁等),塑料,木头,石头等,mxcad3d预设了这些常见的材质。材质的视觉不同表现在光泽程度,对光的反射、折射、透明度等方面,mxcad3d的材质也可以通过对以上属性的设置来达到对模型的视觉表现进行调整的目的。

材质

typescript
const csysr = new Mx3dGeCSYSR();
const cylinderMaker = new Mx3dMkCylinder(csysr, 15, 60, Math.PI * 3 / 2);
const cylinderShape1 = cylinderMaker.Shape();
const cylinderShape2 = cylinderShape1.TranslatedByVec(60, 0, 0);
// 内置的玻璃材质,本身就表现为透明
const glassMat = new Mx3dGeMaterial(MdGe.MxNameOfMaterial.Material_NOM_Glass);
// 新建默认的材质
const anyMat = new Mx3dGeMaterial();
// 将默认材质设置一个0.5的透明度,如果不设置这个透明度,anyMat是一个不透明的材质
anyMat.SetTransparency(0.5);
// 获取文档
const doc = mxcad3d.getDocument();
// 新增标签
const cylinderLabel1 = doc.addShapeLabel();
const cylinderLabel2 = doc.addShapeLabel();
// 形状和颜色添加到文档
cylinderLabel1.setShape(cylinderShape1);
cylinderLabel1.setMaterial(glassMat);
cylinderLabel2.setShape(cylinderShape2);
cylinderLabel2.setMaterial(anyMat);
// 更新显示
mxcad3d.update();

材质是会被保存到文档中的。