|
@@ -235,7 +235,7 @@ class Rhino3dmLoader extends Loader {
|
|
|
|
|
|
//console.log(material)
|
|
|
|
|
|
- let mat = new MeshPhysicalMaterial( {
|
|
|
+ const mat = new MeshPhysicalMaterial( {
|
|
|
|
|
|
color: new Color( material.diffuseColor.r / 255.0, material.diffuseColor.g / 255.0, material.diffuseColor.b / 255.0 ),
|
|
|
emissive: new Color( material.emissionColor.r, material.emissionColor.g, material.emissionColor.b ),
|
|
@@ -310,7 +310,7 @@ class Rhino3dmLoader extends Loader {
|
|
|
mat.envMap = map;
|
|
|
|
|
|
break;
|
|
|
-
|
|
|
+
|
|
|
case 'Opacity':
|
|
|
|
|
|
mat.transmissionMap = map;
|
|
@@ -330,7 +330,7 @@ class Rhino3dmLoader extends Loader {
|
|
|
mat.transparent = true;
|
|
|
|
|
|
break;
|
|
|
-
|
|
|
+
|
|
|
case 'PBR_AmbientOcclusion':
|
|
|
|
|
|
mat.aoMap = map;
|
|
@@ -461,7 +461,7 @@ class Rhino3dmLoader extends Loader {
|
|
|
object.userData.settings[ 'renderSettings' ] = data.renderSettings;
|
|
|
object.userData[ 'objectType' ] = 'File3dm';
|
|
|
object.userData[ 'materials' ] = null;
|
|
|
-
|
|
|
+
|
|
|
object.name = this.url;
|
|
|
|
|
|
let objects = data.objects;
|
|
@@ -490,7 +490,8 @@ class Rhino3dmLoader extends Loader {
|
|
|
|
|
|
let matId;
|
|
|
|
|
|
- switch( attributes.materialSource.name ) {
|
|
|
+ switch ( attributes.materialSource.name ) {
|
|
|
+
|
|
|
case 'ObjectMaterialSource_MaterialFromLayer':
|
|
|
//check layer index
|
|
|
if ( attributes.layerIndex >= 0 ) {
|
|
@@ -1129,7 +1130,7 @@ function Rhino3dmWorker() {
|
|
|
|
|
|
const _material = doc.materials().get( i );
|
|
|
|
|
|
- let material = extractProperties( _material );
|
|
|
+ const material = extractProperties( _material );
|
|
|
|
|
|
const textures = [];
|
|
|
|
|
@@ -1232,42 +1233,42 @@ function Rhino3dmWorker() {
|
|
|
// Handle Render Environments for Material Environment
|
|
|
|
|
|
// get the id of the active render environment skylight, which we'll use for environment texture
|
|
|
- const reflectionId = doc.settings().renderSettings().renderEnvironments.reflectionId
|
|
|
+ const reflectionId = doc.settings().renderSettings().renderEnvironments.reflectionId;
|
|
|
|
|
|
- const rc = doc.renderContent()
|
|
|
+ const rc = doc.renderContent();
|
|
|
|
|
|
- let renderEnvironment = null
|
|
|
+ let renderEnvironment = null;
|
|
|
|
|
|
- for( let i = 0; i < rc.count; i++ ) {
|
|
|
+ for ( let i = 0; i < rc.count; i ++ ) {
|
|
|
|
|
|
- const content = rc.get(i)
|
|
|
+ const content = rc.get( i );
|
|
|
|
|
|
- switch( content.kind ) {
|
|
|
+ switch ( content.kind ) {
|
|
|
|
|
|
case 'environment':
|
|
|
|
|
|
- const id = content.id
|
|
|
+ const id = content.id;
|
|
|
|
|
|
// there could be multiple render environments in a 3dm file
|
|
|
if ( id !== reflectionId ) break;
|
|
|
|
|
|
- const renderTexture = content.findChild( 'texture' )
|
|
|
- const fileName = renderTexture.fileName
|
|
|
+ const renderTexture = content.findChild( 'texture' );
|
|
|
+ const fileName = renderTexture.fileName;
|
|
|
|
|
|
for ( let j = 0; j < doc.embeddedFiles().count; j ++ ) {
|
|
|
|
|
|
- const _fileName = doc.embeddedFiles().get( j ).fileName
|
|
|
+ const _fileName = doc.embeddedFiles().get( j ).fileName;
|
|
|
|
|
|
if ( fileName === _fileName ) {
|
|
|
|
|
|
- const background = doc.getEmbeddedFileAsBase64( fileName )
|
|
|
- const backgroundImage = 'data:image/png;base64,' + background
|
|
|
+ const background = doc.getEmbeddedFileAsBase64( fileName );
|
|
|
+ const backgroundImage = 'data:image/png;base64,' + background;
|
|
|
renderEnvironment = { type: 'renderEnvironment', image: backgroundImage, name: fileName };
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
break;
|
|
|
|
|
|
}
|
|
@@ -1307,7 +1308,7 @@ function Rhino3dmWorker() {
|
|
|
renderEnvironments: extractProperties( doc.settings().renderSettings().renderEnvironments ),
|
|
|
postEffects: extractProperties( doc.settings().renderSettings().postEffects ),
|
|
|
|
|
|
- }
|
|
|
+ };
|
|
|
|
|
|
doc.delete();
|
|
|
|
|
@@ -1317,7 +1318,7 @@ function Rhino3dmWorker() {
|
|
|
|
|
|
function extractTextures( m, tTypes, d ) {
|
|
|
|
|
|
- const textures = []
|
|
|
+ const textures = [];
|
|
|
|
|
|
for ( let i = 0; i < tTypes.length; i ++ ) {
|
|
|
|
|
@@ -1584,13 +1585,13 @@ function Rhino3dmWorker() {
|
|
|
if ( _attributes.decals().count > 0 ) {
|
|
|
|
|
|
self.postMessage( { type: 'warning', id: taskID, data: {
|
|
|
- message: `THREE.3DMLoader: No conversion exists for the decals associated with this object.`,
|
|
|
+ message: 'THREE.3DMLoader: No conversion exists for the decals associated with this object.',
|
|
|
type: 'no conversion',
|
|
|
guid: _attributes.id
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
} );
|
|
|
-
|
|
|
+
|
|
|
}
|
|
|
|
|
|
attributes.drawColor = _attributes.drawColor( doc );
|