Skip to content
On this page

mxcad3d可以给模型进图贴图以增强其视觉表现,在贴图前需要准备好图片,可以通过mxcad3d提供的API从服务器URL中获取一些图片资源。

贴图

typescript
// 通过Mx3dUtils的LoadFileFromUrl方法获取url的图片资源,成功后返回图片资源在虚拟本地文件系统中的完整路径
const fname = await Mx3dUtils.LoadFileFromUrl(new URL("./assets/wood.jpg", import.meta.url).href, "wood.jpg");

const boxMaker = new Mx3dMkBox(50, 30, 20);
const boxShape = boxMaker.Shape();

const doc = mxcad3d.getDocument();
const boxLabel = doc.addShapeLabel();
boxLabel.setShape(boxShape);
boxLabel.setTexture(fname);
mxcad3d.update();

通过 Mx3dUtils 类提供的LoadFileFromUrl静态方法,从服务器的assets目录中异步获取了wood.jpg图片,并且将图片保存到虚拟的本地文件系统的根目录中并重命名为wood.jpg(LoadFileFromUrl的第二个参数,这里还是使用原来的文件名,也可以不跟原文件名相同,但后缀必须相同)。

mxcad3d获取图片完成后,boxLabel.setTexture(fname) 这句代码将会从虚拟本地文件系统的根目录中获取 wood.jpg 图片,并将文件名保存到文档中,更新显示后将会为模型贴图显示。