Ejemplo n.º 1
0
        /// <summary>
        /// 获取极限点
        /// </summary>
        /// <param name="measureManager"></param>
        /// <param name="curves">要计算的曲线</param>
        /// <param name="measureDirection">测量方向</param>
        /// <param name="secondDirection">第二方向,以防在第一个方向上出现多个极值点</param>
        /// <param name="thirdDirection">第三方向</param>
        /// <returns>极限点</returns>
        public static Point3d MeasureExtreme(this MeasureManager measureManager, IBaseCurve[] curves, Vector3d measureDirection, Vector3d secondDirection, Vector3d thirdDirection)
        {
            NXOpen.Unit unit1      = WorkPart.UnitCollection.FindObject("MilliMeter");
            Point3d     origin1    = new Point3d(0.0, 0.0, 0.0);
            Direction   direction1 = WorkPart.Directions.CreateDirection(origin1, measureDirection, NXOpen.SmartObject.UpdateOption.WithinModeling);
            Direction   direction2 = WorkPart.Directions.CreateDirection(origin1, secondDirection, NXOpen.SmartObject.UpdateOption.WithinModeling);
            Direction   direction3 = WorkPart.Directions.CreateDirection(origin1, thirdDirection, NXOpen.SmartObject.UpdateOption.WithinModeling);
            ScCollector scCollector1;

            scCollector1 = WorkPart.ScCollectors.CreateCollector();

            CurveDumbRule curveDumbRule1 = WorkPart.ScRuleFactory.CreateRuleBaseCurveDumb(curves);

            SelectionIntentRule[] rules1 = new SelectionIntentRule[1] {
                curveDumbRule1
            };
            scCollector1.ReplaceRules(rules1, false);
            MeasureRectangularExtreme extreme = WorkPart.MeasureManager.NewRectangularExtreme(unit1, direction1, direction2, direction3, scCollector1, false);

            Point3d extremePoint = extreme.Point;

            int nErrs1 = TheSession.UpdateManager.AddToDeleteList(direction1);

            scCollector1.Destroy();

            return(extremePoint);
        }
Ejemplo n.º 2
0
        private void BindDimensions()
        {
            var dimensions = MeasureManager.GetAllMeasureDimensions();

            gvDimensions.DataSource = dimensions;
            gvDimensions.DataBind();
        }
Ejemplo n.º 3
0
        private void FillDropDowns()
        {
            this.ddlBaseWeight.Items.Clear();
            MeasureWeightCollection measureWeightCollection = MeasureManager.GetAllMeasureWeights();

            foreach (MeasureWeight measureWeight in measureWeightCollection)
            {
                ListItem ddlMeasureWeightItem2 = new ListItem(measureWeight.Name, measureWeight.MeasureWeightID.ToString());
                this.ddlBaseWeight.Items.Add(ddlMeasureWeightItem2);
            }

            this.ddlBaseDimension.Items.Clear();
            MeasureDimensionCollection measureDimensionCollection = MeasureManager.GetAllMeasureDimensions();

            foreach (MeasureDimension measureDimension in measureDimensionCollection)
            {
                ListItem ddlMeasureDimensionItem2 = new ListItem(measureDimension.Name, measureDimension.MeasureDimensionID.ToString());
                this.ddlBaseDimension.Items.Add(ddlMeasureDimensionItem2);
            }

            this.ddlDefaultStoreTimeZone.Items.Clear();
            ReadOnlyCollection <TimeZoneInfo> timeZones = DateTimeHelper.GetSystemTimeZones();

            foreach (TimeZoneInfo timeZone in timeZones)
            {
                string   timeZoneName = timeZone.DisplayName;
                ListItem ddlDefaultStoreTimeZoneItem2 = new ListItem(timeZoneName, timeZone.Id);
                this.ddlDefaultStoreTimeZone.Items.Add(ddlDefaultStoreTimeZoneItem2);
            }

            CommonHelper.FillDropDownWithEnum(this.ddlCustomerNameFormat, typeof(CustomerNameFormatEnum));
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 测量两个组件集之间的距离
        /// </summary>
        /// <param name="measureManager"></param>
        /// <param name="components1">组件集1</param>
        /// <param name="components2">组件集2</param>
        /// <returns>距离值</returns>
        public static double MeasureDistance(this MeasureManager measureManager, Component[] components1, Component[] components2)
        {
            NXOpen.Unit lengthUnit = WorkPart.UnitCollection.FindObject("MilliMeter");

            ComponentGroup group1 = WorkPart.ComponentGroups.CreateComponentGroup(System.DateTime.Now.ToLongTimeString() + "_1");

            for (int i = 0; i < components1.Length; i++)
            {
                group1.AddComponent(components1[i], false);
            }

            ComponentGroup group2 = WorkPart.ComponentGroups.CreateComponentGroup(System.DateTime.Now.ToLongTimeString() + "_2");

            for (int i = 0; i < components2.Length; i++)
            {
                group2.AddComponent(components2[i], false);
            }

            double distanceValue = measureManager.NewDistance(lengthUnit, group1, group2).Value;

            group1.Delete();
            group2.Delete();

            return(distanceValue);
        }
Ejemplo n.º 5
0
        private void BindWeights()
        {
            var weights = MeasureManager.GetAllMeasureWeights();

            gvWeights.DataSource = weights;
            gvWeights.DataBind();
        }
Ejemplo n.º 6
0
        private void Ufrm_DatumLine_Load(object sender, EventArgs e)
        {
            hWindow_Final1.HobjectToHimage(ho_Image);
            if (measureManager == null)
            {
                measureManager = form.measureManager;
            }

            #region 跟踪
            List <MeasuringUnit> translations = measureManager.ListAllTranslation();//所有平移跟踪

            verticalPositions = new List <MeasuringUnit>();
            for (int i = translations.Count - 1; i >= 0; i--)
            {
                if ((translations[i] as TranslationTracking).line.AxByC0.k == null)
                {
                    continue;
                }

                if ((translations[i] as TranslationTracking).line.AxByC0.k.D == 0) //?是水平线
                {
                    verticalPositions.Add(translations[i]);                        //添加垂直定位
                    cmb_VerticalTracking_L.Items.Add(translations[i].name);        //添加垂直跟踪
                    cmb_VerticalTracking_R.Items.Add(translations[i].name);        //添加垂直跟踪
                }
            }
            #endregion

            //判断是否编辑模式进入
            if (EditMode)
            {
                line             = data as Line;
                nud_xStart.Value = (decimal)line.hv_Column1.D;
                nud_yStart.Value = (decimal)line.hv_Row1.D;
                nud_xEnd.Value   = (decimal)line.hv_Column2.D;
                nud_yEnd.Value   = (decimal)line.hv_Row2.D;

                if (line.position_Vertical_L != null)
                {
                    cmb_VerticalTracking_L.SelectedItem = line.position_Vertical_L.name;
                }

                if (line.position_Vertical_R != null)
                {
                    cmb_VerticalTracking_R.SelectedItem = line.position_Vertical_R.name;
                }

                txt_Name.Text    = data.name;
                txt_Name.Enabled = false;//编辑模式下不能编辑名字
                prepared         = true;
                RunOnce();
            }
            else
            {
                line      = new Line();
                data      = line;
                data.name = txt_Name.Text;
            }
        }
Ejemplo n.º 7
0
        public void SetExecutionUnit(MeasureManager measureManager)
        {
            this.measureManager = measureManager;

            measureManager.AddCompleted          += MeasureManager_AddCompleted;          //绑定测量单元管理器添加完成事件
            measureManager.ModificationCompleted += MeasureManager_ModificationCompleted; //绑定测量单元管理器修改完成事件
            UpdateDataGridView();                                                         //更新文件控制表格显示
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 使用 UFUN 测量点到给定对象间的最小距离
        /// </summary>
        /// <param name="measureManager"></param>
        /// <param name="point">要测量的点</param>
        /// <param name="objectToMeasure">对象2</param>
        /// <returns></returns>
        public static (double Distance, Point3d PointOn2ndObject) MeasureDistance(this MeasureManager measureManager, Point3d point, Tag objectToMeasure)
        {
            double[] pt_on_obj1 = new double[3];
            double[] pt_on_obj2 = new double[3];
            TheUfSession.Modl.AskMinimumDist3(3, Tag.Null, objectToMeasure, 1, point.ToArray(), 0, new double[3], out double minimumDistance, pt_on_obj1, pt_on_obj2, out double accuracy);

            return(minimumDistance, pt_on_obj2.ToPoint3d());
        }
Ejemplo n.º 9
0
        /// <summary>
        /// 测量两个组件之间的距离
        /// </summary>
        /// <param name="measureManager"></param>
        /// <param name="component1">组件1</param>
        /// <param name="component2">组件2</param>
        /// <returns>距离值</returns>
        public static double MeasureDistance(this MeasureManager measureManager, Component component1, Component component2)
        {
            NXOpen.Unit lengthUnit = WorkPart.UnitCollection.FindObject("MilliMeter");

            double distanceValue = measureManager.NewDistance(lengthUnit, component1, component2).Value;

            return(distanceValue);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// 计算两个 Point3d 对象之间的数学距离
        /// </summary>
        /// <param name="measureManager"></param>
        /// <param name="point1">第一个点坐标</param>
        /// <param name="point2">第二个点坐标</param>
        /// <returns></returns>
        public static double MeasureDistance(this MeasureManager measureManager, Point3d point1, Point3d point2)
        {
            double[] pnt1 = new double[] { point1.X, point1.Y, point1.Z };
            double[] pnt2 = new double[] { point2.X, point2.Y, point2.Z };
            double   distance;

            TheUfSession.Vec3.Distance(pnt1, pnt2, out distance);
            return(distance);
        }
Ejemplo n.º 11
0
        /// <summary>
        /// 测量面的属性
        /// </summary>
        /// <param name="theMeasureManaer"></param>
        /// <param name="faces"></param>
        /// <param name="tolerance">测量公差,越接近1.0,结果越精确,但同时可能会花费较长时间</param>
        /// <returns></returns>
        public static MeasureFaces MeasureFace(this MeasureManager theMeasureManaer, Face[] faces, double tolerance = 0.999)
        {
            NXOpen.Unit areaUnit = WorkPart.UnitCollection.FindObject("SquareMilliMeter");

            NXOpen.Unit lengthUnit = WorkPart.UnitCollection.FindObject("MilliMeter");

            MeasureFaces measureFace = WorkPart.MeasureManager.NewFaceProperties(areaUnit, lengthUnit, tolerance, faces);

            return(measureFace);
        }
        /// <summary>
        /// 测量点到对象之间的投影距离
        /// </summary>
        /// <param name="measureManager"></param>
        /// <param name="point"></param>
        /// <param name="object">对象2</param>
        /// <param name="projectVector">投影矢量</param>
        /// <param name="type">测量类型</param>
        /// <returns>投影距离值</returns>
        public static double MeasureProjectDistance(this MeasureManager measureManager, Point3d point, DisplayableObject @object, Vector3d projectVector, MeasureManager.ProjectionType type)
        {
            var tempPt = WorkPart.Points.CreatePoint(point);

            double distance = measureManager.MeasureProjectDistance(tempPt, @object, projectVector, type);

            tempPt.Delete();

            return(distance);
        }
        /// <summary>
        /// 测量两个对象之间的投影距离
        /// </summary>
        /// <param name="measureManager"></param>
        /// <param name="object1">对象1</param>
        /// <param name="object2">对象2</param>
        /// <param name="projectVector">投影矢量</param>
        /// <param name="type">测量类型</param>
        /// <returns>投影距离值</returns>
        public static double MeasureProjectDistance(this MeasureManager measureManager, DisplayableObject object1, DisplayableObject object2, Vector3d projectVector, MeasureManager.ProjectionType type)
        {
            NXOpen.Unit lengthUnit = WorkPart.UnitCollection.FindObject("MilliMeter");

            Direction direction1 = WorkPart.Directions.CreateDirection(new Point3d(), projectVector, NXOpen.SmartObject.UpdateOption.WithinModeling);

            var projectDistance = measureManager.NewDistance(lengthUnit, object1, object2, direction1, type);

            return(projectDistance.Value);
        }
Ejemplo n.º 14
0
        private List <Item> CreateItems(ShipmentPackage ShipmentPackage)
        {
            var result = new List <Item>();

            var usedMeasureWeight = MeasureManager.GetMeasureWeightBySystemKeyword("kg");

            if (usedMeasureWeight == null)
            {
                throw new NopException("CanadaPost shipping service. Could not load \"kg\" measure weight");
            }

            var usedMeasureDimension = MeasureManager.GetMeasureDimensionBySystemKeyword("meters");

            if (usedMeasureDimension == null)
            {
                throw new NopException("CanadaPost shipping service. Could not load \"meter(s)\" measure dimension");
            }

            foreach (var sci in ShipmentPackage.Items)
            {
                var pv = sci.ProductVariant;

                var item = new Item();
                item.Quantity = sci.Quantity;
                //Canada Post uses kg(s)
                decimal unitWeight = sci.TotalWeight / sci.Quantity;
                item.Weight = MeasureManager.ConvertWeight(unitWeight, MeasureManager.BaseWeightIn, usedMeasureWeight);
                item.Weight = Math.Round(item.Weight, 2);
                if (item.Weight == decimal.Zero)
                {
                    item.Weight = 0.01M;
                }

                //Canada Post uses centimeters
                item.Length = Convert.ToInt32(Math.Ceiling(MeasureManager.ConvertDimension(pv.Length, MeasureManager.BaseDimensionIn, usedMeasureDimension) * 100));
                if (item.Length == decimal.Zero)
                {
                    item.Length = 1;
                }
                item.Width = Convert.ToInt32(Math.Ceiling(MeasureManager.ConvertDimension(pv.Width, MeasureManager.BaseDimensionIn, usedMeasureDimension) * 100));
                if (item.Width == decimal.Zero)
                {
                    item.Width = 1;
                }
                item.Height = Convert.ToInt32(Math.Ceiling(MeasureManager.ConvertDimension(pv.Height, MeasureManager.BaseDimensionIn, usedMeasureDimension) * 100));
                if (item.Height == decimal.Zero)
                {
                    item.Height = 1;
                }
                result.Add(item);
            }

            return(result);
        }
Ejemplo n.º 15
0
        //计量单位新增
        public ActionResult AddMeasure(Measure mes)
        {
            Random random = new Random();
            int    n      = random.Next(100000, 1000000);

            mes.IsDelete   = 0;
            mes.CreateTime = DateTime.Now;
            mes.MeasureNum = n.ToString();

            return(Json(MeasureManager.AddMeasure(mes), JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 16
0
        /// <summary>
        /// 初始化
        /// </summary>
        private void Initialize(Control parent, MeasureManager measureManager)
        {
            TopLevel            = false;                                                  //设为非顶级窗体
            Parent              = parent;                                                 //设置控件的父容器
            Dock                = DockStyle.Fill;                                         //停靠模式填充
            this.measureManager = measureManager;
            measureManager.camera.ImageAcqed += Camera_ImageAcqed;                        //绑定图像接收完成事件

            measureManager.AddCompleted          += MeasureManager_AddCompleted;          //绑定测量单元管理器添加完成事件
            measureManager.ModificationCompleted += MeasureManager_ModificationCompleted; //绑定测量单元管理器修改完成事件
        }
Ejemplo n.º 17
0
        private void BindData()
        {
            MeasureDimension measureDimension = MeasureManager.GetMeasureDimensionById(this.MeasureDimensionId);

            if (measureDimension != null)
            {
                this.txtName.Text          = measureDimension.Name;
                this.txtSystemKeyword.Text = measureDimension.SystemKeyword;
                this.txtRatio.Value        = measureDimension.Ratio;
                this.txtDisplayOrder.Value = measureDimension.DisplayOrder;
            }
        }
        private long GetExecutionTime(object context, MethodInfo method, object[] argumentArray,
                                      int countOfInvokations)
        {
            long timeOfAllInvoketionsMs = 0;

            for (int i = 0; i < countOfInvokations; i++)
            {
                timeOfAllInvoketionsMs += MeasureManager.MeasureMethod(context, method, argumentArray);
            }

            return(timeOfAllInvoketionsMs);
        }
Ejemplo n.º 19
0
 protected void DeleteButton_Click(object sender, EventArgs e)
 {
     try
     {
         MeasureManager.DeleteMeasureWeight(this.MeasureWeightId);
         Response.Redirect("Measures.aspx");
     }
     catch (Exception exc)
     {
         ProcessException(exc);
     }
 }
Ejemplo n.º 20
0
        private void BindData()
        {
            MeasureWeight measureWeight = MeasureManager.GetMeasureWeightById(this.MeasureWeightId);

            if (measureWeight != null)
            {
                this.txtName.Text          = measureWeight.Name;
                this.txtSystemKeyword.Text = measureWeight.SystemKeyword;
                this.txtRatio.Value        = measureWeight.Ratio;
                this.txtDisplayOrder.Value = measureWeight.DisplayOrder;
            }
        }
Ejemplo n.º 21
0
        private void Ufrm_Angle_Load(object sender, System.EventArgs e)
        {
            hWindow_Final1.HobjectToHimage(ho_Image);
            if (measureManager == null)
            {
                measureManager = form.measureManager;
            }

            lines = new List <Line>();
            List <MeasuringUnit> units = measureManager.ListAllLine();//获取所有线

            foreach (var item in units)
            {
                lines.Add(item as Line);
                cmb_Item1.Items.Add(item.name);
                cmb_Item2.Items.Add(item.name);
            }
            //判断是否编辑模式进入
            if (EditMode)
            {
                nud_Spacing.Value = data.StringHeight;

                cbx_AlwaysMinAngel.Visible = false;
                txt_Name.Text = data.name;
                //txt_Name.Enabled = false;//编辑模式下不能编辑名字
                calculate = data as BaseCal_Single;
                cmb_Item1.SelectedIndex = Func_System.GetIndex(lines, calculate.unit1 as Line);
                cmb_Item2.SelectedIndex = Func_System.GetIndex(lines, calculate.unit2 as Line);
                if (cmb_Item1.SelectedIndex == -1)
                {
                    calculate.unit1 = new Line(0, 0, 1, 1);
                }
                if (cmb_Item2.SelectedIndex == -1)
                {
                    calculate.unit2 = new Line(0, 0, 1, 1);
                }
                nud_MaxValue.Value = (decimal)calculate.maxValue;
                nud_MinValue.Value = (decimal)calculate.minValue;
                txt_RealValue.Text = (calculate.hv_RealDistance != null ? calculate.hv_RealDistance.D : 0).ToString("f1");
                prepared           = true;
                RunOnce();
            }
            else
            {
                calculate = new AngelLineToLine(measureManager.k, new Line(0, 0, 1, 1), new Line(0, 0, 1, 1));
                data      = calculate;
                prepared  = true;
            }
        }
Ejemplo n.º 22
0
        /// <summary>
        /// returns the volume of the passed reference set in kubicmeter
        /// </summary>
        /// <param name="refset"></param>
        /// <param name="workpart"></param>
        /// <param name="theSession"></param>
        /// <returns></returns>
        public static double GetRefSetVolume(ReferenceSet refset, Part workpart, Session theSession)
        {
            List <Body>    solidBodies = RefsetHelper.GetSolidBodiesFromRefset(workpart, refset);
            MeasureManager mManager    = theSession.Parts.Display.MeasureManager;
            List <Unit>    massUnits   = new List <Unit>();

            massUnits.Add(theSession.Parts.Display.UnitCollection.GetBase("Area"));
            massUnits.Add(theSession.Parts.Display.UnitCollection.GetBase("Volume"));
            massUnits.Add(theSession.Parts.Display.UnitCollection.GetBase("Mass"));
            massUnits.Add(theSession.Parts.Display.UnitCollection.GetBase("Length"));
            MeasureBodies measureBodies = mManager.NewMassProperties(massUnits.ToArray(),
                                                                     0.99, solidBodies.ToArray());

            return(measureBodies.Volume);
        }
Ejemplo n.º 23
0
        /// <summary>
        /// 根据三点测量角度
        /// </summary>
        /// <param name="theMeasureManager"></param>
        /// <param name="basePoint3d">基点</param>
        /// <param name="baseLineEndPoint3d">基线的终点</param>
        /// <param name="protractorEndPoint3d">量角器的终点</param>
        /// <returns></returns>
        public static double MeasureAngle(this MeasureManager theMeasureManager, Point3d basePoint3d, Point3d baseLineEndPoint3d, Point3d protractorEndPoint3d)
        {
            Unit degreeUnit = WorkPart.UnitCollection.FindObject("Degrees");

            var basePoint = WorkPart.Points.CreatePoint(basePoint3d);

            var baseEnd = WorkPart.Points.CreatePoint(baseLineEndPoint3d);

            var protractorEnd = WorkPart.Points.CreatePoint(protractorEndPoint3d);


            var measurement = WorkPart.MeasureManager.NewAngle(degreeUnit, basePoint, baseEnd, protractorEnd, true);

            return(measurement.Value);
        }
Ejemplo n.º 24
0
        /// <summary>
        /// 获取极限点
        /// </summary>
        /// <param name="measureManager"></param>
        /// <param name="faces">要进行计算的面</param>
        /// <param name="measureDirection">第一个方向</param>
        /// <param name="secondDirection">第二个方向</param>
        /// <param name="thirdDirection">第三个方向</param>
        /// <returns>结果点</returns>
        public static Point3d MeasureExtreme(this MeasureManager measureManager, Face[] faces, Vector3d measureDirection, Vector3d secondDirection, Vector3d thirdDirection)
        {
            NXOpen.Unit lengthUnit = WorkPart.UnitCollection.FindObject("MilliMeter");
#if NX12
            FaceDumbRule faceDumbRule = (WorkPart as BasePart).ScRuleFactory.CreateRuleFaceDumb(faces);
#else
            FaceDumbRule faceDumbRule = WorkPart.ScRuleFactory.CreateRuleFaceDumb(faces);
#endif
            ScCollector scCollector = WorkPart.ScCollectors.CreateCollector();
            scCollector.ReplaceRules(new SelectionIntentRule[] { faceDumbRule }, false);
            Direction direction1   = WorkPart.Directions.CreateDirection(new Point3d(), measureDirection, NXOpen.SmartObject.UpdateOption.WithinModeling);
            Direction direction2   = WorkPart.Directions.CreateDirection(new Point3d(), secondDirection, NXOpen.SmartObject.UpdateOption.WithinModeling);
            Direction direction3   = WorkPart.Directions.CreateDirection(new Point3d(), thirdDirection, NXOpen.SmartObject.UpdateOption.WithinModeling);
            var       facesExtreme = measureManager.NewRectangularExtreme(lengthUnit, direction1, direction2, direction3, scCollector, false);
            return(facesExtreme.Point);
        }
Ejemplo n.º 25
0
        /// <summary>
        /// 获取极限点,先创建一个较远的平面,然后测量与这个平面的距离
        /// </summary>
        /// <returns></returns>
        public static Point3d MeasureExtreme(this MeasureManager measureManager, Body body, Vector3d vector)
        {
            Plane normal_plane = WorkPart.Planes.CreatePlane(new Point3d(vector.X * 100.0, vector.Y * 100.0, vector.Z * 100.0), vector, SmartObject.UpdateOption.WithinModeling);

            normal_plane.SetVisibility(SmartObject.VisibilityOption.Visible);

            double min_dist;

            double[] pt_on_obj1 = new double[3];
            double[] pt_on_obj2 = new double[3];
            double   accuracy;

            TheUfSession.Modl.AskMinimumDist3(2, body.Tag, normal_plane.Tag, 0, null, 0, null, out min_dist, pt_on_obj1, pt_on_obj2, out accuracy);

            normal_plane.Delete();

            return(pt_on_obj1.ToPoint3d());
        }
Ejemplo n.º 26
0
        private void Ufrm_Radius_Load(object sender, EventArgs e)
        {
            hWindow_Final1.HobjectToHimage(ho_Image);
            if (measureManager == null)
            {
                measureManager = form.measureManager;
            }

            circles        = new List <Circle>();
            measuringUnits = measureManager.ListAllCircle();
            foreach (var item in measuringUnits)
            {
                circles.Add(item as Circle);
                cmb_Circles.Items.Add(item.name);
            }
            if (EditMode)
            {
                //编辑模式

                nud_Spacing.Value = data.StringHeight;

                txt_Name.Text = data.name;
                // txt_Name.Enabled = false;//编辑模式下不能编辑名字
                calculate = data as BaseCal_Single;
                cmb_Circles.SelectedIndex = Func_System.GetIndex(measuringUnits, calculate.unit1);
                if (cmb_Circles.SelectedIndex == -1)
                {
                    calculate.unit1 = new Circle(0, 0, 1);
                }
                nud_MaxValue.Value  = (decimal)calculate.maxValue;
                nud_MinValue.Value  = (decimal)calculate.minValue;
                nud_k.Value         = (decimal)calculate.kCx.D;
                nud_RealValue.Value = (decimal)(calculate.hv_RealDistance != null ? calculate.hv_RealDistance.D : 0);
                prepared            = true;
                RunOnce();
            }
            else
            {
                calculate   = new CircleRadius(measureManager.k, new Circle(0, 0, 1));
                nud_k.Value = (decimal)measureManager.k;
                data        = calculate;
                prepared    = true;
            }
        }
Ejemplo n.º 27
0
        private void Ufrm_Position_Load(object sender, EventArgs e)
        {
            hWindow_Final1.HobjectToHimage(ho_Image);
            if (measureManager == null)
            {
                measureManager = form.measureManager;
            }

            if (EditMode)
            {
                prepared = true;
                // txt_Name.Enabled = false;//编辑模式下不能编辑名字
                txt_Name.Text       = data.name;
                transformation      = data as TranslationTracking;
                transformation.line = (data as TranslationTracking).line;

                /*  nud_MaxGray.Value = trb_MaxGray.Value = getRegionUseThreshold.parameter.hv_MaxGray;
                 * nud_MinGray.Value = trb_MinGray.Value = getRegionUseThreshold.parameter.hv_MinGray;*/

                nud_MaxGray.Value = trb_MaxGray.Value = (transformation.line as GetLineUseThreshold).parameter.hv_MaxGray;
                nud_MinGray.Value = trb_MinGray.Value = (transformation.line as GetLineUseThreshold).parameter.hv_MinGray;

                if (2 == (transformation.line as GetLineUseThreshold).TPLR)
                {
                    rdo_DownEdge.Checked = true;
                }
                if (3 == (transformation.line as GetLineUseThreshold).TPLR)
                {
                    rdo_LeftEdge.Checked = true;
                }
                if (4 == (transformation.line as GetLineUseThreshold).TPLR)
                {
                    rdo_RightEdge.Checked = true;
                }
            }
            else
            {
                transformation      = new TranslationTracking();
                data                = transformation;
                transformation.line = new GetLineUseThreshold();
            }
            RunOnce();
        }
Ejemplo n.º 28
0
        public MeasureWeight SaveInfo()
        {
            string  name          = txtName.Text;
            string  systemKeyword = txtSystemKeyword.Text;
            decimal ratio         = txtRatio.Value;
            int     displayOrder  = txtDisplayOrder.Value;

            MeasureWeight measureWeight = MeasureManager.GetMeasureWeightById(this.MeasureWeightId);

            if (measureWeight != null)
            {
                measureWeight = MeasureManager.UpdateMeasureWeight(measureWeight.MeasureWeightId,
                                                                   name, systemKeyword, ratio, displayOrder);
            }
            else
            {
                measureWeight = MeasureManager.InsertMeasureWeight(name,
                                                                   systemKeyword, ratio, displayOrder);
            }

            return(measureWeight);
        }
Ejemplo n.º 29
0
        public MeasureDimension SaveInfo()
        {
            string  name          = txtName.Text;
            string  systemKeyword = txtSystemKeyword.Text;
            decimal ratio         = txtRatio.Value;
            int     displayOrder  = txtDisplayOrder.Value;

            MeasureDimension measureDimension = MeasureManager.GetMeasureDimensionById(this.MeasureDimensionId);

            if (measureDimension != null)
            {
                measureDimension = MeasureManager.UpdateMeasureDimension(measureDimension.MeasureDimensionId,
                                                                         name, systemKeyword, ratio, displayOrder);
            }
            else
            {
                measureDimension = MeasureManager.InsertMeasureDimension(name,
                                                                         systemKeyword, ratio, displayOrder);
            }

            return(measureDimension);
        }
Ejemplo n.º 30
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                //dimensions
                foreach (GridViewRow row in gvDimensions.Rows)
                {
                    RadioButton rdbIsPrimaryDimension = (RadioButton)row.FindControl("rdbIsPrimaryDimension");
                    HiddenField hfMeasureDimensionId  = (HiddenField)row.FindControl("hfMeasureDimensionId");
                    int         measureDimensionId    = int.Parse(hfMeasureDimensionId.Value);
                    if (rdbIsPrimaryDimension.Checked)
                    {
                        MeasureManager.BaseDimensionIn = MeasureManager.GetMeasureDimensionById(measureDimensionId);
                    }
                }

                //weights
                foreach (GridViewRow row in gvWeights.Rows)
                {
                    RadioButton rdbIsPrimaryWeight = (RadioButton)row.FindControl("rdbIsPrimaryWeight");
                    HiddenField hfMeasureWeightId  = (HiddenField)row.FindControl("hfMeasureWeightId");
                    int         measureWeightId    = int.Parse(hfMeasureWeightId.Value);
                    if (rdbIsPrimaryWeight.Checked)
                    {
                        MeasureManager.BaseWeightIn = MeasureManager.GetMeasureWeightById(measureWeightId);
                    }
                }

                BindDimensions();
                BindWeights();
            }
            catch (Exception exc)
            {
                ProcessException(exc);
            }
        }