唯杰地图 logo唯杰地图
VJMAP
EN

加载器

vjmap3d/references/plugin/loader.md 3.1 KB117 行
原文

loader

插件加载器类型

类型名称 加载器
3dm Rhino3dmLoader
font FontLoader
lut3dl LUT3dlLoader
tilt TiltLoader
3mf ThreeMFLoader
gcode GCodeLoader
lutcube LUTCubeLoader
materialx MaterialXLoader
hdr RGBELoader(three r185 中是 HDRLoader 的弃用别名,加载时会打印 deprecated 警告)
usdz USDZLoader
amf AMFLoader
lwo LWOLoader
nrrd NRRDLoader
stl STLLoader
vox VOXLoader
bvh BVHLoader
hdrcube HDRCubeTextureLoader
logluv LogLuvLoader
wrl VRMLLoader
dae ColladaLoader
ies IESLoader
lottie LottieLoader
pcd PCDLoader
3ds TDSLoader
vtk VTKLoader
kmz KMZLoader
md2 MD2Loader
pdb PDBLoader
tga TGALoader
xyz XYZLoader
mdd MDDLoader
ply PLYLoader
tif TIFFLoader
exr EXRLoader
mpd LDrawLoader
mmd MMDLoader
pvr PVRLoader
ttf TTFLoader

ktx2 为内置格式(KTX2Loader,GLTF 内的 KTX2 纹理同样已接好),无需加载插件。 hdr 同样已内置(资源管理器自带 HDRLoader),一般无需加载插件;插件表里的 hdr→RGBELoader 只是旧名。

使用

加载插件 ResManager.loadExtensionLoader()

await vjmap3d.ResManager.loadExtensionLoader();
 let ent = await vjmap3d.ResManager.loadModel(env.assetsPath + "models/fbx/nurbs.fbx", {
    splitSubEntity: true,
    anchor: "front-bottom-right",
    position: [-2, 0, 2],
    size: 5
});
ent.addTo(app);
let svc = new vjmap3d.Service(env.serviceUrl, env.accessToken);
let app = new vjmap3d.App(svc, {
container: "map", // 容器id
    scene: {  // 场景设置
        gridHelper: { visible: true } // 是否显示坐标网格
    }
})
await vjmap3d.ResManager.loadExtensionLoader();
 let ent = await vjmap3d.ResManager.loadModel(env.assetsPath + "models/fbx/nurbs.fbx", {
    splitSubEntity: true,
    anchor: "front-bottom-right",
    position: [-2, 0, 2],
    size: 5,
    // fileType: "fbx" // 如果资源路径后面不是fbx时,需指定类型,否则自动判断 
});
ent.addTo(app);

ifcloader

加载插件 ResManager.loadExtensionIfcLoader()

await vjmap3d.ResManager.loadExtensionIfcLoader()
let ent = await vjmap3d.ResManager.loadModel(env.assetsPath + "models/model.ifc", {
    splitSubEntity: false,
    position: [0, 0, 0]
});
ent.addTo(app);
let svc = new vjmap3d.Service(env.serviceUrl, env.accessToken);
let app = new vjmap3d.App(svc, {
container: "map", // 容器id
    scene: {  // 场景设置
        gridHelper: { visible: true } // 是否显示坐标网格
    }
})
await vjmap3d.ResManager.loadExtensionIfcLoader()
let ent = await vjmap3d.ResManager.loadModel(env.assetsPath + "models/model.ifc", {
    splitSubEntity: false,
    position: [0, 0, 0]
});
ent.addTo(app);
app.cameraControl.loadState({
    cameraTarget: new THREE.Vector3(0.3284790969323134,1.8240027596797397e-20, 1.6326208403110127),
    cameraPosition: new THREE.Vector3(0.9768856247903213,0.5587020679946232, 6.629605159565004)
})