0 Members and 1 Guest are viewing this topic.
using System;using AcRx = Autodesk.AutoCAD.Runtime;namespace AcExtensions{ public static class DoubleExtention { public static double StringToDistance(this Double m_num, String src) { return AcRx.Converter.StringToDistance(src); } public static double StringToDistance(this Double m_num, String src, AcRx.DistanceUnitFormat format) { return AcRx.Converter.StringToDistance(src, format); } public static bool TryStringToDistance(this Double m_num, String src, out double num) { num = 0.0; try { num = AcRx.Converter.StringToDistance(src); } catch { return false; } return true; } public static bool TryStringToDistance(this Double m_num, String src, out double num, AcRx.DistanceUnitFormat format) { num = 0.0; try { num = AcRx.Converter.StringToDistance(src , format); } catch { return false; } return true; } public static string DistanceToString(this Double m_num) { return AcRx.Converter.DistanceToString(m_num); } public static string DistanceToString(this Double m_num, AcRx.DistanceUnitFormat format, int precision) { return AcRx.Converter.DistanceToString(m_num, format, precision); } }}
[CommandMethod("doit1")] public static void doit1() { Editor ed = AcadApp.DocumentManager.MdiActiveDocument.Editor; try { Double n = 0; if (n.TryStringToDistance("1 1/4", out n)) ed.WriteMessage(n.DistanceToString()); } catch (System.Exception ex) { ed.WriteMessage(ex.Message); } } [CommandMethod("doit2")] public static void doit2() { Editor ed = AcadApp.DocumentManager.MdiActiveDocument.Editor; try { Double n = 0; n = n.StringToDistance("1 1/4"); ed.WriteMessage(n.DistanceToString()); } catch (System.Exception ex) { ed.WriteMessage(ex.Message); } }