@aguacerowx/react-native 0.0.8 → 0.0.9
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/android/build/.transforms/78b892a9dae44f36e51ff0649e9c6e36/transformed/classes/classes_dex/classes.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayer.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayerView.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/InspectorModule.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/WeatherFrameProcessorModule.dex +0 -0
- package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId0 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
- package/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +126 -122
- package/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +3 -1
- package/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +13 -5
- package/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +4 -18
- package/ios/AguaceroPackage.m +19 -0
- package/ios/FragmentUniforms.swift +14 -0
- package/ios/GridRenderLayer.swift +959 -59
- package/ios/GridRenderLayerBridge.swift +30 -0
- package/ios/GridRenderLayerManager.mm +104 -98
- package/ios/GridRenderLayerView.h +23 -0
- package/ios/GridRenderLayerView.m +199 -0
- package/ios/InspectorDataCache.swift +66 -0
- package/ios/InspectorModule.m +10 -0
- package/ios/InspectorModule.swift +64 -0
- package/ios/Shaders.metal +131 -0
- package/ios/WeatherFrameProcessorModule.m +16 -0
- package/ios/WeatherFrameProcessorModule.swift +104 -0
- package/ios/aguacerowx-react-native.podspec +21 -14
- package/lib/commonjs/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId0 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
- package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +126 -122
- package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +3 -1
- package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +13 -5
- package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +4 -18
- package/lib/commonjs/ios/AguaceroPackage.m +19 -0
- package/lib/commonjs/ios/FragmentUniforms.swift +14 -0
- package/lib/commonjs/ios/GridRenderLayer.swift +962 -0
- package/lib/commonjs/ios/GridRenderLayerBridge.swift +30 -0
- package/lib/commonjs/ios/GridRenderLayerManager.mm +146 -0
- package/lib/commonjs/ios/GridRenderLayerView.h +23 -0
- package/lib/commonjs/ios/GridRenderLayerView.m +199 -0
- package/lib/commonjs/ios/InspectorDataCache.swift +66 -0
- package/lib/commonjs/ios/InspectorModule.m +10 -0
- package/lib/commonjs/ios/InspectorModule.swift +64 -0
- package/lib/commonjs/ios/Shaders.metal +131 -0
- package/lib/commonjs/ios/WeatherFrameProcessorModule.m +16 -0
- package/lib/commonjs/ios/WeatherFrameProcessorModule.swift +104 -0
- package/lib/commonjs/ios/aguacerowx-react-native.podspec +36 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js +1003 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js +381 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js +1229 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js +4023 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/events.js +38 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/events.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js +30 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js +27 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/index.js +47 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/index.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js +301 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js +126 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/package.json +48 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js +1029 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js +381 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js +1229 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js +4023 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/events.js +38 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/events.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js +30 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js +27 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/index.js +41 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/index.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js +301 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js.map +1 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js +126 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js.map +1 -0
- package/lib/commonjs/package.json +9 -17
- package/lib/commonjs/src/GridRenderLayer.js +32 -7
- package/lib/commonjs/src/GridRenderLayer.js.map +1 -1
- package/lib/commonjs/src/MapManager.js +1 -4
- package/lib/commonjs/src/MapManager.js.map +1 -1
- package/lib/commonjs/src/WeatherLayerManager.js +236 -210
- package/lib/commonjs/src/WeatherLayerManager.js.map +1 -1
- package/lib/module/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId0 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
- package/lib/module/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +126 -122
- package/lib/module/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +3 -1
- package/lib/module/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +13 -5
- package/lib/module/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +4 -18
- package/lib/module/ios/AguaceroPackage.m +19 -0
- package/lib/module/ios/FragmentUniforms.swift +14 -0
- package/lib/module/ios/GridRenderLayer.swift +962 -0
- package/lib/module/ios/GridRenderLayerBridge.swift +30 -0
- package/lib/module/ios/GridRenderLayerManager.mm +146 -0
- package/lib/module/ios/GridRenderLayerView.h +23 -0
- package/lib/module/ios/GridRenderLayerView.m +199 -0
- package/lib/module/ios/InspectorDataCache.swift +66 -0
- package/lib/module/ios/InspectorModule.m +10 -0
- package/lib/module/ios/InspectorModule.swift +64 -0
- package/lib/module/ios/Shaders.metal +131 -0
- package/lib/module/ios/WeatherFrameProcessorModule.m +16 -0
- package/lib/module/ios/WeatherFrameProcessorModule.swift +104 -0
- package/lib/module/ios/aguacerowx-react-native.podspec +36 -0
- package/lib/module/lib/commonjs/ios/AguaceroPackage.m +19 -0
- package/lib/module/lib/commonjs/ios/FragmentUniforms.swift +14 -0
- package/lib/module/lib/commonjs/ios/GridRenderLayer.swift +962 -0
- package/lib/module/lib/commonjs/ios/GridRenderLayerBridge.swift +30 -0
- package/lib/module/lib/commonjs/ios/GridRenderLayerManager.mm +146 -0
- package/lib/module/lib/commonjs/ios/GridRenderLayerView.h +23 -0
- package/lib/module/lib/commonjs/ios/GridRenderLayerView.m +199 -0
- package/lib/module/lib/commonjs/ios/InspectorDataCache.swift +66 -0
- package/lib/module/lib/commonjs/ios/InspectorModule.m +10 -0
- package/lib/module/lib/commonjs/ios/InspectorModule.swift +64 -0
- package/lib/module/lib/commonjs/ios/Shaders.metal +131 -0
- package/lib/module/lib/commonjs/ios/WeatherFrameProcessorModule.m +16 -0
- package/lib/module/lib/commonjs/ios/WeatherFrameProcessorModule.swift +104 -0
- package/lib/module/lib/commonjs/ios/aguacerowx-react-native.podspec +36 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js +1003 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js +381 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js +1229 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js +4023 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/events.js +38 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/events.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js +30 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js +27 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/index.js +47 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/index.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js +301 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js +126 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/package.json +48 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js +1033 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js +381 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js +1229 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js +4023 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/events.js +38 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/events.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js +30 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js +27 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/index.js +41 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/index.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js +301 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js.map +1 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js +126 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js.map +1 -0
- package/lib/module/lib/commonjs/package.json +9 -17
- package/lib/module/lib/commonjs/src/GridRenderLayer.js +32 -7
- package/lib/module/lib/commonjs/src/GridRenderLayer.js.map +1 -1
- package/lib/module/lib/commonjs/src/MapManager.js +1 -4
- package/lib/module/lib/commonjs/src/MapManager.js.map +1 -1
- package/lib/module/lib/commonjs/src/WeatherLayerManager.js +236 -210
- package/lib/module/lib/commonjs/src/WeatherLayerManager.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js +1003 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js +381 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js +1229 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js +4023 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/events.js +38 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/events.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js +30 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js +27 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/index.js +47 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/index.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js +301 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js +126 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/package.json +48 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js +1021 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js +375 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js +1223 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js +4017 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/events.js +31 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/events.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js +29 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js +21 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/index.js +12 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/index.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js +295 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js.map +1 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js +119 -0
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js.map +1 -0
- package/lib/module/package.json +9 -17
- package/lib/module/src/GridRenderLayer.js +32 -7
- package/lib/module/src/GridRenderLayer.js.map +1 -1
- package/lib/module/src/MapManager.js +1 -4
- package/lib/module/src/MapManager.js.map +1 -1
- package/lib/module/src/WeatherLayerManager.js +237 -211
- package/lib/module/src/WeatherLayerManager.js.map +1 -1
- package/lib/typescript/src/GridRenderLayer.d.ts.map +1 -1
- package/lib/typescript/src/MapManager.d.ts.map +1 -1
- package/lib/typescript/src/WeatherLayerManager.d.ts.map +1 -1
- package/package.json +9 -17
- package/src/AguaceroContext.js +4 -0
- package/src/GridRenderLayer.js +205 -0
- package/src/GridRenderLayerNativeComponent.ts +16 -0
- package/src/MapManager.js +156 -0
- package/src/MapRegistry.js +35 -0
- package/src/StyleApplicator.js +241 -0
- package/src/WeatherLayerManager.js +873 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -297,6 +297,15 @@ public class GridRenderLayer implements CustomLayerHost {
|
|
|
297
297
|
}
|
|
298
298
|
}
|
|
299
299
|
|
|
300
|
+
// Add this method to GridRenderLayer.java (around line 270)
|
|
301
|
+
public void updateDataParameters(float scale, float offset, float missing) {
|
|
302
|
+
synchronized (dataLock) {
|
|
303
|
+
this.scale = scale;
|
|
304
|
+
this.offset = offset;
|
|
305
|
+
this.missingQuantized = missing;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
|
|
300
309
|
// This existing method is now used by both the old JS path and our new native path
|
|
301
310
|
public void updateDataTexture(byte[] bytes, int nx, int ny, float scale, float offset, float missing, String scaleType) {
|
|
302
311
|
ByteBuffer dataBuffer = ByteBuffer.allocateDirect(bytes.length);
|
|
@@ -470,139 +479,134 @@ public class GridRenderLayer implements CustomLayerHost {
|
|
|
470
479
|
Math.abs(getDouble(gridParams, "lat_first", -1)) == 90.0;
|
|
471
480
|
}
|
|
472
481
|
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
if (gridParams == null) {
|
|
480
|
-
Log.e(TAG, "❌ [Geometry] grid_params is null. Aborting mesh generation.");
|
|
481
|
-
return;
|
|
482
|
-
}
|
|
482
|
+
private void generateGeometryData(ReadableMap gridDefMap, ArrayList<Float> vertices, ArrayList<Short> indices) {
|
|
483
|
+
ReadableMap gridParams = gridDefMap.getMap("grid_params");
|
|
484
|
+
if (gridParams == null) {
|
|
485
|
+
Log.e(TAG, "❌ [Geometry] grid_params is null. Aborting mesh generation.");
|
|
486
|
+
return;
|
|
487
|
+
}
|
|
483
488
|
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
489
|
+
// --- Path 1: Specialized GFS Global Grid Logic (Working Correctly) ---
|
|
490
|
+
if (isGFSType(gridParams)) {
|
|
491
|
+
// This proven logic remains unchanged.
|
|
492
|
+
int subdivisions = 120;
|
|
493
|
+
int verticesPerRow = (subdivisions * 3) + 1;
|
|
494
|
+
final double TILE_SIZE = 512.0;
|
|
495
|
+
for (int row = 0; row <= subdivisions; row++) {
|
|
496
|
+
for (int col = 0; col <= subdivisions * 3; col++) {
|
|
497
|
+
float v_interp = (float) row / subdivisions;
|
|
498
|
+
float u_interp = (float) col / subdivisions;
|
|
499
|
+
double lon = -540.0 + u_interp * 1080.0;
|
|
500
|
+
double lat = -90.0 + v_interp * 180.0;
|
|
501
|
+
double mercX_normalized = (lon + 180.0) / 360.0;
|
|
502
|
+
double clampedLat = Math.max(-85.05112878, Math.min(85.05112878, lat));
|
|
503
|
+
double sinLatitude = Math.sin(Math.toRadians(clampedLat));
|
|
504
|
+
double mercY_normalized = 0.5 - Math.log((1 + sinLatitude) / (1 - sinLatitude)) / (4 * Math.PI);
|
|
505
|
+
double mercX = mercX_normalized * TILE_SIZE;
|
|
506
|
+
double mercY = mercY_normalized * TILE_SIZE;
|
|
507
|
+
vertices.add((float) mercX);
|
|
508
|
+
vertices.add((float) mercY);
|
|
509
|
+
float tex_u = (float) ((lon + 180.0) / 360.0);
|
|
510
|
+
float tex_v = 1.0f - v_interp;
|
|
511
|
+
vertices.add(tex_u);
|
|
512
|
+
vertices.add(tex_v);
|
|
513
|
+
}
|
|
508
514
|
}
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
515
|
+
for (short row = 0; row < subdivisions; row++) {
|
|
516
|
+
for (short col = 0; col < subdivisions * 3; col++) {
|
|
517
|
+
short tl = (short) (row * verticesPerRow + col);
|
|
518
|
+
short tr = (short) (tl + 1);
|
|
519
|
+
short bl = (short) ((row + 1) * verticesPerRow + col);
|
|
520
|
+
short br = (short) (bl + 1);
|
|
521
|
+
indices.add(tl); indices.add(bl); indices.add(tr);
|
|
522
|
+
indices.add(tr); indices.add(bl); indices.add(br);
|
|
523
|
+
}
|
|
518
524
|
}
|
|
525
|
+
return;
|
|
519
526
|
}
|
|
520
|
-
return;
|
|
521
|
-
}
|
|
522
527
|
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
// Step 1: Extract grid parameters
|
|
530
|
-
int nx = gridParams.getInt("nx");
|
|
531
|
-
int ny = gridParams.getInt("ny");
|
|
532
|
-
double lon_first = getDouble(gridParams, "lon_first", 0.0);
|
|
533
|
-
double lat_first = getDouble(gridParams, "lat_first", 90.0);
|
|
534
|
-
double dx = getDouble(gridParams, "dx_degrees", 0.0);
|
|
535
|
-
double dy = getDouble(gridParams, "dy_degrees", 0.0);
|
|
536
|
-
double lon_last = getDouble(gridParams, "lon_last", lon_first + (nx - 1) * dx);
|
|
537
|
-
double lat_last = getDouble(gridParams, "lat_last", lat_first + (ny - 1) * dy);
|
|
538
|
-
double lat_span = lat_last - lat_first;
|
|
539
|
-
boolean isSouthToNorth = lat_span > 0;
|
|
540
|
-
|
|
541
|
-
// Step 2: Normalize data longitudes to the -180 to +180 range for consistent placement.
|
|
542
|
-
double data_lon_first_180 = lon_first > 180 ? lon_first - 360 : lon_first;
|
|
543
|
-
double data_lon_last_180 = lon_last > 180 ? lon_last - 360 : lon_last;
|
|
544
|
-
double data_lon_range = data_lon_last_180 - data_lon_first_180;
|
|
545
|
-
|
|
546
|
-
// Step 3: Define mesh properties
|
|
547
|
-
int subdivisions_x = 120; // Subdivisions for a single mesh instance
|
|
548
|
-
int subdivisions_y = 60;
|
|
549
|
-
int verticesPerMesh = (subdivisions_y + 1) * (subdivisions_x + 1);
|
|
550
|
-
int verticesPerRow = subdivisions_x + 1;
|
|
551
|
-
final double TILE_SIZE = 512.0;
|
|
552
|
-
|
|
553
|
-
// Step 4: Generate three separate, non-connected meshes to prevent seam artifacts
|
|
554
|
-
for (int world_copy = -1; world_copy <= 1; world_copy++) {
|
|
555
|
-
short vertexStartIndex = (short) (vertices.size() / 4); // 4 floats per vertex (x,y,u,v)
|
|
556
|
-
double lon_offset = world_copy * 360.0;
|
|
557
|
-
|
|
558
|
-
// Generate vertices for this specific world copy
|
|
559
|
-
for (int row = 0; row <= subdivisions_y; row++) {
|
|
560
|
-
for (int col = 0; col <= subdivisions_x; col++) {
|
|
561
|
-
float v_interp = (float) row / subdivisions_y;
|
|
562
|
-
float u_interp = (float) col / subdivisions_x;
|
|
563
|
-
|
|
564
|
-
// Vertex position is interpolated across the data's native bounds, then offset for the world copy
|
|
565
|
-
double vertex_lon = data_lon_first_180 + (u_interp * data_lon_range);
|
|
566
|
-
double vertex_lat = lat_first + (v_interp * lat_span);
|
|
567
|
-
|
|
568
|
-
// Convert to map coordinates, adding the world copy offset
|
|
569
|
-
double mercX_normalized = ((vertex_lon + lon_offset) + 180.0) / 360.0;
|
|
570
|
-
double clampedLat = Math.max(-85.05112878, Math.min(85.05112878, vertex_lat));
|
|
571
|
-
double sinLatitude = Math.sin(Math.toRadians(clampedLat));
|
|
572
|
-
double mercY_normalized = 0.5 - Math.log((1 + sinLatitude) / (1 - sinLatitude)) / (4 * Math.PI);
|
|
573
|
-
double mercX = mercX_normalized * TILE_SIZE;
|
|
574
|
-
double mercY = mercY_normalized * TILE_SIZE;
|
|
528
|
+
// --- Path 2: LCC Grid Logic ---
|
|
529
|
+
if (isLCCType(gridDefMap)) {
|
|
530
|
+
generateLCCGeometry(gridDefMap, vertices, indices);
|
|
531
|
+
return;
|
|
532
|
+
}
|
|
575
533
|
|
|
576
|
-
|
|
577
|
-
|
|
534
|
+
// Step 1: Extract grid parameters
|
|
535
|
+
int nx = gridParams.getInt("nx");
|
|
536
|
+
int ny = gridParams.getInt("ny");
|
|
537
|
+
double lon_first = getDouble(gridParams, "lon_first", 0.0);
|
|
538
|
+
double lat_first = getDouble(gridParams, "lat_first", 90.0);
|
|
539
|
+
double dx = getDouble(gridParams, "dx_degrees", 0.0);
|
|
540
|
+
double dy = getDouble(gridParams, "dy_degrees", 0.0);
|
|
541
|
+
double lon_last = getDouble(gridParams, "lon_last", lon_first + (nx - 1) * dx);
|
|
542
|
+
double lat_last = getDouble(gridParams, "lat_last", lat_first + (ny - 1) * dy);
|
|
543
|
+
double lat_span = lat_last - lat_first;
|
|
544
|
+
boolean isSouthToNorth = lat_span > 0;
|
|
545
|
+
|
|
546
|
+
// Step 2: Normalize data longitudes to the -180 to +180 range for consistent placement.
|
|
547
|
+
double data_lon_first_180 = lon_first > 180 ? lon_first - 360 : lon_first;
|
|
548
|
+
double data_lon_last_180 = lon_last > 180 ? lon_last - 360 : lon_last;
|
|
549
|
+
double data_lon_range = data_lon_last_180 - data_lon_first_180;
|
|
550
|
+
|
|
551
|
+
// Step 3: Define mesh properties
|
|
552
|
+
int subdivisions_x = 120; // Subdivisions for a single mesh instance
|
|
553
|
+
int subdivisions_y = 60;
|
|
554
|
+
int verticesPerMesh = (subdivisions_y + 1) * (subdivisions_x + 1);
|
|
555
|
+
int verticesPerRow = subdivisions_x + 1;
|
|
556
|
+
final double TILE_SIZE = 512.0;
|
|
578
557
|
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
558
|
+
// Step 4: Generate three separate, non-connected meshes to prevent seam artifacts
|
|
559
|
+
for (int world_copy = -1; world_copy <= 1; world_copy++) {
|
|
560
|
+
short vertexStartIndex = (short) (vertices.size() / 4); // 4 floats per vertex (x,y,u,v)
|
|
561
|
+
double lon_offset = world_copy * 360.0;
|
|
562
|
+
|
|
563
|
+
// Generate vertices for this specific world copy
|
|
564
|
+
for (int row = 0; row <= subdivisions_y; row++) {
|
|
565
|
+
for (int col = 0; col <= subdivisions_x; col++) {
|
|
566
|
+
float v_interp = (float) row / subdivisions_y;
|
|
567
|
+
float u_interp = (float) col / subdivisions_x;
|
|
568
|
+
|
|
569
|
+
// Vertex position is interpolated across the data's native bounds, then offset for the world copy
|
|
570
|
+
double vertex_lon = data_lon_first_180 + (u_interp * data_lon_range);
|
|
571
|
+
double vertex_lat = lat_first + (v_interp * lat_span);
|
|
572
|
+
|
|
573
|
+
// Convert to map coordinates, adding the world copy offset
|
|
574
|
+
double mercX_normalized = ((vertex_lon + lon_offset) + 180.0) / 360.0;
|
|
575
|
+
double clampedLat = Math.max(-85.05112878, Math.min(85.05112878, vertex_lat));
|
|
576
|
+
double sinLatitude = Math.sin(Math.toRadians(clampedLat));
|
|
577
|
+
double mercY_normalized = 0.5 - Math.log((1 + sinLatitude) / (1 - sinLatitude)) / (4 * Math.PI);
|
|
578
|
+
double mercX = mercX_normalized * TILE_SIZE;
|
|
579
|
+
double mercY = mercY_normalized * TILE_SIZE;
|
|
580
|
+
|
|
581
|
+
vertices.add((float) mercX);
|
|
582
|
+
vertices.add((float) mercY);
|
|
583
|
+
|
|
584
|
+
// Texture coordinates are always a clean 0.0 to 1.0 for each mesh instance
|
|
585
|
+
float tex_u = u_interp;
|
|
586
|
+
float tex_v = isSouthToNorth ? (1.0f - v_interp) : v_interp;
|
|
587
|
+
|
|
588
|
+
vertices.add(tex_u);
|
|
589
|
+
vertices.add(tex_v);
|
|
590
|
+
}
|
|
585
591
|
}
|
|
586
|
-
}
|
|
587
|
-
|
|
588
|
-
// Generate indices for this specific world copy, offsetting by the starting index
|
|
589
|
-
for (short row = 0; row < subdivisions_y; row++) {
|
|
590
|
-
for (short col = 0; col < subdivisions_x; col++) {
|
|
591
|
-
short tl = (short) (vertexStartIndex + row * verticesPerRow + col);
|
|
592
|
-
short tr = (short) (tl + 1);
|
|
593
|
-
short bl = (short) (vertexStartIndex + (row + 1) * verticesPerRow + col);
|
|
594
|
-
short br = (short) (bl + 1);
|
|
595
592
|
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
593
|
+
// Generate indices for this specific world copy, offsetting by the starting index
|
|
594
|
+
for (short row = 0; row < subdivisions_y; row++) {
|
|
595
|
+
for (short col = 0; col < subdivisions_x; col++) {
|
|
596
|
+
short tl = (short) (vertexStartIndex + row * verticesPerRow + col);
|
|
597
|
+
short tr = (short) (tl + 1);
|
|
598
|
+
short bl = (short) (vertexStartIndex + (row + 1) * verticesPerRow + col);
|
|
599
|
+
short br = (short) (bl + 1);
|
|
600
|
+
|
|
601
|
+
if (isSouthToNorth) {
|
|
602
|
+
indices.add(tl); indices.add(bl); indices.add(tr);
|
|
603
|
+
indices.add(tr); indices.add(bl); indices.add(br);
|
|
604
|
+
} else { // North-to-South (MRMS)
|
|
605
|
+
indices.add(tl); indices.add(tr); indices.add(bl);
|
|
606
|
+
indices.add(bl); indices.add(tr); indices.add(br);
|
|
607
|
+
}
|
|
602
608
|
}
|
|
603
609
|
}
|
|
604
610
|
}
|
|
605
611
|
}
|
|
606
|
-
}
|
|
607
|
-
|
|
608
612
|
}
|
|
@@ -241,7 +241,6 @@ public class GridRenderLayerView extends FrameLayout {
|
|
|
241
241
|
colormapBuffer.put(bytes);
|
|
242
242
|
colormapBuffer.position(0);
|
|
243
243
|
gridLayerImplementation.updateColormapTexture(colormapBuffer);
|
|
244
|
-
triggerRepaint();
|
|
245
244
|
}
|
|
246
245
|
|
|
247
246
|
public void updateGeometry(ReadableMap corners, ReadableMap gridDef) {
|
|
@@ -289,6 +288,9 @@ public class GridRenderLayerView extends FrameLayout {
|
|
|
289
288
|
lastDataScale = scale;
|
|
290
289
|
lastDataOffset = offset;
|
|
291
290
|
lastDataMissing = missing;
|
|
291
|
+
|
|
292
|
+
// CRITICAL FIX: Also update the GridRenderLayer implementation
|
|
293
|
+
gridLayerImplementation.updateDataParameters(scale, offset, missing);
|
|
292
294
|
}
|
|
293
295
|
|
|
294
296
|
public void clearData() {
|
|
@@ -32,6 +32,7 @@ public class InspectorModule extends ReactContextBaseJavaModule {
|
|
|
32
32
|
float scale = GridRenderLayerView.getLastDataScale();
|
|
33
33
|
float offset = GridRenderLayerView.getLastDataOffset();
|
|
34
34
|
float missing = GridRenderLayerView.getLastDataMissing();
|
|
35
|
+
String scaleType = GridRenderLayerView.getLastDataScaleType(); // ADD THIS
|
|
35
36
|
|
|
36
37
|
// Calculate index
|
|
37
38
|
int index = j * nx + i;
|
|
@@ -45,18 +46,25 @@ public class InspectorModule extends ReactContextBaseJavaModule {
|
|
|
45
46
|
// Read byte value
|
|
46
47
|
int byteValue = data[index] & 0xFF; // Convert to unsigned
|
|
47
48
|
int signedQuantizedValue = byteValue - 128;
|
|
48
|
-
int missingQuantized = Math.round(missing -
|
|
49
|
+
int missingQuantized = Math.round(missing); // CHANGED: removed -128 since missing is already adjusted
|
|
49
50
|
|
|
50
51
|
// Check for missing value
|
|
51
|
-
if (signedQuantizedValue
|
|
52
|
+
if (Math.abs(signedQuantizedValue - missingQuantized) < 0.5) { // CHANGED: use tolerance
|
|
52
53
|
promise.resolve(null);
|
|
53
54
|
return;
|
|
54
55
|
}
|
|
55
56
|
|
|
56
|
-
//
|
|
57
|
-
double
|
|
57
|
+
// Step 1: Linear dequantization
|
|
58
|
+
double intermediateValue = signedQuantizedValue * scale + offset;
|
|
59
|
+
double finalValue = intermediateValue;
|
|
58
60
|
|
|
59
|
-
|
|
61
|
+
// Step 2: Apply sqrt inverse transformation if needed (matching the shader)
|
|
62
|
+
if ("sqrt".equals(scaleType)) {
|
|
63
|
+
// Square the intermediate value while preserving sign
|
|
64
|
+
finalValue = intermediateValue * Math.abs(intermediateValue);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
promise.resolve(finalValue);
|
|
60
68
|
} catch (Exception e) {
|
|
61
69
|
promise.reject("ERROR", e.getMessage());
|
|
62
70
|
}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
// packages/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java
|
|
2
|
-
|
|
3
1
|
package com.aguacerowx.reactnative;
|
|
4
2
|
|
|
5
3
|
import androidx.annotation.NonNull;
|
|
6
4
|
import android.util.Base64;
|
|
7
5
|
|
|
8
6
|
import com.facebook.react.bridge.Arguments;
|
|
9
|
-
import com.facebook.react.bridge.Callback
|
|
7
|
+
import com.facebook.react.bridge.Promise; // CHANGED: Import Promise instead of Callback
|
|
10
8
|
import com.facebook.react.bridge.ReactApplicationContext;
|
|
11
9
|
import com.facebook.react.bridge.ReactContextBaseJavaModule;
|
|
12
10
|
import com.facebook.react.bridge.ReactMethod;
|
|
@@ -61,7 +59,7 @@ public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
|
|
|
61
59
|
}
|
|
62
60
|
|
|
63
61
|
@ReactMethod
|
|
64
|
-
public void processFrame(ReadableMap options,
|
|
62
|
+
public void processFrame(ReadableMap options, Promise promise) { // CHANGED: Use Promise instead of Callback
|
|
65
63
|
final int taskToken = this.currentRunToken;
|
|
66
64
|
executorService.execute(() -> {
|
|
67
65
|
FileOutputStream fos = null;
|
|
@@ -70,17 +68,12 @@ public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
|
|
|
70
68
|
return; // Task was cancelled
|
|
71
69
|
}
|
|
72
70
|
|
|
73
|
-
// --- START OF REPLACEMENT ---
|
|
74
|
-
|
|
75
|
-
// 1. Get the shared OkHttpClient instance from React Native
|
|
76
71
|
OkHttpClient client = OkHttpClientProvider.getOkHttpClient();
|
|
77
72
|
|
|
78
|
-
// 2. Get request details from options
|
|
79
73
|
String urlString = options.getString("url");
|
|
80
74
|
String apiKey = options.getString("apiKey");
|
|
81
75
|
String bundleId = options.getString("bundleId");
|
|
82
76
|
|
|
83
|
-
// 3. Build the OkHttp Request
|
|
84
77
|
Request.Builder requestBuilder = new Request.Builder()
|
|
85
78
|
.url(urlString)
|
|
86
79
|
.header("x-api-key", apiKey);
|
|
@@ -92,7 +85,6 @@ public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
|
|
|
92
85
|
Request request = requestBuilder.build();
|
|
93
86
|
|
|
94
87
|
String responseString;
|
|
95
|
-
// 4. Execute the request and handle the response
|
|
96
88
|
try (Response response = client.newCall(request).execute()) {
|
|
97
89
|
if (!response.isSuccessful()) {
|
|
98
90
|
throw new IOException("HTTP Error: " + response.code());
|
|
@@ -105,21 +97,15 @@ public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
|
|
|
105
97
|
responseString = body.string();
|
|
106
98
|
}
|
|
107
99
|
|
|
108
|
-
// --- END OF REPLACEMENT ---
|
|
109
|
-
|
|
110
|
-
// The rest of your logic remains the same
|
|
111
100
|
JSONObject jsonResponse = new JSONObject(responseString);
|
|
112
101
|
if (!jsonResponse.has("data") || !jsonResponse.has("encoding")) {
|
|
113
|
-
// If the core keys are missing, the response is invalid. Log it and fail.
|
|
114
102
|
throw new IOException("Invalid API response. 'data' or 'encoding' key is missing. Response: " + responseString);
|
|
115
103
|
}
|
|
116
104
|
|
|
117
105
|
String b64CompressedData = jsonResponse.getString("data");
|
|
118
106
|
JSONObject encoding = jsonResponse.getJSONObject("encoding");
|
|
119
107
|
|
|
120
|
-
|
|
121
108
|
if (!encoding.has("scale") || !encoding.has("offset") || !encoding.has("missing_quantized")) {
|
|
122
|
-
// If the encoding object is missing required values, fail with a clear error.
|
|
123
109
|
throw new IOException("Invalid 'encoding' object in API response. Required keys are missing. Response: " + responseString);
|
|
124
110
|
}
|
|
125
111
|
|
|
@@ -145,12 +131,12 @@ public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
|
|
|
145
131
|
}
|
|
146
132
|
responseMap.putString("dataAsBase64", b64CompressedData);
|
|
147
133
|
|
|
148
|
-
|
|
134
|
+
promise.resolve(responseMap); // CHANGED: Use promise.resolve() instead of callback
|
|
149
135
|
|
|
150
136
|
} catch (Exception e) {
|
|
151
137
|
if (taskToken == this.currentRunToken) {
|
|
152
138
|
android.util.Log.e("AguaceroWX", "Error processing frame", e);
|
|
153
|
-
|
|
139
|
+
promise.reject("PROCESSING_ERROR", e.getMessage(), e); // CHANGED: Use promise.reject() instead of callback
|
|
154
140
|
}
|
|
155
141
|
} finally {
|
|
156
142
|
if (fos != null) {
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
#import <React/RCTBridgeModule.h>
|
|
2
|
+
#import <React/RCTViewManager.h>
|
|
3
|
+
|
|
4
|
+
// This file acts as a central manifest for all your native code.
|
|
5
|
+
// The autolinker will find this and use it to register your modules.
|
|
6
|
+
|
|
7
|
+
// --- Make sure these module names match your Swift/Objective-C class names ---
|
|
8
|
+
|
|
9
|
+
// Exposing the Swift module to Objective-C
|
|
10
|
+
@interface RCT_EXTERN_MODULE(WeatherFrameProcessorModule, NSObject)
|
|
11
|
+
@end
|
|
12
|
+
|
|
13
|
+
// Exposing the Swift module to Objective-C
|
|
14
|
+
@interface RCT_EXTERN_MODULE(InspectorModule, NSObject)
|
|
15
|
+
@end
|
|
16
|
+
|
|
17
|
+
// Exposing the ViewManager to Objective-C
|
|
18
|
+
@interface RCT_EXTERN_MODULE(GridRenderLayerManager, RCTViewManager)
|
|
19
|
+
@end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import Foundation
|
|
2
|
+
import simd
|
|
3
|
+
|
|
4
|
+
// Must match the fragment shader's uniform structure
|
|
5
|
+
struct FragmentUniforms {
|
|
6
|
+
var opacity: Float
|
|
7
|
+
var dataRange: SIMD2<Float>
|
|
8
|
+
var scale: Float
|
|
9
|
+
var offset: Float
|
|
10
|
+
var missingQuantized: Float
|
|
11
|
+
var textureSize: SIMD2<Float>
|
|
12
|
+
var smoothing: Int32
|
|
13
|
+
var scaleType: Int32
|
|
14
|
+
}
|