@bldrs-ai/conway 0.21.915 → 0.22.921
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/compiled/examples/browser-bundled.cjs +1 -1
- package/compiled/examples/cli-bundled.cjs +58 -18
- package/compiled/examples/validator-bundled.cjs +1 -1
- package/compiled/src/ifc/ifc_geometry_extraction.d.ts +2 -2
- package/compiled/src/ifc/ifc_geometry_extraction.d.ts.map +1 -1
- package/compiled/src/ifc/ifc_geometry_extraction.js +59 -25
- package/compiled/src/rendering/threejs/html_viewer.d.ts +9 -0
- package/compiled/src/rendering/threejs/html_viewer.d.ts.map +1 -1
- package/compiled/src/rendering/threejs/html_viewer.js +12 -0
- package/compiled/src/rendering/threejs/simple_viewer_scene.d.ts +21 -0
- package/compiled/src/rendering/threejs/simple_viewer_scene.d.ts.map +1 -1
- package/compiled/src/rendering/threejs/simple_viewer_scene.js +101 -0
- package/compiled/src/version/version.js +1 -1
- package/compiled/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -68492,7 +68492,7 @@ var IfcStepParser = class extends StepParser {
|
|
|
68492
68492
|
IfcStepParser.Instance = new IfcStepParser();
|
|
68493
68493
|
|
|
68494
68494
|
// compiled/src/version/version.js
|
|
68495
|
-
var versionString = "Conway Web-Ifc Shim v0.
|
|
68495
|
+
var versionString = "Conway Web-Ifc Shim v0.21.921";
|
|
68496
68496
|
|
|
68497
68497
|
// compiled/src/statistics/statistics.js
|
|
68498
68498
|
var Statistics = class {
|
|
@@ -84633,7 +84633,7 @@ var IfcSceneBuilder = class {
|
|
|
84633
84633
|
};
|
|
84634
84634
|
|
|
84635
84635
|
// compiled/src/version/version.js
|
|
84636
|
-
var versionString = "Conway Web-Ifc Shim v0.
|
|
84636
|
+
var versionString = "Conway Web-Ifc Shim v0.21.921";
|
|
84637
84637
|
|
|
84638
84638
|
// compiled/src/statistics/statistics.js
|
|
84639
84639
|
var Statistics = class {
|
|
@@ -85627,10 +85627,10 @@ var IfcGeometryExtraction = class _IfcGeometryExtraction {
|
|
|
85627
85627
|
}
|
|
85628
85628
|
return this.model.geometry.getByLocalID(from.localID);
|
|
85629
85629
|
}
|
|
85630
|
-
|
|
85630
|
+
getFirstBooleanOperandGeometry(from, isRelVoid = false, representationItem) {
|
|
85631
85631
|
return this.getOperandGeometry(from.FirstOperand, false, isRelVoid, representationItem);
|
|
85632
85632
|
}
|
|
85633
|
-
|
|
85633
|
+
getSecondBooleanOperandGeometry(from, isRelVoid = false) {
|
|
85634
85634
|
return this.getOperandGeometry(from.SecondOperand, true, isRelVoid, void 0);
|
|
85635
85635
|
}
|
|
85636
85636
|
/**
|
|
@@ -85654,7 +85654,7 @@ var IfcGeometryExtraction = class _IfcGeometryExtraction {
|
|
|
85654
85654
|
operand2ID: from.SecondOperand.localID
|
|
85655
85655
|
}, true);
|
|
85656
85656
|
let flatFirstMeshVector;
|
|
85657
|
-
const firstMesh = this.
|
|
85657
|
+
const firstMesh = this.getFirstBooleanOperandGeometry(from, isRelVoid, from);
|
|
85658
85658
|
if (firstMesh !== void 0 && firstMesh.type === CanonicalMeshType.BUFFER_GEOMETRY) {
|
|
85659
85659
|
flatFirstMeshVector = this.nativeVectorGeometry();
|
|
85660
85660
|
flatFirstMeshVector.push_back(firstMesh.geometry);
|
|
@@ -85665,7 +85665,7 @@ var IfcGeometryExtraction = class _IfcGeometryExtraction {
|
|
|
85665
85665
|
return;
|
|
85666
85666
|
}
|
|
85667
85667
|
let flatSecondMeshVector;
|
|
85668
|
-
const secondMesh = this.
|
|
85668
|
+
const secondMesh = this.getSecondBooleanOperandGeometry(from, isRelVoid);
|
|
85669
85669
|
if (secondMesh !== void 0 && secondMesh.type === CanonicalMeshType.BUFFER_GEOMETRY) {
|
|
85670
85670
|
flatSecondMeshVector = this.nativeVectorGeometry();
|
|
85671
85671
|
flatSecondMeshVector.push_back(secondMesh.geometry);
|
|
@@ -85756,7 +85756,7 @@ var IfcGeometryExtraction = class _IfcGeometryExtraction {
|
|
|
85756
85756
|
++this.csgDepth;
|
|
85757
85757
|
try {
|
|
85758
85758
|
const maximumCsgMemoizationDepth = this.csgDepthLimit;
|
|
85759
|
-
const firstMesh = this.
|
|
85759
|
+
const firstMesh = this.getFirstBooleanOperandGeometry(from, isRelVoid, representationItem);
|
|
85760
85760
|
if (this.limitCSGDepth && this.csgDepth >= maximumCsgMemoizationDepth) {
|
|
85761
85761
|
if (firstMesh === void 0) {
|
|
85762
85762
|
return;
|
|
@@ -85803,7 +85803,7 @@ var IfcGeometryExtraction = class _IfcGeometryExtraction {
|
|
|
85803
85803
|
return;
|
|
85804
85804
|
}
|
|
85805
85805
|
let flatSecondMeshVector;
|
|
85806
|
-
const secondMesh = this.
|
|
85806
|
+
const secondMesh = this.getSecondBooleanOperandGeometry(from, isRelVoid);
|
|
85807
85807
|
if (secondMesh !== void 0 && secondMesh.type === CanonicalMeshType.BUFFER_GEOMETRY) {
|
|
85808
85808
|
flatSecondMeshVector = this.nativeVectorGeometry();
|
|
85809
85809
|
flatSecondMeshVector.push_back(secondMesh.geometry);
|
|
@@ -86746,23 +86746,63 @@ var IfcGeometryExtraction = class _IfcGeometryExtraction {
|
|
|
86746
86746
|
}
|
|
86747
86747
|
if (from instanceof IfcBSplineCurve) {
|
|
86748
86748
|
ifcCurve = this.extractBSplineCurve(from, parentSense, isEdge);
|
|
86749
|
-
if (trimmingArguments !== void 0) {
|
|
86750
|
-
Logger.info("inverting curve");
|
|
86751
|
-
ifcCurve.invert();
|
|
86752
|
-
}
|
|
86753
86749
|
} else if (from instanceof IfcTrimmedCurve) {
|
|
86754
|
-
ifcCurve = this.extractIfcTrimmedCurve(from, parentSense);
|
|
86750
|
+
ifcCurve = this.extractIfcTrimmedCurve(from, parentSense, isEdge);
|
|
86755
86751
|
} else if (from instanceof IfcPolyline) {
|
|
86756
86752
|
ifcCurve = this.extractIfcPolyline(from, parentSense, isEdge);
|
|
86757
|
-
if (ifcCurve !== void 0) {
|
|
86758
|
-
if (trimmingArguments?.exist) {
|
|
86759
|
-
ifcCurve.invert();
|
|
86760
|
-
}
|
|
86761
|
-
}
|
|
86762
86753
|
} else if (from instanceof IfcIndexedPolyCurve) {
|
|
86763
86754
|
ifcCurve = this.extractIndexedPolyCurve(from);
|
|
86764
86755
|
} else if (from instanceof IfcCircle) {
|
|
86765
|
-
|
|
86756
|
+
let paramsGetIfcTrimmedCurve;
|
|
86757
|
+
if (trimmingArguments?.exist) {
|
|
86758
|
+
paramsGetIfcTrimmedCurve = {
|
|
86759
|
+
masterRepresentation: trimmingArguments.start?.hasPos ? 0 : 1,
|
|
86760
|
+
dimensions: 3,
|
|
86761
|
+
senseAgreement: parentSense,
|
|
86762
|
+
trim1Cartesian2D: trimmingArguments.start?.pos,
|
|
86763
|
+
trim1Cartesian3D: trimmingArguments.start?.pos3D,
|
|
86764
|
+
trim1Double: trimmingArguments.start?.param ?? 0,
|
|
86765
|
+
trim2Cartesian2D: trimmingArguments.end?.pos,
|
|
86766
|
+
trim2Cartesian3D: trimmingArguments.end?.pos3D,
|
|
86767
|
+
trim2Double: trimmingArguments.end?.param ?? 0,
|
|
86768
|
+
trimExists: true
|
|
86769
|
+
};
|
|
86770
|
+
}
|
|
86771
|
+
ifcCurve = this.extractIfcCircle(from, parentSense, paramsGetIfcTrimmedCurve);
|
|
86772
|
+
} else if (from instanceof IfcEllipse) {
|
|
86773
|
+
let paramsGetIfcTrimmedCurve;
|
|
86774
|
+
if (trimmingArguments?.exist) {
|
|
86775
|
+
paramsGetIfcTrimmedCurve = {
|
|
86776
|
+
masterRepresentation: trimmingArguments.start?.hasPos ? 0 : 1,
|
|
86777
|
+
dimensions: 3,
|
|
86778
|
+
senseAgreement: parentSense,
|
|
86779
|
+
trim1Cartesian2D: trimmingArguments.start?.pos,
|
|
86780
|
+
trim1Cartesian3D: trimmingArguments.start?.pos3D,
|
|
86781
|
+
trim1Double: trimmingArguments.start?.param ?? 0,
|
|
86782
|
+
trim2Cartesian2D: trimmingArguments.end?.pos,
|
|
86783
|
+
trim2Cartesian3D: trimmingArguments.end?.pos3D,
|
|
86784
|
+
trim2Double: trimmingArguments.end?.param ?? 0,
|
|
86785
|
+
trimExists: true
|
|
86786
|
+
};
|
|
86787
|
+
}
|
|
86788
|
+
ifcCurve = this.extractIfcEllipse(from, parentSense, paramsGetIfcTrimmedCurve);
|
|
86789
|
+
} else if (from instanceof IfcLine) {
|
|
86790
|
+
let paramsGetIfcTrimmedCurve;
|
|
86791
|
+
if (trimmingArguments?.exist) {
|
|
86792
|
+
paramsGetIfcTrimmedCurve = {
|
|
86793
|
+
masterRepresentation: trimmingArguments.start?.hasPos ? 0 : 1,
|
|
86794
|
+
dimensions: 3,
|
|
86795
|
+
senseAgreement: parentSense,
|
|
86796
|
+
trim1Cartesian2D: trimmingArguments.start?.pos,
|
|
86797
|
+
trim1Cartesian3D: trimmingArguments.start?.pos3D,
|
|
86798
|
+
trim1Double: trimmingArguments.start?.param ?? 0,
|
|
86799
|
+
trim2Cartesian2D: trimmingArguments.end?.pos,
|
|
86800
|
+
trim2Cartesian3D: trimmingArguments.end?.pos3D,
|
|
86801
|
+
trim2Double: trimmingArguments.end?.param ?? 0,
|
|
86802
|
+
trimExists: true
|
|
86803
|
+
};
|
|
86804
|
+
}
|
|
86805
|
+
ifcCurve = this.extractIfcLine(from, parentSense, isEdge, paramsGetIfcTrimmedCurve);
|
|
86766
86806
|
} else if (from instanceof IfcCompositeCurve) {
|
|
86767
86807
|
ifcCurve = this.extractCompositeCurve(from, parentSense);
|
|
86768
86808
|
}
|
|
@@ -68490,7 +68490,7 @@ var IfcStepParser = class extends StepParser {
|
|
|
68490
68490
|
IfcStepParser.Instance = new IfcStepParser();
|
|
68491
68491
|
|
|
68492
68492
|
// compiled/src/version/version.js
|
|
68493
|
-
var versionString = "Conway Web-Ifc Shim v0.
|
|
68493
|
+
var versionString = "Conway Web-Ifc Shim v0.21.921";
|
|
68494
68494
|
|
|
68495
68495
|
// compiled/src/statistics/statistics.js
|
|
68496
68496
|
var Statistics = class {
|
|
@@ -319,8 +319,8 @@ export declare class IfcGeometryExtraction {
|
|
|
319
319
|
*/
|
|
320
320
|
dropNonSceneGeometry(localID: number): void;
|
|
321
321
|
getOperandGeometry(from: IfcBooleanResult | IfcCsgPrimitive3D | IfcHalfSpaceSolid | IfcSolidModel | IfcTessellatedFaceSet, isSecondOperand: boolean, isRelVoid?: boolean, representationItem?: IfcRepresentationItem): CanonicalMesh | undefined;
|
|
322
|
-
|
|
323
|
-
|
|
322
|
+
getFirstBooleanOperandGeometry(from: IfcBooleanResult, isRelVoid?: boolean, representationItem?: IfcRepresentationItem): CanonicalMesh | undefined;
|
|
323
|
+
getSecondBooleanOperandGeometry(from: IfcBooleanResult, isRelVoid?: boolean): CanonicalMesh | undefined;
|
|
324
324
|
/**
|
|
325
325
|
* Accepts IfcBooleanResult and IfcBooleanClippingResult
|
|
326
326
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ifc_geometry_extraction.d.ts","sourceRoot":"","sources":["../../../src/ifc/ifc_geometry_extraction.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ifc_geometry_extraction.d.ts","sourceRoot":"","sources":["../../../src/ifc/ifc_geometry_extraction.ts"],"names":[],"mappings":"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"}
|
|
@@ -721,10 +721,10 @@ export class IfcGeometryExtraction {
|
|
|
721
721
|
}
|
|
722
722
|
return this.model.geometry.getByLocalID(from.localID);
|
|
723
723
|
}
|
|
724
|
-
|
|
724
|
+
getFirstBooleanOperandGeometry(from, isRelVoid = false, representationItem) {
|
|
725
725
|
return this.getOperandGeometry(from.FirstOperand, false, isRelVoid, representationItem);
|
|
726
726
|
}
|
|
727
|
-
|
|
727
|
+
getSecondBooleanOperandGeometry(from, isRelVoid = false) {
|
|
728
728
|
return this.getOperandGeometry(from.SecondOperand, true, isRelVoid, undefined);
|
|
729
729
|
}
|
|
730
730
|
/**
|
|
@@ -749,7 +749,7 @@ export class IfcGeometryExtraction {
|
|
|
749
749
|
}, true);
|
|
750
750
|
// get geometry TODO(nickcastel50): eventually support flattening meshes
|
|
751
751
|
let flatFirstMeshVector; // = this.nativeVectorGeometry()
|
|
752
|
-
const firstMesh = this.
|
|
752
|
+
const firstMesh = this.getFirstBooleanOperandGeometry(from, isRelVoid, from);
|
|
753
753
|
if (firstMesh !== void 0 && firstMesh.type === CanonicalMeshType.BUFFER_GEOMETRY) {
|
|
754
754
|
/* const _testEntity = this.model.getElementByLocalID(firstMesh.localID)!
|
|
755
755
|
const outputFilePath_ =
|
|
@@ -776,7 +776,7 @@ export class IfcGeometryExtraction {
|
|
|
776
776
|
return;
|
|
777
777
|
}
|
|
778
778
|
let flatSecondMeshVector; // = this.nativeVectorGeometry()
|
|
779
|
-
const secondMesh = this.
|
|
779
|
+
const secondMesh = this.getSecondBooleanOperandGeometry(from, isRelVoid);
|
|
780
780
|
if (secondMesh !== void 0 && secondMesh.type === CanonicalMeshType.BUFFER_GEOMETRY) {
|
|
781
781
|
flatSecondMeshVector = this.nativeVectorGeometry();
|
|
782
782
|
flatSecondMeshVector.push_back(secondMesh.geometry);
|
|
@@ -887,7 +887,7 @@ export class IfcGeometryExtraction {
|
|
|
887
887
|
++this.csgDepth;
|
|
888
888
|
try {
|
|
889
889
|
const maximumCsgMemoizationDepth = this.csgDepthLimit;
|
|
890
|
-
const firstMesh = this.
|
|
890
|
+
const firstMesh = this.getFirstBooleanOperandGeometry(from, isRelVoid, representationItem);
|
|
891
891
|
if (this.limitCSGDepth && this.csgDepth >= maximumCsgMemoizationDepth) {
|
|
892
892
|
if (firstMesh === void 0) {
|
|
893
893
|
return;
|
|
@@ -942,7 +942,7 @@ export class IfcGeometryExtraction {
|
|
|
942
942
|
return;
|
|
943
943
|
}
|
|
944
944
|
let flatSecondMeshVector;
|
|
945
|
-
const secondMesh = this.
|
|
945
|
+
const secondMesh = this.getSecondBooleanOperandGeometry(from, isRelVoid);
|
|
946
946
|
if (secondMesh !== void 0 && secondMesh.type === CanonicalMeshType.BUFFER_GEOMETRY) {
|
|
947
947
|
flatSecondMeshVector = this.nativeVectorGeometry();
|
|
948
948
|
flatSecondMeshVector.push_back(secondMesh.geometry);
|
|
@@ -1976,35 +1976,69 @@ export class IfcGeometryExtraction {
|
|
|
1976
1976
|
}
|
|
1977
1977
|
if (from instanceof IfcBSplineCurve) {
|
|
1978
1978
|
ifcCurve = this.extractBSplineCurve(from, parentSense, isEdge);
|
|
1979
|
-
if (trimmingArguments !== void 0) {
|
|
1980
|
-
// invert curve
|
|
1981
|
-
Logger.info("inverting curve");
|
|
1982
|
-
ifcCurve.invert();
|
|
1983
|
-
}
|
|
1984
|
-
// Logger.info(`Curve type: ${EntityTypesIfc[from.type]} - express ID: ${from.expressID}`)
|
|
1985
|
-
/* for (let i = 0; i < ifcCurve.getPointsSize(); ++i) {
|
|
1986
|
-
if (from.Degree === 2) {
|
|
1987
|
-
const pt_ = ifcCurve.get2d(i)
|
|
1988
|
-
Logger.info(`Point ${i}: x: ${pt_.x}, y: ${pt_.y}, z: ${pt_.z}`)
|
|
1989
|
-
}
|
|
1990
|
-
}*/
|
|
1991
1979
|
}
|
|
1992
1980
|
else if (from instanceof IfcTrimmedCurve) {
|
|
1993
|
-
ifcCurve = this.extractIfcTrimmedCurve(from, parentSense);
|
|
1981
|
+
ifcCurve = this.extractIfcTrimmedCurve(from, parentSense, isEdge);
|
|
1994
1982
|
}
|
|
1995
1983
|
else if (from instanceof IfcPolyline) {
|
|
1996
1984
|
ifcCurve = this.extractIfcPolyline(from, parentSense, isEdge);
|
|
1997
|
-
if (ifcCurve !== void 0) {
|
|
1998
|
-
if (trimmingArguments?.exist) {
|
|
1999
|
-
ifcCurve.invert();
|
|
2000
|
-
}
|
|
2001
|
-
}
|
|
2002
1985
|
}
|
|
2003
1986
|
else if (from instanceof IfcIndexedPolyCurve) {
|
|
2004
1987
|
ifcCurve = this.extractIndexedPolyCurve(from);
|
|
2005
1988
|
}
|
|
2006
1989
|
else if (from instanceof IfcCircle) {
|
|
2007
|
-
|
|
1990
|
+
let paramsGetIfcTrimmedCurve;
|
|
1991
|
+
if (trimmingArguments?.exist) {
|
|
1992
|
+
paramsGetIfcTrimmedCurve = {
|
|
1993
|
+
masterRepresentation: trimmingArguments.start?.hasPos ? 0 : 1,
|
|
1994
|
+
dimensions: 3,
|
|
1995
|
+
senseAgreement: parentSense,
|
|
1996
|
+
trim1Cartesian2D: trimmingArguments.start?.pos,
|
|
1997
|
+
trim1Cartesian3D: trimmingArguments.start?.pos3D,
|
|
1998
|
+
trim1Double: trimmingArguments.start?.param ?? 0,
|
|
1999
|
+
trim2Cartesian2D: trimmingArguments.end?.pos,
|
|
2000
|
+
trim2Cartesian3D: trimmingArguments.end?.pos3D,
|
|
2001
|
+
trim2Double: trimmingArguments.end?.param ?? 0,
|
|
2002
|
+
trimExists: true
|
|
2003
|
+
};
|
|
2004
|
+
}
|
|
2005
|
+
ifcCurve = this.extractIfcCircle(from, parentSense, paramsGetIfcTrimmedCurve);
|
|
2006
|
+
}
|
|
2007
|
+
else if (from instanceof IfcEllipse) {
|
|
2008
|
+
let paramsGetIfcTrimmedCurve;
|
|
2009
|
+
if (trimmingArguments?.exist) {
|
|
2010
|
+
paramsGetIfcTrimmedCurve = {
|
|
2011
|
+
masterRepresentation: trimmingArguments.start?.hasPos ? 0 : 1,
|
|
2012
|
+
dimensions: 3,
|
|
2013
|
+
senseAgreement: parentSense,
|
|
2014
|
+
trim1Cartesian2D: trimmingArguments.start?.pos,
|
|
2015
|
+
trim1Cartesian3D: trimmingArguments.start?.pos3D,
|
|
2016
|
+
trim1Double: trimmingArguments.start?.param ?? 0,
|
|
2017
|
+
trim2Cartesian2D: trimmingArguments.end?.pos,
|
|
2018
|
+
trim2Cartesian3D: trimmingArguments.end?.pos3D,
|
|
2019
|
+
trim2Double: trimmingArguments.end?.param ?? 0,
|
|
2020
|
+
trimExists: true
|
|
2021
|
+
};
|
|
2022
|
+
}
|
|
2023
|
+
ifcCurve = this.extractIfcEllipse(from, parentSense, paramsGetIfcTrimmedCurve);
|
|
2024
|
+
}
|
|
2025
|
+
else if (from instanceof IfcLine) {
|
|
2026
|
+
let paramsGetIfcTrimmedCurve;
|
|
2027
|
+
if (trimmingArguments?.exist) {
|
|
2028
|
+
paramsGetIfcTrimmedCurve = {
|
|
2029
|
+
masterRepresentation: trimmingArguments.start?.hasPos ? 0 : 1,
|
|
2030
|
+
dimensions: 3,
|
|
2031
|
+
senseAgreement: parentSense,
|
|
2032
|
+
trim1Cartesian2D: trimmingArguments.start?.pos,
|
|
2033
|
+
trim1Cartesian3D: trimmingArguments.start?.pos3D,
|
|
2034
|
+
trim1Double: trimmingArguments.start?.param ?? 0,
|
|
2035
|
+
trim2Cartesian2D: trimmingArguments.end?.pos,
|
|
2036
|
+
trim2Cartesian3D: trimmingArguments.end?.pos3D,
|
|
2037
|
+
trim2Double: trimmingArguments.end?.param ?? 0,
|
|
2038
|
+
trimExists: true
|
|
2039
|
+
};
|
|
2040
|
+
}
|
|
2041
|
+
ifcCurve = this.extractIfcLine(from, parentSense, isEdge, paramsGetIfcTrimmedCurve);
|
|
2008
2042
|
}
|
|
2009
2043
|
else if (from instanceof IfcCompositeCurve) {
|
|
2010
2044
|
ifcCurve = this.extractCompositeCurve(from, parentSense);
|
|
@@ -12,4 +12,13 @@ export declare function dropHandler(scene: SimpleViewerScene, event: DragEvent):
|
|
|
12
12
|
* @return {void}
|
|
13
13
|
*/
|
|
14
14
|
export declare function initViewer(): SimpleViewerScene;
|
|
15
|
+
/**
|
|
16
|
+
* Initialise the viewer with a GL context.
|
|
17
|
+
*
|
|
18
|
+
* @param {WebGLRenderingContext} context The GL context to use.
|
|
19
|
+
* @param width
|
|
20
|
+
* @param height
|
|
21
|
+
* @return {void}
|
|
22
|
+
*/
|
|
23
|
+
export declare function initViewerWithGLContext(context: WebGLRenderingContext, width: number, height: number): SimpleViewerScene;
|
|
15
24
|
//# sourceMappingURL=html_viewer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html_viewer.d.ts","sourceRoot":"","sources":["../../../../src/rendering/threejs/html_viewer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAGzD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,GAAI,IAAI,CA4C9E;AAED;;;;GAIG;AACH,wBAAgB,UAAU,IAAI,iBAAiB,CAgB9C"}
|
|
1
|
+
{"version":3,"file":"html_viewer.d.ts","sourceRoot":"","sources":["../../../../src/rendering/threejs/html_viewer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAGzD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,GAAI,IAAI,CA4C9E;AAED;;;;GAIG;AACH,wBAAgB,UAAU,IAAI,iBAAiB,CAgB9C;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAC,qBAAqB,EAAE,KAAK,EAAC,MAAM,EAAE,MAAM,EAAC,MAAM,GAAG,iBAAiB,CAKrH"}
|
|
@@ -56,3 +56,15 @@ export function initViewer() {
|
|
|
56
56
|
document.addEventListener("drop", (e) => dropHandler(simpleViewerScene, e));
|
|
57
57
|
return simpleViewerScene;
|
|
58
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* Initialise the viewer with a GL context.
|
|
61
|
+
*
|
|
62
|
+
* @param {WebGLRenderingContext} context The GL context to use.
|
|
63
|
+
* @param width
|
|
64
|
+
* @param height
|
|
65
|
+
* @return {void}
|
|
66
|
+
*/
|
|
67
|
+
export function initViewerWithGLContext(context, width, height) {
|
|
68
|
+
const simpleViewerScene = SimpleViewerScene.createSceneWithGLContext(context, width, height);
|
|
69
|
+
return simpleViewerScene;
|
|
70
|
+
}
|
|
@@ -220,6 +220,13 @@ export declare class SimpleViewerScene {
|
|
|
220
220
|
* @param pixelRatio The pixel ratio of the scene.
|
|
221
221
|
*/
|
|
222
222
|
private setupAO;
|
|
223
|
+
/**
|
|
224
|
+
* Load a new model, replacing any current model in the scene,
|
|
225
|
+
* uses promises/exceptions for error handling
|
|
226
|
+
*
|
|
227
|
+
* @param model The model to add to the scene
|
|
228
|
+
*/
|
|
229
|
+
addModelToScene(model: SceneObject): void;
|
|
223
230
|
/**
|
|
224
231
|
* Load a new model, replacing any current model in the scene,
|
|
225
232
|
* uses promises/exceptions for error handling
|
|
@@ -239,5 +246,19 @@ export declare class SimpleViewerScene {
|
|
|
239
246
|
* @return {SimpleViewerScene} The created scene.
|
|
240
247
|
*/
|
|
241
248
|
static createSceneAttachedToElement(element: HTMLElement, useElementDimensions?: boolean, options?: SimpleViewerSceneOptions): SimpleViewerScene;
|
|
249
|
+
/**
|
|
250
|
+
* Create a simple viewer scene, including the required
|
|
251
|
+
* threejs artefacts and attach it to a DOM element.
|
|
252
|
+
*
|
|
253
|
+
* @param element The element to attach to.
|
|
254
|
+
* @param useElementDimensions If true use the width and height of the element,
|
|
255
|
+
* if false use the window dimensions.
|
|
256
|
+
* @param height
|
|
257
|
+
* @param width
|
|
258
|
+
* @param context
|
|
259
|
+
* @param options The scene viewer options for attaching this element.
|
|
260
|
+
* @return {SimpleViewerScene} The created scene.
|
|
261
|
+
*/
|
|
262
|
+
static createSceneWithGLContext(context: WebGLRenderingContext, width?: number, height?: number, options?: SimpleViewerSceneOptions): SimpleViewerScene;
|
|
242
263
|
}
|
|
243
264
|
//# sourceMappingURL=simple_viewer_scene.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simple_viewer_scene.d.ts","sourceRoot":"","sources":["../../../../src/rendering/threejs/simple_viewer_scene.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"simple_viewer_scene.d.ts","sourceRoot":"","sources":["../../../../src/rendering/threejs/simple_viewer_scene.ts"],"names":[],"mappings":"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"}
|
|
@@ -335,6 +335,69 @@ export class SimpleViewerScene {
|
|
|
335
335
|
fxaaPass.setSize(width, height);
|
|
336
336
|
composer.addPass(fxaaPass);
|
|
337
337
|
}
|
|
338
|
+
/**
|
|
339
|
+
* Load a new model, replacing any current model in the scene,
|
|
340
|
+
* uses promises/exceptions for error handling
|
|
341
|
+
*
|
|
342
|
+
* @param model The model to add to the scene
|
|
343
|
+
*/
|
|
344
|
+
addModelToScene(model) {
|
|
345
|
+
try {
|
|
346
|
+
const scene = this.scene;
|
|
347
|
+
const currentModelSceneObject = this.currentModelSceneObject_;
|
|
348
|
+
if (currentModelSceneObject !== void 0) {
|
|
349
|
+
scene.remove(currentModelSceneObject);
|
|
350
|
+
this.currentModelSceneObject_ = void 0;
|
|
351
|
+
this.currentModel_ = void 0;
|
|
352
|
+
}
|
|
353
|
+
model.castShadow = true;
|
|
354
|
+
model.receiveShadow = true;
|
|
355
|
+
this.currentModelSceneObject_ = model;
|
|
356
|
+
const currentBoundingBox = new THREE.Box3().setFromObject(model);
|
|
357
|
+
const currentBoundingSphere = currentBoundingBox
|
|
358
|
+
.getBoundingSphere(new THREE.Sphere());
|
|
359
|
+
const sphereRadius = currentBoundingSphere.radius;
|
|
360
|
+
model.position.copy(currentBoundingSphere.center.clone().negate());
|
|
361
|
+
scene.add(model);
|
|
362
|
+
// Add this to the scene to see the bounding box.
|
|
363
|
+
// const conwaySceneObjectHelper = new THREE.BoxHelper( conwaySceneObject )
|
|
364
|
+
// scene.add( conwaySceneObjectHelper )
|
|
365
|
+
const light = this.light;
|
|
366
|
+
this.currentRadius_ = sphereRadius;
|
|
367
|
+
light.position.copy(this.lightDir_).normalize().multiplyScalar(sphereRadius);
|
|
368
|
+
light.shadow.camera.near = 0.1 * sphereRadius;
|
|
369
|
+
light.shadow.camera.far = (2.1 * sphereRadius);
|
|
370
|
+
light.shadow.camera.top = sphereRadius;
|
|
371
|
+
light.shadow.camera.bottom = -sphereRadius;
|
|
372
|
+
light.shadow.camera.left = -sphereRadius;
|
|
373
|
+
light.shadow.camera.right = sphereRadius;
|
|
374
|
+
light.shadow.camera.updateProjectionMatrix();
|
|
375
|
+
light.updateMatrix();
|
|
376
|
+
light.shadow.autoUpdate = false;
|
|
377
|
+
light.shadow.needsUpdate = true;
|
|
378
|
+
this.renderer.shadowMap.needsUpdate = true;
|
|
379
|
+
// Enable this to see the shadow frustum
|
|
380
|
+
// const shadowHelper = new THREE.CameraHelper( light.shadow.camera )
|
|
381
|
+
// scene.add( shadowHelper )
|
|
382
|
+
if (this.options.initialiseCameraToModel ?? defaultOptions.initialiseCameraToModel) {
|
|
383
|
+
const camera = this.camera;
|
|
384
|
+
camera.position.set(0, sphereRadius * 0.25, sphereRadius);
|
|
385
|
+
const near = sphereRadius * NEAR_RATIO;
|
|
386
|
+
const cameraZ = sphereRadius + near;
|
|
387
|
+
camera.near = near;
|
|
388
|
+
camera.far = cameraZ * 4;
|
|
389
|
+
const [width, height] = this.dimensionsFunction();
|
|
390
|
+
if (camera instanceof THREE.PerspectiveCamera) {
|
|
391
|
+
camera.aspect = width / height;
|
|
392
|
+
}
|
|
393
|
+
camera.lookAt(new THREE.Vector3(0, 0, -sphereRadius * 0.25));
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
catch (e) {
|
|
397
|
+
Logger.error(`Error adding model to scene: ${e?.message ?? "<unknown>"} `);
|
|
398
|
+
throw e;
|
|
399
|
+
}
|
|
400
|
+
}
|
|
338
401
|
/**
|
|
339
402
|
* Load a new model, replacing any current model in the scene,
|
|
340
403
|
* uses promises/exceptions for error handling
|
|
@@ -463,4 +526,42 @@ export class SimpleViewerScene {
|
|
|
463
526
|
});
|
|
464
527
|
return result;
|
|
465
528
|
}
|
|
529
|
+
/**
|
|
530
|
+
* Create a simple viewer scene, including the required
|
|
531
|
+
* threejs artefacts and attach it to a DOM element.
|
|
532
|
+
*
|
|
533
|
+
* @param element The element to attach to.
|
|
534
|
+
* @param useElementDimensions If true use the width and height of the element,
|
|
535
|
+
* if false use the window dimensions.
|
|
536
|
+
* @param height
|
|
537
|
+
* @param width
|
|
538
|
+
* @param context
|
|
539
|
+
* @param options The scene viewer options for attaching this element.
|
|
540
|
+
* @return {SimpleViewerScene} The created scene.
|
|
541
|
+
*/
|
|
542
|
+
static createSceneWithGLContext(context, width = 1024, height = 768, options = defaultOptions) {
|
|
543
|
+
const dimensionsFunction = () => {
|
|
544
|
+
return [width, height];
|
|
545
|
+
};
|
|
546
|
+
const [startingWidth, startingHeight] = dimensionsFunction();
|
|
547
|
+
const renderer = new THREE.WebGLRenderer({ antialias: true, logarithmicDepthBuffer: true, context: context });
|
|
548
|
+
const scene = new THREE.Scene();
|
|
549
|
+
const camera = new THREE.PerspectiveCamera(CAMERA_FOV, startingWidth / startingHeight, DEFAULT_NEAR, DEFAULT_FAR);
|
|
550
|
+
renderer.sortObjects = true;
|
|
551
|
+
let pixelRatio = window.devicePixelRatio;
|
|
552
|
+
let worstCaseTextureSize = Math.max(window.innerWidth, window.innerHeight) * pixelRatio;
|
|
553
|
+
while (worstCaseTextureSize > renderer.capabilities.maxTextureSize && pixelRatio > 1) {
|
|
554
|
+
pixelRatio /= 2;
|
|
555
|
+
pixelRatio = Math.min(pixelRatio, 1);
|
|
556
|
+
worstCaseTextureSize = Math.max(window.innerWidth, window.innerHeight) * pixelRatio;
|
|
557
|
+
}
|
|
558
|
+
renderer.setPixelRatio(pixelRatio);
|
|
559
|
+
renderer.setSize(startingWidth, startingHeight);
|
|
560
|
+
renderer.setClearColor(THREE.Color.NAMES.cornflowerblue);
|
|
561
|
+
const result = new SimpleViewerScene(renderer, scene, camera, dimensionsFunction, options);
|
|
562
|
+
renderer.setAnimationLoop(() => {
|
|
563
|
+
result.render();
|
|
564
|
+
});
|
|
565
|
+
return result;
|
|
566
|
+
}
|
|
466
567
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const versionString = 'Conway Web-Ifc Shim v0.
|
|
1
|
+
const versionString = 'Conway Web-Ifc Shim v0.22.921';
|
|
2
2
|
export { versionString };
|