/// <since>6.0</since> public static int ParseAngleExpession( string expression, int start_offset, int expression_length, StringParserSettings parse_settings_in, AngleUnitSystem output_angle_unit_system, out double value_out, ref StringParserSettings parse_results, ref AngleUnitSystem parsed_unit_system ) { if (null == expression) { throw new ArgumentNullException(); } IntPtr settings_in_ptr = parse_settings_in.ConstPointer(); IntPtr settings_out_ptr = null == parse_results ? IntPtr.Zero : parse_results.NonConstPointer(); parsed_unit_system = AngleUnitSystem.None; value_out = RhinoMath.UnsetValue; int rc = UnsafeNativeMethods.ON_Parse_AngleExpression( expression, start_offset, expression_length, settings_in_ptr, output_angle_unit_system, ref value_out, settings_out_ptr, ref parsed_unit_system); return(rc); }
/// <since>6.0</since> public static bool ParseAngleExpressionRadians( string expression, out double angle_radians ) { IntPtr settings_in_ptr = StringParserSettings.ParseSettingsRadians.ConstPointer(); angle_radians = RhinoMath.UnsetValue; AngleUnitSystem parsed_unit_system = AngleUnitSystem.None; int rc = UnsafeNativeMethods.ON_Parse_AngleExpression( expression, 0, -1, settings_in_ptr, AngleUnitSystem.Radians, ref angle_radians, IntPtr.Zero, ref parsed_unit_system); return(0 < rc); }