mirror of
				https://github.com/subsurface/subsurface.git
				synced 2025-02-19 22:16:15 +00:00 
			
		
		
		
	Include surface GF in infobox
The most recent firmware of Shearwater computers shows this. This is a measure of absolute amout of tissue loadings in an easy to digest unit. Therefore it is useful to have. Signed-off-by: Robert C. Helling <helling@atdotde.de>
This commit is contained in:
		
							parent
							
								
									7538546c89
								
							
						
					
					
						commit
						4c048ed526
					
				
					 3 changed files with 9 additions and 0 deletions
				
			
		|  | @ -1,6 +1,7 @@ | |||
| - Desktop: remove support for the "Share on Facebook" feature. | ||||
|   Rationale: It is fairly easy to share images on Facebook, thus it was decided | ||||
|   that this feature is redundant and should be removed from Subsurface. | ||||
| - Show surface gradient factor in infobox | ||||
| - Planner: Add UI element for bailout planning for rebreather dives | ||||
| - Allow to filter for logged/planned dives | ||||
| - New LaTeX export option | ||||
|  |  | |||
|  | @ -1092,12 +1092,17 @@ void calculate_deco_information(struct deco_state *ds, const struct deco_state * | |||
| 						time_clear_ceiling = t1; | ||||
| 				} | ||||
| 			} | ||||
| 			entry->surface_gf = 0.0; | ||||
| 			for (j = 0; j < 16; j++) { | ||||
| 				double m_value = ds->buehlmann_inertgas_a[j] + entry->ambpressure / ds->buehlmann_inertgas_b[j]; | ||||
| 				double surface_m_value = ds->buehlmann_inertgas_a[j] + surface_pressure / ds->buehlmann_inertgas_b[j]; | ||||
| 				entry->ceilings[j] = deco_allowed_depth(ds->tolerated_by_tissue[j], surface_pressure, dive, 1); | ||||
| 				entry->percentages[j] = ds->tissue_inertgas_saturation[j] < entry->ambpressure ? | ||||
| 					lrint(ds->tissue_inertgas_saturation[j] / entry->ambpressure * AMB_PERCENTAGE) : | ||||
| 					lrint(AMB_PERCENTAGE + (ds->tissue_inertgas_saturation[j] - entry->ambpressure) / (m_value - entry->ambpressure) * (100.0 - AMB_PERCENTAGE)); | ||||
| 				double surface_gf = 100.0 * (ds->tissue_inertgas_saturation[j] - surface_pressure) / (surface_m_value - surface_pressure); | ||||
| 				if (surface_gf > entry->surface_gf) | ||||
| 					entry->surface_gf = surface_gf; | ||||
| 			} | ||||
| 
 | ||||
| 			/* should we do more calculations?
 | ||||
|  | @ -1499,6 +1504,8 @@ static void plot_string(struct plot_info *pi, struct plot_data *entry, struct me | |||
| 	} | ||||
| 	if (entry->rbt) | ||||
| 		put_format_loc(b, translate("gettextFromC", "RBT: %umin\n"), DIV_UP(entry->rbt, 60)); | ||||
| 	if (entry->surface_gf > 0) | ||||
| 		put_format(b, translate("gettextFromC", "Surface GF %.0f%%\n"), entry->surface_gf); | ||||
| 	if (entry->ceiling) { | ||||
| 		depthvalue = get_depth_units(entry->ceiling, NULL, &depth_unit); | ||||
| 		put_format_loc(b, translate("gettextFromC", "Calculated ceiling %.0f%s\n"), depthvalue, depth_unit); | ||||
|  |  | |||
|  | @ -63,6 +63,7 @@ struct plot_data { | |||
| 	int bearing; | ||||
| 	double ambpressure; | ||||
| 	double gfline; | ||||
| 	double surface_gf; | ||||
| 	double density; | ||||
| 	bool icd_warning; | ||||
| }; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue