加载器
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)
})