@takram/three-geospatial 0.4.0 → 0.5.0
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/CHANGELOG.md +17 -0
- package/build/index.cjs +1 -1
- package/build/index.cjs.map +1 -1
- package/build/index.js +1109 -2108
- package/build/index.js.map +1 -1
- package/build/r3f.cjs +1 -1
- package/build/r3f.cjs.map +1 -1
- package/build/r3f.js +1 -1
- package/build/shaders.cjs +4 -4
- package/build/shaders.js +7 -7
- package/build/shared.cjs +1 -1
- package/build/shared.cjs.map +1 -1
- package/build/shared.js +8 -210
- package/build/shared.js.map +1 -1
- package/build/shared2.cjs +2 -0
- package/build/shared2.cjs.map +1 -0
- package/build/shared2.js +224 -0
- package/build/shared2.js.map +1 -0
- package/build/shared3.cjs +2 -0
- package/build/shared3.cjs.map +1 -0
- package/build/shared3.js +13 -0
- package/build/shared3.js.map +1 -0
- package/build/webgpu.cjs +2 -0
- package/build/webgpu.cjs.map +1 -0
- package/build/webgpu.js +1336 -0
- package/build/webgpu.js.map +1 -0
- package/package.json +14 -9
- package/src/Ellipsoid.ts +17 -0
- package/src/EllipsoidGeometry.ts +2 -2
- package/src/QuadGeometry.ts +14 -0
- package/src/bufferGeometry.ts +1 -1
- package/src/capabilities.ts +12 -3
- package/src/decorators.ts +2 -2
- package/src/index.ts +2 -2
- package/src/shaders/depth.glsl +3 -3
- package/src/types.ts +2 -0
- package/src/unrollLoops.ts +1 -1
- package/src/webgpu/DownsampleThresholdNode.ts +40 -0
- package/src/webgpu/DualMipmapFilterNode.ts +130 -0
- package/src/webgpu/FilterNode.ts +93 -0
- package/src/webgpu/FnLayout.ts +86 -0
- package/src/webgpu/FnVar.ts +26 -0
- package/src/webgpu/GaussianBlurNode.ts +129 -0
- package/src/webgpu/HighpVelocityNode.ts +115 -0
- package/src/webgpu/KawaseBlurNode.ts +76 -0
- package/src/webgpu/LensFlareNode.ts +128 -0
- package/src/webgpu/LensGhostNode.ts +62 -0
- package/src/webgpu/LensGlareNode.ts +318 -0
- package/src/webgpu/LensHaloNode.ts +99 -0
- package/src/webgpu/MipmapBlurNode.ts +113 -0
- package/src/webgpu/MipmapSurfaceBlurNode.ts +140 -0
- package/src/webgpu/OutputTexture3DNode.ts +34 -0
- package/src/webgpu/OutputTextureNode.ts +33 -0
- package/src/webgpu/RTTextureNode.ts +132 -0
- package/src/webgpu/SeparableFilterNode.ts +98 -0
- package/src/webgpu/SingleFilterNode.ts +80 -0
- package/src/webgpu/TemporalAntialiasNode.ts +571 -0
- package/src/webgpu/accessors.ts +67 -0
- package/src/webgpu/debug.ts +86 -0
- package/src/webgpu/generators.ts +40 -0
- package/src/webgpu/index.ts +21 -0
- package/src/webgpu/internals.ts +37 -0
- package/src/webgpu/math.ts +81 -0
- package/src/webgpu/node.ts +100 -0
- package/src/webgpu/sampling.ts +103 -0
- package/src/webgpu/transformations.ts +106 -0
- package/src/webgpu/utils.ts +13 -0
- package/types/Ellipsoid.d.ts +3 -0
- package/types/QuadGeometry.d.ts +4 -0
- package/types/bufferGeometry.d.ts +1 -1
- package/types/capabilities.d.ts +2 -1
- package/types/index.d.ts +2 -2
- package/types/types.d.ts +1 -0
- package/types/webgpu/DownsampleThresholdNode.d.ts +11 -0
- package/types/webgpu/DualMipmapFilterNode.d.ts +21 -0
- package/types/webgpu/FilterNode.d.ts +17 -0
- package/types/webgpu/FnLayout.d.ts +21 -0
- package/types/webgpu/FnVar.d.ts +6 -0
- package/types/webgpu/GaussianBlurNode.d.ts +10 -0
- package/types/webgpu/HighpVelocityNode.d.ts +18 -0
- package/types/webgpu/KawaseBlurNode.d.ts +10 -0
- package/types/webgpu/LensFlareNode.d.ts +25 -0
- package/types/webgpu/LensGhostNode.d.ts +8 -0
- package/types/webgpu/LensGlareNode.d.ts +32 -0
- package/types/webgpu/LensHaloNode.d.ts +11 -0
- package/types/webgpu/MipmapBlurNode.d.ts +12 -0
- package/types/webgpu/MipmapSurfaceBlurNode.d.ts +11 -0
- package/types/webgpu/OutputTexture3DNode.d.ts +11 -0
- package/types/webgpu/OutputTextureNode.d.ts +11 -0
- package/types/webgpu/RTTextureNode.d.ts +23 -0
- package/types/webgpu/SeparableFilterNode.d.ts +20 -0
- package/types/webgpu/SingleFilterNode.d.ts +17 -0
- package/types/webgpu/TemporalAntialiasNode.d.ts +56 -0
- package/types/webgpu/accessors.d.ts +10 -0
- package/types/webgpu/debug.d.ts +7 -0
- package/types/webgpu/generators.d.ts +4 -0
- package/types/webgpu/index.d.ts +21 -0
- package/types/webgpu/internals.d.ts +3 -0
- package/types/webgpu/math.d.ts +4 -0
- package/types/webgpu/node.d.ts +33 -0
- package/types/webgpu/sampling.d.ts +2 -0
- package/types/webgpu/transformations.d.ts +12 -0
- package/types/webgpu/utils.d.ts +3 -0
- package/src/assertions.ts +0 -1
- package/types/assertions.d.ts +0 -1
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/ArrayBufferLoader.ts","../src/assertions.ts","../src/bufferGeometry.ts","../src/capabilities.ts","../src/constants.ts","../node_modules/.pnpm/@petamoriken+float16@3.9.2/node_modules/@petamoriken/float16/src/_util/messages.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.2/node_modules/@petamoriken/float16/src/_util/primordials.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.2/node_modules/@petamoriken/float16/src/_util/arrayIterator.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.2/node_modules/@petamoriken/float16/src/_util/is.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.2/node_modules/@petamoriken/float16/src/_util/brand.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.2/node_modules/@petamoriken/float16/src/_util/converter.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.2/node_modules/@petamoriken/float16/src/_util/spec.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.2/node_modules/@petamoriken/float16/src/Float16Array.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.2/node_modules/@petamoriken/float16/src/DataView.mjs","../src/typedArray.ts","../src/TypedArrayLoader.ts","../src/DataTextureLoader.ts","../src/math.ts","../src/decorators.ts","../src/defineShorthand.ts","../node_modules/.pnpm/three-stdlib@2.36.0_three@0.178.0/node_modules/three-stdlib/_polyfill/constants.js","../node_modules/.pnpm/fflate@0.6.10/node_modules/fflate/esm/browser.js","../node_modules/.pnpm/three-stdlib@2.36.0_three@0.178.0/node_modules/three-stdlib/loaders/EXRLoader.js","../src/EXR3DTextureLoader.ts","../src/EXRTextureLoader.ts","../src/PointOfView.ts","../src/Rectangle.ts","../src/resolveIncludes.ts","../src/typedArrayParsers.ts","../src/STBNLoader.ts","../src/TileCoordinate.ts","../src/TilingScheme.ts","../src/unrollLoops.ts"],"sourcesContent":null,"names":["ArrayBufferLoader","Loader","url","onLoad","onProgress","onError","loader","FileLoader","arrayBuffer","invariant","error","assertType","value","toBufferGeometryLike","geometry","attributes","index","boundingBox","boundingSphere","attribute","_a","buffer","fromBufferGeometryLike","input","result","BufferGeometry","name","BufferAttribute","min","max","Box3","Vector3","center","radius","Sphere","isFloatLinearSupported","renderer","STBN_TEXTURE_WIDTH","STBN_TEXTURE_HEIGHT","STBN_TEXTURE_DEPTH","ref","DEFAULT_STBN_URL","THIS_IS_NOT_AN_OBJECT","THIS_IS_NOT_A_FLOAT16ARRAY_OBJECT","THIS_CONSTRUCTOR_IS_NOT_A_SUBCLASS_OF_FLOAT16ARRAY","THE_CONSTRUCTOR_PROPERTY_VALUE_IS_NOT_AN_OBJECT","SPECIES_CONSTRUCTOR_DIDNT_RETURN_TYPEDARRAY_OBJECT","DERIVED_CONSTRUCTOR_CREATED_TYPEDARRAY_OBJECT_WHICH_WAS_TOO_SMALL_LENGTH","ATTEMPTING_TO_ACCESS_DETACHED_ARRAYBUFFER","CANNOT_CONVERT_UNDEFINED_OR_NULL_TO_OBJECT","CANNOT_MIX_BIGINT_AND_OTHER_TYPES","ITERATOR_PROPERTY_IS_NOT_CALLABLE","REDUCE_OF_EMPTY_ARRAY_WITH_NO_INITIAL_VALUE","THE_COMPARISON_FUNCTION_MUST_BE_EITHER_A_FUNCTION_OR_UNDEFINED","OFFSET_IS_OUT_OF_BOUNDS","uncurryThis","target","thisArg","args","ReflectApply","uncurryThisGetter","key","ReflectGetOwnPropertyDescriptor","ReflectConstruct","ReflectDefineProperty","ReflectGet","ReflectGetPrototypeOf","ReflectHas","ReflectOwnKeys","ReflectSet","ReflectSetPrototypeOf","NativeProxy","EPSILON","MAX_SAFE_INTEGER","NumberIsFinite","NumberIsNaN","SymbolIterator","SymbolSpecies","SymbolToStringTag","SymbolFor","NativeObject","ObjectCreate","ObjectDefineProperty","ObjectFreeze","ObjectIs","ObjectPrototype","ObjectPrototype__lookupGetter__","object","NativeTypeError","descriptor","ObjectHasOwn","NativeArray","ArrayIsArray","ArrayPrototype","ArrayPrototypeJoin","ArrayPrototypePush","ArrayPrototypeToLocaleString","NativeArrayPrototypeSymbolIterator","ArrayPrototypeSymbolIterator","MathAbs","MathTrunc","NativeArrayBuffer","ArrayBufferIsView","ArrayBufferPrototype","ArrayBufferPrototypeSlice","ArrayBufferPrototypeGetByteLength","NativeSharedArrayBuffer","SharedArrayBufferPrototypeGetByteLength","TypedArray","TypedArrayFrom","TypedArrayPrototype","NativeTypedArrayPrototypeSymbolIterator","TypedArrayPrototypeKeys","TypedArrayPrototypeValues","TypedArrayPrototypeEntries","TypedArrayPrototypeSet","TypedArrayPrototypeReverse","TypedArrayPrototypeFill","TypedArrayPrototypeCopyWithin","TypedArrayPrototypeSort","TypedArrayPrototypeSlice","TypedArrayPrototypeSubarray","TypedArrayPrototypeGetBuffer","TypedArrayPrototypeGetByteOffset","TypedArrayPrototypeGetLength","TypedArrayPrototypeGetSymbolToStringTag","NativeUint8Array","NativeUint16Array","Uint16ArrayFrom","NativeUint32Array","NativeFloat32Array","ArrayIteratorPrototype","ArrayIteratorPrototypeNext","GeneratorPrototypeNext","IteratorPrototype","DataViewPrototype","DataViewPrototypeGetUint16","NativeRangeError","NativeWeakSet","WeakSetPrototype","WeakSetPrototypeAdd","WeakSetPrototypeHas","NativeWeakMap","WeakMapPrototype","WeakMapPrototypeGet","WeakMapPrototypeHas","WeakMapPrototypeSet","arrayIterators","SafeIteratorPrototype","arrayIterator","safeIfNeeded","array","safe","generators","DummyArrayIteratorPrototype","generator","wrap","dummy","isObject","isObjectLike","isNativeTypedArray","isNativeBigIntTypedArray","typedArrayName","isArrayBuffer","isSharedArrayBuffer","isAnyArrayBuffer","isOrdinaryArray","isOrdinaryNativeTypedArray","isCanonicalIntegerIndexString","number","brand","hasFloat16ArrayBrand","prototype","constructor","INVERSE_OF_EPSILON","roundTiesToEven","num","FLOAT16_MIN_VALUE","FLOAT16_MAX_VALUE","FLOAT16_EPSILON","FLOAT16_EPSILON_MULTIPLIED_BY_FLOAT16_MIN_VALUE","FLOAT16_EPSILON_DEVIDED_BY_EPSILON","roundToFloat16","sign","absolute","temp","floatView","uint32View","baseTable","shiftTable","i","roundToFloat16Bits","f","e","mantissaTable","m","exponentTable","offsetTable","convertToNumber","float16bits","ToIntegerOrInfinity","ToLength","length","SpeciesConstructor","defaultConstructor","species","IsDetachedBuffer","defaultCompare","x","y","isXNaN","isYNaN","isXPlusZero","isYPlusZero","BYTES_PER_ELEMENT","float16bitsArrays","isFloat16Array","assertFloat16Array","assertSpeciesTypedArray","count","isTargetFloat16Array","isTargetTypedArray","float16bitsArray","getFloat16BitsArray","float16","cloned","Float16Array","copyToArray","TypedArrayPrototypeGetters","handler","receiver","_byteOffset","_length","list","data","iterator","proxy","src","opts","Constructor","uint16","mapFunc","val","items","relativeIndex","k","callback","kept","accumulator","start","targetOffset","targetLength","srcLength","clonedFloat16bitsArray","compareFn","sortCompare","end","relativeStart","relativeEnd","final","n","begin","uint16Subarray","element","from","isNaN","separator","Float16ArrayPrototype","getFloat16","dataView","byteOffset","isTypedArray","TypedArrayLoader","parser","manager","getTextureDataType","type","ByteType","UnsignedByteType","ShortType","UnsignedShortType","IntType","UnsignedIntType","HalfFloatType","FloatType","DataTextureLoader","textureClass","options","RGBAFormat","LinearFilter","texture","width","height","depth","clamp","MathUtils","euclideanModulo","inverseLerp","lerp","radians","degrees","isPowerOfTwo","ceilPowerOfTwo","floorPowerOfTwo","normalize","remap","min1","max1","min2","max2","remapClamped","smoothstep","saturate","closeTo","a","b","relativeEpsilon","absoluteEpsilon","diff","define","propertyKey","Material","defineInt","prevValue","defineFloat","precision","defineExpression","validate","definePropertyShorthand","destination","sourceKeysArgs","descriptors","source","keys","defineUniformShorthand","version","REVISION","u8","u16","u32","fleb","fdeb","clim","freb","eb","r","j","fl","revfl","_b","fd","rev","hMap","cd","mb","l","le","co","rvb","sv","r_1","v","flt","fdt","flrm","fdrm","bits","d","p","o","bits16","shft","slc","s","inflt","dat","buf","st","sl","noBuf","noSt","cbuf","bl","nbuf","pos","bt","lm","dm","lbt","dbt","tbts","hLit","hcLen","tl","ldt","clt","clb","clbmsk","clm","c","lt","dt","t","lms","dms","lpos","sym","add","dsym","et","zlv","unzlibSync","out","td","tds","hasColorSpace","EXRLoader","logBase","reverseLutFromBitmap","bitmap","lut","hufClearDecTable","hdec","getBitsReturn","getBits","nBits","lc","uInt8Array2","inOffset","parseUint8Array","hufTableBuffer","hufCanonicalCodeTable","hcode","nc","hufUnpackEncTable","inDataView","ni","im","iM","zerun","hufLength","code","hufCode","hufBuildDecTable","hdecod","pl","plOffset","getCharReturn","getChar","getCodeReturn","getCode","po","rlc","outBuffer","outBufferOffset","outBufferEndOffset","cs","UInt16","Int16","wdec14Return","wdec14","h","ls","hs","hi","ai","as","bs","wdec16","bb","aa","wav2Decode","buffer2","nx","ox","ny","oy","mx","w14","p2","py","ey","oy1","oy2","ox1","ox2","i00","i01","i10","i11","px","ex","p01","p10","p11","hufDecode","encodingTable","decodingTable","no","outOffset","inOffsetEnd","hufUncompress","nCompressed","nRaw","initialInOffset","parseUint32","freq","applyLut","nData","predictor","interleaveScalar","t1","t2","stop","decodeRunLength","size","reader","lossyDctDecode","cscSet","rowPtrs","channelData","acBuffer","dcBuffer","numComp","numFullBlocksX","numBlocksX","numBlocksY","leftoverX","leftoverY","currAcComp","currDcComp","dctData","halfZigBlock","rowBlock","rowOffsets","comp2","blocky","maxY","maxX","blockx","unRleAC","unZigZag","dctInverse","csc709Inverse","convertToHalf","offset2","type2","y2","offset3","x2","halfRow","comp","decodeFloat16","acValue","dctComp","dst","g","alpha","beta","theta","gamma","row","rowPtr","column","cb","cr","idx","DataUtils","toLinear","float","uncompressRAW","info","uncompressRLE","compressed","rawBuffer","tmpBuffer","uncompressZIP","uncompressPIZ","outBufferEnd","pizChannelData","minNonZero","parseUint16","maxNonZero","parseUint8","maxValue","tmpOffset2","cp","uncompressPXR","sz","tmpBufferEnd","writePtr","ptr","pixel","uncompressDWA","dwaHeader","parseInt64","EXRHeader","channelRules","ruleSize","parseNullTerminatedString","compression","csc","channels","channel","rule","zlibInfo","rleBuffer","chan","rleOffset","rowOffsetBytes","byte","uintBuffer","endOffset","stringValue","parseFixedLengthString","parseRational","parseInt32","parseTimecode","Int32","Uint32","Uint8","int","parseFloat32","decodeFloat32","binary","exponent","fraction","Uint16","parseFloat16","parseChlist","startOffset","pixelType","pLinear","xSampling","ySampling","parseChromaticities","redX","redY","greenX","greenY","blueX","blueY","whiteX","whiteY","parseCompression","compressionCodes","parseBox2i","xMin","yMin","xMax","yMax","parseLineOrder","lineOrders","lineOrder","parseV2f","parseV3f","z","parseValue","parseHeader","EXRHeader2","spec","keepReading","attributeName","attributeType","attributeSize","attributeValue","setupDecoder","outputType","EXRDecoder2","RedFormat","bufferDataView","uInt8Array","offset","EXRDecoder","tmpOffset","channelOffsets","scanlineBlockIdx","line","viewer","line_y","true_y","channelID","cOff","outIndex","onLoadCallback","texData","EXR3DTextureLoader","Data3DTexture","exr","image","EXRTextureLoader","DataTexture","eastScratch","northScratch","upScratch","vectorScratch1","vectorScratch2","vectorScratch3","matrixScratch","Matrix4","quaternionScratch","Quaternion","rayScratch","Ray","PointOfView","distance","heading","pitch","roll","other","eye","quaternion","up","ellipsoid","Ellipsoid","rollAxis","camera","direction","_Rectangle","west","south","east","north","Geodetic","Rectangle","includePattern","resolveIncludes","includes","match","path","include","parent","component","hostLittleEndian","isHostLittleEndian","parseTypedArray","getValue","littleEndian","byteIndex","parseInt8Array","parseUint16Array","parseInt16Array","parseInt32Array","parseUint32Array","parseFloat16Array","parseFloat32Array","parseFloat64Array","STBNLoader","NearestFilter","RepeatWrapping","traverseChildren","maxZ","divisor","nextZ","scale","nextX","nextY","children","child","coord","TileCoordinate","vectorScratch","Vector2","TilingScheme","rectangle","geodetic","longitude","tile","unrollLoopPattern","loopReplacer","snippet","string","unrollLoops"],"mappings":"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AAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,CAAC,CAAC,GAC9B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH,EAAc3T,EAAI,EAAE,CAAC,GAC/B8T,EAAI,EAAE,IAAIH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","x_google_ignoreList":[5,6,7,8,9,10,11,12,13,20,21,22]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/ArrayBufferLoader.ts","../src/bufferGeometry.ts","../src/capabilities.ts","../src/constants.ts","../node_modules/.pnpm/@petamoriken+float16@3.9.3/node_modules/@petamoriken/float16/src/_util/messages.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.3/node_modules/@petamoriken/float16/src/_util/primordials.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.3/node_modules/@petamoriken/float16/src/_util/arrayIterator.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.3/node_modules/@petamoriken/float16/src/_util/is.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.3/node_modules/@petamoriken/float16/src/_util/brand.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.3/node_modules/@petamoriken/float16/src/_util/converter.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.3/node_modules/@petamoriken/float16/src/_util/spec.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.3/node_modules/@petamoriken/float16/src/Float16Array.mjs","../node_modules/.pnpm/@petamoriken+float16@3.9.3/node_modules/@petamoriken/float16/src/DataView.mjs","../src/typedArray.ts","../src/TypedArrayLoader.ts","../src/DataTextureLoader.ts","../src/math.ts","../src/decorators.ts","../src/defineShorthand.ts","../src/EXR3DTextureLoader.ts","../src/EXRTextureLoader.ts","../src/PointOfView.ts","../src/Rectangle.ts","../src/resolveIncludes.ts","../src/typedArrayParsers.ts","../src/STBNLoader.ts","../src/TileCoordinate.ts","../src/TilingScheme.ts","../src/types.ts","../src/unrollLoops.ts"],"sourcesContent":null,"names":["ArrayBufferLoader","Loader","url","onLoad","onProgress","onError","loader","FileLoader","arrayBuffer","invariant","error","toBufferGeometryLike","geometry","attributes","index","boundingBox","boundingSphere","attribute","buffer","fromBufferGeometryLike","input","result","BufferGeometry","name","BufferAttribute","min","max","Box3","Vector3","center","radius","Sphere","isFloatLinearSupported","renderer","WebGLRenderer","STBN_TEXTURE_WIDTH","STBN_TEXTURE_HEIGHT","STBN_TEXTURE_DEPTH","ref","DEFAULT_STBN_URL","THIS_IS_NOT_AN_OBJECT","THIS_IS_NOT_A_FLOAT16ARRAY_OBJECT","THIS_CONSTRUCTOR_IS_NOT_A_SUBCLASS_OF_FLOAT16ARRAY","THE_CONSTRUCTOR_PROPERTY_VALUE_IS_NOT_AN_OBJECT","SPECIES_CONSTRUCTOR_DIDNT_RETURN_TYPEDARRAY_OBJECT","DERIVED_CONSTRUCTOR_CREATED_TYPEDARRAY_OBJECT_WHICH_WAS_TOO_SMALL_LENGTH","ATTEMPTING_TO_ACCESS_DETACHED_ARRAYBUFFER","CANNOT_CONVERT_UNDEFINED_OR_NULL_TO_OBJECT","CANNOT_MIX_BIGINT_AND_OTHER_TYPES","ITERATOR_PROPERTY_IS_NOT_CALLABLE","REDUCE_OF_EMPTY_ARRAY_WITH_NO_INITIAL_VALUE","THE_COMPARISON_FUNCTION_MUST_BE_EITHER_A_FUNCTION_OR_UNDEFINED","OFFSET_IS_OUT_OF_BOUNDS","uncurryThis","target","thisArg","args","ReflectApply","uncurryThisGetter","key","ReflectGetOwnPropertyDescriptor","ReflectConstruct","ReflectDefineProperty","ReflectGet","ReflectGetPrototypeOf","ReflectHas","ReflectOwnKeys","ReflectSet","ReflectSetPrototypeOf","NativeProxy","EPSILON","MAX_SAFE_INTEGER","NumberIsFinite","NumberIsNaN","SymbolIterator","SymbolSpecies","SymbolToStringTag","SymbolFor","NativeObject","ObjectCreate","ObjectDefineProperty","ObjectFreeze","ObjectIs","ObjectPrototype","ObjectPrototype__lookupGetter__","object","NativeTypeError","descriptor","ObjectHasOwn","NativeArray","ArrayIsArray","ArrayPrototype","ArrayPrototypeJoin","ArrayPrototypePush","ArrayPrototypeToLocaleString","NativeArrayPrototypeSymbolIterator","ArrayPrototypeSymbolIterator","MathAbs","MathTrunc","NativeArrayBuffer","ArrayBufferIsView","ArrayBufferPrototype","ArrayBufferPrototypeSlice","ArrayBufferPrototypeGetByteLength","NativeSharedArrayBuffer","SharedArrayBufferPrototypeGetByteLength","TypedArray","TypedArrayFrom","TypedArrayPrototype","NativeTypedArrayPrototypeSymbolIterator","TypedArrayPrototypeKeys","TypedArrayPrototypeValues","TypedArrayPrototypeEntries","TypedArrayPrototypeSet","TypedArrayPrototypeReverse","TypedArrayPrototypeFill","TypedArrayPrototypeCopyWithin","TypedArrayPrototypeSort","TypedArrayPrototypeSlice","TypedArrayPrototypeSubarray","TypedArrayPrototypeGetBuffer","TypedArrayPrototypeGetByteOffset","TypedArrayPrototypeGetLength","TypedArrayPrototypeGetSymbolToStringTag","NativeUint8Array","NativeUint16Array","Uint16ArrayFrom","NativeUint32Array","NativeFloat32Array","ArrayIteratorPrototype","ArrayIteratorPrototypeNext","GeneratorPrototypeNext","IteratorPrototype","DataViewPrototype","DataViewPrototypeGetUint16","NativeRangeError","NativeWeakSet","WeakSetPrototype","WeakSetPrototypeAdd","WeakSetPrototypeHas","NativeWeakMap","WeakMapPrototype","WeakMapPrototypeGet","WeakMapPrototypeHas","WeakMapPrototypeSet","arrayIterators","SafeIteratorPrototype","arrayIterator","safeIfNeeded","array","safe","generators","DummyArrayIteratorPrototype","generator","wrap","dummy","isObject","value","isObjectLike","isNativeTypedArray","isNativeBigIntTypedArray","typedArrayName","isArrayBuffer","isSharedArrayBuffer","isAnyArrayBuffer","isOrdinaryArray","isOrdinaryNativeTypedArray","isCanonicalIntegerIndexString","number","brand","hasFloat16ArrayBrand","prototype","constructor","INVERSE_OF_EPSILON","roundTiesToEven","num","FLOAT16_MIN_VALUE","FLOAT16_MAX_VALUE","FLOAT16_EPSILON","FLOAT16_EPSILON_MULTIPLIED_BY_FLOAT16_MIN_VALUE","FLOAT16_EPSILON_DEVIDED_BY_EPSILON","roundToFloat16","sign","absolute","temp","floatView","uint32View","baseTable","shiftTable","i","e","roundToFloat16Bits","f","mantissaTable","m","exponentTable","offsetTable","convertToNumber","float16bits","ToIntegerOrInfinity","ToLength","length","SpeciesConstructor","defaultConstructor","species","IsDetachedBuffer","defaultCompare","x","y","isXNaN","isYNaN","isXPlusZero","isYPlusZero","BYTES_PER_ELEMENT","float16bitsArrays","isFloat16Array","assertFloat16Array","assertSpeciesTypedArray","count","isTargetFloat16Array","isTargetTypedArray","float16bitsArray","getFloat16BitsArray","float16","cloned","Float16Array","copyToArray","TypedArrayPrototypeGetters","handler","receiver","_byteOffset","_length","list","data","iterator","proxy","src","opts","Constructor","uint16","mapFunc","val","items","relativeIndex","k","callback","kept","accumulator","start","targetOffset","targetLength","srcLength","clonedFloat16bitsArray","compareFn","sortCompare","end","relativeStart","relativeEnd","final","n","begin","uint16Subarray","element","from","isNaN","separator","Float16ArrayPrototype","getFloat16","dataView","byteOffset","isTypedArray","TypedArrayLoader","parser","manager","getTextureDataType","type","ByteType","UnsignedByteType","ShortType","UnsignedShortType","IntType","UnsignedIntType","HalfFloatType","FloatType","DataTextureLoader","textureClass","options","RGBAFormat","LinearFilter","texture","width","height","depth","clamp","MathUtils","euclideanModulo","inverseLerp","lerp","radians","degrees","isPowerOfTwo","ceilPowerOfTwo","floorPowerOfTwo","normalize","remap","min1","max1","min2","max2","remapClamped","smoothstep","saturate","closeTo","a","b","relativeEpsilon","absoluteEpsilon","diff","define","propertyKey","Material","defineInt","prevValue","defineFloat","precision","defineExpression","validate","definePropertyShorthand","destination","sourceKeysArgs","descriptors","source","keys","defineUniformShorthand","EXR3DTextureLoader","Data3DTexture","EXRLoader","exr","image","EXRTextureLoader","DataTexture","eastScratch","northScratch","upScratch","vectorScratch1","vectorScratch2","vectorScratch3","matrixScratch","Matrix4","quaternionScratch","Quaternion","rayScratch","Ray","PointOfView","distance","heading","pitch","roll","other","eye","quaternion","up","ellipsoid","Ellipsoid","offset","rollAxis","camera","direction","s","t","Rectangle","west","south","east","north","Geodetic","includePattern","resolveIncludes","includes","match","path","include","parent","component","hostLittleEndian","isHostLittleEndian","parseTypedArray","getValue","littleEndian","byteIndex","parseUint8Array","parseInt8Array","parseUint16Array","parseInt16Array","parseInt32Array","parseUint32Array","parseFloat16Array","parseFloat32Array","parseFloat64Array","STBNLoader","RedFormat","NearestFilter","RepeatWrapping","traverseChildren","z","maxZ","divisor","nextZ","scale","nextX","nextY","children","child","coord","TileCoordinate","vectorScratch","Vector2","TilingScheme","rectangle","geodetic","size","longitude","tile","reinterpretType","unrollLoopPattern","loopReplacer","snippet","string","unrollLoops"],"mappings":"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","x_google_ignoreList":[4,5,6,7,8,9,10,11,12]}
|
package/build/r3f.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),l=require("react"),p=require("three"),c=require("./
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),l=require("react"),p=require("three"),c=require("./shared2.cjs"),m=require("@react-three/fiber"),u=new p.Matrix4,d=new c.Geodetic,h=new p.Vector3;class E extends p.Group{set(e,t,r,o=c.Ellipsoid.WGS84){const n=d.set(e,t,r).toECEF(h);o.getEastNorthUpFrame(n,u).decompose(this.position,this.quaternion,this.scale)}}const x=({ref:s,longitude:e,latitude:t,height:r=0,ellipsoid:o=c.Ellipsoid.WGS84,children:n})=>{const i=l.useMemo(()=>new E,[]);return l.useEffect(()=>{i.set(e,t,r,o)},[e,t,r,o,i]),a.jsx("primitive",{ref:s,object:i,children:n})},G=({ref:s,args:e,children:t,...r})=>(m.extend({EllipsoidGeometry:c.EllipsoidGeometry}),a.jsxs("mesh",{ref:s,...r,children:[a.jsx("ellipsoidGeometry",{args:e}),t]}));exports.EastNorthUpFrame=x;exports.EllipsoidMesh=G;
|
|
2
2
|
//# sourceMappingURL=r3f.cjs.map
|
package/build/r3f.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"r3f.cjs","sources":["../src/r3f/EastNorthUpFrame.tsx","../src/r3f/EllipsoidMesh.tsx"],"sourcesContent":null,"names":["matrixScratch","Matrix4","geodeticScratch","Geodetic","vectorScratch","Vector3","EastNorthUpFrameGroup","Group","longitude","latitude","height","ellipsoid","Ellipsoid","position","EastNorthUpFrame","forwardedRef","children","group","useMemo","useEffect","EllipsoidMesh","args","props","extend","EllipsoidGeometry","jsxs","jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"r3f.cjs","sources":["../src/r3f/EastNorthUpFrame.tsx","../src/r3f/EllipsoidMesh.tsx"],"sourcesContent":null,"names":["matrixScratch","Matrix4","geodeticScratch","Geodetic","vectorScratch","Vector3","EastNorthUpFrameGroup","Group","longitude","latitude","height","ellipsoid","Ellipsoid","position","EastNorthUpFrame","forwardedRef","children","group","useMemo","useEffect","EllipsoidMesh","args","props","extend","EllipsoidGeometry","jsxs","jsx"],"mappings":"sNAQMA,MAAkCC,EAAAA,QAClCC,MAAoCC,EAAAA,SACpCC,MAAkCC,EAAAA,QAExC,MAAMC,UAA8BC,EAAAA,KAAM,CACxC,IACEC,EACAC,EACAC,EACAC,EAAYC,EAAAA,UAAU,MAChB,CAEN,MAAMC,EAAWX,EACd,IAAIM,EAAWC,EAAUC,CAAM,EAC/B,OAAON,CAAa,EACRO,EAAU,oBAAoBE,EAAUb,CAAa,EAC7D,UAAU,KAAK,SAAU,KAAK,WAAY,KAAK,KAAK,CAC7D,CACF,CASO,MAAMc,EAA8C,CAAC,CAC1D,IAAKC,EACL,UAAAP,EACA,SAAAC,EACA,OAAAC,EAAS,EACT,UAAAC,EAAYC,EAAAA,UAAU,MACtB,SAAAI,CACF,IAAM,CACJ,MAAMC,EAAQC,EAAAA,QAAQ,IAAM,IAAIZ,EAAyB,CAAA,CAAE,EAE3Da,OAAAA,EAAAA,UAAU,IAAM,CACdF,EAAM,IAAIT,EAAWC,EAAUC,EAAQC,CAAS,CAClD,EAAG,CAACH,EAAWC,EAAUC,EAAQC,EAAWM,CAAK,CAAC,QAG/C,YAAA,CAAU,IAAKF,EAAc,OAAQE,EACnC,SAAAD,EACH,CAEJ,ECjCaI,EAAwC,CAAC,CACpD,IAAKL,EACL,KAAAM,EACA,SAAAL,EACA,GAAGM,CACL,KACEC,EAAAA,OAAO,CAAA,kBAAEC,EAAAA,kBAAmB,EAE1BC,EAAAA,KAAC,OAAA,CAAK,IAAKV,EAAe,GAAGO,EAC3B,SAAA,CAAAI,MAAC,qBAAkB,KAAAL,EAAY,EAC9BL,CAAA,EACH"}
|
package/build/r3f.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as m, jsxs as a } from "react/jsx-runtime";
|
|
2
2
|
import { useMemo as p, useEffect as f } from "react";
|
|
3
3
|
import { Group as h, Vector3 as E, Matrix4 as x } from "three";
|
|
4
|
-
import { E as n, G, a as d } from "./
|
|
4
|
+
import { E as n, G, a as d } from "./shared2.js";
|
|
5
5
|
import { extend as l } from "@react-three/fiber";
|
|
6
6
|
const u = /* @__PURE__ */ new x(), S = /* @__PURE__ */ new G(), w = /* @__PURE__ */ new E();
|
|
7
7
|
class F extends h {
|
package/build/shaders.cjs
CHANGED
|
@@ -80,14 +80,14 @@ int getFadedCascadeIndex(
|
|
|
80
80
|
`,e=`// cSpell:words logdepthbuf
|
|
81
81
|
|
|
82
82
|
float reverseLogDepth(const float depth, const float near, const float far) {
|
|
83
|
-
#
|
|
83
|
+
#if defined(USE_LOGDEPTHBUF) || defined(USE_LOGARITHMIC_DEPTH_BUFFER)
|
|
84
84
|
float d = pow(2.0, depth * log2(far + 1.0)) - 1.0;
|
|
85
85
|
float a = far / (far - near);
|
|
86
86
|
float b = far * near / (near - far);
|
|
87
87
|
return a + b / d;
|
|
88
|
-
#else //
|
|
88
|
+
#else // defined(USE_LOGARITHMIC_DEPTH_BUFFER) || defined(USE_LOGARITHMIC_DEPTH_BUFFER)
|
|
89
89
|
return depth;
|
|
90
|
-
#endif //
|
|
90
|
+
#endif // defined(USE_LOGARITHMIC_DEPTH_BUFFER) || defined(USE_LOGARITHMIC_DEPTH_BUFFER)
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
float linearizeDepth(const float depth, const float near, const float far) {
|
|
@@ -384,5 +384,5 @@ vec2 vogelDisk(const int index, const int sampleCount, const float phi) {
|
|
|
384
384
|
float theta = float(index) * goldenAngle + phi;
|
|
385
385
|
return r * vec2(cos(theta), sin(theta));
|
|
386
386
|
}
|
|
387
|
-
`,m=n,d=e,l=t,x=c,f=i,p=o,u=r,h=a,
|
|
387
|
+
`,m=n,d=e,l=t,x=c,f=i,p=o,u=r,h=a,_=s,g=v;exports.cascadedShadowMaps=m;exports.depth=d;exports.generators=l;exports.interleavedGradientNoise=x;exports.math=f;exports.packing=p;exports.raySphereIntersection=u;exports.transform=h;exports.turbo=_;exports.vogelDisk=g;
|
|
388
388
|
//# sourceMappingURL=shaders.cjs.map
|
package/build/shaders.js
CHANGED
|
@@ -80,14 +80,14 @@ int getFadedCascadeIndex(
|
|
|
80
80
|
`, e = `// cSpell:words logdepthbuf
|
|
81
81
|
|
|
82
82
|
float reverseLogDepth(const float depth, const float near, const float far) {
|
|
83
|
-
#
|
|
83
|
+
#if defined(USE_LOGDEPTHBUF) || defined(USE_LOGARITHMIC_DEPTH_BUFFER)
|
|
84
84
|
float d = pow(2.0, depth * log2(far + 1.0)) - 1.0;
|
|
85
85
|
float a = far / (far - near);
|
|
86
86
|
float b = far * near / (near - far);
|
|
87
87
|
return a + b / d;
|
|
88
|
-
#else //
|
|
88
|
+
#else // defined(USE_LOGARITHMIC_DEPTH_BUFFER) || defined(USE_LOGARITHMIC_DEPTH_BUFFER)
|
|
89
89
|
return depth;
|
|
90
|
-
#endif //
|
|
90
|
+
#endif // defined(USE_LOGARITHMIC_DEPTH_BUFFER) || defined(USE_LOGARITHMIC_DEPTH_BUFFER)
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
float linearizeDepth(const float depth, const float near, const float far) {
|
|
@@ -384,7 +384,7 @@ vec2 vogelDisk(const int index, const int sampleCount, const float phi) {
|
|
|
384
384
|
float theta = float(index) * goldenAngle + phi;
|
|
385
385
|
return r * vec2(cos(theta), sin(theta));
|
|
386
386
|
}
|
|
387
|
-
`, m = n, d = e, l = t, x = c, f = i, p = o, u = r,
|
|
387
|
+
`, m = n, d = e, l = t, x = c, f = i, p = o, u = r, _ = a, h = s, g = v;
|
|
388
388
|
export {
|
|
389
389
|
m as cascadedShadowMaps,
|
|
390
390
|
d as depth,
|
|
@@ -393,8 +393,8 @@ export {
|
|
|
393
393
|
f as math,
|
|
394
394
|
p as packing,
|
|
395
395
|
u as raySphereIntersection,
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
396
|
+
_ as transform,
|
|
397
|
+
h as turbo,
|
|
398
|
+
g as vogelDisk
|
|
399
399
|
};
|
|
400
400
|
//# sourceMappingURL=shaders.js.map
|
package/build/shared.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";var a=process.env.NODE_ENV==="production",n="Invariant failed";function c(o,r){if(!o){if(a)throw new Error(n);var i=typeof r=="function"?r():r,t=i?"".concat(n,": ").concat(i):n;throw new Error(t)}}exports.invariant=c;
|
|
2
2
|
//# sourceMappingURL=shared.cjs.map
|
package/build/shared.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.cjs","sources":["../node_modules/.pnpm/tiny-invariant@1.3.3/node_modules/tiny-invariant/dist/esm/tiny-invariant.js"
|
|
1
|
+
{"version":3,"file":"shared.cjs","sources":["../node_modules/.pnpm/tiny-invariant@1.3.3/node_modules/tiny-invariant/dist/esm/tiny-invariant.js"],"sourcesContent":null,"names":["isProduction","prefix","invariant","condition","message","provided","value"],"mappings":"aAAA,IAAIA,EAAe,QAAQ,IAAI,WAAa,aACxCC,EAAS,mBACb,SAASC,EAAUC,EAAWC,EAAS,CACnC,GAAI,CAAAD,EAGJ,IAAIH,EACA,MAAM,IAAI,MAAMC,CAAM,EAE1B,IAAII,EAAW,OAAOD,GAAY,WAAaA,EAAO,EAAKA,EACvDE,EAAQD,EAAW,GAAG,OAAOJ,EAAQ,IAAI,EAAE,OAAOI,CAAQ,EAAIJ,EAClE,MAAM,IAAI,MAAMK,CAAK,EACzB","x_google_ignoreList":[0]}
|