Allow initializing viewer element from File objects. (#352)

Co-authored-by: Ilia Pozdnyakov <pozdnyakov@peterpartner.net>
This commit is contained in:
Ilia Pozdnyakov 2023-01-15 03:09:07 +06:00 committed by GitHub
parent b9d8122525
commit c95f7c2026
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 21 additions and 7 deletions

View File

@ -30,7 +30,7 @@
'../../test/testfiles/3ds/cube_four_instances.3ds',
'../../test/testfiles/3ds/texture.png'
];
OV.Init3DViewerElement (container, modelUrls);
OV.Init3DViewerElementFromUrlList (container, modelUrls);
}
{
let container = document.createElement ('div');
@ -41,7 +41,7 @@
'../../test/testfiles/obj/hundred_cubes.obj',
'../../test/testfiles/obj/hundred_cubes.mtl'
];
OV.Init3DViewerElement (container, modelUrls);
OV.Init3DViewerElementFromUrlList (container, modelUrls);
}
{
let container = document.createElement ('div');
@ -52,7 +52,7 @@
'../../test/testfiles/obj/hundred_cubes.obj?param1=value1&param2=value2',
'../../test/testfiles/obj/hundred_cubes.mtl?param1=value1&param2=value2'
];
OV.Init3DViewerElement (container, modelUrls);
OV.Init3DViewerElementFromUrlList (container, modelUrls);
}
</script>
</body>

View File

@ -66,7 +66,7 @@ import { ThreeModelLoader } from './threejs/threemodelloader.js';
import { HasHighpDriverIssue, GetShadingType, ConvertThreeColorToColor, ConvertColorToThreeColor, ConvertThreeGeometryToMesh, DisposeThreeObjects, ShadingType } from './threejs/threeutils.js';
import { Camera, CameraIsEqual3D, CameraMode } from './viewer/camera.js';
import { GetIntegerFromStyle, GetDomElementExternalWidth, GetDomElementExternalHeight, GetDomElementInnerDimensions, GetDomElementClientCoordinates, CreateDomElement, AddDomElement, AddDiv, ClearDomElement, InsertDomElementBefore, InsertDomElementAfter, ShowDomElement, IsDomElementVisible, SetDomElementWidth, SetDomElementHeight, GetDomElementOuterWidth, GetDomElementOuterHeight, SetDomElementOuterWidth, SetDomElementOuterHeight, CreateDiv } from './viewer/domutils.js';
import { EmbeddedViewer, Init3DViewerElement, Init3DViewerElements } from './viewer/embeddedviewer.js';
import { EmbeddedViewer, Init3DViewerElementFromUrlList, Init3DViewerElements } from './viewer/embeddedviewer.js';
import { MouseInteraction, TouchInteraction, ClickDetector, Navigation, NavigationType } from './viewer/navigation.js';
import { EnvironmentSettings, ShadingModel } from './viewer/shadingmodel.js';
import { CameraValidator, UpVector, Viewer, GetDefaultCamera, TraverseThreeObject, GetShadingTypeOfObject } from './viewer/viewer.js';
@ -312,7 +312,7 @@ export {
SetDomElementOuterHeight,
CreateDiv,
EmbeddedViewer,
Init3DViewerElement,
Init3DViewerElementFromUrlList,
Init3DViewerElements,
MouseInteraction,
TouchInteraction,

View File

@ -220,13 +220,27 @@ export class EmbeddedViewer
* @param {object} parameters See {@link EmbeddedViewer} constructor for details.
* @returns {EmbeddedViewer}
*/
export function Init3DViewerElement (parentElement, modelUrls, parameters)
export function Init3DViewerElementFromUrlList (parentElement, modelUrls, parameters)
{
let viewer = new EmbeddedViewer (parentElement, parameters);
viewer.LoadModelFromUrlList (modelUrls);
return viewer;
}
/**
* Loads the model specified by File objects.
* @param {Element} parentElement The parent element for the viewer canvas.
* @param {File[]} models Model files.
* @param {object} parameters See {@link EmbeddedViewer} constructor for details.
* @returns {EmbeddedViewer}
*/
export function Init3DViewerElementFromFileList (parentElement, models, parameters)
{
let viewer = new EmbeddedViewer (parentElement, parameters);
viewer.LoadModelFromFileList (models);
return viewer;
}
/**
* Loads all the models on the page. This function looks for all the elements with online_3d_viewer
* class name, and loads the model according to the tag's parameters.
@ -287,7 +301,7 @@ export function Init3DViewerElements (onReady)
modelUrls = ParameterConverter.StringToModelUrls (modelParams);
}
return Init3DViewerElement (element, modelUrls, {
return Init3DViewerElementFromUrlList (element, modelUrls, {
camera : camera,
cameraMode : cameraMode,
backgroundColor : backgroundColor,