@anov/3d 0.0.1 → 0.0.2
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/README.md +142 -1
- package/dist/core/camera.d.ts +31 -4
- package/dist/core/camera.js +62 -52
- package/dist/core/control/transformControls.d.ts +12 -0
- package/dist/core/control/transformControls.js +72 -0
- package/dist/core/cssRenderer.d.ts +17 -0
- package/dist/core/cssRenderer.js +36 -0
- package/dist/core/global/global.d.ts +27 -0
- package/dist/core/global/global.js +72 -0
- package/dist/core/global/globalControl.d.ts +17 -0
- package/dist/core/global/globalControl.js +62 -0
- package/dist/core/group.d.ts +51 -6
- package/dist/core/group.js +124 -16
- package/dist/core/line.d.ts +13 -0
- package/dist/core/line.js +83 -0
- package/dist/core/mesh.d.ts +12 -7
- package/dist/core/mesh.js +57 -56
- package/dist/core/model.d.ts +11 -3
- package/dist/core/model.js +34 -7
- package/dist/core/scene.d.ts +84 -25
- package/dist/core/scene.js +207 -53
- package/dist/core/use/useScene.d.ts +10 -0
- package/dist/core/use/useScene.js +14 -0
- package/dist/core/use/useframe.d.ts +6 -0
- package/dist/core/use/useframe.js +11 -0
- package/dist/export.d.ts +41 -0
- package/dist/export.js +37 -0
- package/dist/index.d.ts +3 -6
- package/dist/index.js +5 -6
- package/dist/threeCell.d.ts +8 -0
- package/dist/threeCell.js +16 -0
- package/dist/type.d.ts +4 -3
- package/dist/utils/createElement.d.ts +103 -0
- package/dist/utils/createElement.js +145 -0
- package/dist/utils/createLabel.d.ts +2 -0
- package/dist/utils/createLabel.js +4 -0
- package/dist/utils/index.d.ts +36 -0
- package/dist/utils/index.js +76 -0
- package/dist/utils/line.d.ts +0 -0
- package/dist/utils/line.js +0 -0
- package/dist/utils/move.d.ts +48 -0
- package/dist/utils/move.js +149 -0
- package/examples/fonts/LICENSE +13 -0
- package/examples/fonts/README.md +11 -0
- package/examples/fonts/droid/NOTICE +190 -0
- package/examples/fonts/droid/README.txt +18 -0
- package/examples/fonts/droid/droid_sans_bold.typeface.json +1 -0
- package/examples/fonts/droid/droid_sans_mono_regular.typeface.json +1 -0
- package/examples/fonts/droid/droid_sans_regular.typeface.json +1 -0
- package/examples/fonts/droid/droid_serif_bold.typeface.json +1 -0
- package/examples/fonts/droid/droid_serif_regular.typeface.json +1 -0
- package/examples/fonts/gentilis_bold.typeface.json +1 -0
- package/examples/fonts/gentilis_regular.typeface.json +1 -0
- package/examples/fonts/helvetiker_bold.typeface.json +1 -0
- package/examples/fonts/helvetiker_regular.typeface.json +1 -0
- package/examples/fonts/optimer_bold.typeface.json +1 -0
- package/examples/fonts/optimer_regular.typeface.json +1 -0
- package/examples/fonts/ttf/README.md +9 -0
- package/examples/fonts/ttf/kenpixel.ttf +0 -0
- package/examples/jsm/animation/AnimationClipCreator.js +116 -0
- package/examples/jsm/animation/CCDIKSolver.js +482 -0
- package/examples/jsm/animation/MMDAnimationHelper.js +1207 -0
- package/examples/jsm/animation/MMDPhysics.js +1406 -0
- package/examples/jsm/cameras/CinematicCamera.js +208 -0
- package/examples/jsm/capabilities/WebGL.js +91 -0
- package/examples/jsm/capabilities/WebGPU.js +53 -0
- package/examples/jsm/controls/ArcballControls.js +3224 -0
- package/examples/jsm/controls/DragControls.js +220 -0
- package/examples/jsm/controls/FirstPersonControls.js +325 -0
- package/examples/jsm/controls/FlyControls.js +300 -0
- package/examples/jsm/controls/MapControls.js +28 -0
- package/examples/jsm/controls/OrbitControls.js +1388 -0
- package/examples/jsm/controls/PointerLockControls.js +162 -0
- package/examples/jsm/controls/TrackballControls.js +828 -0
- package/examples/jsm/controls/TransformControls.js +1557 -0
- package/examples/jsm/csm/CSM.js +384 -0
- package/examples/jsm/csm/CSMFrustum.js +152 -0
- package/examples/jsm/csm/CSMHelper.js +193 -0
- package/examples/jsm/csm/CSMShader.js +252 -0
- package/examples/jsm/curves/CurveExtras.js +422 -0
- package/examples/jsm/curves/NURBSCurve.js +80 -0
- package/examples/jsm/curves/NURBSSurface.js +52 -0
- package/examples/jsm/curves/NURBSUtils.js +487 -0
- package/examples/jsm/effects/AnaglyphEffect.js +154 -0
- package/examples/jsm/effects/AsciiEffect.js +263 -0
- package/examples/jsm/effects/OutlineEffect.js +539 -0
- package/examples/jsm/effects/ParallaxBarrierEffect.js +119 -0
- package/examples/jsm/effects/PeppersGhostEffect.js +153 -0
- package/examples/jsm/effects/StereoEffect.js +55 -0
- package/examples/jsm/environments/DebugEnvironment.js +52 -0
- package/examples/jsm/environments/RoomEnvironment.js +148 -0
- package/examples/jsm/exporters/DRACOExporter.js +267 -0
- package/examples/jsm/exporters/EXRExporter.js +501 -0
- package/examples/jsm/exporters/GLTFExporter.js +3161 -0
- package/examples/jsm/exporters/KTX2Exporter.js +292 -0
- package/examples/jsm/exporters/MMDExporter.js +217 -0
- package/examples/jsm/exporters/OBJExporter.js +284 -0
- package/examples/jsm/exporters/PLYExporter.js +528 -0
- package/examples/jsm/exporters/STLExporter.js +199 -0
- package/examples/jsm/exporters/USDZExporter.js +711 -0
- package/examples/jsm/geometries/BoxLineGeometry.js +69 -0
- package/examples/jsm/geometries/ConvexGeometry.js +53 -0
- package/examples/jsm/geometries/DecalGeometry.js +356 -0
- package/examples/jsm/geometries/ParametricGeometries.js +254 -0
- package/examples/jsm/geometries/ParametricGeometry.js +139 -0
- package/examples/jsm/geometries/RoundedBoxGeometry.js +155 -0
- package/examples/jsm/geometries/TeapotGeometry.js +704 -0
- package/examples/jsm/geometries/TextGeometry.js +57 -0
- package/examples/jsm/helpers/LightProbeHelper.js +130 -0
- package/examples/jsm/helpers/OctreeHelper.js +73 -0
- package/examples/jsm/helpers/PositionalAudioHelper.js +109 -0
- package/examples/jsm/helpers/RectAreaLightHelper.js +85 -0
- package/examples/jsm/helpers/VertexNormalsHelper.js +96 -0
- package/examples/jsm/helpers/VertexTangentsHelper.js +88 -0
- package/examples/jsm/helpers/ViewHelper.js +333 -0
- package/examples/jsm/interactive/HTMLMesh.js +565 -0
- package/examples/jsm/interactive/InteractiveGroup.js +116 -0
- package/examples/jsm/interactive/SelectionBox.js +227 -0
- package/examples/jsm/interactive/SelectionHelper.js +104 -0
- package/examples/jsm/libs/ammo.wasm.js +822 -0
- package/examples/jsm/libs/ammo.wasm.wasm +0 -0
- package/examples/jsm/libs/basis/README.md +46 -0
- package/examples/jsm/libs/basis/basis_transcoder.js +21 -0
- package/examples/jsm/libs/basis/basis_transcoder.wasm +0 -0
- package/examples/jsm/libs/chevrotain.module.min.js +141 -0
- package/examples/jsm/libs/draco/README.md +32 -0
- package/examples/jsm/libs/draco/draco_decoder.js +34 -0
- package/examples/jsm/libs/draco/draco_decoder.wasm +0 -0
- package/examples/jsm/libs/draco/draco_encoder.js +33 -0
- package/examples/jsm/libs/draco/draco_wasm_wrapper.js +117 -0
- package/examples/jsm/libs/draco/gltf/draco_decoder.js +33 -0
- package/examples/jsm/libs/draco/gltf/draco_decoder.wasm +0 -0
- package/examples/jsm/libs/draco/gltf/draco_encoder.js +33 -0
- package/examples/jsm/libs/draco/gltf/draco_wasm_wrapper.js +116 -0
- package/examples/jsm/libs/ecsy.module.js +1792 -0
- package/examples/jsm/libs/fflate.module.js +2474 -0
- package/examples/jsm/libs/ktx-parse.module.js +1 -0
- package/examples/jsm/libs/lil-gui.module.min.js +8 -0
- package/examples/jsm/libs/lottie_canvas.module.js +14844 -0
- package/examples/jsm/libs/meshopt_decoder.module.js +178 -0
- package/examples/jsm/libs/mikktspace.module.js +128 -0
- package/examples/jsm/libs/mmdparser.module.js +11530 -0
- package/examples/jsm/libs/motion-controllers.module.js +397 -0
- package/examples/jsm/libs/opentype.module.js +14568 -0
- package/examples/jsm/libs/potpack.module.js +125 -0
- package/examples/jsm/libs/rhino3dm/rhino3dm.js +21 -0
- package/examples/jsm/libs/rhino3dm/rhino3dm.module.js +16 -0
- package/examples/jsm/libs/rhino3dm/rhino3dm.wasm +0 -0
- package/examples/jsm/libs/stats.module.js +167 -0
- package/examples/jsm/libs/tween.module.js +803 -0
- package/examples/jsm/libs/utif.module.js +1579 -0
- package/examples/jsm/libs/zstddec.module.js +1 -0
- package/examples/jsm/lights/IESSpotLight.js +25 -0
- package/examples/jsm/lights/LightProbeGenerator.js +252 -0
- package/examples/jsm/lights/RectAreaLightUniformsLib.js +79 -0
- package/examples/jsm/lines/Line2.js +19 -0
- package/examples/jsm/lines/LineGeometry.js +79 -0
- package/examples/jsm/lines/LineMaterial.js +702 -0
- package/examples/jsm/lines/LineSegments2.js +361 -0
- package/examples/jsm/lines/LineSegmentsGeometry.js +241 -0
- package/examples/jsm/lines/Wireframe.js +56 -0
- package/examples/jsm/lines/WireframeGeometry2.js +24 -0
- package/examples/jsm/loaders/3DMLoader.js +1497 -0
- package/examples/jsm/loaders/3MFLoader.js +1478 -0
- package/examples/jsm/loaders/AMFLoader.js +521 -0
- package/examples/jsm/loaders/BVHLoader.js +437 -0
- package/examples/jsm/loaders/ColladaLoader.js +4122 -0
- package/examples/jsm/loaders/DDSLoader.js +274 -0
- package/examples/jsm/loaders/DRACOLoader.js +612 -0
- package/examples/jsm/loaders/EXRLoader.js +2309 -0
- package/examples/jsm/loaders/FBXLoader.js +4142 -0
- package/examples/jsm/loaders/FontLoader.js +183 -0
- package/examples/jsm/loaders/GCodeLoader.js +261 -0
- package/examples/jsm/loaders/GLTFLoader.js +4576 -0
- package/examples/jsm/loaders/HDRCubeTextureLoader.js +115 -0
- package/examples/jsm/loaders/IESLoader.js +337 -0
- package/examples/jsm/loaders/KMZLoader.js +130 -0
- package/examples/jsm/loaders/KTX2Loader.js +868 -0
- package/examples/jsm/loaders/KTXLoader.js +176 -0
- package/examples/jsm/loaders/LDrawLoader.js +2464 -0
- package/examples/jsm/loaders/LUT3dlLoader.js +151 -0
- package/examples/jsm/loaders/LUTCubeLoader.js +153 -0
- package/examples/jsm/loaders/LWOLoader.js +1052 -0
- package/examples/jsm/loaders/LogLuvLoader.js +606 -0
- package/examples/jsm/loaders/LottieLoader.js +77 -0
- package/examples/jsm/loaders/MD2Loader.js +399 -0
- package/examples/jsm/loaders/MDDLoader.js +102 -0
- package/examples/jsm/loaders/MMDLoader.js +2273 -0
- package/examples/jsm/loaders/MTLLoader.js +567 -0
- package/examples/jsm/loaders/MaterialXLoader.js +734 -0
- package/examples/jsm/loaders/NRRDLoader.js +699 -0
- package/examples/jsm/loaders/OBJLoader.js +905 -0
- package/examples/jsm/loaders/PCDLoader.js +467 -0
- package/examples/jsm/loaders/PDBLoader.js +232 -0
- package/examples/jsm/loaders/PLYLoader.js +771 -0
- package/examples/jsm/loaders/PVRLoader.js +251 -0
- package/examples/jsm/loaders/RGBELoader.js +468 -0
- package/examples/jsm/loaders/RGBMLoader.js +1065 -0
- package/examples/jsm/loaders/STLLoader.js +403 -0
- package/examples/jsm/loaders/SVGLoader.js +3172 -0
- package/examples/jsm/loaders/TDSLoader.js +1124 -0
- package/examples/jsm/loaders/TGALoader.js +517 -0
- package/examples/jsm/loaders/TIFFLoader.js +36 -0
- package/examples/jsm/loaders/TTFLoader.js +214 -0
- package/examples/jsm/loaders/TiltLoader.js +520 -0
- package/examples/jsm/loaders/USDZLoader.js +633 -0
- package/examples/jsm/loaders/VOXLoader.js +311 -0
- package/examples/jsm/loaders/VRMLLoader.js +3533 -0
- package/examples/jsm/loaders/VTKLoader.js +1163 -0
- package/examples/jsm/loaders/XYZLoader.js +106 -0
- package/examples/jsm/loaders/lwo/IFFParser.js +1218 -0
- package/examples/jsm/loaders/lwo/LWO2Parser.js +414 -0
- package/examples/jsm/loaders/lwo/LWO3Parser.js +373 -0
- package/examples/jsm/materials/MeshGouraudMaterial.js +420 -0
- package/examples/jsm/math/Capsule.js +137 -0
- package/examples/jsm/math/ColorConverter.js +36 -0
- package/examples/jsm/math/ConvexHull.js +1271 -0
- package/examples/jsm/math/ImprovedNoise.js +71 -0
- package/examples/jsm/math/Lut.js +204 -0
- package/examples/jsm/math/MeshSurfaceSampler.js +250 -0
- package/examples/jsm/math/OBB.js +423 -0
- package/examples/jsm/math/Octree.js +462 -0
- package/examples/jsm/math/SimplexNoise.js +444 -0
- package/examples/jsm/misc/ConvexObjectBreaker.js +519 -0
- package/examples/jsm/misc/GPUComputationRenderer.js +446 -0
- package/examples/jsm/misc/Gyroscope.js +66 -0
- package/examples/jsm/misc/MD2Character.js +276 -0
- package/examples/jsm/misc/MD2CharacterComplex.js +576 -0
- package/examples/jsm/misc/MorphAnimMesh.js +75 -0
- package/examples/jsm/misc/MorphBlendMesh.js +322 -0
- package/examples/jsm/misc/ProgressiveLightMap.js +323 -0
- package/examples/jsm/misc/RollerCoaster.js +566 -0
- package/examples/jsm/misc/TubePainter.js +205 -0
- package/examples/jsm/misc/Volume.js +473 -0
- package/examples/jsm/misc/VolumeSlice.js +229 -0
- package/examples/jsm/modifiers/CurveModifier.js +326 -0
- package/examples/jsm/modifiers/EdgeSplitModifier.js +279 -0
- package/examples/jsm/modifiers/SimplifyModifier.js +525 -0
- package/examples/jsm/modifiers/TessellateModifier.js +307 -0
- package/examples/jsm/nodes/Nodes.js +171 -0
- package/examples/jsm/nodes/accessors/BitangentNode.js +89 -0
- package/examples/jsm/nodes/accessors/BufferAttributeNode.js +99 -0
- package/examples/jsm/nodes/accessors/BufferNode.js +30 -0
- package/examples/jsm/nodes/accessors/CameraNode.js +98 -0
- package/examples/jsm/nodes/accessors/CubeTextureNode.js +103 -0
- package/examples/jsm/nodes/accessors/ExtendedMaterialNode.js +77 -0
- package/examples/jsm/nodes/accessors/InstanceNode.js +71 -0
- package/examples/jsm/nodes/accessors/MaterialNode.js +267 -0
- package/examples/jsm/nodes/accessors/MaterialReferenceNode.js +39 -0
- package/examples/jsm/nodes/accessors/ModelNode.js +34 -0
- package/examples/jsm/nodes/accessors/ModelViewProjectionNode.js +29 -0
- package/examples/jsm/nodes/accessors/MorphNode.js +70 -0
- package/examples/jsm/nodes/accessors/NormalNode.js +96 -0
- package/examples/jsm/nodes/accessors/Object3DNode.js +150 -0
- package/examples/jsm/nodes/accessors/PointUVNode.js +26 -0
- package/examples/jsm/nodes/accessors/PositionNode.js +104 -0
- package/examples/jsm/nodes/accessors/ReferenceNode.js +72 -0
- package/examples/jsm/nodes/accessors/ReflectVectorNode.js +35 -0
- package/examples/jsm/nodes/accessors/SceneNode.js +52 -0
- package/examples/jsm/nodes/accessors/SkinningNode.js +93 -0
- package/examples/jsm/nodes/accessors/StorageBufferNode.js +27 -0
- package/examples/jsm/nodes/accessors/TangentNode.js +103 -0
- package/examples/jsm/nodes/accessors/TextureBicubicNode.js +94 -0
- package/examples/jsm/nodes/accessors/TextureNode.js +271 -0
- package/examples/jsm/nodes/accessors/TextureSizeNode.js +35 -0
- package/examples/jsm/nodes/accessors/UVNode.js +47 -0
- package/examples/jsm/nodes/accessors/UserDataNode.js +29 -0
- package/examples/jsm/nodes/code/CodeNode.js +78 -0
- package/examples/jsm/nodes/code/ExpressionNode.js +37 -0
- package/examples/jsm/nodes/code/FunctionCallNode.js +96 -0
- package/examples/jsm/nodes/code/FunctionNode.js +127 -0
- package/examples/jsm/nodes/code/ScriptableNode.js +488 -0
- package/examples/jsm/nodes/code/ScriptableValueNode.js +167 -0
- package/examples/jsm/nodes/core/ArrayUniformNode.js +26 -0
- package/examples/jsm/nodes/core/AttributeNode.js +102 -0
- package/examples/jsm/nodes/core/BypassNode.js +45 -0
- package/examples/jsm/nodes/core/CacheNode.js +46 -0
- package/examples/jsm/nodes/core/ConstNode.js +32 -0
- package/examples/jsm/nodes/core/ContextNode.js +61 -0
- package/examples/jsm/nodes/core/IndexNode.js +66 -0
- package/examples/jsm/nodes/core/InputNode.js +83 -0
- package/examples/jsm/nodes/core/LightingModel.js +15 -0
- package/examples/jsm/nodes/core/Node.js +454 -0
- package/examples/jsm/nodes/core/NodeAttribute.js +15 -0
- package/examples/jsm/nodes/core/NodeBuilder.js +1016 -0
- package/examples/jsm/nodes/core/NodeCache.js +26 -0
- package/examples/jsm/nodes/core/NodeCode.js +15 -0
- package/examples/jsm/nodes/core/NodeFrame.js +110 -0
- package/examples/jsm/nodes/core/NodeFunction.js +22 -0
- package/examples/jsm/nodes/core/NodeFunctionInput.js +17 -0
- package/examples/jsm/nodes/core/NodeKeywords.js +80 -0
- package/examples/jsm/nodes/core/NodeParser.js +11 -0
- package/examples/jsm/nodes/core/NodeUniform.js +28 -0
- package/examples/jsm/nodes/core/NodeUtils.js +212 -0
- package/examples/jsm/nodes/core/NodeVar.js +14 -0
- package/examples/jsm/nodes/core/NodeVarying.js +17 -0
- package/examples/jsm/nodes/core/PropertyNode.js +61 -0
- package/examples/jsm/nodes/core/StackNode.js +99 -0
- package/examples/jsm/nodes/core/TempNode.js +58 -0
- package/examples/jsm/nodes/core/UniformNode.js +61 -0
- package/examples/jsm/nodes/core/VarNode.js +87 -0
- package/examples/jsm/nodes/core/VaryingNode.js +69 -0
- package/examples/jsm/nodes/core/constants.js +27 -0
- package/examples/jsm/nodes/display/BlendModeNode.js +99 -0
- package/examples/jsm/nodes/display/BumpMapNode.js +77 -0
- package/examples/jsm/nodes/display/ColorAdjustmentNode.js +100 -0
- package/examples/jsm/nodes/display/ColorSpaceNode.js +108 -0
- package/examples/jsm/nodes/display/FrontFacingNode.js +27 -0
- package/examples/jsm/nodes/display/NormalMapNode.js +106 -0
- package/examples/jsm/nodes/display/PosterizeNode.js +32 -0
- package/examples/jsm/nodes/display/ToneMappingNode.js +141 -0
- package/examples/jsm/nodes/display/ViewportDepthNode.js +69 -0
- package/examples/jsm/nodes/display/ViewportDepthTextureNode.js +34 -0
- package/examples/jsm/nodes/display/ViewportNode.js +115 -0
- package/examples/jsm/nodes/display/ViewportSharedTextureNode.js +31 -0
- package/examples/jsm/nodes/display/ViewportTextureNode.js +75 -0
- package/examples/jsm/nodes/fog/FogExp2Node.js +35 -0
- package/examples/jsm/nodes/fog/FogNode.js +37 -0
- package/examples/jsm/nodes/fog/FogRangeNode.js +34 -0
- package/examples/jsm/nodes/functions/BSDF/BRDF_GGX.js +40 -0
- package/examples/jsm/nodes/functions/BSDF/BRDF_Lambert.js +9 -0
- package/examples/jsm/nodes/functions/BSDF/BRDF_Sheen.js +43 -0
- package/examples/jsm/nodes/functions/BSDF/DFGApprox.js +29 -0
- package/examples/jsm/nodes/functions/BSDF/D_GGX.js +18 -0
- package/examples/jsm/nodes/functions/BSDF/EnvironmentBRDF.js +13 -0
- package/examples/jsm/nodes/functions/BSDF/F_Schlick.js +16 -0
- package/examples/jsm/nodes/functions/BSDF/Schlick_to_F0.js +13 -0
- package/examples/jsm/nodes/functions/BSDF/V_GGX_SmithCorrelated.js +20 -0
- package/examples/jsm/nodes/functions/PhongLightingModel.js +67 -0
- package/examples/jsm/nodes/functions/PhysicalLightingModel.js +343 -0
- package/examples/jsm/nodes/functions/material/getGeometryRoughness.js +13 -0
- package/examples/jsm/nodes/functions/material/getRoughness.js +18 -0
- package/examples/jsm/nodes/geometry/RangeNode.js +104 -0
- package/examples/jsm/nodes/gpgpu/ComputeNode.js +85 -0
- package/examples/jsm/nodes/lighting/AONode.js +27 -0
- package/examples/jsm/nodes/lighting/AmbientLightNode.js +27 -0
- package/examples/jsm/nodes/lighting/AnalyticLightNode.js +184 -0
- package/examples/jsm/nodes/lighting/DirectionalLightNode.js +40 -0
- package/examples/jsm/nodes/lighting/EnvironmentNode.js +191 -0
- package/examples/jsm/nodes/lighting/HemisphereLightNode.js +55 -0
- package/examples/jsm/nodes/lighting/IESSpotLightNode.js +39 -0
- package/examples/jsm/nodes/lighting/LightNode.js +57 -0
- package/examples/jsm/nodes/lighting/LightUtils.js +17 -0
- package/examples/jsm/nodes/lighting/LightingContextNode.js +102 -0
- package/examples/jsm/nodes/lighting/LightingNode.js +21 -0
- package/examples/jsm/nodes/lighting/LightsNode.js +128 -0
- package/examples/jsm/nodes/lighting/PointLightNode.js +68 -0
- package/examples/jsm/nodes/lighting/SpotLightNode.js +89 -0
- package/examples/jsm/nodes/loaders/NodeLoader.js +108 -0
- package/examples/jsm/nodes/loaders/NodeMaterialLoader.js +59 -0
- package/examples/jsm/nodes/loaders/NodeObjectLoader.js +70 -0
- package/examples/jsm/nodes/materials/LineBasicNodeMaterial.js +28 -0
- package/examples/jsm/nodes/materials/Materials.js +12 -0
- package/examples/jsm/nodes/materials/MeshBasicNodeMaterial.js +27 -0
- package/examples/jsm/nodes/materials/MeshLambertNodeMaterial.js +34 -0
- package/examples/jsm/nodes/materials/MeshNormalNodeMaterial.js +40 -0
- package/examples/jsm/nodes/materials/MeshPhongNodeMaterial.js +65 -0
- package/examples/jsm/nodes/materials/MeshPhysicalNodeMaterial.js +128 -0
- package/examples/jsm/nodes/materials/MeshStandardNodeMaterial.js +80 -0
- package/examples/jsm/nodes/materials/NodeMaterial.js +536 -0
- package/examples/jsm/nodes/materials/PointsNodeMaterial.js +49 -0
- package/examples/jsm/nodes/materials/SpriteNodeMaterial.js +103 -0
- package/examples/jsm/nodes/materialx/DISCLAIMER.md +199 -0
- package/examples/jsm/nodes/materialx/MaterialXNodes.js +68 -0
- package/examples/jsm/nodes/materialx/lib/mx_hsv.js +56 -0
- package/examples/jsm/nodes/materialx/lib/mx_noise.js +618 -0
- package/examples/jsm/nodes/materialx/lib/mx_transform_color.js +19 -0
- package/examples/jsm/nodes/math/CondNode.js +86 -0
- package/examples/jsm/nodes/math/MathNode.js +359 -0
- package/examples/jsm/nodes/math/OperatorNode.js +269 -0
- package/examples/jsm/nodes/parsers/GLSLNodeFunction.js +152 -0
- package/examples/jsm/nodes/parsers/GLSLNodeParser.js +14 -0
- package/examples/jsm/nodes/procedural/CheckerNode.js +42 -0
- package/examples/jsm/nodes/shadernode/ShaderNode.js +420 -0
- package/examples/jsm/nodes/utils/ArrayElementNode.js +33 -0
- package/examples/jsm/nodes/utils/ConvertNode.js +65 -0
- package/examples/jsm/nodes/utils/DiscardNode.js +26 -0
- package/examples/jsm/nodes/utils/EquirectUVNode.js +33 -0
- package/examples/jsm/nodes/utils/JoinNode.js +51 -0
- package/examples/jsm/nodes/utils/LoopNode.js +186 -0
- package/examples/jsm/nodes/utils/MatcapUVNode.js +30 -0
- package/examples/jsm/nodes/utils/MaxMipLevelNode.js +46 -0
- package/examples/jsm/nodes/utils/OscNode.js +81 -0
- package/examples/jsm/nodes/utils/PackingNode.js +55 -0
- package/examples/jsm/nodes/utils/RemapNode.js +42 -0
- package/examples/jsm/nodes/utils/RotateUVNode.js +43 -0
- package/examples/jsm/nodes/utils/SpecularMIPLevelNode.js +37 -0
- package/examples/jsm/nodes/utils/SplitNode.js +104 -0
- package/examples/jsm/nodes/utils/SpriteSheetUVNode.js +41 -0
- package/examples/jsm/nodes/utils/TimerNode.js +94 -0
- package/examples/jsm/nodes/utils/TriplanarTexturesNode.js +62 -0
- package/examples/jsm/objects/GroundProjectedSkybox.js +172 -0
- package/examples/jsm/objects/Lensflare.js +377 -0
- package/examples/jsm/objects/MarchingCubes.js +1176 -0
- package/examples/jsm/objects/Reflector.js +264 -0
- package/examples/jsm/objects/ReflectorForSSRPass.js +349 -0
- package/examples/jsm/objects/Refractor.js +324 -0
- package/examples/jsm/objects/ShadowMesh.js +80 -0
- package/examples/jsm/objects/Sky.js +219 -0
- package/examples/jsm/objects/Water.js +330 -0
- package/examples/jsm/objects/Water2.js +358 -0
- package/examples/jsm/offscreen/jank.js +45 -0
- package/examples/jsm/offscreen/offscreen.js +8 -0
- package/examples/jsm/offscreen/scene.js +86 -0
- package/examples/jsm/physics/AmmoPhysics.js +285 -0
- package/examples/jsm/physics/RapierPhysics.js +199 -0
- package/examples/jsm/postprocessing/AfterimagePass.js +104 -0
- package/examples/jsm/postprocessing/BloomPass.js +172 -0
- package/examples/jsm/postprocessing/BokehPass.js +140 -0
- package/examples/jsm/postprocessing/ClearPass.js +46 -0
- package/examples/jsm/postprocessing/CubeTexturePass.js +85 -0
- package/examples/jsm/postprocessing/DotScreenPass.js +65 -0
- package/examples/jsm/postprocessing/EffectComposer.js +231 -0
- package/examples/jsm/postprocessing/FilmPass.js +66 -0
- package/examples/jsm/postprocessing/GlitchPass.js +128 -0
- package/examples/jsm/postprocessing/HalftonePass.js +79 -0
- package/examples/jsm/postprocessing/LUTPass.js +173 -0
- package/examples/jsm/postprocessing/MaskPass.js +104 -0
- package/examples/jsm/postprocessing/OutlinePass.js +654 -0
- package/examples/jsm/postprocessing/OutputPass.js +91 -0
- package/examples/jsm/postprocessing/Pass.js +84 -0
- package/examples/jsm/postprocessing/RenderPass.js +81 -0
- package/examples/jsm/postprocessing/RenderPixelatedPass.js +235 -0
- package/examples/jsm/postprocessing/SAOPass.js +411 -0
- package/examples/jsm/postprocessing/SMAAPass.js +201 -0
- package/examples/jsm/postprocessing/SSAARenderPass.js +228 -0
- package/examples/jsm/postprocessing/SSAOPass.js +440 -0
- package/examples/jsm/postprocessing/SSRPass.js +641 -0
- package/examples/jsm/postprocessing/SavePass.js +79 -0
- package/examples/jsm/postprocessing/ShaderPass.js +77 -0
- package/examples/jsm/postprocessing/TAARenderPass.js +189 -0
- package/examples/jsm/postprocessing/TexturePass.js +67 -0
- package/examples/jsm/postprocessing/UnrealBloomPass.js +415 -0
- package/examples/jsm/renderers/CSS2DRenderer.js +215 -0
- package/examples/jsm/renderers/CSS3DRenderer.js +335 -0
- package/examples/jsm/renderers/Projector.js +918 -0
- package/examples/jsm/renderers/SVGRenderer.js +553 -0
- package/examples/jsm/renderers/common/Animation.js +58 -0
- package/examples/jsm/renderers/common/Attributes.js +75 -0
- package/examples/jsm/renderers/common/Backend.js +162 -0
- package/examples/jsm/renderers/common/Background.js +136 -0
- package/examples/jsm/renderers/common/Binding.js +19 -0
- package/examples/jsm/renderers/common/Bindings.js +165 -0
- package/examples/jsm/renderers/common/Buffer.js +38 -0
- package/examples/jsm/renderers/common/BufferUtils.js +33 -0
- package/examples/jsm/renderers/common/ChainMap.js +89 -0
- package/examples/jsm/renderers/common/ComputePipeline.js +17 -0
- package/examples/jsm/renderers/common/Constants.js +14 -0
- package/examples/jsm/renderers/common/CubeRenderTarget.js +65 -0
- package/examples/jsm/renderers/common/DataMap.js +54 -0
- package/examples/jsm/renderers/common/Geometries.js +215 -0
- package/examples/jsm/renderers/common/Info.js +73 -0
- package/examples/jsm/renderers/common/Pipeline.js +13 -0
- package/examples/jsm/renderers/common/Pipelines.js +370 -0
- package/examples/jsm/renderers/common/ProgrammableStage.js +18 -0
- package/examples/jsm/renderers/common/RenderContext.js +38 -0
- package/examples/jsm/renderers/common/RenderContexts.js +49 -0
- package/examples/jsm/renderers/common/RenderList.js +178 -0
- package/examples/jsm/renderers/common/RenderLists.js +38 -0
- package/examples/jsm/renderers/common/RenderObject.js +129 -0
- package/examples/jsm/renderers/common/RenderObjects.js +95 -0
- package/examples/jsm/renderers/common/RenderPipeline.js +16 -0
- package/examples/jsm/renderers/common/Renderer.js +895 -0
- package/examples/jsm/renderers/common/SampledTexture.js +80 -0
- package/examples/jsm/renderers/common/Sampler.js +18 -0
- package/examples/jsm/renderers/common/StorageBuffer.js +17 -0
- package/examples/jsm/renderers/common/Textures.js +218 -0
- package/examples/jsm/renderers/common/Uniform.js +140 -0
- package/examples/jsm/renderers/common/UniformBuffer.js +15 -0
- package/examples/jsm/renderers/common/UniformsGroup.js +299 -0
- package/examples/jsm/renderers/common/nodes/NodeSampledTexture.js +39 -0
- package/examples/jsm/renderers/common/nodes/NodeSampler.js +21 -0
- package/examples/jsm/renderers/common/nodes/NodeUniform.js +135 -0
- package/examples/jsm/renderers/common/nodes/Nodes.js +330 -0
- package/examples/jsm/renderers/webgl/nodes/GLSLNodeBuilder.js +340 -0
- package/examples/jsm/renderers/webgl/nodes/SlotNode.js +26 -0
- package/examples/jsm/renderers/webgl/nodes/WebGLNodeBuilder.js +764 -0
- package/examples/jsm/renderers/webgl/nodes/WebGLNodes.js +49 -0
- package/examples/jsm/renderers/webgpu/WebGPUBackend.js +844 -0
- package/examples/jsm/renderers/webgpu/WebGPURenderer.js +32 -0
- package/examples/jsm/renderers/webgpu/nodes/WGSLNodeBuilder.js +902 -0
- package/examples/jsm/renderers/webgpu/nodes/WGSLNodeFunction.js +104 -0
- package/examples/jsm/renderers/webgpu/nodes/WGSLNodeParser.js +14 -0
- package/examples/jsm/renderers/webgpu/utils/WebGPUAttributeUtils.js +274 -0
- package/examples/jsm/renderers/webgpu/utils/WebGPUBindingUtils.js +223 -0
- package/examples/jsm/renderers/webgpu/utils/WebGPUConstants.js +324 -0
- package/examples/jsm/renderers/webgpu/utils/WebGPUPipelineUtils.js +533 -0
- package/examples/jsm/renderers/webgpu/utils/WebGPUTextureMipmapUtils.js +163 -0
- package/examples/jsm/renderers/webgpu/utils/WebGPUTextureUtils.js +964 -0
- package/examples/jsm/renderers/webgpu/utils/WebGPUUtils.js +92 -0
- package/examples/jsm/shaders/ACESFilmicToneMappingShader.js +87 -0
- package/examples/jsm/shaders/AfterimageShader.js +56 -0
- package/examples/jsm/shaders/BasicShader.js +27 -0
- package/examples/jsm/shaders/BleachBypassShader.js +62 -0
- package/examples/jsm/shaders/BlendShader.js +47 -0
- package/examples/jsm/shaders/BokehShader.js +143 -0
- package/examples/jsm/shaders/BokehShader2.js +393 -0
- package/examples/jsm/shaders/BrightnessContrastShader.js +54 -0
- package/examples/jsm/shaders/ColorCorrectionShader.js +50 -0
- package/examples/jsm/shaders/ColorifyShader.js +51 -0
- package/examples/jsm/shaders/ConvolutionShader.js +103 -0
- package/examples/jsm/shaders/CopyShader.js +45 -0
- package/examples/jsm/shaders/DOFMipMapShader.js +54 -0
- package/examples/jsm/shaders/DepthLimitedBlurShader.js +166 -0
- package/examples/jsm/shaders/DigitalGlitch.js +101 -0
- package/examples/jsm/shaders/DotScreenShader.js +70 -0
- package/examples/jsm/shaders/ExposureShader.js +44 -0
- package/examples/jsm/shaders/FXAAShader.js +286 -0
- package/examples/jsm/shaders/FilmShader.js +102 -0
- package/examples/jsm/shaders/FocusShader.js +87 -0
- package/examples/jsm/shaders/FreiChenShader.js +94 -0
- package/examples/jsm/shaders/GammaCorrectionShader.js +43 -0
- package/examples/jsm/shaders/GodRaysShader.js +313 -0
- package/examples/jsm/shaders/HalftoneShader.js +310 -0
- package/examples/jsm/shaders/HorizontalBlurShader.js +59 -0
- package/examples/jsm/shaders/HorizontalTiltShiftShader.js +61 -0
- package/examples/jsm/shaders/HueSaturationShader.js +65 -0
- package/examples/jsm/shaders/KaleidoShader.js +56 -0
- package/examples/jsm/shaders/LuminosityHighPassShader.js +64 -0
- package/examples/jsm/shaders/LuminosityShader.js +46 -0
- package/examples/jsm/shaders/MMDToonShader.js +132 -0
- package/examples/jsm/shaders/MirrorShader.js +54 -0
- package/examples/jsm/shaders/NormalMapShader.js +53 -0
- package/examples/jsm/shaders/OutputShader.js +78 -0
- package/examples/jsm/shaders/RGBShiftShader.js +54 -0
- package/examples/jsm/shaders/SAOShader.js +188 -0
- package/examples/jsm/shaders/SMAAShader.js +460 -0
- package/examples/jsm/shaders/SSAOShader.js +288 -0
- package/examples/jsm/shaders/SSRShader.js +364 -0
- package/examples/jsm/shaders/SepiaShader.js +52 -0
- package/examples/jsm/shaders/SobelOperatorShader.js +90 -0
- package/examples/jsm/shaders/SubsurfaceScatteringShader.js +88 -0
- package/examples/jsm/shaders/TechnicolorShader.js +43 -0
- package/examples/jsm/shaders/ToonShader.js +326 -0
- package/examples/jsm/shaders/TriangleBlurShader.js +72 -0
- package/examples/jsm/shaders/UnpackDepthRGBAShader.js +45 -0
- package/examples/jsm/shaders/VelocityShader.js +128 -0
- package/examples/jsm/shaders/VerticalBlurShader.js +59 -0
- package/examples/jsm/shaders/VerticalTiltShiftShader.js +61 -0
- package/examples/jsm/shaders/VignetteShader.js +51 -0
- package/examples/jsm/shaders/VolumeShader.js +289 -0
- package/examples/jsm/shaders/WaterRefractionShader.js +93 -0
- package/examples/jsm/textures/FlakesTexture.js +40 -0
- package/examples/jsm/utils/BufferGeometryUtils.js +1373 -0
- package/examples/jsm/utils/CameraUtils.js +73 -0
- package/examples/jsm/utils/GPUStatsPanel.js +128 -0
- package/examples/jsm/utils/GeometryCompressionUtils.js +639 -0
- package/examples/jsm/utils/GeometryUtils.js +221 -0
- package/examples/jsm/utils/LDrawUtils.js +202 -0
- package/examples/jsm/utils/PackedPhongMaterial.js +178 -0
- package/examples/jsm/utils/SceneUtils.js +254 -0
- package/examples/jsm/utils/ShadowMapViewer.js +210 -0
- package/examples/jsm/utils/SkeletonUtils.js +413 -0
- package/examples/jsm/utils/TextureUtils.js +86 -0
- package/examples/jsm/utils/UVsDebug.js +165 -0
- package/examples/jsm/utils/WorkerPool.js +102 -0
- package/examples/jsm/webxr/ARButton.js +208 -0
- package/examples/jsm/webxr/OculusHandModel.js +109 -0
- package/examples/jsm/webxr/OculusHandPointerModel.js +413 -0
- package/examples/jsm/webxr/Text2D.js +38 -0
- package/examples/jsm/webxr/VRButton.js +200 -0
- package/examples/jsm/webxr/XRButton.js +198 -0
- package/examples/jsm/webxr/XRControllerModelFactory.js +299 -0
- package/examples/jsm/webxr/XREstimatedLight.js +223 -0
- package/examples/jsm/webxr/XRHandMeshModel.js +112 -0
- package/examples/jsm/webxr/XRHandModelFactory.js +105 -0
- package/examples/jsm/webxr/XRHandPrimitiveModel.js +103 -0
- package/examples/jsm/webxr/XRPlanes.js +100 -0
- package/lib/3d.min.js +1 -0
- package/package.json +25 -12
package/README.md
CHANGED
|
@@ -1,3 +1,144 @@
|
|
|
1
1
|
# anov-3d
|
|
2
2
|
|
|
3
|
-
anov 3d 核心包
|
|
3
|
+
> anov 3d 核心包
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
[示例网站 (notes: 暂时需科学上网)](https://anov-3d-ecology.vercel.app/#base_scene)
|
|
7
|
+
### usage
|
|
8
|
+
|
|
9
|
+
install
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
pnpm add @anov/3d
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
init a base scene 「wip」
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
import { Mesh, Scene, BoxGeometry, MeshBasicMaterial } from '@anov/3d'
|
|
19
|
+
|
|
20
|
+
const scene = new Scene({
|
|
21
|
+
orbitControls: true,
|
|
22
|
+
})
|
|
23
|
+
|
|
24
|
+
const geometry = new BoxGeometry(2, 2, 2)
|
|
25
|
+
const material = new MeshBasicMaterial({ color: 0x00FF00 })
|
|
26
|
+
const box = new Mesh(geometry, material)
|
|
27
|
+
|
|
28
|
+
box.addNatureEventListener('pointermove', (object3D) => {
|
|
29
|
+
(object3D.material as any).color.set(0xFF0000)
|
|
30
|
+
})
|
|
31
|
+
box.addNatureEventListener('pointerleave', (object3D) => {
|
|
32
|
+
(object3D.material as any).color.set('#ccc')
|
|
33
|
+
})
|
|
34
|
+
|
|
35
|
+
scene.add(box)
|
|
36
|
+
|
|
37
|
+
scene.render(document.querySelector('#app')!)
|
|
38
|
+
scene.startFrameAnimate()
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
base object3d motion 「wip」
|
|
42
|
+
|
|
43
|
+
```ts
|
|
44
|
+
import { Mesh, Scene, utils, AxesHelper, BoxGeometry, GridHelper, MeshBasicMaterial } from '@anov/3d'
|
|
45
|
+
|
|
46
|
+
const scene = new Scene({
|
|
47
|
+
orbitControls: true,
|
|
48
|
+
})
|
|
49
|
+
|
|
50
|
+
const geometry = new BoxGeometry(2, 2, 2)
|
|
51
|
+
const material = new MeshBasicMaterial({ color: 0x00FF00 })
|
|
52
|
+
const box = new Mesh(geometry, material)
|
|
53
|
+
|
|
54
|
+
const geometry2 = new BoxGeometry(2, 2, 2)
|
|
55
|
+
const materia2 = new MeshBasicMaterial({ color: '#ccc' })
|
|
56
|
+
const box2 = new Mesh(geometry2, materia2)
|
|
57
|
+
|
|
58
|
+
box.position.set(0, 0, 0)
|
|
59
|
+
box2.position.set(10, 30, -30)
|
|
60
|
+
|
|
61
|
+
scene.add(box)
|
|
62
|
+
scene.add(box2)
|
|
63
|
+
|
|
64
|
+
utils.moveWithRound(box2, 0.2, 100000)
|
|
65
|
+
|
|
66
|
+
scene.render(document.querySelector('#app')!)
|
|
67
|
+
scene.startFrameAnimate()
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## umd usage
|
|
71
|
+
|
|
72
|
+
```html
|
|
73
|
+
<!DOCTYPE html>
|
|
74
|
+
<html lang="en">
|
|
75
|
+
<head>
|
|
76
|
+
<meta charset="UTF-8">
|
|
77
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
78
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
79
|
+
<title>Document</title>
|
|
80
|
+
<link rel="stylesheet" type="text/css" href="./source/base.css" />
|
|
81
|
+
</style>
|
|
82
|
+
</head>
|
|
83
|
+
|
|
84
|
+
<body>
|
|
85
|
+
<div id="describe">基本场景,鼠标点击移入移出点击交互</div>
|
|
86
|
+
<div id="my-sandbox"></div>
|
|
87
|
+
<script>
|
|
88
|
+
javascript: (function () {
|
|
89
|
+
var script = document.createElement('script');
|
|
90
|
+
script.onload = function () {
|
|
91
|
+
var stats = new Stats();
|
|
92
|
+
document.body.appendChild(stats.dom);
|
|
93
|
+
requestAnimationFrame(function loop() {
|
|
94
|
+
stats.update();
|
|
95
|
+
requestAnimationFrame(loop)
|
|
96
|
+
});
|
|
97
|
+
};
|
|
98
|
+
script.src = 'https://mrdoob.github.io/stats.js/build/stats.min.js';
|
|
99
|
+
document.head.appendChild(script);
|
|
100
|
+
})()
|
|
101
|
+
</script>
|
|
102
|
+
// umd包
|
|
103
|
+
<script src="https://cdn.jsdelivr.net/npm/@anov/3d@0.0.1-alpha.5/lib/3d.min.js"></script>
|
|
104
|
+
|
|
105
|
+
<script script type="module">
|
|
106
|
+
const scene = new ANOV.Scene({
|
|
107
|
+
orbitControls: true,
|
|
108
|
+
})
|
|
109
|
+
|
|
110
|
+
const geometry = new ANOV.BoxGeometry(2, 2, 2)
|
|
111
|
+
const material = new ANOV.MeshBasicMaterial()
|
|
112
|
+
const box = new ANOV.Mesh(geometry, material)
|
|
113
|
+
|
|
114
|
+
const geometry2 = new ANOV.BoxGeometry(2, 2, 2)
|
|
115
|
+
const material2 = new ANOV.MeshBasicMaterial()
|
|
116
|
+
const box2 = new ANOV.Mesh(geometry2, material2)
|
|
117
|
+
|
|
118
|
+
box.addNatureEventListener('pointermove', (object3D) => {
|
|
119
|
+
object3D.material.color.set(0xFF0000)
|
|
120
|
+
})
|
|
121
|
+
box.addNatureEventListener('pointerleave', (object3D) => {
|
|
122
|
+
object3D.material.color.set('#ccc')
|
|
123
|
+
})
|
|
124
|
+
|
|
125
|
+
box2.addNatureEventListener('click', (object3D) => {
|
|
126
|
+
object3D.material.color.set(0xFF0000)
|
|
127
|
+
})
|
|
128
|
+
box2.addNatureEventListener('pointerleave', (object3D) => {
|
|
129
|
+
object3D.material.color.set('#fff')
|
|
130
|
+
})
|
|
131
|
+
|
|
132
|
+
box2.position.set(5, 0, 0)
|
|
133
|
+
scene.add(box)
|
|
134
|
+
scene.add(box2)
|
|
135
|
+
|
|
136
|
+
scene.scene.background = new ANOV.Color('#345')
|
|
137
|
+
scene.render(document.querySelector('#my-sandbox'))
|
|
138
|
+
scene.startFrameAnimate()
|
|
139
|
+
</script>
|
|
140
|
+
|
|
141
|
+
</body>
|
|
142
|
+
|
|
143
|
+
</html>
|
|
144
|
+
```
|
package/dist/core/camera.d.ts
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import type { Object3D, Vector3 } from 'three';
|
|
2
|
+
import { PerspectiveCamera as TPerspectiveCamera } from 'three';
|
|
3
|
+
declare class PerspectiveCamera extends TPerspectiveCamera {
|
|
4
|
+
constructor(fov: number, aspect: number, near: number, far: number);
|
|
5
|
+
/**
|
|
6
|
+
* 向目标物体推进
|
|
7
|
+
* @param targetObject3D
|
|
8
|
+
* @param distance
|
|
9
|
+
* @param duration
|
|
10
|
+
* @param animationMethod
|
|
11
|
+
*/
|
|
12
|
+
promote(targetObject3D: Object3D, distance: number, duration?: number, animationMethod?: string): import("@tweenjs/tween.js").Tween<Vector3>;
|
|
13
|
+
/**
|
|
14
|
+
* 向目标物体后退
|
|
15
|
+
* @param targetObject3D
|
|
16
|
+
* @param distance
|
|
17
|
+
* @param duration
|
|
18
|
+
* @param animationMethod
|
|
19
|
+
*/
|
|
20
|
+
demote: (targetObject3D: Object3D, distance: number, duration?: number, animationMethod?: string) => import("@tweenjs/tween.js").Tween<Vector3>;
|
|
21
|
+
/**
|
|
22
|
+
* 相机曲线漫游
|
|
23
|
+
* @param vec
|
|
24
|
+
* @param points
|
|
25
|
+
* @param linePoints
|
|
26
|
+
* @param helpLine
|
|
27
|
+
* @param lookat
|
|
28
|
+
* @returns
|
|
29
|
+
*/
|
|
30
|
+
surround: (vec: Vector3[], points?: number, linePoints?: number, helpLine?: boolean, lookat?: Vector3) => import("../utils/move").ControlsRetuenFuncType;
|
|
4
31
|
}
|
|
5
|
-
export {
|
|
32
|
+
export { PerspectiveCamera };
|
package/dist/core/camera.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
|
-
function
|
|
3
|
-
function
|
|
4
|
-
function
|
|
2
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
3
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
4
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
5
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
6
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
7
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
8
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
5
9
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
6
10
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
7
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
8
|
-
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
9
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
10
11
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
11
12
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
12
13
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
@@ -14,51 +15,60 @@ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) ===
|
|
|
14
15
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
15
16
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
16
17
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
18
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
19
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
20
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
21
|
+
import { BufferGeometry, CatmullRomCurve3, Line, LineBasicMaterial, PerspectiveCamera as TPerspectiveCamera } from 'three';
|
|
22
|
+
import { Direction, moveTo, moveWithLine } from "../utils/move";
|
|
23
|
+
import globalObjectManage from "./global/global";
|
|
24
|
+
var PerspectiveCamera = /*#__PURE__*/function (_TPerspectiveCamera) {
|
|
25
|
+
_inherits(PerspectiveCamera, _TPerspectiveCamera);
|
|
26
|
+
var _super = _createSuper(PerspectiveCamera);
|
|
27
|
+
function PerspectiveCamera(fov, aspect, near, far) {
|
|
28
|
+
var _this;
|
|
29
|
+
_classCallCheck(this, PerspectiveCamera);
|
|
30
|
+
_this = _super.call(this, fov, aspect, near, far);
|
|
31
|
+
_defineProperty(_assertThisInitialized(_this), "demote", function (targetObject3D, distance, duration, animationMethod) {
|
|
32
|
+
return moveTo(_assertThisInitialized(_this), targetObject3D, distance, Direction.minus, duration, animationMethod);
|
|
33
|
+
});
|
|
34
|
+
_defineProperty(_assertThisInitialized(_this), "surround", function (vec) {
|
|
35
|
+
var points = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5;
|
|
36
|
+
var linePoints = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 500;
|
|
37
|
+
var helpLine = arguments.length > 3 ? arguments[3] : undefined;
|
|
38
|
+
var lookat = arguments.length > 4 ? arguments[4] : undefined;
|
|
39
|
+
var curve = new CatmullRomCurve3(_toConsumableArray(vec), true);
|
|
40
|
+
var geometry = new BufferGeometry().setFromPoints(curve.getPoints(points));
|
|
41
|
+
var material = new LineBasicMaterial({
|
|
42
|
+
color: '#fff'
|
|
43
|
+
});
|
|
44
|
+
var curveObject = new Line(geometry, material);
|
|
45
|
+
globalObjectManage.scene.add(curveObject);
|
|
46
|
+
return moveWithLine(_assertThisInitialized(_this), curve, linePoints, lookat);
|
|
47
|
+
});
|
|
48
|
+
return _this;
|
|
49
|
+
}
|
|
27
50
|
|
|
28
|
-
/**
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
51
|
+
/**
|
|
52
|
+
* 向目标物体推进
|
|
53
|
+
* @param targetObject3D
|
|
54
|
+
* @param distance
|
|
55
|
+
* @param duration
|
|
56
|
+
* @param animationMethod
|
|
57
|
+
*/
|
|
58
|
+
_createClass(PerspectiveCamera, [{
|
|
59
|
+
key: "promote",
|
|
60
|
+
value: function promote(targetObject3D, distance, duration, animationMethod) {
|
|
61
|
+
return moveTo(this, targetObject3D, distance, Direction.plus, duration, animationMethod);
|
|
62
|
+
}
|
|
36
63
|
|
|
37
|
-
/**
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
var fov = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 50;
|
|
49
|
-
var aspect = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
|
50
|
-
var near = arguments.length > 2 ? arguments[2] : undefined;
|
|
51
|
-
var far = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 2000;
|
|
52
|
-
_classCallCheck(this, Anov3DPerspectiveCamera);
|
|
53
|
-
return _super.call(this, fov, aspect, near, far);
|
|
54
|
-
}
|
|
55
|
-
return _createClass(Anov3DPerspectiveCamera);
|
|
56
|
-
}(PerspectiveCamera);
|
|
57
|
-
Anov3DPerspectiveCamera.prototype.promote = _objectSpread(_objectSpread({}, Anov3DPerspectiveCamera.prototype), {}, {
|
|
58
|
-
promote: promote,
|
|
59
|
-
demote: demote,
|
|
60
|
-
surround: surround
|
|
61
|
-
});
|
|
62
|
-
var a = new Anov3DPerspectiveCamera(50, 1, 0.1, 2000);
|
|
63
|
-
console.log(a);
|
|
64
|
-
export { Anov3DPerspectiveCamera };
|
|
64
|
+
/**
|
|
65
|
+
* 向目标物体后退
|
|
66
|
+
* @param targetObject3D
|
|
67
|
+
* @param distance
|
|
68
|
+
* @param duration
|
|
69
|
+
* @param animationMethod
|
|
70
|
+
*/
|
|
71
|
+
}]);
|
|
72
|
+
return PerspectiveCamera;
|
|
73
|
+
}(TPerspectiveCamera);
|
|
74
|
+
export { PerspectiveCamera };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { TransformControls as TTransformControls } from 'three/examples/jsm/controls/TransformControls.js';
|
|
2
|
+
import type { Camera } from 'three';
|
|
3
|
+
export declare class TransformControls extends TTransformControls {
|
|
4
|
+
constructor(object: Camera, domElement?: HTMLElement);
|
|
5
|
+
dispose(): void;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* create TransformControls
|
|
9
|
+
* note: 不可使用await,否则会导致渲染器无法完成初始化
|
|
10
|
+
* @returns
|
|
11
|
+
*/
|
|
12
|
+
export declare const createTransformControls: (size?: number) => Promise<TransformControls>;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
3
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
4
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
5
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
6
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
7
|
+
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
|
8
|
+
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
|
9
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
10
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
11
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
12
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
13
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
14
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
15
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
16
|
+
import { TransformControls as TTransformControls } from 'three/examples/jsm/controls/TransformControls.js';
|
|
17
|
+
import globalObjectManage from "../global/global";
|
|
18
|
+
import { emitter } from "../../utils";
|
|
19
|
+
export var TransformControls = /*#__PURE__*/function (_TTransformControls) {
|
|
20
|
+
_inherits(TransformControls, _TTransformControls);
|
|
21
|
+
var _super = _createSuper(TransformControls);
|
|
22
|
+
function TransformControls(object, domElement) {
|
|
23
|
+
_classCallCheck(this, TransformControls);
|
|
24
|
+
return _super.call(this, object, domElement);
|
|
25
|
+
}
|
|
26
|
+
_createClass(TransformControls, [{
|
|
27
|
+
key: "dispose",
|
|
28
|
+
value: function dispose() {
|
|
29
|
+
var _this = this;
|
|
30
|
+
_get(_getPrototypeOf(TransformControls.prototype), "dispose", this).call(this);
|
|
31
|
+
var index = globalObjectManage.transformControls.findIndex(function (item) {
|
|
32
|
+
return item === _this;
|
|
33
|
+
});
|
|
34
|
+
if (index > -1) globalObjectManage.transformControls.splice(index, 1);
|
|
35
|
+
}
|
|
36
|
+
}]);
|
|
37
|
+
return TransformControls;
|
|
38
|
+
}(TTransformControls);
|
|
39
|
+
var create = function create() {
|
|
40
|
+
var size = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.5;
|
|
41
|
+
var transformControl = new TransformControls(globalObjectManage.camera, globalObjectManage.domElement);
|
|
42
|
+
transformControl.size = size;
|
|
43
|
+
transformControl.addEventListener('change', function () {});
|
|
44
|
+
transformControl.addEventListener('dragging-changed', function (event) {
|
|
45
|
+
var controls = globalObjectManage.orbitControls;
|
|
46
|
+
if (controls) controls.enabled = !event.value;
|
|
47
|
+
});
|
|
48
|
+
globalObjectManage.setTransformControls(transformControl);
|
|
49
|
+
|
|
50
|
+
// maybe many controls
|
|
51
|
+
globalObjectManage.scene.add(transformControl);
|
|
52
|
+
return transformControl;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* create TransformControls
|
|
57
|
+
* note: 不可使用await,否则会导致渲染器无法完成初始化
|
|
58
|
+
* @returns
|
|
59
|
+
*/
|
|
60
|
+
export var createTransformControls = function createTransformControls() {
|
|
61
|
+
var size = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.5;
|
|
62
|
+
var promise = new Promise(function (resolve) {
|
|
63
|
+
if (!(globalObjectManage.camera && globalObjectManage.domElement)) {
|
|
64
|
+
emitter.on('after-render', function () {
|
|
65
|
+
resolve(create(size));
|
|
66
|
+
});
|
|
67
|
+
} else {
|
|
68
|
+
resolve(create(size));
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
return promise;
|
|
72
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Camera, Scene } from 'three';
|
|
2
|
+
import { CSS2DRenderer } from 'three/examples/jsm/renderers/CSS2DRenderer';
|
|
3
|
+
import { CSS3DRenderer } from 'three/examples/jsm/renderers/CSS3DRenderer';
|
|
4
|
+
export declare type CssRendererType = 'base' | 'normal';
|
|
5
|
+
declare class CssRenderer {
|
|
6
|
+
private baseCssRenderer;
|
|
7
|
+
private normalCssRenderer;
|
|
8
|
+
cssRenderer: CSS2DRenderer | CSS3DRenderer;
|
|
9
|
+
constructor(type: CssRendererType);
|
|
10
|
+
getSize(): {
|
|
11
|
+
width: number;
|
|
12
|
+
height: number;
|
|
13
|
+
};
|
|
14
|
+
setSize(width: number, height: number): void;
|
|
15
|
+
render(scene: Scene, camera: Camera): void;
|
|
16
|
+
}
|
|
17
|
+
export default CssRenderer;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
3
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
4
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
5
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
7
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
8
|
+
import { CSS2DRenderer } from 'three/examples/jsm/renderers/CSS2DRenderer';
|
|
9
|
+
import { CSS3DRenderer } from 'three/examples/jsm/renderers/CSS3DRenderer';
|
|
10
|
+
var CssRenderer = /*#__PURE__*/function () {
|
|
11
|
+
function CssRenderer(type) {
|
|
12
|
+
_classCallCheck(this, CssRenderer);
|
|
13
|
+
_defineProperty(this, "baseCssRenderer", new CSS2DRenderer());
|
|
14
|
+
_defineProperty(this, "normalCssRenderer", new CSS3DRenderer());
|
|
15
|
+
_defineProperty(this, "cssRenderer", void 0);
|
|
16
|
+
this.cssRenderer = type === 'base' ? this.baseCssRenderer : this.normalCssRenderer;
|
|
17
|
+
}
|
|
18
|
+
_createClass(CssRenderer, [{
|
|
19
|
+
key: "getSize",
|
|
20
|
+
value: function getSize() {
|
|
21
|
+
return this.cssRenderer.getSize();
|
|
22
|
+
}
|
|
23
|
+
}, {
|
|
24
|
+
key: "setSize",
|
|
25
|
+
value: function setSize(width, height) {
|
|
26
|
+
this.cssRenderer.setSize(width, height);
|
|
27
|
+
}
|
|
28
|
+
}, {
|
|
29
|
+
key: "render",
|
|
30
|
+
value: function render(scene, camera) {
|
|
31
|
+
this.cssRenderer.render(scene, camera);
|
|
32
|
+
}
|
|
33
|
+
}]);
|
|
34
|
+
return CssRenderer;
|
|
35
|
+
}();
|
|
36
|
+
export default CssRenderer;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { Scene } from 'three';
|
|
2
|
+
import type { OrbitControls } from 'three/examples/jsm/controls/OrbitControls.js';
|
|
3
|
+
import type { TransformControls } from '../control/transformControls';
|
|
4
|
+
import type { PerspectiveCamera } from '../camera';
|
|
5
|
+
import type Group from '../group';
|
|
6
|
+
declare class GlobalObjectManage {
|
|
7
|
+
scene: Scene | null;
|
|
8
|
+
triggerClick: boolean;
|
|
9
|
+
camera: PerspectiveCamera | null;
|
|
10
|
+
domElement: HTMLElement | null;
|
|
11
|
+
orbitControls: OrbitControls | null;
|
|
12
|
+
transformControls: TransformControls[];
|
|
13
|
+
frameCallbacks: Set<() => void>;
|
|
14
|
+
groupCatch: Group[];
|
|
15
|
+
constructor();
|
|
16
|
+
addScene(object3d: Scene): void;
|
|
17
|
+
setCamera(camera: PerspectiveCamera): void;
|
|
18
|
+
setDomElement(domElement: HTMLElement): void;
|
|
19
|
+
setOrbitControls(orbitControls: OrbitControls): void;
|
|
20
|
+
setTransformControls(transformControls: TransformControls): void;
|
|
21
|
+
setTriggerClickState(state: boolean): void;
|
|
22
|
+
addFrameCallback(cb: () => void): void;
|
|
23
|
+
removeFrameCallback(cb: () => void): void;
|
|
24
|
+
addCatch(group: Group): void;
|
|
25
|
+
}
|
|
26
|
+
declare const _default: GlobalObjectManage;
|
|
27
|
+
export default _default;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
3
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
4
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
5
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
7
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
8
|
+
var GlobalObjectManage = /*#__PURE__*/function () {
|
|
9
|
+
// hooks callback
|
|
10
|
+
|
|
11
|
+
// instance
|
|
12
|
+
|
|
13
|
+
function GlobalObjectManage() {
|
|
14
|
+
_classCallCheck(this, GlobalObjectManage);
|
|
15
|
+
_defineProperty(this, "scene", null);
|
|
16
|
+
_defineProperty(this, "triggerClick", false);
|
|
17
|
+
_defineProperty(this, "camera", null);
|
|
18
|
+
_defineProperty(this, "domElement", null);
|
|
19
|
+
_defineProperty(this, "orbitControls", null);
|
|
20
|
+
_defineProperty(this, "transformControls", []);
|
|
21
|
+
_defineProperty(this, "frameCallbacks", new Set());
|
|
22
|
+
_defineProperty(this, "groupCatch", []);
|
|
23
|
+
}
|
|
24
|
+
_createClass(GlobalObjectManage, [{
|
|
25
|
+
key: "addScene",
|
|
26
|
+
value: function addScene(object3d) {
|
|
27
|
+
this.scene = object3d;
|
|
28
|
+
}
|
|
29
|
+
}, {
|
|
30
|
+
key: "setCamera",
|
|
31
|
+
value: function setCamera(camera) {
|
|
32
|
+
this.camera = camera;
|
|
33
|
+
}
|
|
34
|
+
}, {
|
|
35
|
+
key: "setDomElement",
|
|
36
|
+
value: function setDomElement(domElement) {
|
|
37
|
+
this.domElement = domElement;
|
|
38
|
+
}
|
|
39
|
+
}, {
|
|
40
|
+
key: "setOrbitControls",
|
|
41
|
+
value: function setOrbitControls(orbitControls) {
|
|
42
|
+
this.orbitControls = orbitControls;
|
|
43
|
+
}
|
|
44
|
+
}, {
|
|
45
|
+
key: "setTransformControls",
|
|
46
|
+
value: function setTransformControls(transformControls) {
|
|
47
|
+
this.transformControls.push(transformControls);
|
|
48
|
+
}
|
|
49
|
+
}, {
|
|
50
|
+
key: "setTriggerClickState",
|
|
51
|
+
value: function setTriggerClickState(state) {
|
|
52
|
+
this.triggerClick = state;
|
|
53
|
+
}
|
|
54
|
+
}, {
|
|
55
|
+
key: "addFrameCallback",
|
|
56
|
+
value: function addFrameCallback(cb) {
|
|
57
|
+
this.frameCallbacks.add(cb);
|
|
58
|
+
}
|
|
59
|
+
}, {
|
|
60
|
+
key: "removeFrameCallback",
|
|
61
|
+
value: function removeFrameCallback(cb) {
|
|
62
|
+
this.frameCallbacks.delete(cb);
|
|
63
|
+
}
|
|
64
|
+
}, {
|
|
65
|
+
key: "addCatch",
|
|
66
|
+
value: function addCatch(group) {
|
|
67
|
+
this.groupCatch.push(group);
|
|
68
|
+
}
|
|
69
|
+
}]);
|
|
70
|
+
return GlobalObjectManage;
|
|
71
|
+
}();
|
|
72
|
+
export default new GlobalObjectManage();
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
interface CallbackType {
|
|
3
|
+
cb: () => void;
|
|
4
|
+
duration: number;
|
|
5
|
+
}
|
|
6
|
+
declare class GlobalControl {
|
|
7
|
+
callback: CallbackType;
|
|
8
|
+
task: Map<() => void, NodeJS.Timer>;
|
|
9
|
+
constructor();
|
|
10
|
+
update(): void;
|
|
11
|
+
add(cb: () => void, duration?: number): void;
|
|
12
|
+
remove(cb: () => void): void;
|
|
13
|
+
start(): void;
|
|
14
|
+
private timerControl;
|
|
15
|
+
}
|
|
16
|
+
declare const _default: GlobalControl;
|
|
17
|
+
export default _default;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
3
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
4
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
5
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
6
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
7
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
8
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
9
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
10
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
11
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
12
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
13
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
14
|
+
var GlobalControl = /*#__PURE__*/function () {
|
|
15
|
+
function GlobalControl() {
|
|
16
|
+
_classCallCheck(this, GlobalControl);
|
|
17
|
+
_defineProperty(this, "callback", {});
|
|
18
|
+
_defineProperty(this, "task", new Map());
|
|
19
|
+
}
|
|
20
|
+
_createClass(GlobalControl, [{
|
|
21
|
+
key: "update",
|
|
22
|
+
value: function update() {
|
|
23
|
+
if (this.task.size > 0) {
|
|
24
|
+
_toConsumableArray(this.task.keys()).forEach(function (cb) {
|
|
25
|
+
cb();
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}, {
|
|
30
|
+
key: "add",
|
|
31
|
+
value: function add(cb, duration) {
|
|
32
|
+
this.callback.cb = cb;
|
|
33
|
+
this.callback.duration = duration || 1000;
|
|
34
|
+
}
|
|
35
|
+
}, {
|
|
36
|
+
key: "remove",
|
|
37
|
+
value: function remove(cb) {
|
|
38
|
+
if (this.task.get(cb)) {
|
|
39
|
+
clearTimeout(this.task.get(cb));
|
|
40
|
+
this.task.delete(cb);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}, {
|
|
44
|
+
key: "start",
|
|
45
|
+
value: function start() {
|
|
46
|
+
if (!this.task.get(this.callback.cb)) {
|
|
47
|
+
var timer = this.timerControl();
|
|
48
|
+
this.task.set(this.callback.cb, timer);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}, {
|
|
52
|
+
key: "timerControl",
|
|
53
|
+
value: function timerControl() {
|
|
54
|
+
var _this = this;
|
|
55
|
+
return setTimeout(function () {
|
|
56
|
+
_this.task.delete(_this.callback.cb);
|
|
57
|
+
}, this.callback.duration);
|
|
58
|
+
}
|
|
59
|
+
}]);
|
|
60
|
+
return GlobalControl;
|
|
61
|
+
}();
|
|
62
|
+
export default new GlobalControl();
|