@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/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import Anov3DModelLoader from './core/model';
|
|
5
|
-
import { ModelType } from './commonEnu';
|
|
6
|
-
export { Anove3DScene, Anov3DMesh, Anov3DPerspectiveCamera, Anov3DModelLoader, ModelType, };
|
|
1
|
+
import * as anov3d from './export';
|
|
2
|
+
export * from './export';
|
|
3
|
+
export { anov3d as ANOV, };
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
export { Anove3DScene, Anov3DMesh, Anov3DPerspectiveCamera, Anov3DModelLoader, ModelType };
|
|
1
|
+
import * as anov3d from "./export";
|
|
2
|
+
export * from "./export";
|
|
3
|
+
|
|
4
|
+
// umd
|
|
5
|
+
export { anov3d as ANOV };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { OrbitControls } from 'three/examples/jsm/controls/OrbitControls.js';
|
|
2
|
+
export { DRACOLoader } from 'three/examples/jsm/loaders/DRACOLoader';
|
|
3
|
+
export { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader';
|
|
4
|
+
export { CSS2DRenderer } from 'three/examples/jsm/renderers/CSS2DRenderer';
|
|
5
|
+
export { CSS3DRenderer } from 'three/examples/jsm/renderers/CSS3DRenderer';
|
|
6
|
+
export { LineGeometry } from 'three/examples/jsm/lines/LineGeometry';
|
|
7
|
+
export { LineMaterial } from 'three/examples/jsm/lines/LineMaterial';
|
|
8
|
+
export { Line2 } from 'three/examples/jsm/lines/Line2';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// control
|
|
2
|
+
export { OrbitControls } from 'three/examples/jsm/controls/OrbitControls.js';
|
|
3
|
+
|
|
4
|
+
// loader
|
|
5
|
+
export { DRACOLoader } from 'three/examples/jsm/loaders/DRACOLoader';
|
|
6
|
+
export { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader';
|
|
7
|
+
|
|
8
|
+
// renderer
|
|
9
|
+
export { CSS2DRenderer } from 'three/examples/jsm/renderers/CSS2DRenderer';
|
|
10
|
+
export { CSS3DRenderer } from 'three/examples/jsm/renderers/CSS3DRenderer';
|
|
11
|
+
|
|
12
|
+
// line
|
|
13
|
+
|
|
14
|
+
export { LineGeometry } from 'three/examples/jsm/lines/LineGeometry';
|
|
15
|
+
export { LineMaterial } from 'three/examples/jsm/lines/LineMaterial';
|
|
16
|
+
export { Line2 } from 'three/examples/jsm/lines/Line2';
|
package/dist/type.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import type
|
|
2
|
-
|
|
3
|
-
export declare type
|
|
1
|
+
import type { Intersection } from 'three';
|
|
2
|
+
import type Mesh from './core/mesh';
|
|
3
|
+
export declare type CubeEventType = 'click' | 'pointerup' | 'pointerdown' | 'pointermove' | 'pointerleave';
|
|
4
|
+
export declare type EventHandleFn<T> = (event: Mesh, intersect?: Intersection) => void;
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
export interface OpsType {
|
|
2
|
+
textContent?: string;
|
|
3
|
+
innerHTML?: string;
|
|
4
|
+
id?: string;
|
|
5
|
+
class?: string;
|
|
6
|
+
classList?: string[];
|
|
7
|
+
attrs?: {
|
|
8
|
+
[key: string]: string;
|
|
9
|
+
};
|
|
10
|
+
style?: {
|
|
11
|
+
[key: string]: string;
|
|
12
|
+
};
|
|
13
|
+
events?: {
|
|
14
|
+
[key: string]: () => void;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* setAttributes
|
|
19
|
+
* @param el
|
|
20
|
+
* @param attrs
|
|
21
|
+
*/
|
|
22
|
+
export declare const setAttributes: (el: HTMLElement, attrs?: OpsType['attrs']) => void;
|
|
23
|
+
/**
|
|
24
|
+
* setClassList
|
|
25
|
+
* @param el
|
|
26
|
+
* @param classList
|
|
27
|
+
*/
|
|
28
|
+
export declare const setClassList: (el: HTMLElement, classList: string[]) => void;
|
|
29
|
+
/**
|
|
30
|
+
* setEventListeners
|
|
31
|
+
* @param el
|
|
32
|
+
* @param events
|
|
33
|
+
*/
|
|
34
|
+
export declare const setEventListeners: (el: HTMLElement, events?: OpsType['events']) => void;
|
|
35
|
+
/**
|
|
36
|
+
* appendChildren
|
|
37
|
+
* @param node
|
|
38
|
+
* @param children
|
|
39
|
+
*/
|
|
40
|
+
export declare const appendChildren: (node: HTMLElement, children: HTMLElement[]) => void;
|
|
41
|
+
/**
|
|
42
|
+
* createElement
|
|
43
|
+
* @param tag
|
|
44
|
+
* @param options
|
|
45
|
+
* @param children
|
|
46
|
+
* @returns
|
|
47
|
+
*/
|
|
48
|
+
export declare const createElement: (tag: string, options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
49
|
+
/**
|
|
50
|
+
* create
|
|
51
|
+
* @param tags
|
|
52
|
+
* @returns
|
|
53
|
+
*/
|
|
54
|
+
export declare const create: (...tags: string[]) => ((options?: OpsType, children?: HTMLElement[]) => HTMLDivElement)[];
|
|
55
|
+
export declare const a: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
56
|
+
export declare const article: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
57
|
+
export declare const aside: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
58
|
+
export declare const b: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
59
|
+
export declare const br: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
60
|
+
export declare const button: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
61
|
+
export declare const canvas: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
62
|
+
export declare const div: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
63
|
+
export declare const fieldset: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
64
|
+
export declare const footer: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
65
|
+
export declare const form: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
66
|
+
export declare const h1: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
67
|
+
export declare const h2: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
68
|
+
export declare const h3: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
69
|
+
export declare const h4: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
70
|
+
export declare const h5: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
71
|
+
export declare const h6: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
72
|
+
export declare const header: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
73
|
+
export declare const hr: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
74
|
+
export declare const i: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
75
|
+
export declare const iframe: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
76
|
+
export declare const img: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
77
|
+
export declare const input: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
78
|
+
export declare const label: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
79
|
+
export declare const li: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
80
|
+
export declare const link: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
81
|
+
export declare const main: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
82
|
+
export declare const meta: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
83
|
+
export declare const nav: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
84
|
+
export declare const ol: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
85
|
+
export declare const option: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
86
|
+
export declare const p: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
87
|
+
export declare const progress: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
88
|
+
export declare const script: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
89
|
+
export declare const section: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
90
|
+
export declare const select: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
91
|
+
export declare const span: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
92
|
+
export declare const style: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
93
|
+
export declare const sub: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
94
|
+
export declare const sup: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
95
|
+
export declare const svg: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
96
|
+
export declare const table: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
97
|
+
export declare const tbody: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
98
|
+
export declare const td: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
99
|
+
export declare const textarea: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
100
|
+
export declare const th: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
101
|
+
export declare const tr: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
102
|
+
export declare const ul: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
103
|
+
export declare const video: (options?: OpsType, children?: HTMLElement[]) => HTMLDivElement;
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { handleCamelCaseString } from "../utils";
|
|
2
|
+
/**
|
|
3
|
+
* setAttributes
|
|
4
|
+
* @param el
|
|
5
|
+
* @param attrs
|
|
6
|
+
*/
|
|
7
|
+
export var setAttributes = function setAttributes(el) {
|
|
8
|
+
var attrs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
9
|
+
Object.keys(attrs).forEach(function (attrName) {
|
|
10
|
+
if (attrs[attrName]) el.setAttribute(attrName, attrs[attrName]);
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var setStyle = function setStyle(el) {
|
|
14
|
+
var style = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
15
|
+
var styleString = Object.keys(style).reduce(function (pre, cur) {
|
|
16
|
+
return "".concat(pre, " ").concat(handleCamelCaseString(cur), ":").concat(style[cur], ";");
|
|
17
|
+
}, '');
|
|
18
|
+
el.setAttribute('style', styleString);
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* setClassList
|
|
23
|
+
* @param el
|
|
24
|
+
* @param classList
|
|
25
|
+
*/
|
|
26
|
+
export var setClassList = function setClassList(el, classList) {
|
|
27
|
+
classList.forEach(function (className) {
|
|
28
|
+
return el.classList.add(className);
|
|
29
|
+
});
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* setEventListeners
|
|
34
|
+
* @param el
|
|
35
|
+
* @param events
|
|
36
|
+
*/
|
|
37
|
+
export var setEventListeners = function setEventListeners(el) {
|
|
38
|
+
var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
39
|
+
Object.keys(events).forEach(function (eventName) {
|
|
40
|
+
var eventFn = events[eventName];
|
|
41
|
+
el.addEventListener(eventName, eventFn);
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* appendChildren
|
|
47
|
+
* @param node
|
|
48
|
+
* @param children
|
|
49
|
+
*/
|
|
50
|
+
export var appendChildren = function appendChildren(node, children) {
|
|
51
|
+
children.forEach(function (child) {
|
|
52
|
+
return node.appendChild(child);
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* createElement
|
|
58
|
+
* @param tag
|
|
59
|
+
* @param options
|
|
60
|
+
* @param children
|
|
61
|
+
* @returns
|
|
62
|
+
*/
|
|
63
|
+
export var createElement = function createElement(tag) {
|
|
64
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
65
|
+
var children = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
66
|
+
var result = document.createElement(tag);
|
|
67
|
+
var parent = document.createElement('div');
|
|
68
|
+
parent.appendChild(result);
|
|
69
|
+
if (options.textContent) result.textContent = options.textContent;
|
|
70
|
+
if (options.innerHTML) result.innerHTML = options.innerHTML;
|
|
71
|
+
if (options.id) result.id = options.id;
|
|
72
|
+
if (options.class) result.className = options.class;
|
|
73
|
+
setAttributes(result, options.attrs);
|
|
74
|
+
setClassList(result, options.classList || []);
|
|
75
|
+
setEventListeners(result, options.events);
|
|
76
|
+
setStyle(result, options.style || {});
|
|
77
|
+
appendChildren(result, children);
|
|
78
|
+
return parent;
|
|
79
|
+
};
|
|
80
|
+
/**
|
|
81
|
+
* create
|
|
82
|
+
* @param tags
|
|
83
|
+
* @returns
|
|
84
|
+
*/
|
|
85
|
+
export var create = function create() {
|
|
86
|
+
for (var _len = arguments.length, tags = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
87
|
+
tags[_key] = arguments[_key];
|
|
88
|
+
}
|
|
89
|
+
return tags.map(function (tag) {
|
|
90
|
+
return function () {
|
|
91
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
92
|
+
var children = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
93
|
+
return createElement(tag, options, children);
|
|
94
|
+
};
|
|
95
|
+
});
|
|
96
|
+
};
|
|
97
|
+
export var a = create('a')[0];
|
|
98
|
+
export var article = create('article')[0];
|
|
99
|
+
export var aside = create('aside')[0];
|
|
100
|
+
export var b = create('b')[0];
|
|
101
|
+
export var br = create('br')[0];
|
|
102
|
+
export var button = create('button')[0];
|
|
103
|
+
export var canvas = create('canvas')[0];
|
|
104
|
+
export var div = create('div')[0];
|
|
105
|
+
export var fieldset = create('fieldset')[0];
|
|
106
|
+
export var footer = create('footer')[0];
|
|
107
|
+
export var form = create('form')[0];
|
|
108
|
+
export var h1 = create('h1')[0];
|
|
109
|
+
export var h2 = create('h2')[0];
|
|
110
|
+
export var h3 = create('h3')[0];
|
|
111
|
+
export var h4 = create('h4')[0];
|
|
112
|
+
export var h5 = create('h5')[0];
|
|
113
|
+
export var h6 = create('h6')[0];
|
|
114
|
+
export var header = create('header')[0];
|
|
115
|
+
export var hr = create('hr')[0];
|
|
116
|
+
export var i = create('i')[0];
|
|
117
|
+
export var iframe = create('iframe')[0];
|
|
118
|
+
export var img = create('img')[0];
|
|
119
|
+
export var input = create('input')[0];
|
|
120
|
+
export var label = create('label')[0];
|
|
121
|
+
export var li = create('li')[0];
|
|
122
|
+
export var link = create('link')[0];
|
|
123
|
+
export var main = create('main')[0];
|
|
124
|
+
export var meta = create('meta')[0];
|
|
125
|
+
export var nav = create('nav')[0];
|
|
126
|
+
export var ol = create('ol')[0];
|
|
127
|
+
export var option = create('option')[0];
|
|
128
|
+
export var p = create('p')[0];
|
|
129
|
+
export var progress = create('progress')[0];
|
|
130
|
+
export var script = create('script')[0];
|
|
131
|
+
export var section = create('section')[0];
|
|
132
|
+
export var select = create('select')[0];
|
|
133
|
+
export var span = create('span')[0];
|
|
134
|
+
export var style = create('style')[0];
|
|
135
|
+
export var sub = create('sub')[0];
|
|
136
|
+
export var sup = create('sup')[0];
|
|
137
|
+
export var svg = create('svg')[0];
|
|
138
|
+
export var table = create('table')[0];
|
|
139
|
+
export var tbody = create('tbody')[0];
|
|
140
|
+
export var td = create('td')[0];
|
|
141
|
+
export var textarea = create('textarea')[0];
|
|
142
|
+
export var th = create('th')[0];
|
|
143
|
+
export var tr = create('tr')[0];
|
|
144
|
+
export var ul = create('ul')[0];
|
|
145
|
+
export var video = create('video')[0];
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { Object3D } from 'three';
|
|
2
|
+
import { Vector3 } from 'three';
|
|
1
3
|
export declare const emitter: {
|
|
2
4
|
on: {
|
|
3
5
|
<Key extends import("mitt").EventType>(type: Key, handler: import("mitt").Handler<Record<import("mitt").EventType, unknown>[Key]>): void;
|
|
@@ -13,3 +15,37 @@ export declare const emitter: {
|
|
|
13
15
|
};
|
|
14
16
|
all: import("mitt").EventHandlerMap<Record<import("mitt").EventType, unknown>>;
|
|
15
17
|
};
|
|
18
|
+
interface Node {
|
|
19
|
+
children?: Node[];
|
|
20
|
+
[k: string]: any;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* get ancestors nodes
|
|
24
|
+
* @param array
|
|
25
|
+
* @param targetId
|
|
26
|
+
* @param key
|
|
27
|
+
* @returns
|
|
28
|
+
*/
|
|
29
|
+
export declare const getAncestorsNodes: <T extends Node>(array: T[], targetId: string | number, key?: string) => T[];
|
|
30
|
+
/**
|
|
31
|
+
* get object3d ancestors nodes
|
|
32
|
+
* @param object3d
|
|
33
|
+
* @returns
|
|
34
|
+
*/
|
|
35
|
+
export declare const getObject3dAncestorsNodes: (object3d: Object3D) => Object3D<import("three").Event>[];
|
|
36
|
+
/**
|
|
37
|
+
* handle small hump
|
|
38
|
+
* @param camelCaseString
|
|
39
|
+
* @returns
|
|
40
|
+
*/
|
|
41
|
+
export declare const handleCamelCaseString: (camelCaseString: string) => string;
|
|
42
|
+
/**
|
|
43
|
+
* mousePointTo3DPoint
|
|
44
|
+
* @param mouseX
|
|
45
|
+
* @param mouseY
|
|
46
|
+
* @param camera
|
|
47
|
+
* @param renderer
|
|
48
|
+
* @returns
|
|
49
|
+
*/
|
|
50
|
+
export declare const mousePointTo3DPoint: (mouseX: number, mouseY: number, camera: THREE.Camera, renderer: THREE.WebGLRenderer) => Vector3;
|
|
51
|
+
export {};
|
package/dist/utils/index.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Vector3 } from 'three';
|
|
1
2
|
import mitt from 'mitt';
|
|
2
3
|
var emitterHandle = mitt();
|
|
3
4
|
export var emitter = {
|
|
@@ -5,4 +6,79 @@ export var emitter = {
|
|
|
5
6
|
off: emitterHandle.off,
|
|
6
7
|
emit: emitterHandle.emit,
|
|
7
8
|
all: emitterHandle.all
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* get ancestors nodes
|
|
12
|
+
* @param array
|
|
13
|
+
* @param targetId
|
|
14
|
+
* @param key
|
|
15
|
+
* @returns
|
|
16
|
+
*/
|
|
17
|
+
export var getAncestorsNodes = function getAncestorsNodes(array, targetId) {
|
|
18
|
+
var key = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'id';
|
|
19
|
+
var ancestorsNodes = [];
|
|
20
|
+
var run = function run(currentAttr) {
|
|
21
|
+
for (var i = 0; i < currentAttr.length; i++) {
|
|
22
|
+
if (!currentAttr[i][key]) throw new Error("The key ".concat(key, " is not defined in the object"));
|
|
23
|
+
if (currentAttr[i][key] && currentAttr[i][key] === targetId) return true;
|
|
24
|
+
if (currentAttr[i].children && Array.isArray(currentAttr[i].children)) {
|
|
25
|
+
var endRecursiveLoop = run(currentAttr[i].children);
|
|
26
|
+
if (endRecursiveLoop) {
|
|
27
|
+
ancestorsNodes.push(currentAttr[i]);
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
run(currentAttr[i].children);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
run(array);
|
|
35
|
+
return ancestorsNodes;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* get object3d ancestors nodes
|
|
40
|
+
* @param object3d
|
|
41
|
+
* @returns
|
|
42
|
+
*/
|
|
43
|
+
export var getObject3dAncestorsNodes = function getObject3dAncestorsNodes(object3d) {
|
|
44
|
+
var ancestorsNodes = [];
|
|
45
|
+
var currentObject3d = object3d;
|
|
46
|
+
while (currentObject3d.parent) {
|
|
47
|
+
ancestorsNodes.push(currentObject3d.parent);
|
|
48
|
+
currentObject3d = currentObject3d.parent;
|
|
49
|
+
}
|
|
50
|
+
return ancestorsNodes;
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* handle small hump
|
|
55
|
+
* @param camelCaseString
|
|
56
|
+
* @returns
|
|
57
|
+
*/
|
|
58
|
+
export var handleCamelCaseString = function handleCamelCaseString(camelCaseString) {
|
|
59
|
+
var result = '';
|
|
60
|
+
for (var i = 0; i < camelCaseString.length; i++) {
|
|
61
|
+
var char = camelCaseString[i];
|
|
62
|
+
if (char === char.toUpperCase()) result += "-".concat(char.toLowerCase());else result += char;
|
|
63
|
+
}
|
|
64
|
+
if (result && result[0] === '-') result = result.slice(1);
|
|
65
|
+
return result;
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* mousePointTo3DPoint
|
|
70
|
+
* @param mouseX
|
|
71
|
+
* @param mouseY
|
|
72
|
+
* @param camera
|
|
73
|
+
* @param renderer
|
|
74
|
+
* @returns
|
|
75
|
+
*/
|
|
76
|
+
export var mousePointTo3DPoint = function mousePointTo3DPoint(mouseX, mouseY, camera, renderer) {
|
|
77
|
+
var vector = new Vector3();
|
|
78
|
+
vector.set(mouseX / renderer.domElement.clientWidth * 2 - 1, -(mouseY / renderer.domElement.clientHeight) * 2 + 1, 0.5);
|
|
79
|
+
vector.unproject(camera);
|
|
80
|
+
var dir = vector.sub(camera.position).normalize();
|
|
81
|
+
var distance = -camera.position.z / dir.z;
|
|
82
|
+
var pos = camera.position.clone().add(dir.multiplyScalar(distance));
|
|
83
|
+
return pos;
|
|
8
84
|
};
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { Object3D, Vector3 } from 'three';
|
|
2
|
+
import { CatmullRomCurve3 } from 'three';
|
|
3
|
+
import * as TWEEN from '@tweenjs/tween.js';
|
|
4
|
+
export declare enum Direction {
|
|
5
|
+
plus = "plus",
|
|
6
|
+
minus = "minus"
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* moveTo 直线移动
|
|
10
|
+
* @param currentObject3D
|
|
11
|
+
* @param targetObject3D
|
|
12
|
+
* @param direction
|
|
13
|
+
* @param distance
|
|
14
|
+
* @param duration
|
|
15
|
+
* @param animationMethod
|
|
16
|
+
*/
|
|
17
|
+
export declare const moveTo: (currentObject3D: Object3D, targetObject3D: Object3D, distance: number, direction: Direction, duration?: number, animationMethod?: string) => TWEEN.Tween<Vector3>;
|
|
18
|
+
export interface ControlsRetuenFuncType {
|
|
19
|
+
remove: () => void;
|
|
20
|
+
increaseSpeed: (currentStep: number) => void;
|
|
21
|
+
recoverSpeed: () => void;
|
|
22
|
+
}
|
|
23
|
+
export interface OffsetType {
|
|
24
|
+
x?: number;
|
|
25
|
+
y?: number;
|
|
26
|
+
z?: number;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* 曲线路径移动
|
|
30
|
+
* @param currentObject
|
|
31
|
+
* @param curve
|
|
32
|
+
* @param points 曲线分割数, 同时也决定了运动速度
|
|
33
|
+
* @param lookat 默认曲线方向
|
|
34
|
+
*/
|
|
35
|
+
export declare const moveWithLine: (currentObject: Object3D, curve: CatmullRomCurve3, points?: number, offset?: OffsetType, lookat?: Vector3) => ControlsRetuenFuncType;
|
|
36
|
+
/**
|
|
37
|
+
* base 圆周运动
|
|
38
|
+
* @param currentObject3d
|
|
39
|
+
* @param speed
|
|
40
|
+
* @param duration
|
|
41
|
+
*/
|
|
42
|
+
export declare const moveWithRound: (currentObject3d: Object3D, speed?: number, duration?: number) => void;
|
|
43
|
+
/**
|
|
44
|
+
* move 方法2 移动辅助线
|
|
45
|
+
* @param currentObject3D
|
|
46
|
+
* @param targetObject3D
|
|
47
|
+
*/
|
|
48
|
+
export declare const moveLine: (currentObject3D: Object3D, targetObject3D: Object3D) => void;
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
4
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
5
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
6
|
+
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."); }
|
|
7
|
+
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); }
|
|
8
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
9
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
10
|
+
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; }
|
|
11
|
+
import { BufferGeometry, CatmullRomCurve3, Line, LineBasicMaterial } from 'three';
|
|
12
|
+
import * as TWEEN from '@tweenjs/tween.js';
|
|
13
|
+
import { PerspectiveCamera } from "../core/camera";
|
|
14
|
+
import globalObjectManage from "../core/global/global";
|
|
15
|
+
import globalControl from "../core/global/globalControl";
|
|
16
|
+
var AnimationMethod;
|
|
17
|
+
(function (AnimationMethod) {})(AnimationMethod || (AnimationMethod = {}));
|
|
18
|
+
export var Direction;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* moveTo 直线移动
|
|
22
|
+
* @param currentObject3D
|
|
23
|
+
* @param targetObject3D
|
|
24
|
+
* @param direction
|
|
25
|
+
* @param distance
|
|
26
|
+
* @param duration
|
|
27
|
+
* @param animationMethod
|
|
28
|
+
*/
|
|
29
|
+
(function (Direction) {
|
|
30
|
+
Direction["plus"] = "plus";
|
|
31
|
+
Direction["minus"] = "minus";
|
|
32
|
+
})(Direction || (Direction = {}));
|
|
33
|
+
export var moveTo = function moveTo(currentObject3D, targetObject3D, distance, direction, duration, animationMethod) {
|
|
34
|
+
var targetPosition = targetObject3D.position;
|
|
35
|
+
var cameraPosition = currentObject3D.position;
|
|
36
|
+
|
|
37
|
+
// 单位方向向量
|
|
38
|
+
var toward = targetPosition.clone().sub(cameraPosition).normalize();
|
|
39
|
+
if (direction === Direction.minus) toward = toward.negate();
|
|
40
|
+
var target = cameraPosition.clone().add(toward.multiplyScalar(distance));
|
|
41
|
+
var totalDistance = cameraPosition.distanceTo(targetPosition);
|
|
42
|
+
var currentDistance = cameraPosition.distanceTo(target);
|
|
43
|
+
var lastPosition = target.clone();
|
|
44
|
+
if (direction === Direction.plus && currentDistance > totalDistance) lastPosition = targetPosition;
|
|
45
|
+
var tween = new TWEEN.Tween(cameraPosition);
|
|
46
|
+
tween.to(lastPosition, duration || 1000);
|
|
47
|
+
tween.start();
|
|
48
|
+
if (currentObject3D instanceof PerspectiveCamera) {
|
|
49
|
+
globalControl.add(function () {
|
|
50
|
+
currentObject3D.lookAt(targetPosition);
|
|
51
|
+
}, (duration || 1000) * 1.01);
|
|
52
|
+
globalControl.start();
|
|
53
|
+
}
|
|
54
|
+
return tween;
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* create line
|
|
59
|
+
* @param points
|
|
60
|
+
* @returns
|
|
61
|
+
*/
|
|
62
|
+
var createLine = function createLine(points) {
|
|
63
|
+
var curve = new CatmullRomCurve3(_toConsumableArray(points));
|
|
64
|
+
var curvePoints = curve.getPoints(50);
|
|
65
|
+
var geometry = new BufferGeometry().setFromPoints(curvePoints);
|
|
66
|
+
var material = new LineBasicMaterial({
|
|
67
|
+
opacity: 1
|
|
68
|
+
});
|
|
69
|
+
return [new Line(geometry, material), curve];
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* 曲线路径移动
|
|
73
|
+
* @param currentObject
|
|
74
|
+
* @param curve
|
|
75
|
+
* @param points 曲线分割数, 同时也决定了运动速度
|
|
76
|
+
* @param lookat 默认曲线方向
|
|
77
|
+
*/
|
|
78
|
+
export var moveWithLine = function moveWithLine(currentObject, curve) {
|
|
79
|
+
var points = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 500;
|
|
80
|
+
var offset = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {
|
|
81
|
+
x: 0,
|
|
82
|
+
y: 0,
|
|
83
|
+
z: 0
|
|
84
|
+
};
|
|
85
|
+
var lookat = arguments.length > 4 ? arguments[4] : undefined;
|
|
86
|
+
var totlePoints = curve.getPoints(points);
|
|
87
|
+
var totle = totlePoints.length;
|
|
88
|
+
var index = 0;
|
|
89
|
+
var step = 1;
|
|
90
|
+
var calcIndex = function calcIndex(index) {
|
|
91
|
+
return index > totle ? index - totle - 1 : index;
|
|
92
|
+
};
|
|
93
|
+
var handleCallback = function handleCallback() {
|
|
94
|
+
if (index >= totle) index = calcIndex(index);
|
|
95
|
+
var nextPoint = totlePoints[calcIndex(index) % totle];
|
|
96
|
+
currentObject.position.set(nextPoint.x + offset.x || 0, nextPoint.y + offset.y || 0, nextPoint.z + offset.z || 0);
|
|
97
|
+
if (lookat) currentObject.lookAt(lookat);else currentObject.lookAt(totlePoints[calcIndex(index + 1) % totle]);
|
|
98
|
+
index += step;
|
|
99
|
+
};
|
|
100
|
+
globalControl.add(handleCallback, 100000);
|
|
101
|
+
globalControl.start();
|
|
102
|
+
return {
|
|
103
|
+
remove: function remove() {
|
|
104
|
+
return globalControl.remove(handleCallback);
|
|
105
|
+
},
|
|
106
|
+
increaseSpeed: function increaseSpeed() {
|
|
107
|
+
var currentStep = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
|
|
108
|
+
step = currentStep + step;
|
|
109
|
+
},
|
|
110
|
+
recoverSpeed: function recoverSpeed() {
|
|
111
|
+
step = 1;
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
};
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* base 圆周运动
|
|
118
|
+
* @param currentObject3d
|
|
119
|
+
* @param speed
|
|
120
|
+
* @param duration
|
|
121
|
+
*/
|
|
122
|
+
export var moveWithRound = function moveWithRound(currentObject3d) {
|
|
123
|
+
var speed = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0.1;
|
|
124
|
+
var duration = arguments.length > 2 ? arguments[2] : undefined;
|
|
125
|
+
var angle = 0;
|
|
126
|
+
var x = 0;
|
|
127
|
+
var z = 0;
|
|
128
|
+
var handleCallback = function handleCallback() {
|
|
129
|
+
angle += speed;
|
|
130
|
+
x = 4 * Math.sin(angle);
|
|
131
|
+
z = 4 * Math.cos(angle);
|
|
132
|
+
currentObject3d.position.set(x, 0, z);
|
|
133
|
+
};
|
|
134
|
+
globalControl.add(handleCallback, duration);
|
|
135
|
+
globalControl.start();
|
|
136
|
+
};
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* move 方法2 移动辅助线
|
|
140
|
+
* @param currentObject3D
|
|
141
|
+
* @param targetObject3D
|
|
142
|
+
*/
|
|
143
|
+
export var moveLine = function moveLine(currentObject3D, targetObject3D) {
|
|
144
|
+
var _createLine = createLine([currentObject3D.position, targetObject3D.position]),
|
|
145
|
+
_createLine2 = _slicedToArray(_createLine, 2),
|
|
146
|
+
curveObject = _createLine2[0],
|
|
147
|
+
curve = _createLine2[1];
|
|
148
|
+
globalObjectManage.scene.add(curveObject);
|
|
149
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
Copyright @ 2004 by MAGENTA Ltd. All Rights Reserved.
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of the fonts accompanying this license ("Fonts") and associated documentation files (the "Font Software"), to reproduce and distribute the Font Software, including without limitation the rights to use, copy, merge, publish, distribute, and/or sell copies of the Font Software, and to permit persons to whom the Font Software is furnished to do so, subject to the following conditions:
|
|
4
|
+
|
|
5
|
+
The above copyright and this permission notice shall be included in all copies of one or more of the Font Software typefaces.
|
|
6
|
+
|
|
7
|
+
The Font Software may be modified, altered, or added to, and in particular the designs of glyphs or characters in the Fonts may be modified and additional glyphs or characters may be added to the Fonts, only if the fonts are renamed to names not containing the word "MgOpen", or if the modifications are accepted for inclusion in the Font Software itself by the each appointed Administrator.
|
|
8
|
+
|
|
9
|
+
This License becomes null and void to the extent applicable to Fonts or Font Software that has been modified and is distributed under the "MgOpen" name.
|
|
10
|
+
|
|
11
|
+
The Font Software may be sold as part of a larger software package but no copy of one or more of the Font Software typefaces may be sold by itself.
|
|
12
|
+
|
|
13
|
+
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL MAGENTA OR PERSONS OR BODIES IN CHARGE OF ADMINISTRATION AND MAINTENANCE OF THE FONT SOFTWARE BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
|