@aguacerowx/react-native 0.0.33 → 0.0.35
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/42e9b8fa82d77a1c205db5bf0d0ed519/transformed/classes/classes_dex/classes.dex +0 -0
- package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayer.dex +0 -0
- package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
- package/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_fragment_shader.glsl.flat +0 -0
- package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +1 -1
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/fragment_shader.glsl +54 -27
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
- package/{lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer$VertexInfo.class.uniqueId2 → android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer$VertexInfo.class.uniqueId0} +0 -0
- package/{lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId3 → android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId1} +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
- package/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +30 -14
- package/android/src/main/res/raw/fragment_shader.glsl +54 -27
- package/ios/GridRenderLayer.swift +21 -3
- package/ios/Shaders.metal +156 -19
- package/ios/compiled-shaders/Shaders-device.metallib +0 -0
- package/ios/compiled-shaders/Shaders-simulator.metallib +0 -0
- package/lib/commonjs/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
- package/lib/commonjs/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_fragment_shader.glsl.flat +0 -0
- package/lib/commonjs/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +1 -1
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/lib/commonjs/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/fragment_shader.glsl +54 -27
- 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_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
- package/{android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer$VertexInfo.class.uniqueId2 → lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer$VertexInfo.class.uniqueId0} +0 -0
- package/lib/{module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId3 → commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId1} +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +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 +30 -14
- package/lib/commonjs/android/src/main/res/raw/fragment_shader.glsl +54 -27
- package/lib/commonjs/ios/GridRenderLayer.swift +21 -3
- package/lib/commonjs/ios/Shaders.metal +156 -19
- package/lib/commonjs/ios/compiled-shaders/Shaders-device.metallib +0 -0
- package/lib/commonjs/ios/compiled-shaders/Shaders-simulator.metallib +0 -0
- package/lib/commonjs/package.json +1 -1
- package/lib/commonjs/src/WeatherLayerManager.js +3 -16
- 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/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_fragment_shader.glsl.flat +0 -0
- package/lib/module/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +1 -1
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/lib/module/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/fragment_shader.glsl +54 -27
- 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_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/{GridRenderLayer$VertexInfo.class.uniqueId2 → GridRenderLayer$VertexInfo.class.uniqueId0} +0 -0
- package/{android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId3 → lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId1} +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +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 +30 -14
- package/lib/module/android/src/main/res/raw/fragment_shader.glsl +54 -27
- package/lib/module/ios/GridRenderLayer.swift +21 -3
- package/lib/module/ios/Shaders.metal +156 -19
- package/lib/module/ios/compiled-shaders/Shaders-device.metallib +0 -0
- package/lib/module/ios/compiled-shaders/Shaders-simulator.metallib +0 -0
- package/lib/module/lib/commonjs/ios/GridRenderLayer.swift +21 -3
- package/lib/module/lib/commonjs/ios/Shaders.metal +156 -19
- package/lib/module/lib/commonjs/ios/compiled-shaders/Shaders-device.metallib +0 -0
- package/lib/module/lib/commonjs/ios/compiled-shaders/Shaders-simulator.metallib +0 -0
- package/lib/module/lib/commonjs/package.json +1 -1
- package/lib/module/lib/commonjs/src/WeatherLayerManager.js +3 -16
- package/lib/module/lib/commonjs/src/WeatherLayerManager.js.map +1 -1
- package/lib/module/package.json +1 -1
- package/lib/module/src/WeatherLayerManager.js +3 -16
- package/lib/module/src/WeatherLayerManager.js.map +1 -1
- package/lib/typescript/src/WeatherLayerManager.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/WeatherLayerManager.js +6 -20
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AguaceroPackage.class.uniqueId1 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId4 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderManager.class.uniqueId0 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId5 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AguaceroPackage.class.uniqueId1 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId4 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderManager.class.uniqueId0 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId5 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AguaceroPackage.class.uniqueId1 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId4 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderManager.class.uniqueId0 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId5 +0 -0
- package/lib/module/lib/commonjs/ios/generated/AguaceroWxReactNativeSpec.h +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_javascriptSdk","_AguaceroContext","_GridRenderLayer","_base64Js","_reactNative","_MapRegistry","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","findLatestModelRun","modelsData","modelName","model","availableDates","keys","sort","a","b","localeCompare","date","runs","availableRuns","length","run","WeatherFrameProcessorModule","InspectorModule","NativeModules","_generateColormapBytes","colormap","width","data","Uint8Array","stops","reduce","acc","_","value","color","minVal","maxVal","hexToRgb","hex","parseInt","slice","g","val","lower","upper","j","lowerRgb","upperRgb","rgb","map","c","idx","offset","Math","round","AguaceroCore","prototype","setMapCenter","center","emit","WeatherLayerManager","exports","forwardRef","props","ref","inspectorEnabled","onInspect","apiKey","customColormaps","initialMode","initialVariable","autoRefresh","autoRefreshInterval","initialModel","restProps","context","useContext","AguaceroContext","core","useMemo","layerOptions","mode","variable","gridLayerRef","useRef","currentGridDataRef","autoRefreshIntervalId","preloadedDataCache","Map","cachedGeometry","cachedColormap","cachedDataRange","hasInitialLoad","hasPreloadedRef","lastProcessedState","previousStateRef","renderProps","setRenderProps","useState","opacity","dataRange","useImperativeHandle","setAutoRefresh","enabled","intervalSeconds","current","clearInterval","effectiveInterval","_checkForUpdates","setInterval","play","pause","togglePlay","step","direction","setPlaybackSpeed","speed","playbackSpeed","isPlaying","setOpacity","setUnits","units","switchMode","options","getAvailableVariables","getVariableDisplayName","code","setRun","runString","setState","split","newState","setMRMSTimestamp","timestamp","setSmoothing","refreshData","preloadAllFramesToDisk","state","isMRMS","availableHours","availableTimestamps","forecastHour","mrmsTimestamp","effectiveForecastHour","validHours","filter","hour","gridModel","corners","gridDef","_getGridCornersAndDef","updateGeometry","baseUnit","_getColormapForVariable","toUnit","_getTargetUnit","finalColormap","_convertColormapUnits","colormapBytes","colormapAsBase64","fromByteArray","updateColormapTexture","key","filteredHours","allFrames","currentFrame","reversedFrames","reverse","framesToPreload","frame","nx","ny","grid_params","currentCacheKey","resourcePath","frameDate","Date","y","getUTCFullYear","m","getUTCMonth","toString","padStart","d","getUTCDate","url","baseGridUrl","bundleId","result","processFrame","filePath","fieldInfo","DICTIONARIES","fld","serverDataUnit","defaultUnit","dataScale","scale","dataOffset","convertedScale","convertedOffset","conversionFunc","getUnitConversionFunction","scaleType","physicalAtOffset","physicalAtOffsetPlusScale","convertedPhysicalAtOffset","convertedPhysicalAtOffsetPlusScale","sqrt","abs","sign","newOffsetPlusScale","convertedOffsetPlusScale","frameData","missing","originalScale","originalOffset","updateDataTextureFromFile","error","console","warn","forEach","cacheKey","then","Platform","OS","primeGpuCache","frameInfoForGpu","catch","useEffect","interval","updateGPUWithCachedData","setActiveFrame","cachedData","colormapKey","prev","dataAsBase64","updateDataTexture","binaryString","atob","uint8Array","charCodeAt","updateDataParameters","handleStateChangeRef","debounceTimeoutRef","_emitStateChange","getValueAtPoint","lng","lat","gridIndices","_getGridIndexFromLngLat","getValueAtGridIndex","displayUnit","minThreshold","isFinite","unit","name","lngLat","currentModel","currentVariable","oldTimestamps","Set","mrmsStatus","fetchMRMSStatus","newTimestamps","newTimestampsToPreload","ts","newTimestampsSet","oldTs","delete","modelStatus","fetchModelStatus","latestRun","currentRunKey","latestRunKey","handleStateChange","onStateChange","variableChanged","setVariable","stateKey","isOpacityOnlyChange","isPlayStateOnlyChange","isUnitsOnlyChange","oldCacheKey","undefined","newOffset","scaleTypeValue","newCacheKey","needsFullLoad","clear","clearGpuCache","cancelAllFrames","success","stableHandler","clearTimeout","setTimeout","on","off","lastInspectorUpdateRef","INSPECTOR_THROTTLE_MS","handleMapMove","Array","isArray","now","longitude","latitude","payload","getCenter","triggerReinspection","mapRef","mapRegistry","getMap","_currentCenter","timer","handleCameraChange","addCameraListener","removeCameraListener","initialize","destroy","createElement","GridRenderLayer","belowID"],"sourceRoot":"..\\..\\..","sources":["src/WeatherLayerManager.js"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_javascriptSdk","_AguaceroContext","_GridRenderLayer","_base64Js","_reactNative","_MapRegistry","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","findLatestModelRun","modelsData","modelName","model","availableDates","keys","sort","a","b","localeCompare","date","runs","availableRuns","length","run","WeatherFrameProcessorModule","InspectorModule","NativeModules","_generateColormapBytes","colormap","width","data","Uint8Array","stops","reduce","acc","_","value","color","minVal","maxVal","hexToRgb","hex","parseInt","slice","g","val","lower","upper","j","lowerRgb","upperRgb","rgb","map","c","idx","offset","Math","round","AguaceroCore","prototype","setMapCenter","center","emit","WeatherLayerManager","exports","forwardRef","props","ref","inspectorEnabled","onInspect","apiKey","customColormaps","initialMode","initialVariable","autoRefresh","autoRefreshInterval","initialModel","restProps","context","useContext","AguaceroContext","core","useMemo","layerOptions","mode","variable","gridLayerRef","useRef","currentGridDataRef","autoRefreshIntervalId","preloadedDataCache","Map","cachedGeometry","cachedColormap","cachedDataRange","hasInitialLoad","hasPreloadedRef","lastProcessedState","previousStateRef","renderProps","setRenderProps","useState","opacity","dataRange","useImperativeHandle","setAutoRefresh","enabled","intervalSeconds","current","clearInterval","effectiveInterval","_checkForUpdates","setInterval","play","pause","togglePlay","step","direction","setPlaybackSpeed","speed","playbackSpeed","isPlaying","setOpacity","setUnits","units","switchMode","options","getAvailableVariables","getVariableDisplayName","code","setRun","runString","setState","split","newState","setMRMSTimestamp","timestamp","setSmoothing","refreshData","preloadAllFramesToDisk","state","isMRMS","availableHours","availableTimestamps","forecastHour","mrmsTimestamp","effectiveForecastHour","validHours","filter","hour","gridModel","corners","gridDef","_getGridCornersAndDef","updateGeometry","baseUnit","_getColormapForVariable","toUnit","_getTargetUnit","finalColormap","_convertColormapUnits","colormapBytes","colormapAsBase64","fromByteArray","updateColormapTexture","key","filteredHours","allFrames","currentFrame","reversedFrames","reverse","framesToPreload","frame","nx","ny","grid_params","currentCacheKey","resourcePath","frameDate","Date","y","getUTCFullYear","m","getUTCMonth","toString","padStart","d","getUTCDate","url","baseGridUrl","bundleId","result","processFrame","filePath","fieldInfo","DICTIONARIES","fld","serverDataUnit","defaultUnit","dataScale","scale","dataOffset","convertedScale","convertedOffset","conversionFunc","getUnitConversionFunction","scaleType","physicalAtOffset","physicalAtOffsetPlusScale","convertedPhysicalAtOffset","convertedPhysicalAtOffsetPlusScale","sqrt","abs","sign","newOffsetPlusScale","convertedOffsetPlusScale","frameData","missing","originalScale","originalOffset","updateDataTextureFromFile","error","console","warn","forEach","cacheKey","then","Platform","OS","primeGpuCache","frameInfoForGpu","catch","useEffect","interval","updateGPUWithCachedData","setActiveFrame","cachedData","colormapKey","prev","dataAsBase64","updateDataTexture","binaryString","atob","uint8Array","charCodeAt","updateDataParameters","handleStateChangeRef","debounceTimeoutRef","_emitStateChange","getValueAtPoint","lng","lat","gridIndices","_getGridIndexFromLngLat","getValueAtGridIndex","displayUnit","minThreshold","isFinite","unit","name","lngLat","currentModel","currentVariable","oldTimestamps","Set","mrmsStatus","fetchMRMSStatus","newTimestamps","newTimestampsToPreload","ts","newTimestampsSet","oldTs","delete","modelStatus","fetchModelStatus","latestRun","handleStateChange","onStateChange","variableChanged","setVariable","stateKey","isOpacityOnlyChange","isPlayStateOnlyChange","isUnitsOnlyChange","oldCacheKey","undefined","newOffset","scaleTypeValue","newCacheKey","needsFullLoad","clear","clearGpuCache","cancelAllFrames","success","stableHandler","clearTimeout","setTimeout","on","off","lastInspectorUpdateRef","INSPECTOR_THROTTLE_MS","handleMapMove","Array","isArray","now","longitude","latitude","payload","getCenter","triggerReinspection","mapRef","mapRegistry","getMap","_currentCenter","timer","handleCameraChange","addCameraListener","removeCameraListener","initialize","destroy","createElement","GridRenderLayer","belowID"],"sourceRoot":"..\\..\\..","sources":["src/WeatherLayerManager.js"],"mappings":"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","ignoreList":[]}
|
|
Binary file
|
|
Binary file
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#
|
|
1
|
+
#Mon Dec 08 00:28:58 EST 2025
|
|
2
2
|
com.aguacerowx.reactnative.aguacerowx-react-native-main-6\:/raw/fragment_shader.glsl=C\:\\Users\\my41m\\aguacero\\aguacero-sdks\\packages\\react-native\\android\\build\\intermediates\\packaged_res\\debug\\packageDebugResources\\raw\\fragment_shader.glsl
|
|
3
3
|
com.aguacerowx.reactnative.aguacerowx-react-native-main-6\:/raw/vertex_shader.glsl=C\:\\Users\\my41m\\aguacero\\aguacero-sdks\\packages\\react-native\\android\\build\\intermediates\\packaged_res\\debug\\packageDebugResources\\raw\\vertex_shader.glsl
|
|
4
4
|
com.aguacerowx.reactnative.aguacerowx-react-native-main-6\:/raw/debug_vertex_shader.glsl=C\:\\Users\\my41m\\aguacero\\aguacero-sdks\\packages\\react-native\\android\\build\\intermediates\\packaged_res\\debug\\packageDebugResources\\raw\\debug_vertex_shader.glsl
|
|
Binary file
|
|
@@ -91,7 +91,6 @@ void main() {
|
|
|
91
91
|
vec2 v11_coord = (bl_texel_index + vec2(1.5, 1.5)) * texel_size;
|
|
92
92
|
|
|
93
93
|
if (u_is_ptype == 1) {
|
|
94
|
-
// --- PTYPE-SPECIFIC INTERPOLATION ---
|
|
95
94
|
float v00 = dequantize_val(get_value(v00_coord));
|
|
96
95
|
float v10 = dequantize_val(get_value(v10_coord));
|
|
97
96
|
float v01 = dequantize_val(get_value(v01_coord));
|
|
@@ -102,31 +101,59 @@ void main() {
|
|
|
102
101
|
float p01 = get_ptype_from_physical(v01);
|
|
103
102
|
float p11 = get_ptype_from_physical(v11);
|
|
104
103
|
|
|
105
|
-
//
|
|
106
|
-
float
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
if (
|
|
118
|
-
|
|
119
|
-
if (
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
104
|
+
// Calculate geometric weights
|
|
105
|
+
float w00 = (1.0 - f.x) * (1.0 - f.y);
|
|
106
|
+
float w10 = f.x * (1.0 - f.y);
|
|
107
|
+
float w01 = (1.0 - f.x) * f.y;
|
|
108
|
+
float w11 = f.x * f.y;
|
|
109
|
+
|
|
110
|
+
// 1. Calculate 'smoothing_weight' (The Raw Alpha)
|
|
111
|
+
// This is the sum of valid neighbor weights.
|
|
112
|
+
float smoothing_weight = 0.0;
|
|
113
|
+
if (p00 >= 0.0) smoothing_weight += w00;
|
|
114
|
+
if (p10 >= 0.0) smoothing_weight += w10;
|
|
115
|
+
if (p01 >= 0.0) smoothing_weight += w01;
|
|
116
|
+
if (p11 >= 0.0) smoothing_weight += w11;
|
|
117
|
+
|
|
118
|
+
if (smoothing_weight <= 0.0) discard;
|
|
119
|
+
|
|
120
|
+
// 2. Voting Logic for Color (The "Winning" Type)
|
|
121
|
+
// This preserves the sharp internal borders you liked.
|
|
122
|
+
float weight_type_0 = 0.0;
|
|
123
|
+
float weight_type_1 = 0.0;
|
|
124
|
+
float weight_type_2 = 0.0;
|
|
125
|
+
float weight_type_3 = 0.0;
|
|
126
|
+
|
|
127
|
+
if (p00 >= 0.0) { int t = int(p00); if(t==0) weight_type_0+=w00; else if(t==1) weight_type_1+=w00; else if(t==2) weight_type_2+=w00; else if(t==3) weight_type_3+=w00; }
|
|
128
|
+
if (p10 >= 0.0) { int t = int(p10); if(t==0) weight_type_0+=w10; else if(t==1) weight_type_1+=w10; else if(t==2) weight_type_2+=w10; else if(t==3) weight_type_3+=w10; }
|
|
129
|
+
if (p01 >= 0.0) { int t = int(p01); if(t==0) weight_type_0+=w01; else if(t==1) weight_type_1+=w01; else if(t==2) weight_type_2+=w01; else if(t==3) weight_type_3+=w01; }
|
|
130
|
+
if (p11 >= 0.0) { int t = int(p11); if(t==0) weight_type_0+=w11; else if(t==1) weight_type_1+=w11; else if(t==2) weight_type_2+=w11; else if(t==3) weight_type_3+=w11; }
|
|
131
|
+
|
|
132
|
+
float max_w = weight_type_0; float winning_type = 0.0;
|
|
133
|
+
if (weight_type_1 > max_w) { max_w = weight_type_1; winning_type = 1.0; }
|
|
134
|
+
if (weight_type_2 > max_w) { max_w = weight_type_2; winning_type = 2.0; }
|
|
135
|
+
if (weight_type_3 > max_w) { max_w = weight_type_3; winning_type = 3.0; }
|
|
136
|
+
|
|
137
|
+
// 3. Average value only among pixels of the winning type
|
|
138
|
+
float value_sum = 0.0;
|
|
139
|
+
float value_weight = 0.0;
|
|
140
|
+
|
|
141
|
+
if (p00 == winning_type) { value_sum += v00 * w00; value_weight += w00; }
|
|
142
|
+
if (p10 == winning_type) { value_sum += v10 * w10; value_weight += w10; }
|
|
143
|
+
if (p01 == winning_type) { value_sum += v01 * w01; value_weight += w01; }
|
|
144
|
+
if (p11 == winning_type) { value_sum += v11 * w11; value_weight += w11; }
|
|
145
|
+
|
|
146
|
+
if (value_weight <= 0.0) discard;
|
|
147
|
+
|
|
148
|
+
raw_value = value_sum / value_weight;
|
|
149
|
+
|
|
150
|
+
// 4. FIX FOR BLURRINESS: Sharpen the Alpha Edge
|
|
151
|
+
// Instead of a linear 0.0->1.0 fade, we use smoothstep to tighten the edge.
|
|
152
|
+
// This makes the outer border look like a smooth curve rather than a fuzzy fog.
|
|
153
|
+
total_weight = smoothstep(0.40, 0.60, smoothing_weight);
|
|
127
154
|
|
|
128
155
|
} else {
|
|
129
|
-
//
|
|
156
|
+
// ... (keep your existing standard interpolation else block here) ...
|
|
130
157
|
float v00_q = get_value(v00_coord);
|
|
131
158
|
float v10_q = get_value(v10_coord);
|
|
132
159
|
float v01_q = get_value(v01_coord);
|
|
@@ -144,8 +171,6 @@ void main() {
|
|
|
144
171
|
}
|
|
145
172
|
}
|
|
146
173
|
|
|
147
|
-
// --- COMMON FINAL STEPS ---
|
|
148
|
-
|
|
149
174
|
if (raw_value < u_data_range.x) {
|
|
150
175
|
discard;
|
|
151
176
|
}
|
|
@@ -158,5 +183,7 @@ void main() {
|
|
|
158
183
|
}
|
|
159
184
|
|
|
160
185
|
float final_alpha = color.a * u_opacity * total_weight;
|
|
161
|
-
|
|
186
|
+
|
|
187
|
+
// OUTPUT: Use Straight Alpha (vec4(rgb, alpha)) to prevent black halo artifacts.
|
|
188
|
+
gl_FragColor = vec4(color.rgb, final_alpha);
|
|
162
189
|
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/lib/module/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin
CHANGED
|
Binary file
|
|
@@ -540,6 +540,12 @@ public class GridRenderLayer implements CustomLayerHost {
|
|
|
540
540
|
Math.abs(getDouble(gridParams, "lat_first", -1)) == 90.0;
|
|
541
541
|
}
|
|
542
542
|
|
|
543
|
+
private boolean isECMWFType(ReadableMap gridParams) {
|
|
544
|
+
if (gridParams == null) return false;
|
|
545
|
+
return getDouble(gridParams, "lon_first", -1) == 180.0 &&
|
|
546
|
+
getDouble(gridParams, "lat_first", -1) == 90.0;
|
|
547
|
+
}
|
|
548
|
+
|
|
543
549
|
private void generateGeometryData(ReadableMap gridDefMap, ArrayList<Float> vertices, ArrayList<Short> indices) {
|
|
544
550
|
ReadableMap gridParams = gridDefMap.getMap("grid_params");
|
|
545
551
|
if (gridParams == null) {
|
|
@@ -592,7 +598,6 @@ public class GridRenderLayer implements CustomLayerHost {
|
|
|
592
598
|
return;
|
|
593
599
|
}
|
|
594
600
|
|
|
595
|
-
// Step 1: Extract grid parameters
|
|
596
601
|
int nx = gridParams.getInt("nx");
|
|
597
602
|
int ny = gridParams.getInt("ny");
|
|
598
603
|
double lon_first = getDouble(gridParams, "lon_first", 0.0);
|
|
@@ -604,34 +609,45 @@ public class GridRenderLayer implements CustomLayerHost {
|
|
|
604
609
|
double lat_span = lat_last - lat_first;
|
|
605
610
|
boolean isSouthToNorth = lat_span > 0;
|
|
606
611
|
|
|
607
|
-
// Step 2:
|
|
608
|
-
|
|
609
|
-
double
|
|
612
|
+
// Step 2: Check if this is ECMWF and normalize longitudes
|
|
613
|
+
boolean isECMWF = isECMWFType(gridParams);
|
|
614
|
+
double data_lon_first_180 = lon_first;
|
|
615
|
+
double data_lon_last_180 = lon_last;
|
|
616
|
+
|
|
617
|
+
if (isECMWF) {
|
|
618
|
+
// Convert ECMWF's 180 to -180 range to -180 to 180
|
|
619
|
+
data_lon_first_180 = lon_first >= 180 ? lon_first - 360 : lon_first;
|
|
620
|
+
data_lon_last_180 = lon_last >= 180 ? lon_last - 360 : lon_last;
|
|
621
|
+
} else {
|
|
622
|
+
// For GFS and other models
|
|
623
|
+
data_lon_first_180 = lon_first > 180 ? lon_first - 360 : lon_first;
|
|
624
|
+
data_lon_last_180 = lon_last > 180 ? lon_last - 360 : lon_last;
|
|
625
|
+
}
|
|
626
|
+
|
|
610
627
|
double data_lon_range = data_lon_last_180 - data_lon_first_180;
|
|
611
628
|
|
|
612
629
|
// Step 3: Define mesh properties
|
|
613
|
-
int subdivisions_x = 120;
|
|
630
|
+
int subdivisions_x = 120;
|
|
614
631
|
int subdivisions_y = 60;
|
|
615
|
-
int verticesPerMesh = (subdivisions_y + 1) * (subdivisions_x + 1);
|
|
616
632
|
int verticesPerRow = subdivisions_x + 1;
|
|
617
633
|
final double TILE_SIZE = 512.0;
|
|
618
634
|
|
|
619
|
-
// Step 4: Generate three separate
|
|
635
|
+
// Step 4: Generate three separate meshes for wrapping
|
|
620
636
|
for (int world_copy = -1; world_copy <= 1; world_copy++) {
|
|
621
|
-
short vertexStartIndex = (short) (vertices.size() / 4);
|
|
637
|
+
short vertexStartIndex = (short) (vertices.size() / 4);
|
|
622
638
|
double lon_offset = world_copy * 360.0;
|
|
623
639
|
|
|
624
|
-
// Generate vertices for this
|
|
640
|
+
// Generate vertices for this world copy
|
|
625
641
|
for (int row = 0; row <= subdivisions_y; row++) {
|
|
626
642
|
for (int col = 0; col <= subdivisions_x; col++) {
|
|
627
643
|
float v_interp = (float) row / subdivisions_y;
|
|
628
644
|
float u_interp = (float) col / subdivisions_x;
|
|
629
645
|
|
|
630
|
-
// Vertex position
|
|
646
|
+
// Vertex position interpolated across data's native bounds
|
|
631
647
|
double vertex_lon = data_lon_first_180 + (u_interp * data_lon_range);
|
|
632
648
|
double vertex_lat = lat_first + (v_interp * lat_span);
|
|
633
649
|
|
|
634
|
-
// Convert to map coordinates
|
|
650
|
+
// Convert to map coordinates with world copy offset
|
|
635
651
|
double mercX_normalized = ((vertex_lon + lon_offset) + 180.0) / 360.0;
|
|
636
652
|
double clampedLat = Math.max(-85.05112878, Math.min(85.05112878, vertex_lat));
|
|
637
653
|
double sinLatitude = Math.sin(Math.toRadians(clampedLat));
|
|
@@ -642,7 +658,7 @@ public class GridRenderLayer implements CustomLayerHost {
|
|
|
642
658
|
vertices.add((float) mercX);
|
|
643
659
|
vertices.add((float) mercY);
|
|
644
660
|
|
|
645
|
-
// Texture coordinates
|
|
661
|
+
// Texture coordinates: clean 0.0 to 1.0 for each mesh
|
|
646
662
|
float tex_u = u_interp;
|
|
647
663
|
float tex_v = isSouthToNorth ? (1.0f - v_interp) : v_interp;
|
|
648
664
|
|
|
@@ -651,7 +667,7 @@ public class GridRenderLayer implements CustomLayerHost {
|
|
|
651
667
|
}
|
|
652
668
|
}
|
|
653
669
|
|
|
654
|
-
// Generate indices for this
|
|
670
|
+
// Generate indices for this world copy
|
|
655
671
|
for (short row = 0; row < subdivisions_y; row++) {
|
|
656
672
|
for (short col = 0; col < subdivisions_x; col++) {
|
|
657
673
|
short tl = (short) (vertexStartIndex + row * verticesPerRow + col);
|
|
@@ -662,7 +678,7 @@ public class GridRenderLayer implements CustomLayerHost {
|
|
|
662
678
|
if (isSouthToNorth) {
|
|
663
679
|
indices.add(tl); indices.add(bl); indices.add(tr);
|
|
664
680
|
indices.add(tr); indices.add(bl); indices.add(br);
|
|
665
|
-
} else {
|
|
681
|
+
} else {
|
|
666
682
|
indices.add(tl); indices.add(tr); indices.add(bl);
|
|
667
683
|
indices.add(bl); indices.add(tr); indices.add(br);
|
|
668
684
|
}
|
|
@@ -91,7 +91,6 @@ void main() {
|
|
|
91
91
|
vec2 v11_coord = (bl_texel_index + vec2(1.5, 1.5)) * texel_size;
|
|
92
92
|
|
|
93
93
|
if (u_is_ptype == 1) {
|
|
94
|
-
// --- PTYPE-SPECIFIC INTERPOLATION ---
|
|
95
94
|
float v00 = dequantize_val(get_value(v00_coord));
|
|
96
95
|
float v10 = dequantize_val(get_value(v10_coord));
|
|
97
96
|
float v01 = dequantize_val(get_value(v01_coord));
|
|
@@ -102,31 +101,59 @@ void main() {
|
|
|
102
101
|
float p01 = get_ptype_from_physical(v01);
|
|
103
102
|
float p11 = get_ptype_from_physical(v11);
|
|
104
103
|
|
|
105
|
-
//
|
|
106
|
-
float
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
if (
|
|
118
|
-
|
|
119
|
-
if (
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
104
|
+
// Calculate geometric weights
|
|
105
|
+
float w00 = (1.0 - f.x) * (1.0 - f.y);
|
|
106
|
+
float w10 = f.x * (1.0 - f.y);
|
|
107
|
+
float w01 = (1.0 - f.x) * f.y;
|
|
108
|
+
float w11 = f.x * f.y;
|
|
109
|
+
|
|
110
|
+
// 1. Calculate 'smoothing_weight' (The Raw Alpha)
|
|
111
|
+
// This is the sum of valid neighbor weights.
|
|
112
|
+
float smoothing_weight = 0.0;
|
|
113
|
+
if (p00 >= 0.0) smoothing_weight += w00;
|
|
114
|
+
if (p10 >= 0.0) smoothing_weight += w10;
|
|
115
|
+
if (p01 >= 0.0) smoothing_weight += w01;
|
|
116
|
+
if (p11 >= 0.0) smoothing_weight += w11;
|
|
117
|
+
|
|
118
|
+
if (smoothing_weight <= 0.0) discard;
|
|
119
|
+
|
|
120
|
+
// 2. Voting Logic for Color (The "Winning" Type)
|
|
121
|
+
// This preserves the sharp internal borders you liked.
|
|
122
|
+
float weight_type_0 = 0.0;
|
|
123
|
+
float weight_type_1 = 0.0;
|
|
124
|
+
float weight_type_2 = 0.0;
|
|
125
|
+
float weight_type_3 = 0.0;
|
|
126
|
+
|
|
127
|
+
if (p00 >= 0.0) { int t = int(p00); if(t==0) weight_type_0+=w00; else if(t==1) weight_type_1+=w00; else if(t==2) weight_type_2+=w00; else if(t==3) weight_type_3+=w00; }
|
|
128
|
+
if (p10 >= 0.0) { int t = int(p10); if(t==0) weight_type_0+=w10; else if(t==1) weight_type_1+=w10; else if(t==2) weight_type_2+=w10; else if(t==3) weight_type_3+=w10; }
|
|
129
|
+
if (p01 >= 0.0) { int t = int(p01); if(t==0) weight_type_0+=w01; else if(t==1) weight_type_1+=w01; else if(t==2) weight_type_2+=w01; else if(t==3) weight_type_3+=w01; }
|
|
130
|
+
if (p11 >= 0.0) { int t = int(p11); if(t==0) weight_type_0+=w11; else if(t==1) weight_type_1+=w11; else if(t==2) weight_type_2+=w11; else if(t==3) weight_type_3+=w11; }
|
|
131
|
+
|
|
132
|
+
float max_w = weight_type_0; float winning_type = 0.0;
|
|
133
|
+
if (weight_type_1 > max_w) { max_w = weight_type_1; winning_type = 1.0; }
|
|
134
|
+
if (weight_type_2 > max_w) { max_w = weight_type_2; winning_type = 2.0; }
|
|
135
|
+
if (weight_type_3 > max_w) { max_w = weight_type_3; winning_type = 3.0; }
|
|
136
|
+
|
|
137
|
+
// 3. Average value only among pixels of the winning type
|
|
138
|
+
float value_sum = 0.0;
|
|
139
|
+
float value_weight = 0.0;
|
|
140
|
+
|
|
141
|
+
if (p00 == winning_type) { value_sum += v00 * w00; value_weight += w00; }
|
|
142
|
+
if (p10 == winning_type) { value_sum += v10 * w10; value_weight += w10; }
|
|
143
|
+
if (p01 == winning_type) { value_sum += v01 * w01; value_weight += w01; }
|
|
144
|
+
if (p11 == winning_type) { value_sum += v11 * w11; value_weight += w11; }
|
|
145
|
+
|
|
146
|
+
if (value_weight <= 0.0) discard;
|
|
147
|
+
|
|
148
|
+
raw_value = value_sum / value_weight;
|
|
149
|
+
|
|
150
|
+
// 4. FIX FOR BLURRINESS: Sharpen the Alpha Edge
|
|
151
|
+
// Instead of a linear 0.0->1.0 fade, we use smoothstep to tighten the edge.
|
|
152
|
+
// This makes the outer border look like a smooth curve rather than a fuzzy fog.
|
|
153
|
+
total_weight = smoothstep(0.40, 0.60, smoothing_weight);
|
|
127
154
|
|
|
128
155
|
} else {
|
|
129
|
-
//
|
|
156
|
+
// ... (keep your existing standard interpolation else block here) ...
|
|
130
157
|
float v00_q = get_value(v00_coord);
|
|
131
158
|
float v10_q = get_value(v10_coord);
|
|
132
159
|
float v01_q = get_value(v01_coord);
|
|
@@ -144,8 +171,6 @@ void main() {
|
|
|
144
171
|
}
|
|
145
172
|
}
|
|
146
173
|
|
|
147
|
-
// --- COMMON FINAL STEPS ---
|
|
148
|
-
|
|
149
174
|
if (raw_value < u_data_range.x) {
|
|
150
175
|
discard;
|
|
151
176
|
}
|
|
@@ -158,5 +183,7 @@ void main() {
|
|
|
158
183
|
}
|
|
159
184
|
|
|
160
185
|
float final_alpha = color.a * u_opacity * total_weight;
|
|
161
|
-
|
|
186
|
+
|
|
187
|
+
// OUTPUT: Use Straight Alpha (vec4(rgb, alpha)) to prevent black halo artifacts.
|
|
188
|
+
gl_FragColor = vec4(color.rgb, final_alpha);
|
|
162
189
|
}
|